Histórico da Página
...
oMdlTab:SetValue('SEL_DETAIL',"EL_HRPAGO", "12:00:00") // Campo Hora de pago para México
oMdlTab:SetValue('SEL_DETAIL',"EL_HORA", "11:00:13") // Campo Hora para México
...
- EL_FACTOR
- FACTOR
- VALUE
- RECNO
Para más información consultar el siguiente enlace: DT Recibo de cobro por factoraje TOTVS Recibo MEX
Ejemplo:
Bloco de código | ||||
---|---|---|---|---|
| ||||
//Operación de factoraje oMdlTab:SetValue('SEL_DETAIL','EL_FACTOR' , "1") // Informar 1 para indicar que es operación de factoraje oMdlTab:SetValue('FAC_DETAIL','FACTOR',"1") // Informar 1 para indicar que es operación de factoraje oMdlTab:SetValue('FAC_DETAIL','VALUE',1500) // Valor correspondiente a la compensación realizada desde rutina Compensación entre carteras. oMdlTab:SetValue('COM_DETAIL','RECNO',478) // Número de registro en la tabla Movimientos Bancarios. |
...
jData['origin'] - Rutina origen la cual debe ser "FINA998"
jData['imppdf'] - Propiedad que define si se imprime recibo o no, .T. - se imprime recibo , .F. - No imprime
jData['sendemail'] - Propiedad que define si el recibo se enviara por correo, .T. - Se enviara por correo, .F. - No se enviará.
jData['email'] - Propiedad que define al correo donde se enviará el recibo.
jData['emailcc'] - Propiedad que define el correo con copia al cual se enviará el recibo
jData['serie'] - Serie del recibo
jData['recibo'] - Número de recibo
jData['cliente'] - Cliente del recibo utilizada en la función validar los títulos que contiene el recibo y ver si puede ser timbrado(función validTitles)
jData['filial'] - Filial del recibo (tabla SEL)
jData['client'] - Cliente del recibo
Para más información sobre el proceso de Generación de Complemento de recepción de pago consultar el siguiente enlace: DT Complemento de Recepción de Pago V 2.0 del CFDI 4.0
Informações | ||
---|---|---|
| ||
Para generar recibos con serie, es necesario contar con el parámetro MV_SERREC igual a ".T." y a su vez obtener el número consecutivo de la tabla SX5 o en su defecto informarlo de forma directa, cuidando que la numeración sea la correcta. Ejemplo para obtener el consecutivo del recibo de la tabla SX5: DbSelectArea("SX5") |
...
Para generar un recibo de cobro de tipo Compensación se deben informar las siguientes propiedades en el modelo:
- EL_IDENTEE - Identificador de la compensación generada por medio de la rutina Compensación entre carteras(campo E5_IDENTEE).
- EL_FCHIDEN - Fecha de la compensación generada por medio de la rutina Compensación entre carteras (campo E5_DATA).
Para más información del proceso consultar le siguiente enlace: DT Recibo de cobro por compensaciones - TOTVS Recibo MEX
Ejemplo:
Bloco de código | ||||
---|---|---|---|---|
| ||||
#INCLUDE "PROTHEUS.CH" #INCLUDE "FWMVCDEF.CH" #INCLUDE "FWEVENTVIEWCONSTS.CH" #INCLUDE 'FINA887.CH' Function F887FINAUTO() Local oMdlTab Local cCRLF := (chr(10)+chr(13)) Local cMsj := "Recibo registrado con éxito." + cCRLF Local cRecibo := "COMP09" Local cSerie := " " Local cReciboS := "" Local cSerieS := " " Local cMotC := "" Local cCliente := "CSERVI" Local jData := JsonObject():New() Local aResTmp := {} Local nY := 0 SetFunName("FINA887") oMdlTab := FwLoadModel("FINA887") oMdlTab:SetOperation(MODEL_OPERATION_INSERT) oMdlTab:Activate() //Encabezado - FJT oMdlTab:SetValue('FJT_MASTER', "FJT_FILIAL" , xFilial("FJT")) // FILIAL 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" , "") oMdlTab:SetValue('FJT_MASTER', "DOCUMEN" , "RA") 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" , 500 ) oMdlTab:SetValue('MOE_DETAIL',"SALDO" , 0 ) oMdlTab:GetModel('MOE_DETAIL' ):AddLine() oMdlTab:SetValue('MOE_DETAIL',"MOEDA" , "2") oMdlTab:SetValue('MOE_DETAIL',"TASA" , 0) oMdlTab:SetValue('MOE_DETAIL',"RECIBIDO" , 0) oMdlTab:SetValue('MOE_DETAIL',"SALDO" , 0 ) //Agregar forma de pago tipo CO 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) oMdlTab:SetValue('SEL_DETAIL',"EL_TIPO" , "CO") oMdlTab:SetValue('SEL_DETAIL',"EL_FILIAL" , xFilial("SEL")) oMdlTab:SetValue('SEL_DETAIL',"EL_TIPODOC" , "CO") 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" ,"3") oMdlTab:SetValue('SEL_DETAIL',"EL_ACREBAN" ,"1") oMdlTab:SetValue('SEL_DETAIL',"EL_TERCEIR" ,"1") oMdlTab:SetValue('SEL_DETAIL',"EL_ENDOSSA" ,"2") 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_HRPAGO" ,"12:00:00") oMdlTab:SetValue('SEL_DETAIL',"EL_HORA" ,"12:00:13") oMdlTab:SetValue('SEL_DETAIL',"EL_PREFIXO" ,"CO") oMdlTab:SetValue('SEL_DETAIL',"EL_NUMERO" ,"COMP00-0009") oMdlTab:SetValue('SEL_DETAIL',"EL_VALOR" ,500) oMdlTab:SetValue('SEL_DETAIL',"EL_BANCO" ,"CX1") oMdlTab:SetValue('SEL_DETAIL',"EL_AGENCIA" ,"00001") oMdlTab:SetValue('SEL_DETAIL',"EL_CONTA" ,"0000000001") oMdlTab:SetValue('SEL_DETAIL',"EL_FORPGO" ,"17") // Forma de pago 17 - Compensación oMdlTab:SetValue('FAC_DETAIL','FACTOR',"2") // Recibo por compensaciones oMdlTab:SetValue('SEL_DETAIL',"EL_IDENTEE" , "000002") // Código de la compensación oMdlTab:SetValue('SEL_DETAIL',"EL_FCHIDEN" , STOD("20221229")) // Fecha en que se realizo la compensación. oMdlTab:SetValue('GEN_DETAIL',"HOURSAVERECEIPT" , "12:00:13" ) //Se ejecuta el commit If oMdlTab:VldData() oMdlTab:CommitData() Endif // Se obtienen los errores del modelo aError := oMdlTab:GetErrorMessage() If alltrim(aError[6]) <> "" cMsj := aError[6] else // Si no hubo errores al grabar recibo se procede con el timbrado jData['origin'] := "FINA998" jData['imppdf'] := .T. jData['sendemail'] := .F. jData['email'] := "" jData['emailcc'] := "" jData['serie'] := cSerie jData['recibo'] := cRecibo jData['cliente'] := cCliente jData['filial'] := xFilial("SEL") jData['client'] := cCliente FISA815(cRecibo, cSerie,,,@aResTmp,jData,cSerieS,cReciboS,cMotC) // Ciclo para concatenar la respuesta del timbrado. For nY := 1 To Len(aResTmp) cMsj += aResTmp[nY][3] + cCRLF Next nY Endif CONOUT("Mensaje de proceso: "+cMsj) oMdlTab:DeActivate() Return |
...
Para la generación de diferencia de cambio se requiere informar el parámetro MV_DIFCAMR igual a "S".contar con la siguiente configuración descrita en el siguiente enlace: DT Activación de Diferencia Cambiaria para TOTVS Recibos URU y ARG
A continuación se presenta un ejemplo para realizar la diferencia de cambio a traves del modelo:
...