SCHEMA smarmotech FUNCTION btipo_fact(psucid,ptipo_doc) DEFINE psucid SMALLINT, ptipo_Doc CHAR(2) DEFINE arrtipofact DYNAMIC ARRAY OF RECORD codigodgii CHAR(14), descripcion CHAR(80), fecha_vencimiento DATE END RECORD, idx,numero_msg,curr1 SMALLINT SET CONNECTION "IFMX" LET INT_FLAG = FALSE OPEN WINDOW tipofactura AT 7,12 WITH FORM "vefmwd020" ATTRIBUTE (BORDER,FORM LINE FIRST + 2,COMMENT LINE LAST,MESSAGE LINE LAST) DECLARE busca_tipo CURSOR FOR SELECT a.codigo_dgii,a.tipo_ncf,CONVERT(CHAR(10),a.fecha_vencimiento,103) FROM vetb00071 a WHERE a.tipo_doc = ptipo_doc and a.disponible = "S" AND a.sucid = 1 LET idx = 1 FOREACH busca_tipo INTO arrtipofact[idx].* LET idx = idx + 1 END FOREACH IF int_flag THEN LET numero_msg = 2 CALL msg(numero_msg) LET int_flag = FALSE CLOSE WINDOW tipofactura END IF CALL set_count(idx-1) DISPLAY ARRAY arrtipofact TO s_tipo.* LET curr1 = arr_curr() CLOSE WINDOW tipofactura RETURN arrtipofact[curr1].codigodgii, arrtipofact[curr1].descripcion,arrtipofact[curr1].fecha_vencimiento END FUNCTION