FUNCTION ordenpendiente(pnumoc,codn,codgrupo,codtipo,codsec,xarea) DEFINE pnumoc,codn,codgrupo,codtipo,codsec,xarea INT, cantidadOrden,cantidadDespachada,pendiente DEC(12,5), selec STRING # CHEQUEA SI LA ORDEN ESTA EN CRMinDATA LET selec = 'SELECT a.num_oc FROM CRMinData.dbo.ordenes_master a WHERE a.num_oc = ? ' PREPARE buscar FROM selec EXECUTE buscar USING pnumoc IF STATUS = NOTFOUND THEN RETURN 0 END IF # BUSCA CANTIDAD ORDEN LET cantidadOrden = 0 SELECT ISNULL(SUM(a.cantidad),0) INTO cantidadOrden FROM prtb00013 a WHERE (a.num_oc = pnumoc) AND (a.cod_n = codn AND a.cod_grupo = codgrupo AND a.cod_tipo = codtipo AND a.cod_sec = codsec) AND a.area = xarea #BUSCA CANTIDAD DESPACHADA LET cantidadDespachada =0 SELECT ISNULL(SUM(a.cantidad_2*-1),0) INTO cantidadDespachada FROM iptb00006 a,iptb00005 d WHERE (a.num_oc = pnumoc) AND (a.cod_n = codn AND a.cod_grupo=codgrupo AND a.cod_tipo=codtipo AND a.cod_sec=codsec) AND a.area = xarea AND (a.cod_mov = d.cod_mov) AND (d.control_despacho = 'SI' OR d.control_devolucion = 'SI') AND a.status_t IS NULL LET pendiente = cantidadOrden - cantidadDespachada RETURN pendiente END FUNCTION