diff --git a/PROYECTO/mbsERP.4pw b/PROYECTO/mbsERP.4pw index 1611fe7..af5a7f0 100644 --- a/PROYECTO/mbsERP.4pw +++ b/PROYECTO/mbsERP.4pw @@ -473,6 +473,9 @@ + + + @@ -495,6 +498,10 @@ + + + + diff --git a/PROYECTO/nodir/nofmmt008.4fd b/PROYECTO/nodir/nofmmt008.4fd index 7d0a728..8557afc 100644 --- a/PROYECTO/nodir/nofmmt008.4fd +++ b/PROYECTO/nodir/nofmmt008.4fd @@ -15,7 +15,7 @@ - +
@@ -49,7 +49,7 @@
diff --git a/PROYECTO/nodir/noprmt008.4gl b/PROYECTO/nodir/noprmt008.4gl index d57419e..4696290 100644 --- a/PROYECTO/nodir/noprmt008.4gl +++ b/PROYECTO/nodir/noprmt008.4gl @@ -158,6 +158,7 @@ DEFINE movi_emp DYNAMIC ARRAY OF RECORD valor LIKE notb00007.valor, departamento INT END RECORD + MAIN DEFER INTERRUPT CALL ARG_VAL(1) RETURNING usuarios @@ -169,6 +170,15 @@ MAIN CALL noprmt008() END MAIN +FUNCTION debuglog(txt) + DEFINE txt STRING + DEFINE ch base.Channel + LET ch = base.Channel.create() + CALL ch.openFile(FGL_GETENV("FGLSPOOL") || "/noprmt008_debug.log", "a") + CALL ch.writeLine(txt) + CALL ch.close() +END FUNCTION + FUNCTION noprmt008() #CLEAR SCREEN @@ -200,7 +210,7 @@ FUNCTION noprmt008() # Busqueda del periodo comprendido de la nomina LET selec = - "SELECT CONVERT(CHAR(10),fecha_del,103) ,CONVERT(CHAR(10),fecha_al,103), h_normal,mes,ano,num_sem,estado_legal ", + "SELECT fecha_del, fecha_al, h_normal,mes,ano,num_sem,estado_legal ", " FROM notb00010 ", " WHERE num_nomi = '", datos_nomi.num_nomi, @@ -228,7 +238,7 @@ FUNCTION noprmt008() DISPLAY BY NAME xestado_legal LET selec = - "SELECT CONVERT(CHAR(10),MIN(a.fecha_del),103),CONVERT(CHAR(10),MAX(a.fecha_al),103) ", + "SELECT MIN(a.fecha_del), MAX(a.fecha_al) ", " FROM notb00010 a ", " WHERE a.ano ='", p_ano, @@ -246,7 +256,7 @@ FUNCTION noprmt008() # Busca el mes inicial del periodo LET selec = - "SELECT CONVERT(CHAR(10),MIN(a.fecha_Del),103) ", + "SELECT MIN(a.fecha_Del) ", "FROM notb00010 a ", "WHERE a.ano = '", p_ano, @@ -316,7 +326,7 @@ FUNCTION noprmt008() LET ultima_semana_mes = NULL LET fecha_ult = NULL LET SELEC = - "SELECT CONVERT(CHAR(10),MAX(a.fecha_al),103) ", + "SELECT MAX(a.fecha_al) ", " FROM notb00010 a ", " WHERE a.tipo_emp = ? AND ", " a.mes = ? AND ", @@ -350,7 +360,7 @@ FUNCTION noprmt008() END IF IF ultima_semana_mes = "S" THEN - SELECT CONVERT(CHAR(10), MIN(fecha_del), 103) + SELECT MIN(fecha_del) INTO fecha_ini_mes FROM notb00010 WHERE tipo_emp = datos_nomi.tipo_emp @@ -369,6 +379,7 @@ FUNCTION noprmt008() AFTER INPUT IF int_flag THEN + CALL debuglog("AFTER INPUT: int_flag true, saliendo") LET numero_msg = 2 CALL msg(numero_msg) LET int_flag = FALSE @@ -376,24 +387,29 @@ FUNCTION noprmt008() END IF EXIT INPUT END INPUT + CALL debuglog("Paso INPUT BY NAME ok") # Preparacion para busqueda por rango de departamento y rango de ficha del # empleado CONSTRUCT BY NAME criterio ON a.departamento, a.num_emp IF int_flag THEN + CALL debuglog("CONSTRUCT: int_flag true, saliendo") LET numero_msg = 2 CALL msg(numero_msg) LET int_flag = FALSE RETURN END IF + CALL debuglog("Paso CONSTRUCT ok, criterio=[" || criterio CLIPPED || "]") #CLEAR SCREEN # PROMPT #"ESTA SEGURO DE GENERAR DE NUEVO LA NOMINA (S/N) " FOR CHAR opt1 LET opt1 = upshift(opt1) IF opt1 != "S" THEN + CALL debuglog("opt1<>S, saliendo. opt1=[" || opt1 CLIPPED || "]") RETURN END IF + CALL debuglog("Paso opt1 check ok") #PROMPT #"ESTA NOMINA ES DE REGALIA (S/N) " FOR CHAR regalia