Buenos dias compañeros, solicitando de su ayuda,
estoy realizando un formato de factura en Crystal pero al poner la informacion de la tabla me arroja muchas veces la misma linea del articulo.
Muchas gracias,
Saluditos
Buenos dias compañeros, solicitando de su ayuda,
estoy realizando un formato de factura en Crystal pero al poner la informacion de la tabla me arroja muchas veces la misma linea del articulo.
Muchas gracias,
Saluditos
puedes compartir tu query que pusiste como comando? ya puede por ahi que te este duplicando, amenos que tengas el reporte por tablas, eso explicaria mucho.
Tienes que revisar como tienes relacionado tus tablas en ese reporte.
gracias a ambos, Pues no se como lo tenga haha solo arrastre el campo de la tabla INV1 … en total y en descuento pondré una formula…
esta pantalla les sirve??
Saludos!!!
Hola @LilianaN,
Podrías enviar como tienes las relaciones de las tablas, o sólo utilizas la INV1?
Puedes ver cómo están relacionados desde la barra de herramientas --> Base de datos --> Asistente de base de datos --> Vinculos.
Posiblemente falta realizar algún join.
Saludos.
de echo yo te decia como hiciste el reporte, con tablas o con un comando (se me facilita mas comando a mi)
de echo ya cheque los vinculos y no tienen hahah ninguna tabla…
@Daniel_Torrez me pudieras dar un ejemplo de como seria por comando??
Deberían existir relaciones entre tus tablas de lo contrario te va a traer una infinidad de registros.
por comando es el query tal cual, yo utilizo el siguiete para facturas:
select
T1.[PriceBefDi],
t0.docentry
,t0.docnum
,t0.cardcode
,t0.doctime
,T12.SeriesName
,t8.refdetails
,T10.ApprovYear
,T10.ApprovNum
,t10.remark
,t5.freeZoneNo
,t0.edocnum
,t0.docrate
,t0.docdate
,t0.docduedate
,t0.CreateTS
,t0.numatcard
,t0.cardname
,t0.lictradnum
,t0.doccur
,T2.PymntGroup
,t8.phone1
,t0.paytocode
,t0.Address
,t3.streetb
,t3.streetnob
,t3.blockb
,t3.cityb
,t3.zipcodeb
,t3.stateb
,t3.countryb
,t3.countyb
,t0.shiptocode
,t0.Address2
,t3.streets
,t3.streetnos
,t3.blocks
,t3.citys
,t3.zipcodes
,t3.states
,t3.countrys
,t3.countys
,t4.street
,t4.streetno
,t4.block
,t4.city
,t4.zipcode
,t4.state
,t4.country
,t4.county
,t5.TaxIdNum
,t5.compnyname
,t1.visorder
,t1.itemcode
,t1.quantity
,t1.UnitMsr
,t13.salpackun
,T13.SalPackMsr
,t1.dscription + ' ' + T1.Freetxt as dscription
,t1.price
,t1.Discprcnt
,t1.linetotal
,t1.TotalFrgn
,t7.BatchNum
,t7.SuppSerial
,t7.intrserial
,t7.indate
,t6.quantity
,t0.DiscSum
,t0.DiscSumFC
,t0.VatSum
,t0.VatSumFC
,t0.WTSum
,t0.WTSumFC
,t0.doctotal
,t0.doctotalfc
,T0.[DpmAmnt]
,T0.[DpmAmntFC]
,T0.[DpmVat]
,T0.[DpmVatFc]
,T9.[SlpName]
,t0.SignMsg
,t0.SignDigest
,t0.comments
,T11.[TrnspName]
,t5.TaxRegime
,t16.NcmCode
,t16.Descrip
,t15.pmnttype
,T15.Descript
,t0.U_B1SYS_MainUsage
,t99.ReportID
,t99.U_B1SYS_SignMsg
,T0.U_ALG_MetPago
,T0.U_ALG_LugExped
,(SELECT TL.TaxRate FROM INV4 TL WHERE T1.[DocEntry] = TL.[DocEntry] AND T1.LineNum = TL.LineNum ) As TaxRateImp
,(SELECT TL.TaxSum FROM INV4 TL WHERE T1.[DocEntry] = TL.[DocEntry] AND T1.LineNum = TL.LineNum ) As TaxSumImp
,(SELECT TL.BaseSum FROM INV4 TL WHERE T1.[DocEntry] = TL.[DocEntry] AND T1.LineNum = TL.LineNum ) As BaseSumImp
,(SELECT TJ.Rate FROM INV5 TJ WHERE T1.[DocEntry] = TJ.[AbsEntry] AND T1.LineNum = TJ.LineNum ) As RateRet
,(SELECT TJ.TaxbleAmnt FROM INV5 TJ WHERE T1.[DocEntry] = TJ.[AbsEntry] AND T1.LineNum = TJ.LineNum ) As TaxbleAmntRet
,(SELECT TJ.WTAmnt FROM INV5 TJ WHERE T1.[DocEntry] = TJ.[AbsEntry] AND T1.LineNum = TJ.LineNum ) As WTAmntRET
,TK.U_B1SYS_FactorType As FactorTypeRET
,TK.WTName As NameRET
,(SELECT TN.U_B1SYS_FactorType FROM OSTC TN WHERE T1.TaxCode = TN.Code) As FactorTypeTras
,(SELECT TN.Name FROM OSTC TN WHERE T1.TaxCode = TN.Code) As Name
, T1.LineNum
from
OINV T0
LEFT JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry
INNER JOIN OCTG T2 ON T0.GroupNum = T2.GroupNum
INNER JOIN INV12 T3 ON T0.DocEntry = T3.DocEntry
LEFT JOIN ibt1 t6 ON t6.baseentry=T0.Docentry and t6.baselinnum=t1.linenum and t6.itemcode=t1.itemcode and t6.WhsCode=t1.WhsCode and t6.cardcode=t0.cardcode
LEFT JOIN oibt t7 ON T6.BatchNum = T7.BatchNum and t6.itemcode=t7.itemcode and t6.WhsCode=t7.WhsCode
INNER JOIN ocrd t8 ON t8.cardcode=t0.cardcode
INNER JOIN OSLP T9 ON T0.SlpCode = T9.SlpCode
LEFT JOIN NNM4 T10 ON T0.ESeries = T10.ESeries
LEFT JOIN OSHP T11 ON T0.TrnspCode = T11.TrnspCode
INNER JOIN NNM1 T12 ON T0.Series = T12.Series
LEFT JOIN OITM T13 ON t1.itemcode=t13.itemcode
LEFT JOIN opym t15 ON t15.PayMethCod=t0.PeyMethod
LEFT JOIN ECM2 t99 ON t99.SrcObjAbs=t0.DocEntry and t99.SrcObjType=13
LEFT JOIN oncm t16 ON t1.NCMCode=t16.AbsEntry
LEFT JOIN INV5 TJ ON T1.[DocEntry] = TJ.[AbsEntry]
LEFT JOIN OWHT TK ON TK.WTCode = TJ.WTCode
,adm1 t4,oadm t5
where t0.docentry={?DocKey@}
Bueno ese es el que usan actualmente donde estoy pero basicamente es no usar tablas, por comando es igual que hacer un query y asi te ahorras tener campos de mas y solo tener los necesarios para el reporte, espero no cnfundir, saludos.
y esta Comando donde lo generas??
o como lo mandas llamar o como funciona?? , ay disculpa peor soy totalmente nueva en esto…
Saludos
@LilianaN si aun no tienes experiencia en SQL te recomiendo siguas haciendolo con el wizard del CR, es mas facil y el ya te propone las relaciones necesarias para poder hacer tu reporte, a veces solo es hacerle pocas modificaciones pero es mas funcionable si eres inexperta en el tema. Espero pueda seguir apoyandote en lo que requieras.
un comando es un query y podrias generarlo en el query manager de SAP (despues de ejecutarlo copias el codigo y lo pasas a un comando en crystal) pero como menciona @juliancab si vas comenzando empieza por las tablas, aun que no estaria mal que fuera aprendiendo lo basico de consultas para despues aplicarlo en formatos, es como que mas avanzado por comando por el tema de obtener un valor valores en especifico, creo tengo una carpeta de formatos que hice en mi aniguo empleo (donde trabajaba con HANA) si lo encuentro te los paso.
Si la vdd me ayudaria mucho muchas gracias,!!!
ya estuve haciendo prueba con las relaciones de las tablas y realice algunas. pero ahora me trae toda la información de todas las facturas ejemplo:
al querer realizar la relacion de OINV.DocEntry-- INV1.DocEntry … me marca un error y me desconecta la BD…
Alguna idea??
Saludos!!
mmm esta raro, eso que mencionas pero para que te tenga 1 solo resultado (1 sola Factura) necesitas crear un parametro en el crystal por lo generar este se llama DocKey@ y es igual al DocEntry de la OINV, con esto al montar tu formato y correrlo tomara el DocEntry de la factura en la que estas ejecutando el layout.
si exacto tengo el DocKey en función y aun así me toda la Info de todas las facturas
te pide el DocKey cuando el das vista previa?
en tu caso deberia de quedar algo asi:
en el primer paso lo filtras, en el segundo te deben de aparecer todos los campos que tienen, en tu caso seleccionas OINV.DocEntry en el paso 3 seleccionas que sea igual y en el paso cuatro seleccionas el parametro que debiste haber creado y debe ser de un tipo o valor INT, con eso te deberia de funcionar.
siii lo pide y la otra informacion, pero estoy verificando la demas informacion de la factura le cambio el DocKey … solicito otro y la informacion no se actualiza en Crystal lo pase a SAP y ay si me trae la informacion correcta ero el detalle sigue saliendo igual.
si Así lo tengo configurado como tu lo muestras en la imagen…