Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Cross Segmentos - TOTVS BackOffice (Línea Protheus) MI - Financiero (SIGAFIN) - Rutina automática de TOTVS Recibo


time.png Tiempo aproximado para lectura: 1:00 min

Duda

¿Cómo validar un ejemplo de ejecución automática del TOTVS Recibo (FINA998)?

Ambiente
Cross Segmentos - TOTVS BackOffice (Línea Protheus) - MI - Financiero (SIGAFIN) - A partir de versión 12.1.2210

Solución
Para validar la ejecución del Totvs Recibo como rutina automática, es necesario utilizar el modelo definido para recibos (FINA887). En el modelo de Recibos de Cobro (FINA887), se definen todos los campos de la tablas de Encabezado de recibos (FJT) y Recibos de Cobro (SEL) dependiendo del país donde se ejecute.

Sigue un ejemplo de validación:

#INCLUDE "PROTHEUS.CH"
#INCLUDE "FWMVCDEF.CH"
#INCLUDE "FWEVENTVIEWCONSTS.CH"
#INCLUDE 'FINA887.CH'
#Include "RwMake.ch"
#Include "TbiConn.ch"

User Function F887FINAUTO()

Local oMdlTab
Local cMsj := "Recibo registrado con Exito!"
Local cRecibo := "000000000017"
Local cSerie := "UNI"
Local cCliente := "000001"

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" , "COBROS ")
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" , "N") // Para generación de RA, S - Genera RA | N o vacío - No genera RA
oMdlTab:SetValue('FJT_MASTER', "DOCUMEN" , "RA")

// Se activa el grupo de preguntas FIN988 para usar los valores de la tabla de preguntas SX1.
Pergunte("FIN998",.F.)

oMdlTab:SetValue('FJT_MASTER', "ASIENTO" , MV_PAR01) // ¿Muestra Asientos ?
oMdlTab:SetValue('FJT_MASTER', "AGRUPA" , MV_PAR02) // ¿Agrupa Asientos ?
oMdlTab:SetValue('FJT_MASTER', "ONLINE" , MV_PAR03) //¿Asientos Online ?

//Monedas
oMdlTab:SetValue('MOE_DETAIL',"MOEDA" , "1")
oMdlTab:SetValue('MOE_DETAIL',"TASA" , 1)
oMdlTab:SetValue('MOE_DETAIL',"RECIBIDO" , 1000) // Monto total que suman las formas de pago.
oMdlTab:SetValue('MOE_DETAIL',"SALDO" , 0 ) // 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',"MOEDA" , "2")
oMdlTab:SetValue('MOE_DETAIL',"TASA" , 850)
oMdlTab:SetValue('MOE_DETAIL',"RECIBIDO" , 0)
oMdlTab:SetValue('MOE_DETAIL',"SALDO" , 0 )

// Agregar las formas de pago - Campos de tabla SEL
oMdlTab:SetValue('SEL_DETAIL',"EL_CLIENTE" , cCliente )
oMdlTab:SetValue('SEL_DETAIL',"EL_NATUREZ" , "COBROS ")
oMdlTab:SetValue('SEL_DETAIL',"EL_LOJA" , "01")
oMdlTab:SetValue('SEL_DETAIL',"EL_DTDIGIT" , dDataBase)
oMdlTab:SetValue('SEL_DETAIL',"EL_TIPO" , "TF")
oMdlTab:SetValue('SEL_DETAIL',"EL_FILIAL" , xFilial("SEL"))
oMdlTab:SetValue('SEL_DETAIL',"EL_TIPODOC" , "TF")
oMdlTab:SetValue('SEL_DETAIL',"EL_MOEDA" , "1")
oMdlTab:SetValue('SEL_DETAIL',"EL_EMISSAO" ,dDataBase)
oMdlTab:SetValue('SEL_DETAIL',"EL_DTVCTO" ,dDataBase)
oMdlTab:SetValue('SEL_DETAIL',"EL_TPCRED" ,"")
oMdlTab:SetValue('SEL_DETAIL',"EL_ACREBAN" ,"1")
oMdlTab:SetValue('SEL_DETAIL',"EL_TERCEIR" ,"")
oMdlTab:SetValue('SEL_DETAIL',"EL_ENDOSSA" ,"")
oMdlTab:SetValue('SEL_DETAIL',"EL_TRANSIT" ,"2")
oMdlTab:SetValue('SEL_DETAIL',"EL_VERSAO" ,"00")
oMdlTab:SetValue('SEL_DETAIL',"EL_SELDOC" ,"2")
oMdlTab:SetValue('SEL_DETAIL',"EL_PREFIXO" ,"")
oMdlTab:SetValue('SEL_DETAIL',"EL_NUMERO" ,"24030730")
oMdlTab:SetValue('SEL_DETAIL',"EL_VALOR" ,1000)
oMdlTab:SetValue('SEL_DETAIL',"EL_BANCO" ,"001")
oMdlTab:SetValue('SEL_DETAIL',"EL_AGENCIA" ,"123 ")
oMdlTab:SetValue('SEL_DETAIL',"EL_CONTA" ,"123456789 ")

//Detalle de los titulos x cobrar - Tabla SE1
oMdlTab:SetValue('SE1_DETAIL',"E1_FILIAL" , xFilial("SE1"))
oMdlTab:SetValue('SE1_DETAIL',"E1_PREFIXO" , "A" )
oMdlTab:SetValue('SE1_DETAIL',"E1_NUM" ,"001024030701" )
oMdlTab:SetValue('SE1_DETAIL',"E1_PARCELA" , " ")
oMdlTab:SetValue('SE1_DETAIL',"E1_TIPO" , "NF")
oMdlTab:SetValue('SE1_DETAIL',"E1_CLIENTE" , cCliente)
oMdlTab:SetValue('SE1_DETAIL',"E1_LOJA" , "01")
oMdlTab:SetValue('SE1_DETAIL',"E1_DESCONT" , 0)
oMdlTab:SetValue('SE1_DETAIL',"E1_MULTA" , 0)
oMdlTab:SetValue('SE1_DETAIL',"E1_JUROS" , 0)
oMdlTab:SetValue('SE1_DETAIL',"E1_SALDO" , 1000)
oMdlTab:SetValue('SE1_DETAIL',"BAIXAR" , 1000)
oMdlTab:SetValue('SE1_DETAIL',"RECNO" , 39)
oMdlTab:SetValue('SE1_DETAIL',"E1_MOTIVO" , "NOR")

oMdlTab:SetValue('GEN_DETAIL',"HOURSAVERECEIPT" , "09:00:00" ) // 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 errores del modelo
aError := oMdlTab:GetErrorMessage()
If alltrim(aError[6]) <> ""
cMsj := aError[6]
Endif

CONOUT("Mensaje de proceso: "+cMsj)

oMdlTab:DeActivate()

Return


Conozca más
Para adquirir más conocimiento, acceda al siguiente enlace:
TDN: TOTVS Recibo - Uso como rutina automática

¿Fue útil este artículo?
Usuarios a los que les pareció útil: 0 de 0

0 Comentarios

Inicie sesión para dejar un comentario.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Rellene los campos siguientes para iniciar el chat:

Chat _