cancel
Showing results for 
Search instead for 
Did you mean: 

Nombre de IC desaparece en Pago recibido

marco_ramirez
Active Contributor
0 Kudos

Buenos días

Tengo un caso poco usual.

Imprimo pagos recibidos con el nombre de clientes, mismo que es traido al pld desde un campo de usuario que coloque en la factura, cuando el pago es 100% del monto el recibo se imprime bien, pero cuando el pago es parcial solo el primer recibo imprime el nombre y en los siguientes recibos no lo imprime.

A alguno de ustedes le ocurrió esto antes? cómo lo resolvieron?

Agradezco su ayuda y espero haber logrado explicar el tema.

Saludos cordiales

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

En vez de traer el nombre desde la factura, intenta conectar directamente con la tabla de clientes. en el PLD puedes editar el campo para que sea de tipo base de datos y ligado a la tabla "OCRD socios de Negocios" y desde ahí el campo "NombreSN"

marco_ramirez
Active Contributor
0 Kudos

Bueno la razón de hacerlo con un campo de usuario es porque los clientes piden las facturas con nombres que no son precisamente los de la base de datos.

Former Member
0 Kudos

El problema te dá por que PLD sólo te liga la primera factura que esté siendo afectada, imagino.

Siendo así, Recomendaría que mejor crees el formato desde Crystal Reports. Lo planteo así por que los formatos PLD suelen estar limitados para el tema de edición y  en base al planteamiento inicial, muy probablemente vas a tener más de un escenario.

Adjunto un código de ejemplo (Así se sefiniría la consulta del reporte crystal) sólo hay que asegurarse de crear un parámetro llamado DocKey@ que es el que usa SAP para mandar la clave del documento en pantalla al Reporteador.

Anexo código

declare @num float

declare @mon VARCHAR(10)

declare @LETRAS varchar(200)

SET @num=(select case t0.doccurr when 'MXP' then t0.doctotal else t0.doctotalfc end from orct t0 where t0.docentry={?Dockey@})

SET @mon=(select case t0.doccurr when 'MXP' then 'PESOS' else 'DOLARES' end from orct t0 where t0.docentry={?Dockey@})

execute sp_Num2Let @num,@mon,@LETRAS output

SELECT T0.[DocNum], T0.[DocCurr], T0.[DocRate], T0.[DocDate],T1.[SumApplied], T1.[vatApplied], T1.[WtAppld], T0.[NoDocSum], T0.[PayMth],t4.*,@letras,

CASE  when isnull(T0.CheckSum,0)!=0 then 'CHEQUE'

WHEN  isnull(T0.TrsfrSum,0)!=0 then 'TRANSFERENCIA'

WHEN isnull(T0.CashSum,0)!=0 then 'EFECTIVO' END AS PAGO

FROM ORCT T0  INNER JOIN RCT2 T1 ON T0.DocEntry = T1.DocNum inner join  (SELECT top 1 T3.[CardCode], T3.[CardName], T1.[Street], T1.[U_BXP_EXTNUM], T1.[Block], T1.[County], T1.[ZipCode], T1.[Country], T1.[State],

T3.[LicTradNum] FROM OCRD T3  INNER JOIN CRD1 T1 ON T3.CardCode = T1.CardCode

INNER JOIN OSLP T2 ON T3.SlpCode = T2.SlpCode where t3.cardcode=(select t5.cardcode from orct t5 where t5.docentry={?Dockey@})

) t4 on t4.cardcode=t0.cardcode, OINV T2

WHERE T1.[DocNum]= T0.[DocNum]  and

T1.[DocEntry]=T2.[DocEntry]

and t0.docentry={?Dockey@}

marco_ramirez
Active Contributor
0 Kudos

Gracias David

Opté por traer el dato a un campo de usuario en el formato de recibo y con ellos pude resolver, previo a hacer un formato en CR.

Gracias