Calificación del usuario: 2  / 5

Estrellas activasEstrellas activasEstrellas inactivasEstrellas inactivasEstrellas inactivas
 

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.

Pin It