Commit inicial: fuentes MBS ERP (Genero 6) + .gitignore + docs/SETUP_PC_MBS.md
This commit is contained in:
@@ -0,0 +1,145 @@
|
||||
{
|
||||
PROGRAMA : prprmt020
|
||||
OBJETIVO : Administrar los dibujos de las ordenes
|
||||
PROGRAMADOR : ING. JUAN SOTO
|
||||
}
|
||||
|
||||
GLOBALS "prprgb000.4gl"
|
||||
DEFINE d_tipos,mensaje,f_tipos,imagen,filepath STRING,
|
||||
inserte_dibujo BOOLEAN
|
||||
|
||||
MAIN
|
||||
DEFER INTERRUPT
|
||||
CALL STARTLOG("prmt020.log")
|
||||
CALL ARG_VAL(1) RETURNING usuarios
|
||||
CALL ARG_VAL(2) RETURNING clave
|
||||
|
||||
CONNECT to "smarmotech" USER usuarios USING clave
|
||||
|
||||
DECLARE buscacorreo CURSOR FOR
|
||||
SELECT a.correo FROM seg0003 a
|
||||
WHERE a.controldibujo = 'SI'
|
||||
|
||||
LET idx = 1
|
||||
FOREACH buscacorreo INTO copiacorreo[idx]
|
||||
LET copiaemail = copiaemail CLIPPED,";",copiacorreo[idx]
|
||||
LET idx = idx + 1
|
||||
END FOREACH
|
||||
|
||||
CALL prprmt020()
|
||||
END MAIN
|
||||
|
||||
FUNCTION prprmt020()
|
||||
DEFINE nombre_cliente,email,emailsubject,emailbody,procedimiento,vendedor,dir_file CHAR(60),
|
||||
filedestino CHAR(100),
|
||||
ruta DYNAMIC ARRAY OF CHAR(150)
|
||||
|
||||
|
||||
|
||||
OPEN WINDOW w1 WITH FORM "prfmmt012"
|
||||
DIALOG ATTRIBUTES(UNBUFFERED,FIELD ORDER FORM)
|
||||
INPUT BY NAME prtb08.num_oc
|
||||
AFTER INPUT
|
||||
LET d_tipos="Images"
|
||||
LET f_tipos="*.jpg *.png *.gif"
|
||||
LET mensaje=%"Elige Imagen"
|
||||
|
||||
SELECT a.cotizacion_no,b.nombre,a.sec_vend,ISNULL(c.nom1_emp,' ')+ISNULL(c.apell1_emp,' ')
|
||||
INTO prtb08.cotizacion_no,nombre_cliente,prtb08.sec_vend,vendedor
|
||||
FROM prtb00012 a,vetb00004 b,adtb00003 c
|
||||
WHERE a.num_oc = prtb08.num_oc AND
|
||||
a.tipo_cliente = b.tipo_cliente AND
|
||||
a.sec_cliente = b.sec_cliente AND
|
||||
a.sec_vend = c.num_emp
|
||||
|
||||
IF STATUS = NOTFOUND THEN
|
||||
CALL msg(3)
|
||||
NEXT FIELD num_oc
|
||||
ELSE
|
||||
DECLARE busca_dibujo CURSOR FOR
|
||||
SELECT a.ruta_file FROM prtb00029 a
|
||||
WHERE a.num_oc = prtb08.num_oc
|
||||
|
||||
LET idx = 1
|
||||
FOREACH busca_dibujo INTO ruta[idx]
|
||||
LET idx = idx + 1
|
||||
END FOREACH
|
||||
CALL set_count(idx-1)
|
||||
END IF
|
||||
DISPLAY BY NAME prtb08.cotizacion_no,nombre_cliente,vendedor
|
||||
END INPUT
|
||||
|
||||
INPUT ARRAY ruta FROM sdibujo.* ATTRIBUTE(WITHOUT DEFAULTS)
|
||||
BEFORE ROW
|
||||
LET curr = arr_curr()
|
||||
DISPLAY ruta[curr] TO imagen
|
||||
|
||||
ON ACTION actualiza
|
||||
WHENEVER ERROR CONTINUE
|
||||
BEGIN WORK
|
||||
DELETE FROM prtb00029 WHERE num_oc = prtb08.num_oc
|
||||
LET inserte_dibujo = FALSE
|
||||
FOR idx = 1 TO arr_count()
|
||||
|
||||
IF ruta[idx] IS NOT NULL THEN
|
||||
LET filedestino = FGL_GETENV("IMAGENNOMINA")
|
||||
LET filedestino = filedestino CLIPPED,"\\DIBUJOSORDENES\\",idx USING "&&&","-",prtb08.num_oc USING "&&&&&&",".jpg"
|
||||
# CALL fgl_winmessage("2",filedestino,"info")
|
||||
# CALL fgl_winmessage("3",ruta[idx],"info")
|
||||
|
||||
CALL fgl_getfile(ruta[idx],filedestino)
|
||||
|
||||
INSERT INTO prtb00029 (num_oc,ruta_file,id)
|
||||
VALUES (prtb08.num_oc,filedestino,idx)
|
||||
IF STATUS < 0 THEN
|
||||
ROLLBACK WORK
|
||||
CALL fgl_winmessage("ERROR","NO ACTUALICE DIBUJO EN LA ORDEN","INFO")
|
||||
EXIT FOR
|
||||
ELSE
|
||||
COMMIT WORK
|
||||
END IF
|
||||
LET inserte_dibujo = TRUE
|
||||
LET filedestino = NULL
|
||||
END IF
|
||||
END FOR
|
||||
IF inserte_dibujo THEN
|
||||
SELECT a.email INTO email FROM seg0000 a
|
||||
WHERE a.sec_vend = prtb08.sec_vend
|
||||
|
||||
LET emailsubject = "ACTUALIZACION DIBUJO ORDEN"
|
||||
LET emailbody = " LA ORDEN ",prtb08.num_oc USING "&&&&&&"," TIENE EL DIBUJO DISPONIBLE PARA VERIFICAR"
|
||||
LET procedimiento = "{ call cc_avisadespacho(?,?,?,?) }" CLIPPED
|
||||
CALL envia_correo(email,copiaemail,emailbody,emailsubject,procedimiento)
|
||||
CALL fgl_winmessage("Warning","Actualizacion Exitosa","info")
|
||||
END IF
|
||||
|
||||
|
||||
ON ACTION dibujo
|
||||
LET curr = arr_curr()
|
||||
|
||||
|
||||
CALL ui.Interface.frontCall("standard","openfile", [dir_file,d_tipos,f_tipos,mensaje], [filepath] )
|
||||
|
||||
IF filepath IS NOT NULL THEN
|
||||
DISPLAY "filepath ",filepath
|
||||
|
||||
LET ruta[curr]= filepath CLIPPED
|
||||
DISPLAY ruta[curr] TO imagen
|
||||
|
||||
|
||||
|
||||
END IF
|
||||
AFTER ROW
|
||||
LET curr = arr_curr()
|
||||
IF ruta[curr] IS NOT NULL THEN
|
||||
DISPLAY ruta[curr] TO imagen
|
||||
END IF
|
||||
END INPUT
|
||||
ON ACTION CANCEL
|
||||
LET INT_FLAG = FALSE
|
||||
CALL msg(2)
|
||||
EXIT DIALOG
|
||||
|
||||
CLOSE WINDOW w1
|
||||
END DIALOG
|
||||
END FUNCTION
|
||||
Reference in New Issue
Block a user