Este articulo describe como al hacer click en la cabecera de un datawindow, permite que se ordene el datawindow por esa columna. El nombre de la cabecera de la columna tiene que tener el mismo nombre que en la base de datos y acabado en _t
Por ejemplo:
Nombre de la columna: emp_id
Nombre de la cabecera: emp_id_t
Sólo se puede ordenar por una columna cada vez.
String ls_old_sort, ls_column
Char lc_sort
/* Chequea cuando el usuario hace click en la cabecera */
IF Right(dwo.Name,2) = "_t" THEN
ls_column = LEFT(dwo.Name, LEN(String(dwo.Name)) - 2)
/* Guarda la última ordenación, si hubiera alguna*/
ls_old_sort = dw_1.Describe("Datawindow.Table.sort")
/* Chequea cuando préviamente se ordenó una columna y en la que se hace click actualmente es la misma o no. Si es la misma, entonces se chequea el orden de ordenación del ordenamiento anterior (A - Ascendente, D - Descendente) y lo cambia. Si las columnas odenadas no son las mismas, las ordena en orden ascendente. */
IF ls_column = LEFT(ls_old_sort, LEN(ls_old_sort) - 2) THEN
lc_sort = RIGHT(ls_old_sort, 1)
IF lc_sort = 'A' THEN
lc_sort = 'D'
ELSE
lc_sort = 'A'
END IF
dw_1.SetSort(ls_column+" "+lc_sort)
ELSE
dw_1.SetSort(ls_column+" A")
END IF
dw_1.Sort()
END IF
Autor : E.Bala muthaiya - Esta dirección de correo electrónico está protegida contra spambots. Necesita activar JavaScript para visualizarla.