#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "FWEVENTVIEWCONSTS.CH"
#INCLUDE 'FINA887.CH'
Function F887FINAUTO()
Local oMdlTab
Local cMsj := "Recibo registrado con exito."
Local cRecibo := "AUTRE2"
Local cSerie := " "
Local cCliente := "CSERVI"
SetFunName("FINA887")
// Se define el modelo FINA887
oMdlTab := FwLoadModel("FINA887")
// Se define la operación INSERT en el modelo
oMdlTab:SetOperation(MODEL_OPERATION_INSERT)
// Se activa el modelo
oMdlTab:Activate()
//Encabezado de recibo - FJT
oMdlTab:SetValue('FJT_MASTER', "FJT_FILIAL" , xFilial("FJT"))
oMdlTab:SetValue('FJT_MASTER', "FJT_DTDIGI" , dDataBase )
oMdlTab:SetValue('FJT_MASTER', "FJT_RECIBO" , cRecibo )
oMdlTab:SetValue('FJT_MASTER', "FJT_SERIE" , cSerie)
oMdlTab:SetValue('FJT_MASTER', "FJT_EMISSA" , dDataBase)
oMdlTab:SetValue('FJT_MASTER', "FJT_NATURE" , "COBRO ")
oMdlTab:SetValue('FJT_MASTER', "FJT_CLIENT" , cCliente )
oMdlTab:SetValue('FJT_MASTER', "FJT_LOJA" , "01")
oMdlTab:SetValue('FJT_MASTER', "FJT_COBRAD" , "")
oMdlTab:SetValue('FJT_MASTER', "FJT_RECPRV" ,"")
oMdlTab:SetValue('FJT_MASTER', "GERANCC" , "") // Para generación de RA, S - Genera RA | N o vacio - No genera RA
oMdlTab:SetValue('FJT_MASTER', "DOCUMEN" , "RA") // Documento a generar saldo
grupo de preguntas FIN988 para usar los valores de la tabla de preguntas SXI.
Pergunte("FIN998",.F.)
modelo
oMdlTab:Activate()
//Encabezado de recibo - FJT
oMdlTab:SetValue('FJT_MASTER', "FJT_FILIAL" , xFilial("FJT"))
oMdlTab:SetValue('FJT_MASTER', "FJT_DTDIGI" , dDataBase )
oMdlTab:SetValue('FJT_MASTER', " |
| ASIENTO MV_PAR01)//¿Muestra Asientos ? cRecibo )
oMdlTab:SetValue('FJT_MASTER', " |
| AGRUPA MV_PAR02) // ¿Agrupa Asientos ? cSerie)
oMdlTab:SetValue('FJT_MASTER', " |
| ONLINEFJT_EMISSA" , dDataBase)
oMdlTab:SetValue('FJT_MASTER', |
| MV_PAR03) //¿Asientos Online ?
//Monedas
"FJT_NATURE" , "COBRO ")
oMdlTab:SetValue('FJT_MASTER', "FJT_CLIENT" , cCliente )
oMdlTab:SetValue(' |
| MOEDETAILMOEDA 1MOEDETAILTASA 1MOEDETAIL"RECIBIDO" , 2820) // Monto total que suman las formas de pago "FJT_RECPRV" ,"")
oMdlTab:SetValue('FJT_MASTER', "GERANCC" , "")
oMdlTab:SetValue(' |
| MOEDETAILSALDO 0 Saldo que queda por cobrar de los titulos x cobrar.
oMdlTab:GetModel('MOE_DETAIL' ):AddLine()
oMdlTab:SetValue('MOE_DETAIL',"MOEDA" , "2")
Se activa el grupo de preguntas FIN988 para usar los valores de la tabla de preguntas SX1.
Pergunte("FIN998",.F.)
oMdlTab:SetValue(' |
| MOEDETAILTASA , 0), MV_PAR01) // ¿Muestra Asientos ?
oMdlTab:SetValue(' |
| MOEDETAILRECIBIDO0)MV_PAR02) // ¿Agrupa Asientos ?
oMdlTab:SetValue(' |
| MOEDETAILSALDO 0 )
MV_PAR03) //¿Asientos Online ? |
| //Agregarlasformasdepago-CamposdetablaSEL//Monedas
oMdlTab:SetValue(' |
| SELEL_CLIENTE cCliente SELEL_NATUREZ"COBRO "SELEL_LOJA , "01"), 2820) // Monto total que suman las formas de pago.
oMdlTab:SetValue(' |
| SELEL_DTDIGITdDataBase)
oMdlTab:SetValue('SEL0 ) // Saldo que queda por cobrar entre los títulos x cobrar y las formas de pago.
oMdlTab:GetModel('MOE_DETAIL' ):AddLine()
oMdlTab:SetValue('MOE_DETAIL'," |
| EL_TIPOTF SELEL_FILIALxFilial("SEL")SELEL_TIPODOC "TF" SELEL_MOEDA, "1")
oMdlTab:SetValue('SEL_DETAIL',"EL_EMISSAO" ,dDataBase), 0 )
// Agregar las formas de pago - Campos de tabla SEL
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| DTVCTOdDataBase)
)
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| TPCRED1 oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| ACREBAN1 oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| TERCEIR,"1" , dDataBase)
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| ENDOSSA2TF")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| TRANSIT,2 oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| VERSAO00TF")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| SELDOC21")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| FORPGO"03"dDataBase)
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| HRPAGO"12:00:00"dDataBase)
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| HORA"11:00:13"1")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| PREFIXOTF1")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| NUMEROTFAU-00001")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| VALOR820"2")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| BANCOCX12")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| AGENCIA0000100")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| CONTA0000000001
//Paraagregarunanuevalinea al grid de las formas de pago
GetModel_DETAIL' ):AddLine()
_DETAIL',"EL_FORPGO" ,"03")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| CLIENTE ,cCliente)
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| NATUREZ , "COBRO")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| LOJA 01 oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| DTDIGIT , dDataBase,"TFAU-0000")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| TIPO , "EF",820)
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| FILIAL xFilial(SEL) oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| TIPODOC EF00001")
oMdlTab:SetValue('SEL_DETAIL'," |
| EL_MOEDA" , "1")
oMdlTab:SetValueEL_CONTA" ,"0000000001")
//Para agregar una nueva linea al grid de las formas de pago
oMdlTab:GetModel('SEL_DETAIL' |
| ,"EL_EMISSAO" ,dDataBase)
):AddLine()
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| DTVCTOdDataBase)
cCliente )
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| TPCRED1 oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| ACREBAN1 oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| TERCEIR,"1" , dDataBase)
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| ENDOSSA2EF")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| TRANSIT,2 oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| VERSAO00EF")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| SELDOC21")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| FORPGO"01"dDataBase)
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| HRPAGO"12:00:00"dDataBase)
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| HORA11:00:131")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| PREFIXOEF1")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| NUMEROEFAUT-00091")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| VALOR2000"2")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| BANCOTRANSIT" ,"2")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| AGENCIAVERSAO" ,"00")
oMdlTab:SetValue('SEL_DETAIL',"EL_ |
| CONTA")
//Detalle de los titulos x cobrar - Tabla SE1SE1E1FILIAL xFilial(SE1) SE1E1PREFIXO A SE1E1NUM 00000000000000000188 SE1E1PARCELA A SE1E1TIPO NF SE1E1CLIENTE , "CSERVI" SE1E1LOJA 01 SE1E1DESCONT , 0 SE1E1MULTA , 0)
,"0000000001")
//Detalle de los titulos x cobrar - Tabla SE1
oMdlTab:SetValue('SE1_DETAIL',"E1_ |
| JUROS0xFilial("SE1"))
oMdlTab:SetValue('SE1_DETAIL',"E1_ |
| SALDO2320"A" )
oMdlTab:SetValue('SE1_DETAIL'," |
| BAIXAR, 2320 ,"00000000000000000188" )
oMdlTab:SetValue('SE1_DETAIL'," |
| RECNO 239"A")
oMdlTab:SetValue('SE1_DETAIL',"E1_ |
| MOTIVO" , "NOR")
//Para agregar una nueva linea al grid de titulos x cobrarGetModelSetValue('SE1_DETAIL',"E1_CLIENTE" |
| ):AddLine()
, cCliente)
oMdlTab:SetValue('SE1_DETAIL',"E1_ |
| FILIALxFilial(SE1)
oMdlTab:SetValue('SE1_DETAIL',"E1_ |
| PREFIXO"A" 0)
oMdlTab:SetValue('SE1_DETAIL',"E1_ |
| NUMMULTA" , 0)
oMdlTab:SetValue('SE1_DETAIL', |
| "00000000000000000189" "E1_JUROS" , 0)
oMdlTab:SetValue('SE1_DETAIL',"E1_ |
| PARCELA"A"2320)
oMdlTab:SetValue('SE1_DETAIL'," |
| E1_TIPO "NF"2320)
oMdlTab:SetValue('SE1_DETAIL'," |
| E1_CLIENTE "CSERVI" 239)
oMdlTab:SetValue('SE1_DETAIL',"E1_ |
| LOJA" , "01")MOTIVO" , "NOR")
//Para agregar una nueva linea al grid de titulos x cobrar
oMdlTab: |
| SetValue,"E1_DESCONT" , 0) ):AddLine()
oMdlTab:SetValue('SE1_DETAIL',"E1_ |
| MULTA0xFilial("SE1"))
oMdlTab:SetValue('SE1_DETAIL',"E1_ |
| JUROS0"A" )
oMdlTab:SetValue('SE1_DETAIL',"E1_ |
| SALDO 1160"00000000000000000189" )
oMdlTab:SetValue('SE1_DETAIL'," |
| BAIXAR500"A")
oMdlTab:SetValue('SE1_DETAIL'," |
| RECNO 240"NF")
oMdlTab:SetValue('SE1_DETAIL',"E1_ |
| MOTIVO"NOR"
FAC'FACTOR',"2") // Factoraje financiero, 1 - Indica que es una operación de factoraje | 2 - No es operación de factoraje
"E1_LOJA" , "01")
oMdlTab:SetValue(' |
| GENHOURSAVERECEIPT"09:00:13" ) // Hora de guardado del recibo.
//Se ejecuta el commit
If oMdlTab:VldData() // Se detonan las validaciones del modelo
// Si pasa las validaciones, se ejecutara el CommitData del modelo para guardar los datos.
oMdlTab:CommitData()
Endif
// En caso de usar número consecutivos en el recibo
If !Empty(GetSx3Cache("EL_RECIBO","X3_RELACAO"))
If Alltrim(cRecibo) <> Alltrim(InitPad(GetSX3Cache("EL_RECIBO","X3_RELACAO")))
RollBackSX8()
EndIf
EndIf
// Se obtienen los errores0)
oMdlTab:SetValue('SE1_DETAIL',"E1_MULTA" , 0)
oMdlTab:SetValue('SE1_DETAIL',"E1_JUROS" , 0)
oMdlTab:SetValue('SE1_DETAIL',"E1_SALDO" , 1160)
oMdlTab:SetValue('SE1_DETAIL',"BAIXAR" , 500)
oMdlTab:SetValue('SE1_DETAIL',"RECNO" , 240)
oMdlTab:SetValue('SE1_DETAIL',"E1_MOTIVO" , "NOR")
oMdlTab:SetValue('FAC_DETAIL','FACTOR',"2") // Factoraje financiero, 1 - Indica que es una operación de factoraje | 2 - No es operación de factoraje
oMdlTab:SetValue('GEN_DETAIL',"HOURSAVERECEIPT" , "09:00:13" ) // Hora de guardado del recibo.
//Se ejecuta el commit
If oMdlTab:VldData() // Se detonan las validaciones del modelo
|
| aError:=oMdlTab:GetErrorMessage()
If alltrim(aError[7]) <> ""
cMsj := aError[7]
Endif
CONOUT("Mensaje de proceso: "+cMsj)
oMdlTab:DeActivate()
Return |