Hola a todos, un gusto saludar por acá.
Estoy tratando de usar XBrowse con MySQL, y luego de agregar un registro nuevo uso
oQry:ReSyncWhere( 'CLAVE = "' + <la clave> + '"' )
oBrw:RefreshCurrent()
Y efectivamente el registro es incluido en el oRowSet, pero siempre al final de la lista, no respetando la actual columna de orden ni si es ascendente o descendente.
Debe ser algo fácil, pero no lo logro. La idea es no tener que cargar toda la consulta de nuevo.
Me baso en el mensaje en viewtopic.php?p=200956&hilit=loadquery#p200956, pero algo me falta.
Gracias a todos.
ReSyncWhere: agrega registro al final de oRowSet
ReSyncWhere: agrega registro al final de oRowSet
José Concha Leiva - Chile
"Querer, saber y hacer, es poder"
HB MSVSC + FWH 24.04 + MySQL/MaríaDB/DBFCDX (64 bits)
https://zenitx.com
"Querer, saber y hacer, es poder"
HB MSVSC + FWH 24.04 + MySQL/MaríaDB/DBFCDX (64 bits)
https://zenitx.com
- cnavarro
- Posts: 6661
- Joined: Wed Feb 15, 2012 8:25 pm
- Location: España
- Has thanked: 9 times
- Been thanked: 12 times
Re: ReSyncWhere: agrega registro al final de oRowSet
Hello
Try with
Try with
Code: Select all | Expand
oBrw:SetOrder( <column order> )
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Re: ReSyncWhere: agrega registro al final de oRowSet
CNavarro
Hola, gracias por tu interés y pronta ayuda.
Aunque no he logrado aún resolver el problema, haciendo pruebas con tu sugerencia me di cuenta que las nuevas filas no asumen la posición correcta cuando aún no he hecho clic en ninguna cabecera de columna para cambiar el orden de visualización.
Por otro lado, si hago clic en cualquier cabecera de columna y cambio el orden, e incluso si luego ordeno por la misma columna de orden inicial, ascendente o descendente, los nuevos registros, uno a uno, sin necesidad de volver a cambiar el orden, sí se posicionan en la fila correcta según el orden actual.
Hice cambios y pruebas, pensando que quizás es porque XBrowse no sabe que está ordenado hasta que ejecuto al menos un oCol:SetOrder, y lo hago en el código fuente; pero aún así, no funciona sino hasta que manualmente hago clic en cabeceras de ordenamiento.
Nota. No he encontrado forma de hacer oBrw:SetOrder, solo oCol:SetOrder.
Creo que me falta algo que se activa al hacer ese clic, pero luego de varias horas probando aún no se qué.
Gracias nuevamente, y quedo atento a cualquier otro ayuda.
Hola, gracias por tu interés y pronta ayuda.
Aunque no he logrado aún resolver el problema, haciendo pruebas con tu sugerencia me di cuenta que las nuevas filas no asumen la posición correcta cuando aún no he hecho clic en ninguna cabecera de columna para cambiar el orden de visualización.
Por otro lado, si hago clic en cualquier cabecera de columna y cambio el orden, e incluso si luego ordeno por la misma columna de orden inicial, ascendente o descendente, los nuevos registros, uno a uno, sin necesidad de volver a cambiar el orden, sí se posicionan en la fila correcta según el orden actual.
Hice cambios y pruebas, pensando que quizás es porque XBrowse no sabe que está ordenado hasta que ejecuto al menos un oCol:SetOrder, y lo hago en el código fuente; pero aún así, no funciona sino hasta que manualmente hago clic en cabeceras de ordenamiento.
Nota. No he encontrado forma de hacer oBrw:SetOrder, solo oCol:SetOrder.
Creo que me falta algo que se activa al hacer ese clic, pero luego de varias horas probando aún no se qué.
Gracias nuevamente, y quedo atento a cualquier otro ayuda.
José Concha Leiva - Chile
"Querer, saber y hacer, es poder"
HB MSVSC + FWH 24.04 + MySQL/MaríaDB/DBFCDX (64 bits)
https://zenitx.com
"Querer, saber y hacer, es poder"
HB MSVSC + FWH 24.04 + MySQL/MaríaDB/DBFCDX (64 bits)
https://zenitx.com
- cnavarro
- Posts: 6661
- Joined: Wed Feb 15, 2012 8:25 pm
- Location: España
- Has thanked: 9 times
- Been thanked: 12 times
Re: ReSyncWhere: agrega registro al final de oRowSet
Hello, after, as you say, doing the oBrw:aCols[ n ]:SetOrder( .T. ), the .T. is not necessary if the xbrowse when defined has the lAutosort := .T. or the corresponding clause, do you do the Refresh()? ( Try doing oBrw:GoTop() )
Hola, despues de, como bien dices, hacer el oBrw:aCols[ n ]:SetOrder( .T. ), el .T. no es necesario si el xbrowse al ser definido tiene el lAutosort := .T. o la correspondiente clausula, haces el Refresh() ? ( Prueba haciendo oBrw:GoTop() )
Hola, despues de, como bien dices, hacer el oBrw:aCols[ n ]:SetOrder( .T. ), el .T. no es necesario si el xbrowse al ser definido tiene el lAutosort := .T. o la correspondiente clausula, haces el Refresh() ? ( Prueba haciendo oBrw:GoTop() )
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces