Histórico da Página
...
Bloco de código | ||||
---|---|---|---|---|
| ||||
#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 FINA887 oMdlTab:SetOperation(MODEL_OPERATION_INSERT) // Se define la operación INSERT en activa el modelo oMdlTab:Activate() // Se activa el modelo //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 // Se activa el grupo de preguntas FIN988 para usar los valores de la tabla de preguntas SXI. 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" , 2820) // Monto total que suman las formas de pago oMdlTab:SetValue('MOE_DETAIL',"SALDO" , 0 ) // Saldo que queda por cobrar de los titulos x cobrar. Para generar un RA el saldo debe ser mayor a 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 las formas de pago - Campos de tabla SEL 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" , "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" ,"1") 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_FORPGO" ,"03") oMdlTab:SetValue('SEL_DETAIL',"EL_HRPAGO" ,"12:00:00") oMdlTab:SetValue('SEL_DETAIL',"EL_HORA" ,"11:00:13") oMdlTab:SetValue('SEL_DETAIL',"EL_PREFIXO" ,"TF") oMdlTab:SetValue('SEL_DETAIL',"EL_NUMERO" ,"TFAU-0000") oMdlTab:SetValue('SEL_DETAIL',"EL_VALOR" ,820) oMdlTab:SetValue('SEL_DETAIL',"EL_BANCO" ,"CX1") oMdlTab:SetValue('SEL_DETAIL',"EL_AGENCIA" ,"00001") oMdlTab:SetValue('SEL_DETAIL',"EL_CONTA" ,"0000000001") //Para agregar una nueva linea al grid de las formas de pago oMdlTab:GetModel('SEL_DETAIL' ):AddLine() 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" , "EF") oMdlTab:SetValue('SEL_DETAIL',"EL_FILIAL" , xFilial("SEL")) oMdlTab:SetValue('SEL_DETAIL',"EL_TIPODOC" , "EF") 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" ,"1") 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_FORPGO" ,"01") oMdlTab:SetValue('SEL_DETAIL',"EL_HRPAGO" ,"12:00:00") oMdlTab:SetValue('SEL_DETAIL',"EL_HORA" ,"11:00:13") oMdlTab:SetValue('SEL_DETAIL',"EL_PREFIXO" ,"EF") oMdlTab:SetValue('SEL_DETAIL',"EL_NUMERO" ,"EFAUT-0009") oMdlTab:SetValue('SEL_DETAIL',"EL_VALOR" ,2000) oMdlTab:SetValue('SEL_DETAIL',"EL_BANCO" ,"") oMdlTab:SetValue('SEL_DETAIL',"EL_AGENCIA" ,"") oMdlTab:SetValue('SEL_DETAIL',"EL_CONTA" ,"") //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" ,"00000000000000000188" ) oMdlTab:SetValue('SE1_DETAIL',"E1_PARCELA" , "A") oMdlTab:SetValue('SE1_DETAIL',"E1_TIPO" , "NF") oMdlTab:SetValue('SE1_DETAIL',"E1_CLIENTE" , "CSERVI") 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" , 2320) oMdlTab:SetValue('SE1_DETAIL',"BAIXAR" , 2320) oMdlTab:SetValue('SE1_DETAIL',"RECNO" , 239) oMdlTab:SetValue('SE1_DETAIL',"E1_MOTIVO" , "NOR") //Para agregar una nueva linea al grid de titulos x cobrar oMdlTab:GetModel('SE1_DETAIL' ):AddLine() oMdlTab:SetValue('SE1_DETAIL',"E1_FILIAL" , xFilial("SE1")) oMdlTab:SetValue('SE1_DETAIL',"E1_PREFIXO" , "A" ) oMdlTab:SetValue('SE1_DETAIL',"E1_NUM" ,"00000000000000000189" ) oMdlTab:SetValue('SE1_DETAIL',"E1_PARCELA" , "A") oMdlTab:SetValue('SE1_DETAIL',"E1_TIPO" , "NF") oMdlTab:SetValue('SE1_DETAIL',"E1_CLIENTE" , "CSERVI") 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" , 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 // 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[7]) <> "" cMsj := aError[7] Endif CONOUT("Mensaje de proceso: "+cMsj) oMdlTab:DeActivate() Return |
Factoraje Financiero
Para realizar una operación de factoraje es importante informar las siguientes propiedades en el modelo:
- EL_FACTOR
- FACTOR
- VALUE
- RECNO
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. |
Recibo con recibo sustituto
Para generar un recibo que contiene un recibo de cobro relacionado previamente anulado con motivo 01 - Comprobante emitido con errores con relación se deben informar las siguientes propiedades:
Bloco de código | ||||
---|---|---|---|---|
| ||||
//Agregar recibo sustituto
oMdlTab:SetValue('SEL_DETAIL',"EL_SERSUS" , cSerieS )
oMdlTab:SetValue('SEL_DETAIL',"EL_RECSUS" , cReciboS ) |
Card documentos Informacao Utilice este box para resaltar información relevante y/o de destaque. Titulo ¡IMPORTANTE!
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas