GLOBALS "ipprgb000.4gl" DEFINE porden INTEGER, acod_n SMALLINT, acod_grupo SMALLINT, acod_tipo SMALLINT, acod_sec SMALLINT, pdescrip_esp2 CHAR MAIN DEFER INTERRUPT SELECT * INTO p_companias.* FROM companias CALL ipprmt074() END MAIN FUNCTION ipprmt074() OPEN WINDOW actorden AT 8, 4 WITH FORM "actorden" ATTRIBUTE (BORDER) INPUT BY NAME p_iptb01.cod_n,p_iptb01.cod_grupo,p_iptb01.cod_tipo, p_iptb01.cod_sec,porden,acod_n,acod_grupo,acod_tipo,acod_Sec AFTER FIELD porden SELECT UNIQUE a.num_oc FROM prtb00013 a WHERE a.num_oc = porden and a.cod_n = p_iptb01.cod_n AND a.cod_grupo = p_iptb01.cod_grupo AND a.cod_tipo = p_iptb01.cod_tipo AND a.cod_sec = p_iptb01.cod_sec IF STATUS = NOTFOUND THEN LET numero_msg = 3 CALL msg(numero_msg) NEXT FIELD porden END IF AFTER FIELD cod_sec SELECT a.descrip_esp INTO p_iptb02.descrip_esp FROM iptb00002 a WHERE a.cod_n = p_iptb01.cod_n AND a.cod_grupo = p_iptb01.cod_grupo AND a.cod_tipo = p_iptb01.cod_tipo AND a.cod_sec = p_iptb01.cod_sec AND a.status_t IS NULL IF STATUS = NOTFOUND THEN LET numero_msg = 3 CALL msg(numero_msg) NEXT FIELD COD_N END IF DISPLAY BY NAME p_iptb02.descrip_esp AFTER FIELD acod_sec SELECT a.descrip_esp INTO pdescrip_esp2 FROM iptb00002 a WHERE a.cod_n = acod_n AND a.cod_grupo = acod_grupo AND a.cod_tipo = acod_tipo AND a.cod_sec = acod_sec AND a.status_t IS NULL IF STATUS = NOTFOUND THEN LET numero_msg = 3 CALL msg(numero_msg) NEXT FIELD acod_n END IF DISPLAY BY NAME pdescrip_esp2 AFTER INPUT IF int_flag THEN LET numero_msg = 2 CALL msg(numero_msg) EXIT INPUT ELSE UPDATE prtb00013 SET cod_n = acod_n, cod_grupo = acod_grupo, cod_tipo = acod_tipo, cod_sec = acod_sec, us_mod = user, fech_mod = current WHERE num_oc = porden and cod_n = p_iptb01.cod_n AND cod_grupo = p_iptb01.cod_grupo AND cod_tipo = p_iptb01.cod_tipo AND cod_sec = p_iptb01.cod_sec LET numero_msg = 13 CALL msg(numero_msg) END IF EXIT INPUT END INPUT CLOSE WINDOW actorden END FUNCTION