¿Cómo funcionan las fechas en un búsqueda de resultados en una vista en local y el servidor?
Fabrique una Xpage de búsqueda.
Parámetros No. De Empleado, rango de fechas.
Fecha Inicial y Fecha Final = variable de sesión
La fecha es un texto que filtra a las otras dos.
Carga de valores en las variables se ambiente:
// Cargando valores del rango de fechas
var Registro=getComponent("FR003Fecha_Corte").getValue();
var Fecha_1 = @Unique(@DbLookup(@DbName(),"VC010",Registro, "FR004FechaInicial"));
if (Fecha_1 !="" & Fecha_1 !=null )
sessionScope.FR003Fecha_Inicial=Fecha_1;
var Fecha_2 = @Unique(@DbLookup(@DbName(),"VC010",Registro, "FR004FechaCorte"));
if (Fecha_2 !="" & Fecha_2 !=null )
sessionScope.FR003Fecha_Final=Fecha_2;
-- El valor filtrado se coloca en la sección de búsqueda de la vista es:
var tmpArray = new Array("");
var cTerms = 0;
if(sessionScope.FR003N_Empleado != null & sessionScope.FR003N_Empleado != "") {
tmpArray[cTerms++] = "(FIELD FR001N_Evaluado = \"" + sessionScope.FR003N_Empleado + "\")";
}
if(sessionScope.FR003Fecha_Inicial != null & sessionScope.FR003Fecha_Inicial != "") {
Fecha_inicial = @Text(@Day(sessionScope.FR003Fecha_Inicial)+"/"+@Month(sessionScope.FR003Fecha_Inicial)+"/"+@Year(sessionScope.FR003Fecha_Inicial));
tmpArray[cTerms++] = "(FIELD FR001FechaCreacion >= " + Fecha_inicial + ")";
}
if(sessionScope.FR003Fecha_Final != null & sessionScope.FR003Fecha_Final != "") {
Fecha_Final = @Text(@Day(sessionScope.FR003Fecha_Final)+"/"+@Month(sessionScope.FR003Fecha_Final)+"/"+@Year(sessionScope.FR003Fecha_Final));
tmpArray[cTerms++] = "(FIELD FR001FechaCreacion <= " + Fecha_Final + ")";
}
qstring = tmpArray.join(" AND ").trim();
return qstring;
Parametrizacion en diseño:
1.- La combo box de
01/01/2015-31/01/2015 - de la cual se obtienen 2 variables tipo Date. Pero después de las 7 pm, regresa 31/12/2014 y 30/01/2015 ... ¿porque pasa eso? Ver imagen parametros II.png
2.- En la copia local de mi equipo respeta los rangos de fecha solicitados, y regresa correctamente los registros de cada mes, pero al reemplazar el diseño en el servidor no los se comporta de la misma forma y no devuelve los registros, a pesar de que en el campo fecha de creación se cargo el @Now(), y la fecha corresponde al periodo.
Ahora en un campo guardo al responsible también con Now y escribe a veces la fecha en modo MM/DD/AA y otras aparece como DD/MM /AAAA
Espero que tengas una idea de como funciona esta seleccion de registros.
Si la consulta se ha antes de las 7:00pm la selección es correcta.
¿No se si al hacer un texto dd/mm/aaaa en el servidor por no correspondar a lo haya en el servidor?
Si dejo solo la variable no muetsra nada porque el registro tiene dias, meses, años horas minutos y segundos...