01. DATOS GENERALES
Producto | |
---|
Línea de producto: | |
---|
Segmento: | |
---|
Módulo: | SIGAFIN - Financiero |
---|
Función: | Rutina | Nombre Técnico | Fecha |
---|
|
---|
FINXFIN.PRX | Funciones genéricas del modulo financiero | FINA998.PRW | TOTVS RECIBO | 02/08/2022 | FINA998A.TLPP | TOTVS RECIBO | 02/08/2022 | COMMON-CONFIG.SERVICE.TLPP | Reglas de negocio | 02/08/2022 | PAYMENTFORM.SERVICE.TLPP | Controlador para obtener formas de pago | 02/08/2022 | PAYMENTFORM.SERVICE.TLPP | Servicio para obtener formas de pago | 02/08/2022 |
|
N/A |
País: | Argentina |
---|
Ticket: | N/A |
---|
Requisito/Story/Issue (informe el requisito vinculado): | DMINA-16537 |
---|
02. SITUACIÓN/REQUISITO
Utilizar el punto de entrada FINCMTC, el cual tiene la finalidad de personalizar el punto de partida y longitud de los campos Banco (EF_BANCO), Agencia (EF_AGENCIA), Código Postal (EF_POSTAL), Cheque (EF_NUM), Cuenta (EF_CONTA) y DV Cuenta en la cadena de caracteres que se introducen a través de la lectora de cheques.
Al no existir el punto de entrada, se utilizan las dimensiones estándar definidas en la rutina de funciones genéricas de financiero FINXFIN.PRX:
Posición inicial | Longitud | Descripción |
---|
2 | 3 | Banco |
5 | 3 | Agencia |
8 | 4 | Código Postal |
12 | 8 | Cheque |
20 | 10 | Cuenta |
30 | 1 | DV Cuenta |
03. SOLUCIÓN
Se activa el uso del punto de entrada FINCMTC que se ejecuta en la rutina FINXFIN.PRX - Funciones genéricas del modulo financiero.
Cuando es seleccionada una Forma de Pago de tipo CH, se muestra una ventana desde la cual se realiza la lectura del cheque, la cadena de caracteres leída se visualiza para confirmar. A continuación se ejecuta el punto de entrada FINCMTC a través del cual se puede personalizar la ubicación y longitud de los campos contenidos en la cadena de caracteres y que son requeridos por la rutina de Recibos.
Para más información sobre los puntos de entrada disponibles consulte el siguiente enlace: 5 - Puntos de entrada disponibles
Totvs custom tabs box |
---|
tabs | Paso 01Procedimiento de utilización, Paso 02, Paso 03, Paso 04 |
---|
ids | paso1,paso2Procedimiento de utilización |
---|
|
Totvs custom tabs box items |
---|
default | yes |
---|
referencia | paso1 |
---|
| Totvs custom tabs box items |
---|
|
|
04. INFORMACIÓN ADICIONAL
| - En el módulo configurador de Protheus (SIGACFG), configurar el parámetro MV_CMC7FIN = "S", el cual indica el uso o no de la lectora CMC7 en Financiero.
Crear la función de usuario FINCMTC para personalizar los campos a tomar de la lectora de cheques. - La función recibe como parámetro la cadena de la lectora de cheques, de esta cadena extraerá los campos requeridos y los asignará a un arreglo de 6 elementos:
- Banco (EF_BANCO).
- Agencia (EF_AGENCIA).
- Código Postal (EF_POSTAL).
- Cheque (EF_NUM) .
- Cuenta (EF_CONTA).
- DV Cuenta.
- Dentro del módulo Financiero (SIGAFIN) ejecutar la rutina Actualizaciones | Cuentas por cobrar | TOTVS Recibo.
- Ingresar un Nuevo Recibo, llenar los campos de consulta del encabezado y seleccionar un título a cobrar o compensar.
- En las Formas de Pago seleccionar en el campo Tipo (EL_TIPO) CH.
- Se visualizará la ventana para lectura del cheque.
Image Added
- Al dar clic en Ok en la ventana lectora de cheques, se ejecutará el punto de entrada FINCMTC.
- Si los datos son correctos se auto-rellenaran los campos Banco Cheque (EL_BCOCHQ), Agencia Cheque (EL_AGECHQ) y Código postal (EL_POSTAL) de la Forma de Pago.
Image Added Image Added |
|
04. INFORMACIÓN ADICIONAL
Descripción | Actualizaciones |
---|
Punto de entrada: | FINCMTC |
Nombre del programa fuente: | FINXFIN.PRW |
Parámetros recibidos: |
Nombre | Tipo | Descripción |
---|
PARAMIXB[1] | C | Cadena que se introduce en la ventana de la Lectora de Cheques. |
Ejemplo := 0<B240002400240123456789ASDFGHJK
Informações |
---|
| Cuando se usa una lectora de cheques se agrega un cero y un signo menor que (<) por lo que en caso de informar los valores manualmente, deberá asegurarse de que estos caracteres también sean indicados al inicio antes de la información del cheque. 0<B240002400240123456789ASDFGHJK |
|
Respuesta: |
Nombre | Tipo | Descripción | Obligatorio |
---|
aCmc7Tc | A | Arreglo que debe tener los campos requeridos por la Forma de Pago CH para el recibo de cobro:- Banco (EF_BANCO).
- Agencia (EF_AGENCIA).
- Código Postal (EF_POSTAL).
- Cheque (EF_NUM) .
- Cuenta (EF_CONTA).
- DV Cuenta
| Si |
|
Ejemplo:
#Include 'Protheus.ch'
User Function FINCMTC()
Local cCmc7 := Paramixb[1]
Local nTamBco := 0 As Numeric
Local nTamAge := 0 As Numeric
Local nTamCta := 0 As Numeric
Local nTamChq := 0 As Numeric
Local nTamCPo := 0 As Numeric
Local aCmc7Tc := {} As Array
If nTamBco == 0
nTamBco := TamSX3("EF_BANCO")[1]
Endif
If nTamAge == 0
nTamAge := TamSX3("EF_AGENCIA")[1]
Endif
If nTamCta == 0
nTamCta := TamSX3("EF_CONTA")[1]
Endif
If nTamChq == 0
nTamChq := TamSX3("EF_NUM")[1]
Endif
If nTamCPo == 0
nTamCPo := TamSX3("EF_POSTAL")[1]
Endif
//Se agrega al arreglo a retornar una subcadena de la cadena original, configurando la posición inicial de cada campo y su longitud
//AADD(Array al que se le agregaran los valores, SUBSTR(cadena de la lectora de cheques, numero editable que indica donde empieza la cadena y por ultimo el tamaño del campo))
Aadd( aCmc7Tc, SubStr(cCmc7, 2, nTamBco)) //Banco
Aadd( aCmc7Tc, SubStr(cCmc7, 5, nTamAge)) //Agencia
Aadd( aCmc7Tc, SubStr(cCmc7, 10, nTamCPo)) //Codigo Postal
Aadd( aCmc7Tc, SubStr(cCmc7, 14, nTamChq)) //Cheque
Aadd( aCmc7Tc, SubStr(cCmc7, 20, nTamCta)) //Cuenta
Aadd( aCmc7Tc, SubStr(cCmc7, 30, 1) ) //DV Cuenta
Return aCmc7Tc
Card documentos |
---|
Informacao | La presente solución aplica para versión 12.1.33 o superior, siempre y cuando se tengan las rutinas actualizadas a la fecha de la expedición del issue |
---|
|
Card documentos |
---|
Informacao | Utilice este box para resaltar información relevante y/o de destaque. |
---|
Titulo | ¡IMPORTANTE! |
---|
|
05. ASUNTOS RELACIONADOS
TOTVS Recibo
5 - Puntos de entrada disponibles