Commit inicial: fuentes MBS ERP (Genero 6) + .gitignore + docs/SETUP_PC_MBS.md
This commit is contained in:
@@ -0,0 +1,210 @@
|
||||
{
|
||||
---------------------------------------------------------------------------
|
||||
PROGRAMA : NOPRMT026
|
||||
OBJETIVO : PROCESO PARA EL PAGO DE LA TESORERIA DE LA SEGURIDAD SOCIAL
|
||||
PROGRAMADOR : Ing. JUAN SOTO
|
||||
FECHA REALIZACION : MAYO 31, 2005
|
||||
---------------------------------------------------------------------------
|
||||
}
|
||||
GLOBALS
|
||||
DEFINE file,rcol,arch_pc,fila_excel,prog STRING,
|
||||
p_res INT,cuenta,xi SMALLINT
|
||||
END GLOBALS
|
||||
MAIN
|
||||
DEFER INTERRUPT
|
||||
CALL pago_tss()
|
||||
END MAIN
|
||||
|
||||
FUNCTION pago_tss()
|
||||
|
||||
DEFINE ptss RECORD
|
||||
ficha INTEGER,
|
||||
nom1 VARCHAR,
|
||||
apell1 VARCHAR,
|
||||
apell2 VARCHAR,
|
||||
sexo VARCHAR,
|
||||
cedula CHAR(11),
|
||||
fecha_n DATE,
|
||||
valor_tss DEC(12,2),
|
||||
valor_isr DEC(12,2)
|
||||
END RECORD,
|
||||
fecha_inicial,fecha_final DATE,
|
||||
kano,kmes, cnt,numero_msg SMALLINT,
|
||||
cels CHAR(40),
|
||||
filename,sysos CHAR(200),
|
||||
archivo1 CHAR(125),
|
||||
periodo CHAR(6),
|
||||
valor_boni DEC(12,2)
|
||||
|
||||
|
||||
|
||||
OPTIONS
|
||||
FORM LINE 9,
|
||||
ERROR LINE 24
|
||||
|
||||
OPEN FORM nofmmt026 FROM "nofmmt026"
|
||||
DISPLAY FORM nofmmt026
|
||||
|
||||
INPUT BY NAME kano,kmes
|
||||
|
||||
|
||||
IF int_flag THEN
|
||||
LET numero_msg = 2
|
||||
CALL msg(numero_msg)
|
||||
LET int_flag = FALSE
|
||||
RETURN
|
||||
END IF
|
||||
LET periodo = kmes USING "&&",kano USING "&&&&"
|
||||
|
||||
|
||||
LET prog = "EXCEL"
|
||||
|
||||
CALL ui.Interface.frontCall("standard","getenv", ["USTSS"], [file] )
|
||||
|
||||
|
||||
LET arch_pc='"',file,'"' -- le agrega las comillas por si hay blancos (solo se necesita para shellexec)
|
||||
|
||||
CALL ui.Interface.frontCall("standard","shellexec", [arch_pc], [p_res] )
|
||||
CALL chqDdeError(p_res,"shellexec "||arch_pc)
|
||||
|
||||
CALL ui.Interface.frontCall("WINDDE","DDEConnect", [prog,file], [p_res] )
|
||||
CALL chqDdeError(p_res,"DDEConnect "||file)
|
||||
|
||||
CALL ui.Interface.refresh()
|
||||
LET periodo ='032010'
|
||||
LET rcol = "C4"
|
||||
LET xi = 8
|
||||
CALL pru_new_dde(periodo,rcol,xi)
|
||||
|
||||
LET cnt = 14
|
||||
|
||||
LET rcol = "C2"
|
||||
LET xi = cnt
|
||||
CALL pru_new_dde("001",rcol,xi)
|
||||
|
||||
LET rcol = "C3"
|
||||
LET xi = cnt
|
||||
CALL pru_new_dde("C",rcol,xi)
|
||||
|
||||
LET ptss.cedula = '00104581939'
|
||||
LET rcol = "C4"
|
||||
LET xi = cnt
|
||||
CALL pru_new_dde(ptss.cedula,rcol,xi)
|
||||
|
||||
LET ptss.nom1 = 'JUAN'
|
||||
LET rcol = "C5"
|
||||
LET xi = cnt
|
||||
CALL pru_new_dde(ptss.nom1,rcol,xi)
|
||||
|
||||
LET ptss.apell1 = 'SOTO'
|
||||
LET rcol = "C6"
|
||||
LET xi = cnt
|
||||
CALL pru_new_dde(ptss.apell1,rcol,xi)
|
||||
|
||||
LET ptss.apell2 = 'CONCEPCION'
|
||||
LET rcol = "C7"
|
||||
LET xi = cnt
|
||||
CALL pru_new_dde(ptss.apell2,rcol,xi)
|
||||
|
||||
LET ptss.sexo = 'M'
|
||||
LET rcol = "C8"
|
||||
LET xi = cnt
|
||||
CALL pru_new_dde(ptss.sexo,rcol,xi)
|
||||
|
||||
LET ptss.fecha_n = '04/01/1993'
|
||||
LET rcol = "C9"
|
||||
LET xi = cnt
|
||||
CALL pru_new_dde(ptss.fecha_n,rcol,xi)
|
||||
|
||||
LET ptss.valor_tss = 2000
|
||||
LET rcol = "C10"
|
||||
LET xi = cnt
|
||||
CALL pru_new_dde(ptss.valor_tss,rcol,xi)
|
||||
|
||||
|
||||
LET ptss.valor_isr = 1000
|
||||
LET rcol = "C12"
|
||||
LET xi = cnt
|
||||
CALL pru_new_dde(ptss.valor_isr,rcol,xi)
|
||||
|
||||
|
||||
LET valor_boni = 6000
|
||||
LET rcol = "C13"
|
||||
LET xi = cnt
|
||||
CALL pru_new_dde(valor_boni,rcol,xi)
|
||||
|
||||
LET cnt = cnt + 1
|
||||
|
||||
CALL ui.Interface.frontCall("WINDDE","DDEFinish", [prog,file], [p_res] )
|
||||
CALL chqDdeError(p_res,"DDEFinish")
|
||||
|
||||
CALL ui.Interface.frontCall("WINDDE","DDEFinishAll", [], [p_res] )
|
||||
CALL chqDdeError(p_res,"DDEFinishAll")
|
||||
|
||||
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION pru_new_dde(xval,xcol,i)
|
||||
|
||||
DEFINE celda,rval,p_cmd,arch_pc,xval,xcol STRING
|
||||
DEFINE i INTEGER
|
||||
|
||||
|
||||
|
||||
LET fila_excel = "F"
|
||||
LET celda = fila_excel,i USING "<<<<&",xcol CLIPPED
|
||||
LET rval = xval
|
||||
# CALL fgl_winmessage("PROGRAMA",prog,"stop")
|
||||
# CALL fgl_winmessage("FILE",file,"stop")
|
||||
CALL fgl_winmessage("CELDA",celda,"stop")
|
||||
# CALL fgl_winmessage("rVAL",rval,"stop")
|
||||
# CALL fgl_winmessage("P_RES",p_res,"stop")
|
||||
CALL ui.Interface.frontCall("WINDDE","DDEPoke", [prog,file,celda,rval], [p_res] )
|
||||
CALL chqDdeError(p_res,"DDEPoke "||celda)
|
||||
|
||||
{
|
||||
MESSAGE "Salvando la planilla ",file CLIPPED," !"
|
||||
CALL ui.Interface.refresh()
|
||||
|
||||
LET p_cmd="[save()]"
|
||||
CALL ui.Interface.frontCall("WINDDE","DDEExecute", [prog,file,p_cmd], [p_res] )
|
||||
IF p_res THEN
|
||||
CALL fgl_winmessage("Planilla salvada", "Nombre = "||file, "information")
|
||||
ELSE
|
||||
CALL chqDdeError(p_res,"DDEExecute save")
|
||||
END IF
|
||||
|
||||
CAL ui.Interface.frontCall("WINDDE","DDEFinish", [prog,file], [p_res] )
|
||||
CALL chqDdeError(p_res,"DDEFinish")
|
||||
|
||||
CALL ui.Interface.frontCall("WINDDE","DDEFinishAll", [], [p_res] )
|
||||
CALL chqDdeError(p_res,"DDEFinishAll")
|
||||
}
|
||||
END FUNCTION
|
||||
|
||||
|
||||
FUNCTION chqDdeError(p_res,p_msg)
|
||||
|
||||
DEFINE p_res INTEGER,
|
||||
p_msg STRING,
|
||||
m_err STRING,
|
||||
m_log STRING
|
||||
|
||||
IF p_res THEN
|
||||
RETURN
|
||||
END IF
|
||||
|
||||
CALL ui.Interface.frontCall("WINDDE","DDEError",[],[m_err])
|
||||
CALL ui.Interface.frontCall("WINDDE","DDEFinishAll", [], [p_res] )
|
||||
|
||||
LET m_log="DDE Error: ",m_err CLIPPED," (",p_msg,")"
|
||||
|
||||
CALL errorlog(m_log)
|
||||
|
||||
LET m_log="Se ha producido un Error en '",p_msg CLIPPED,"'. Para mas detalle revise el LOG de errores."
|
||||
|
||||
CALL fgl_winmessage("DDE Error", m_log, "stop")
|
||||
|
||||
EXIT PROGRAM
|
||||
|
||||
END FUNCTION
|
||||
Reference in New Issue
Block a user