Files
MBS/PROYECTO/otrodir/buscaEpleados.4gl
T

53 lines
1.7 KiB
Plaintext

FUNCTION busca_empleado1()
DEFINE criterio,selec1 VARCHAR(1000),
buscar_emp DYNAMIC ARRAY OF RECORD
num_emp INT,
departamento SMALLINT,
nivel_emp SMALLINT,
cod_puesto SMALLINT,
nom1_emp VARCHAR(30),
nom2_emp VARCHAR(30),
apell1_emp VARCHAR(30),
apell2_emp VARCHAR(30)
END RECORD,
idx SMALLINT
OPEN WINDOW busqueda AT 7,10 WITH FORM "adfmwd004"
ATTRIBUTE (BORDER,FORM LINE FIRST + 2, comment line last)
CONSTRUCT criterio ON adtb00003.nom1_emp,adtb00003.nom2_emp,
adtb00003.apell1_emp,adtb00003.apell2_emp
FROM nom1_emp,nom2_emp,apell1_emp,apell2_emp
LET selec1 = "SELECT num_emp,departamento,nivel_emp,cod_puesto, ",
"nom1_emp,nom2_emp,apell1_emp,apell2_emp FROM adtb00003 ",
" WHERE ",
" status_t is null AND ",
criterio clipped,
"ORDER BY nom1_emp "
PREPARE busca1 FROM selec1
DECLARE local1 CURSOR FOR busca1
LET idx = 1
FOREACH local1 INTO buscar_emp[idx].*
IF status = NOTFOUND THEN
CALL fgl_winmessage("ERROR","NO EXISTEN REGISTROS","INFO")
EXIT FOREACH
END IF
LET idx = idx + 1
END FOREACH
CALL set_count(idx-1)
DISPLAY ARRAY buscar_emp TO s_empleado.*
AFTER DISPLAY
LET idx = arr_curr()
EXIT DISPLAY
END DISPLAY
CLOSE WINDOW busqueda
RETURN buscar_emp[idx].num_emp,buscar_emp[idx].nom1_emp,
buscar_emp[idx].nom2_emp,
buscar_emp[idx].apell1_emp,
buscar_emp[idx].apell2_emp
END FUNCTION