La ventana de nuevo recibo en Totvs recibos permite el registro del recibo. Permitiendo la captura del os datos:

  • El campo de serie se habilita o no, de acuerdo a la configuración del parámetro MV_SERREC.

Una vez registrados los datos, el botón Extraer títulos, se habilita y al seleccionarlo visualizará los títulos pendientes de cobro del cliente registrado:

Tasa cambio

En esta opción se visualizan las monedas registradas en el sistema y sus respectivas  tasas, permitiendo hacer cambios a las mismas. Dichos cambios solo tomará efecto sobre  el recibo que se este registrando.

Parámetros

En esta opción permite activar el asiento on line, mencionar que documento generara el sistema si hay saldo a favor al final del registro del recibo y si la fecha del recibo se permite modificar o no.

Estos parámetros permanecen activos hasta que el  usuario los vuelva a modificar.

Agregar otros títulos

Esta opción permite al usuario agregar o seleccionar títulos de otros cliente , diferente al registrado en el recibo.

Permitiendo usar los filtros:

Títulos a cobrar o compensar

Al aplicar los filtros, en esta sección se muestran todos los documentos pendientes de cobro de acuerdo a los filtros registrados.  Los datos visualizados son:

Y se  tiene las siguientes columnas extras a mostrar dando click en el icono con la imagen del engrane:

Formas de pago

En esta sección se puede agregar o borrar métodos de pago agregando información en los siguientes campos:

Las columnas mostradas de una forma de pago son:

Y se  tiene las siguientes columnas extras a mostrar dando click en el icono con la imagen del engrane:

Editar una forma de pago

Una vez agregado un método o forma de pago, este puede ser editado dando click en el botón editar que corresponde al método de pago .

Editar o ver detalle de título a cobrar o compensar

Se selecciona el título a cobrar o a compensar y en los tres puntos se localiza la opción de editar cobro o ver detalle.

Ver detalle: En esta ventana se puede todos los datos que corresponden a este título.

Editar cobro: En esta opción se puede editar el importe a cobrar, además registrar descuentos, intereses o multas.

Totales

En la sección de totales se visualiza la suma de los importes cobrados, en las diferentes monedas.

Imprimir

Al seleccionar este check, cuando el registro del recibo se Confirme, envía el recibo a impresión.

Generar CFDI

Al seleccionar este check, cuando el registro del recibo se Confirme, generará el CFDI del recibo.

  • Opción disponible exclusivamente para el país México.
  • El guardado de estos archivos se configura en el parámetro MV_CFDRECP.

Esta opción es la responsable de generar el archivo .XML y timbrar el recibo.

Enviar E-Mail

Al seleccionar este check, cuando el registro del recibo se Confirme, el impreso del recibo se envía al correo del cliente.

Los parámetros que se deben configurar para su correcto funcionamiento son:

  • MV_RELSERV.
  • MV_RELACNT.
  • MV_RELPSW.
  • MV_RELAUTH.
  • MV_RELSSL.
  • MV_SRVPORT.
  • MV_RELTLS.


Puntos de entrada en MVC (Estándares)

ID DEL PUNTO DE ENTRADA

MOMENTO DE EXECUÇÃO DO PONTO DE ENTRADA

MODELPRE

Antes de la alteración de cualquier campo del modelo.
Parámetros recibidos:

1     O        Objeto del formulario ó del modelo, conforme el caso.
2     C        ID del local de ejecución del punto de entrada.
3     C        ID del formulario.

Retorno:
Requiere un retorno lógico.
 

MODELPOS

En la validación total del modelo
Parámetros recibidos:

1     O        Objeto del formulario o del modelo, conforme el caso.
2     C        ID del local de ejecución del punto de entrada.
3     C        ID del formulario.

Retorno:
Requiere un retorno lógico.

FORMPRE

Antes de la alteración de cualquier campo del formulario.

Parámetros recibidos:

1     O        Objeto del formulario o del modelo, conforme el caso.
2     C        ID del local de ejecución del punto de entrada.
3     C        ID del formulario.

Retorno:
Requiere un retorno lógico.

FORMPOS

En la validación total del formulario.

Parámetros recibidos:

1     O        Objeto del formulario o del modelo, conforme el caso.
2     C        ID del local de ejecución del punto de entrada.
3     C        ID del formulario.

Retorno:
Requiere un retorno lógico.

FORMLINEPRE

Antes de la alteración de la línea del formulario FWFORMGRID.
Parámetros recibidos:

1     O        Objeto del formulario o del modelo, conforme al caso.
2     C        ID del local de ejecución del punto de entrada.
3     C        ID del formulario.
4     N        Numero de linea del FWFORMGRID
5     C        Acción del FWFORMGRID
6     C        Id del campo

