我无论如何都不是程序员。我只是一个好奇的低级管理员,试图根据我的需要修改报告。我有一个 Crystal Reports .rpt 文件,显示采购订单和针对这些采购订单的付款。我的问题是付款行没有参考采购订单号。目前,我必须导出报告,然后在 excel 中完成并手动将每个 AP 行与其匹配的采购订单号匹配。我希望 AP 行也显示采购订单编号。
报告中有一个名为“@Voucher_PO_ID”的字段,其中包含以下公式:
if {LAGL019Q.RECORD_TYPE} = "3" then
if {LAGL019Q.SOURCE} = "AP" then
{LAGL019Q.TRANS_REF_NUM}
else if {LAGL019Q.SOURCE} = "PO" or {LAGL019Q.SOURCE} = "RQ" then
{LAGL019Q.PO_ID}
else " "
else " "
据我了解,此公式表示如果 SOURCE 是 AP(应付账款),则该行显示 TRANS_REF_NUM(付款支票号码),但如果 SOURCE 是 PO(采购订单),则显示 PO_ID(采购订单号)。
同样,我对编程知之甚少,我希望它会像修改 if then 语句一样简单:
if {LAGL019Q.SOURCE} = "AP" then
{LAGL019Q.TRANS_REF_NUM} and {LAGL019Q.PO_ID}
但这不起作用。我可以通过添加 {LAGL019Q.TRANS_REF_NUM} + "blah" 将一些文本附加到 {LAGL019Q.TRANS_REF_NUM} 的末尾,所以我不确定为什么它不会添加另一个字段。
它只是不允许我更改公式的这一部分:
" if {LAGL019Q.SOURCE} = "AP" then
{LAGL019Q.TRANS_REF_NUM}"
如果我只是尝试:
if {LAGL019Q.SOURCE} = "AP" then
{LAGL019Q.PO_ID}
它仍然无法正常工作,我不确定为什么?如果它是应付账款行,我希望它显示相应的 PO_ID。即使我知道 AP 行有相应的采购订单,当我这样做时它也只会显示一个空白字段。
我猜关于实际数据库的设置方式,我不知道有一些更大的事情。也许 AP 行实际上并没有引用 PO_ID,我只是假设他们这样做。
我所做的大多数谷歌搜索都回到了这里,所以我想我会发布我的问题。我搜索了类似的问题,但它们大多不符合我的要求。提前感谢您的任何建议。