我的布局工作正常,除了一部分,
如果我们使用此布局来查看或打印任何添加的文档(AR发票),它将响应写入数据和记录。
但是如果用户在将文档添加到系统之前单击视图或打印,或者文档被保存为草稿,那么:随机记录将以非常随机的方式进入布局,这意味着如果关闭视图并再次打开它另一张不同于珍贵的记录将会出现。
正如我所想,如果用户试图查看或打印未添加到系统中的文档然后显示空白页,正在寻找的内容很简单,
有什么帮助吗?
这是我在CR中使用的查询
SELECT ohem.[U_Employee_Code] as'Cashier',OUSR.USER_CODE, OUSR.U_NAME,OUDG.[Code],OUDG.Phone1,OUDG.Phone2, OINV.DocEntry,oinv.docnum, OINV.DocType, OINV.DocStatus, OINV.InvntSttus, OINV.DocDate, OINV.DocDueDate, OINV.CardCode, nnm1.seriesname,
OINV.Address2, OINV.Printed, OINV.CardName, OINV.U_Address, OINV.NumAtCard, OINV.VatSum, OINV.DiscPrcnt, OINV.DiscSum, OINV.DocTotal, OINV.DocRate, OINV.u_deldate,
OINV.ReceiptNum, OINV.GroupNum, OINV.OwnerCode,OINV.JrnlMemo, OINV.VatPaid, OINV.Address2 AS Expr2, OINV.U_CUSTNAME1 as 'Customer Name' , OINV.U_PHONE1, OINV.ExepAmnt, OINV.ExepAmntSC, OINV.ExepAmntFC, OINV.VatDate,OINV.TotalExpns,
OINV.PaidSum, OINV.OwnerCode, OINV.BillToOW, OINV.ShipToOW, OINV.RetInvoice, OINV.ReqName, OINV.Requester, INV1.ItemCode, INV1.Dscription, INV1.Quantity, inv1.PriceBefDi,
INV1.SubCatNum, INV1.ShipDate, INV1.Price, INV1.Currency, INV1.Rate, INV1.DiscPrcnt AS Expr1, INV1.LineTotal, INV1.OpenSum, INV1.VatPrcnt, INV1.PriceAfVAT,
INV1.unitMsr, OINV.TaxDate, INV1.GTotal, OINV.Comments, OCTG.PymntGroup, OINV.LicTradNum, INV1.BaseDocNum, INV1.LineVat, OINV.WTSum, oinv.u_cancelled,
OCRN.CurrName, oslp.SlpName,OUDG.Phone1,OUDG.phone2,
oinv.u_empid as'Sales man',OUDG.Phone1 as 'Branch Phone',OUDG.phone2 as 'Customer Support Phone',OINV.U_PHONE1 as 'Customer Phone',inv1.shipdate as 'Item Delivery Date', OINV.TotalExpns AS 'FREIGHT CHARGES',OINV.U_Address as 'Customer Address',oinv.UpdateDate, OINV.DocEntry
FROM OINV INNER JOIN
INV1 ON OINV.DocEntry = INV1.DocEntry INNER JOIN
OUSR ON OINV.UserSign = OUSR.USERID INNER JOIN
OCTG ON OINV.GroupNum = OCTG.GroupNum INNER JOIN
OCRN ON OINV.DocCur = OCRN.CurrCode inner join
oslp on oinv.SlpCode = oslp.SlpCode INNER JOIN
OUDG ON OUSR.[DfltsGroup] = OUDG.[Code] inner join
nnm1 on OINV.series = nnm1.series LEFT JOIN
OHEM on OUSR.[userId] = OHEM.[USERID]
where OINV.DocEntry = {?DocKey@}
答案 0 :(得分:0)
解决方案是使用ObjectId来确定源是系统文档还是草稿。这是它
if {?ObjectId@} =13
SELECT ohem.[U_Employee_Code] as'Cashier',OUSR.USER_CODE, OUSR.U_NAME,OUDG.[Code],OUDG.Phone1,OUDG.Phone2, OINV.DocEntry,oinv.docnum, OINV.DocType, OINV.DocStatus, OINV.InvntSttus, OINV.DocDate, OINV.DocDueDate, OINV.CardCode, nnm1.seriesname,
OINV.Address2, OINV.Printed, OINV.CardName, OINV.U_Address, OINV.NumAtCard, OINV.VatSum, OINV.DiscPrcnt, OINV.DiscSum, OINV.DocTotal, OINV.DocRate, OINV.u_deldate,
OINV.ReceiptNum, OINV.GroupNum, OINV.OwnerCode,OINV.JrnlMemo, OINV.VatPaid, OINV.Address2 AS Expr2, OINV.U_CUSTNAME1 as 'Customer Name' , OINV.U_PHONE1, OINV.ExepAmnt, OINV.ExepAmntSC, OINV.ExepAmntFC, OINV.VatDate,OINV.TotalExpns,
OINV.PaidSum, OINV.OwnerCode, OINV.BillToOW, OINV.ShipToOW, OINV.RetInvoice, OINV.ReqName, OINV.Requester, INV1.ItemCode, INV1.Dscription, INV1.Quantity, inv1.PriceBefDi,
INV1.SubCatNum, INV1.ShipDate, INV1.Price, INV1.Currency, INV1.Rate, INV1.DiscPrcnt AS Expr1, INV1.LineTotal, INV1.OpenSum, INV1.VatPrcnt, INV1.PriceAfVAT,
INV1.unitMsr, OINV.TaxDate, INV1.GTotal, OINV.Comments, OCTG.PymntGroup, OINV.LicTradNum, INV1.BaseDocNum, INV1.LineVat, OINV.WTSum, oinv.u_cancelled,
OCRN.CurrName, oslp.SlpName,OUDG.Phone1,OUDG.phone2,
oinv.u_empid as'Sales man',OUDG.Phone1 as 'Branch Phone',OUDG.phone2 as 'Customer Support Phone',OINV.U_PHONE1 as 'Customer Phone',inv1.shipdate as 'Item Delivery Date', OINV.TotalExpns AS 'FREIGHT CHARGES',OINV.U_Address as 'Customer Address',oinv.UpdateDate
FROM OINV INNER JOIN
INV1 ON OINV.DocEntry = INV1.DocEntry INNER JOIN
OUSR ON OINV.UserSign = OUSR.USERID INNER JOIN
OCTG ON OINV.GroupNum = OCTG.GroupNum INNER JOIN
OCRN ON OINV.DocCur = OCRN.CurrCode inner join
oslp on oinv.SlpCode = oslp.SlpCode INNER JOIN
OUDG ON OUSR.[DfltsGroup] = OUDG.[Code] inner join
nnm1 on OINV.series = nnm1.series LEFT JOIN
OHEM on OUSR.[userId] = OHEM.[USERID]
where OINV.DocEntry = {?DocKey@}
else select ' '