FUNCTION mercancia_transito(pcodn,pcodgrupo,pcodtipo,pcodsec,fecha_transito,cod_inventario) DEFINE pcodn,pcodgrupo,pcodtipo,pcodsec,cod_inventario SMALLINT, cantidad_ordenada, cantidad_recibida,transito DEC(12,5), fecha_transito,fecha_ordenada,fecha_recibida DATE # CANTIDAD ORDENADA LET transito = 0 LET fecha_ordenada=NULL LET fecha_recibida=NULL IF cod_inventario ='02' THEN SELECT SUM(a.cantidad) INTO cantidad_ordenada FROM cotb00015 a,cotb00014 b WHERE (a.cod_n = pcodn AND a.cod_grupo = pcodgrupo AND a.cod_tipo = pcodtipo AND a.cod_Sec = pcodsec) AND (a.num_oc = b.num_oc) AND (b.fech_oc <= fecha_transito) AND a.status_t IS NULL SELECT SUM(a.cantidad_2) INTO cantidad_recibida FROM iptb00006 a WHERE (a.cod_n = pcodn AND a.cod_grupo = pcodgrupo AND a.cod_tipo = pcodtipo AND a.cod_Sec = pcodsec) AND (a.fecha <= fecha_transito) AND a.cod_mov IN (10) and a.status_t IS NULL LET transito = cantidad_ordenada - cantidad_recibida SELECT CONVERT(CHAR(10),MAX(b.fech_oc),103) INTO fecha_ordenada FROM cotb00014 b,cotb00015 a WHERE (a.cod_n = pcodn AND a.cod_grupo = pcodgrupo AND a.cod_tipo = pcodtipo AND a.cod_Sec = pcodsec) AND (a.num_oc = b.num_oc) AND (b.fech_oc <= fecha_transito) AND a.status_t IS NULL SELECT CONVERT(CHAR(10),MAX(a.fecha),103) INTO fecha_recibida FROM iptb00006 a WHERE (a.cod_n = pcodn AND a.cod_grupo = pcodgrupo AND a.cod_tipo = pcodtipo AND a.cod_Sec = pcodsec) AND (a.fecha <= fecha_transito) AND a.cod_mov IN (10) and a.status_t IS NULL END IF RETURN transito,fecha_ordenada,fecha_recibida END FUNCTION FUNCTION fechas_llegadas(pcodn,pcodgrupo,pcodtipo,pcodsec,fecha_transito) DEFINE idx,pcodn,pcodgrupo,pcodtipo,pcodsec SMALLINT, fecha_transito DATE DEFINE busca_parcial DYNAMIC ARRAY OF RECORD secuencia INT, cod_n SMALLINT, cod_grupo SMALLINT, cod_tipo SMALLINT, cod_sec SMALLINT, cantidad DEC(12,5), fech_emb DATE, fech_ent DATE END RECORD OPEN WINDOW w1 WITH FORM "cofmfu009" DECLARE b_fecha_parcial CURSOR FOR SELECT a.cod_n,a.cod_grupo,a.cod_tipo,a.cod_Sec,a.cantidad,a.fech_emb,a.fech_ent FROM cotb00025 a WHERE a.cod_n = pcodn AND a.cod_grupo = pcodgrupo AND a.cod_tipo = pcodtipo AND a.cod_Sec = pcodsec AND a.fech_ent <= fecha_transito AND a.status_t IS NULL LET idx = 1 FOREACH b_fecha_parcial INTO busca_parcial[idx].* LET idx = idx + 1 END FOREACH DISPLAY ARRAY busca_parcial TO s_parcial.* CLOSE WINDOW w1 END FUNCTION