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