Retorno:
Requiere un retorno lógico.

FORMLINEPOS

En la validación total de la línea del formulario  FWFORMGRID.
Parámetros recibidos:

1     O        Objeto do formulário ou do modelo, conforme o caso
2     C        ID do local de execução do ponto de entrada
3     C        ID do formulário
4     N        Número da Linha da FWFORMGRID

Retorno:
Requiere un retorno lógico.

MODELCOMMITTTS

Após a gravação total do modelo e dentro da transação.

Parâmetros Recebidos:

1     O        Objeto del formulario o del modelo, conforme el caso.
2     C        ID del local de ejecución del punto de entrada.
3     C        ID del formulario.

Retorno:
No espera retorno.

MODELCOMMITNTTS

Después de la grabación total del modelo y dentro de la transacción.

Parámetros recibidos:

1     O        Objeto del formulario o del modelo, conforme el caso.
2     C        ID del local de ejecución del punto de entrada.
3     C        ID del formulario.

Retorno:
No espera retorno

FORMCOMMITTTSPRE

Antes da gravação da tabela do formulário.

Parâmetros Recebidos:

1     O        Objeto del formulario o del modelo, conforme el caso.
2     C        ID del local de ejecución del punto de entrada.
3     C        ID del formulario.
4     L        Si es .T. indica nuevo registro (inclusión) si es .F. registro ya existente (Alteración/ Exclusión)

Retorno:
No espera retorno.

FORMCOMMITTTSPOS

Después de la grabación de la tabla del formulario.

Parâmetros Recebidos:

1     O        Objeto del formulario o del modelo, conforme el caso.
2     C        ID del local de ejecución del punto de entrada.
3     C        ID del formulario.
4     L        Si es .T. indica nuevo registro (inclusión) si es .F. registro ya existente (Alteración/ Exclusión)

Retorno:
No espera retorno.

MODELCANCEL

El botón de cancelar.

Parámetros recibidos:

1     O        Objeto del formulario o del modelo, conforme el caso.
2     C        ID del local de ejecución del punto de entrada.
3     C        ID del formulario.

Retorno:
No espera retorno.

BUTTONBAR

Incluir botones en el  ControlBar.

Para crear los botones se debe retornar un array bidimensional con la siguiente estructura de cada ítem:

1     C        Titulo para el botón.
2     C        Nombre del Bitmap para mostrar.
3     B        CodeBlock a ser ejecutado.
4     C        ToolTip (Opcional)

Parâmetros Recebidos:

1     O        Objeto del formulario o del modelo, conforme el caso.
2     C        ID del local de ejecución del punto de entrada.
3     C        ID del formulario.

Retorno:
Array con la estructura pre-definida.

Campos de validaciones para el punto de entrada 

Generales:

México:

Perú:

Sentencia When

General:

Argentina/Colombia

Chile/Perú

México

Ejemplo de punto de entrada:

User Function FINA887() 
Local aParam    := PARAMIXB
Local oModel    := Nil
Local oModelFJT := Nil
Local oModelSEL := Nil
Local cIdPonto  := ""
Local cIdModel  := ""
Local nLineas   := 0
Local nX        := 0
Local lRet      := .T.


    If aParam <> NIL 
        oModel      := aParam[1]
        oModelFJT   := oModel:GetModel("FJT_MASTER") //Datos del encabezado
        oModelSEL   := oModel:GetModel("SEL_DETAIL") //Datos correspondientes a los registros de la tabla SEL
        cIdPonto    := aParam[2] 
        cIdModel    := aParam[3]

        If cIdPonto == 'MODELPOS'
            If Len(AllTrim(oModelFJT:GetValue("FJT_RECIBO"))) < 12
                Help( ,, 'Help',, 'Tamaño del número de recibo', 1, 0 ) 
                lRet      := .F.
            EndIf
            
            nLineas := oModelSEL:Length()

            For nX := 1 To nLineas
                If Empty(oModelSEL:GetValue("EL_NUMERO",nX))
                    Help( ,, 'Help',, 'Número no informado', 1, 0 ) 
                    lRet      := .F.
                EndIf
            Next nX
        ElseIf cIdPonto == 'MODELCOMMITTTS' 
            //'Llamada después de la grabación total del modelo y dentro de la transacción (MODELCOMMITTTS).'
        ElseIf cIdPonto == 'MODELCOMMITNTTS' 
            //'Llamada después de la grabación total del modelo y fuera de la transacción (MODELCOMMITNTTS).' 
        ElseIf cIdPonto == 'FORMCOMMITTTSPOS' 
            //'Llamada después de la grabación de la tabla del formulario (FORMCOMMITTTSPOS).
        EndIf
    EndIf

Return lRet