DATABASE rayovac GLOBALS DEFINE codigos RECORD LIKE irtb00002.* DEFINE codigos1 RECORD LIKE intb00001.* END GLOBALS MAIN CALL busca() END MAIN FUNCTION busca() DECLARE busca_ir CURSOR FOR SELECT *FROM intb00001 WHERE cod_n = 5 ORDER BY 1,2,3,4 START REPORT saca TO "reporte1" FOREACH busca_ir INTO codigos1.* SELECT * INTO codigos.* FROM irtb00002 WHERE @cod_n = codigos1.cod_n and @cod_grupo = codigos1.cod_grupo and @cod_tipo = codigos1.cod_tipo and @cod_sec = codigos1.cod_sec IF status = notfound THEN SELECT * INTO codigos.* FROM irtb00001 WHERE @cod_n = codigos1.cod_n and @cod_grupo = codigos1.cod_grupo and @cod_tipo = codigos1.cod_tipo and @cod_sec = codigos1.cod_sec IF status = notfound THEN OUTPUT TO REPORT saca(codigos1.*,codigos.*) END IF END IF END FOREACH FINISH REPORT saca END FUNCTION REPORT saca(z,x) DEFINE x record like irtb00002.* DEFINE z RECORD LIKE intb00001.* DEFINE descripcion CHAR(30) format page header print column 1, "REPORTE DE CODIGOS QUE ESTAN EN INTB00001 Y NO ESTAN EN IRTB0002" print column 1, today print column 1, time skip 1 line print column 1, "ARTICULOS..." SKIP 1 LINE ON EVERY ROW PRINT COLUMN 1, z.cod_n using "&","-",z.cod_grupo using "&","-", z.cod_tipo using "&&","-",z.cod_sec using "&&&"," ",z.descrip_esp ON LAST ROW PRINT "TOTAL REGISTROS: ",count(*) using "&&&&" END REPORT