FUNCTION btipo_fact(ptipo_doc) DEFINE arrtipofact ARRAY[50] OF RECORD codigodgii CHAR(16), descripcion CHAR(80), fecha_vencimiento DATE END RECORD, ptipo_doc CHAR(2), codigodgii CHAR(16), descripcion CHAR(30), idx,curr1,numero_msg SMALLINT, fecha_vencimiento DATE OPEN WINDOW tipofactura AT 7,12 WITH FORM "ccfmwd018" 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(20),ISNULL(a.fecha_vencimiento,''),103) FROM vetb00071 a WHERE a.tipo_doc = ptipo_doc and a.disponible = "S" 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() LET codigodgii = arrtipofact[curr1].codigodgii LET descripcion = arrtipofact[curr1].descripcion IF arrtipofact[curr1].fecha_vencimiento > '01/05/2018' THEN LET fecha_vencimiento =arrtipofact[curr1].fecha_vencimiento ELSE LET fecha_vencimiento = NULL END IF CLOSE WINDOW tipofactura RETURN codigodgii,fecha_vencimiento END FUNCTION