Cartera clientes situación efectos

Lamentablemente A3 no proporciona el campo Situación de los efectos de cartera en ninguna tabla, y por lo tanto no disponemos de la SITUACION en ningún listado que podamos crear.

Además cuando hay una devolución A3 crea un nuevo efecto. Y en el campo situación nada nos indica que viene de una devolución.

En la imagen siguiente el efecto de 4000 € viene de una devolución, pero nada lo indica

A menos que seleccionemos todos los efectos y entonces si vemos que ha habido una devolución

Funcion SituacionCarteraClientes

He desarrollado una función en Access para obtener el campo situación y poder usarlo en los listados (no incluye Recibir)

De modo que en caso de un efecto devuelto la situación ponga Pendiente Por devolución

Codigo de la función

Función SituacionCarteraClientes(sPagado As String, nRemesa As Variant, sFechaEfectiva As Variant, sFechaDevolucion As Variant, nPadreDev As Variant, nAgrupacion As Variant) As String

If hayalgo(nAgrupacion) Then

SituacionCarteraClientes = “Incluido en la agrupación ” & nAgrupacion

Exit Función

End If

If sPagado = “F” Then

SituacionCarteraClientes = “Pendiente”

End If

If sPagado = “T” Then

SituacionCarteraClientes = “Cobrado ” & sFechaEfectiva

End If

If hayalgo(nPadreDev) Then

SituacionCarteraClientes = SituacionCarteraClientes & ” Por devolución ”

End If

If hayalgo(nRemesa) Then

If sPagado = “D” Then

SituacionCarteraClientes = “Devuelto ” & sFechaDevolucion

End If

SituacionCarteraClientes = SituacionCarteraClientes & ” Remesado. Remesa ” & nRemesa

End If

End Función

Parámetros de la función

  • Pagado: el campo PAGADO de la cartera
  • Remesa: el campo NUMDOC de remesas
  • FechaEfectiva: el campo FECHAEFECTIVA de la cartera
  • FechaDevolucion: el campo FECHADEVOL de la cartera
  • PadreDev: el campo PADREDEV de la cartera
  • Agrupacion: el campo NUMDOCAGR de la agrupacion

Este es el mapa de relaciones

Consulta en Access

SELECT

dbo_ASOFT_CARTERA.CODCLI

, dbo_ASOFT_CARTERA.NOMBRE

, SituacionCarteraClientes([dbo_ASOFT_CARTERA].[PAGADO],[dbo___REMESAS].[NUMDOC],[dbo_ASOFT_CARTERA].[FECHAEFECTIVA],[dbo_ASOFT_CARTERA].[FECHADEVOL],[dbo_ASOFT_CARTERA].[PADREDEV],[dbo___AGRUPACIONES].[NUMDOCAGR]) AS Situacion

, dbo_DOCUPAGO.DESCDOC AS [Documento de pago]

, IIf([dbo_ASOFT_CARTERA].[PROCEDE]=”AG”,”Agr.”,”Fra.”) & [dbo_ASOFT_CARTERA].[SERIE] & “/” & [dbo_ASOFT_CARTERA].[NUMDOC] AS Documento

, dbo_ASOFT_CARTERA.FECHAFACTURA AS [Fecha factura]

, dbo_ASOFT_CARTERA.FECHA AS Vencimiento, dbo_ASOFT_CARTERA.IMPORTE AS Importe

, IIf([dbo_ASOFT_CARTERA].[PAGADO]=”F”,[dbo_ASOFT_CARTERA].[IMPORTE],0) AS Pendiente

FROM (((dbo_ASOFT_CARTERA

LEFT JOIN dbo___REMESAS ON dbo_ASOFT_CARTERA.PADREREME = dbo___REMESAS.IDREMESA)

INNER JOIN dbo_DOCUPAGO ON dbo_ASOFT_CARTERA.DOCPAG = dbo_DOCUPAGO.DOCPAG)

LEFT JOIN dbo___AGRUPACIONES ON dbo_ASOFT_CARTERA.PADREAGRU = dbo___AGRUPACIONES.NUMAGRU) LEFT JOIN dbo_ASOFT_CARTERA AS dbo_ASOFT_CARTERA_1 ON dbo___AGRUPACIONES.NUMCARTERA = dbo_ASOFT_CARTERA_1.NUMCARTERA

ORDER BY dbo_ASOFT_CARTERA.CODCLI;

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.