Commit inicial: fuentes MBS ERP (Genero 6) + .gitignore + docs/SETUP_PC_MBS.md
This commit is contained in:
@@ -0,0 +1,96 @@
|
||||
FUNCTION files_ordenes(xnum_oc,xusuario,xclave)
|
||||
DEFINE xnum_oc INT,
|
||||
files_ordenes DYNAMIC ARRAY OF RECORD
|
||||
ruta_file VARCHAR(100),
|
||||
descrip_file VARCHAR(60),
|
||||
tipo_Doc VARCHAR(10),
|
||||
num_doc INT,
|
||||
nombre_file VARCHAR(100),
|
||||
documento BYTE
|
||||
END RECORD,
|
||||
idx SMALLINT,p_res INT,
|
||||
file_orden VARCHAR(100),
|
||||
xusuario,xclave VARCHAR(50),
|
||||
tmpdir_file,l_file STRING,
|
||||
documentos BYTE
|
||||
|
||||
CONNECT to "smarmotech" USER xusuario USING xclave
|
||||
|
||||
OPEN WINDOW w1 WITH FORM "ccfmwd007"
|
||||
DECLARE busca CURSOR FOR
|
||||
SELECT a.url_file_destino,' ',a.tipo_file,a.num_doc,a.nombre_file,a.documento FROM prtb00029 a
|
||||
WHERE a.num_oc = xnum_oc
|
||||
|
||||
LET idx = 1
|
||||
LOCATE files_ordenes[idx].documento IN MEMORY
|
||||
FOREACH busca INTO files_ordenes[idx].*
|
||||
IF files_ordenes[idx].tipo_Doc = 'CO' THEN
|
||||
LET files_ordenes[idx].descrip_file = 'CONDUCES'
|
||||
|
||||
END IF
|
||||
IF files_ordenes[idx].tipo_Doc = 'OT' THEN
|
||||
LET files_ordenes[idx].descrip_file = 'OTROS'
|
||||
|
||||
END IF
|
||||
IF files_ordenes[idx].tipo_Doc = 'DI' THEN
|
||||
LET files_ordenes[idx].descrip_file = 'DIBUJOS'
|
||||
|
||||
END IF
|
||||
IF files_ordenes[idx].tipo_Doc IS NULL THEN
|
||||
LET files_ordenes[idx].descrip_file = 'NO IDENTIFICADO'
|
||||
|
||||
END IF
|
||||
IF files_ordenes[idx].tipo_Doc = 'DE' THEN
|
||||
LET files_ordenes[idx].descrip_file = 'DEVOLUCIONES'
|
||||
|
||||
END IF
|
||||
|
||||
|
||||
LET idx = idx + 1
|
||||
LOCATE files_ordenes[idx].documento IN MEMORY
|
||||
END FOREACH
|
||||
IF idx = 1 THEN
|
||||
CALL fgl_Winmessage("INFO","ORDEN SELECCIONADA NO TIENE DOCUMENTOS ASIGNADOS","INFO")
|
||||
ELSE
|
||||
DISPLAY ARRAY files_ordenes TO sfiles.*
|
||||
ON ACTION abrir
|
||||
LET idx = arr_curr()
|
||||
{ TRY
|
||||
|
||||
LET file_orden=files_ordenes[idx].ruta_file CLIPPED
|
||||
CALL ui.Interface.frontCall("standard","launchurl", [file_orden],[p_res])
|
||||
|
||||
CATCH
|
||||
CALL fgl_winmessage("ERROR",err_get(STATUS),"INFO")
|
||||
END TRY
|
||||
}
|
||||
TRY
|
||||
LET tmpdir_file = "tmp\\",files_ordenes[arr_curr()].nombre_file
|
||||
|
||||
CALL files_ordenes[arr_curr()].documento.writeFile(tmpdir_file)
|
||||
|
||||
CALL ui.Interface.frontCall("standard","getenv", ["TEMP"], [l_file] )
|
||||
|
||||
LET l_file = l_file CLIPPED,"\\",files_ordenes[arr_curr()].nombre_file
|
||||
CALL fgl_putfile(tmpdir_file,l_file)
|
||||
|
||||
CALL ui.Interface.frontCall("standard","shellexec", [l_file],[p_res])
|
||||
|
||||
CATCH
|
||||
CALL fgl_winmessage("ERROR",err_get(STATUS),"INFO")
|
||||
END TRY
|
||||
|
||||
AFTER DISPLAY
|
||||
LET idx = arr_curr()
|
||||
LET file_orden = files_ordenes[idx].ruta_file
|
||||
EXIT DISPLAY
|
||||
END DISPLAY
|
||||
IF INT_FLAG THEN
|
||||
CALL fgl_winmessage("INFO","OPERACION CANCELADA","INFO")
|
||||
LET INT_FLAG = FALSE
|
||||
LET file_orden = NULL
|
||||
END IF
|
||||
END IF
|
||||
CLOSE WINDOW w1
|
||||
RETURN
|
||||
END FUNCTION
|
||||
Reference in New Issue
Block a user