FUNCTION buscafacturas() DEFINE facturas DYNAMIC ARRAY OF RECORD factura1 INT, fecha DATE, dncf VARCHAR(20), idcotizacion VARCHAR(20),idorden INT,idbodega VARCHAR(40),idconduce INT, cliente VARCHAR(100), bruto,descuento,subtotal,valor_itbis,valor_neto DEC(12,2), estado VARCHAR(20), xncf INT END RECORD, idx INT, strquery STRING LET strquery ="SELECT TOP (1000) a.factura, a.fecha_factura, d.codigo_dgii, a.documento, a.orden, c.descripcion, a.conduce, b.nombre, a.sub_total, a.monto_desc, a.sub_total - a.monto_desc AS Expr1, a.monto_itbi, a.neto, CASE WHEN a.status_t = 'E' THEN 'NULA' ELSE 'ACTIVA' END AS Expr2, d.ncf FROM vetb00002 AS a LEFT OUTER JOIN vetb00072 AS d ON d.documento = a.factura AND d.tipo_doc = 'FT' LEFT OUTER JOIN vetb00004 AS b ON a.tipo_cliente = b.tipo_cliente AND a.sec_cliente = b.sec_cliente LEFT OUTER JOIN intb00009 AS c ON a.bodega = c.cod_bodega ORDER BY a.fecha_factura DESC " PREPARE comando FROM strquery DECLARE busca_facturas CURSOR FOR comando LET idx = 1 FOREACH busca_facturas INTO facturas[idx].* LET facturas[idx].dncf =facturas[idx].dncf CLIPPED,facturas[idx].xncf USING "&&&&&&&&" LET idx = idx + 1 END FOREACH RETURN facturas END FUNCTION