0

我对水晶报告很陌生,我的代码问题并不复杂,但我正在努力寻找正确的结构。

如果它们来自相同的 SalesOrderID,我的 jobID 都以相同的前 5 位数字开头。他们开头的五位数字是salesID号。

如果仅在其中一个上完成生产,我想在 SalesOrderID 下显示所有 JobID。

if {Jobs.jmpProductionComplete} =-1.00
 then
(
  If {Jobs.jmpJobID} startswith left({Jobs.jmpJobID},5)
  then {Jobs.jmpJobID}
  else  ""
)

但这产生了一个错误,说“选择公式的结果必须是布尔值”

接下来我尝试了:

if {Jobs.jmpProductionComplete} =-1.00  then
(
  If {Jobs.jmpJobID} startswith left({Jobs.jmpJobID},5)
  then not(isnull({Jobs.jmpJobID}))
)

但这只显示了已标记为生产完成的单个 JobID。

接下来我尝试了:

  1. 使用以下代码创建了一个公式:left({Jobs.jmpJobID},5) 将其命名为 @jobidformula

  2. 转到组专家 > 将此公式移动到组列表

  3. 抑制组页眉和页脚

  4. 转到报告 > 选择公式 > 组并使用此代码:

    Minimum({Jobs.jmpProductionComplete}, {@jobidformula}) = -1
    

仍然没有工作。任何人都可以给我任何其他指示吗?

4

1 回答 1

0

我想到了!

我首先这样做是为了让我的报告只显示按 salesOrderID 分组的生产完成的 JobID

我做了一个参数是 SalesOrderID 的子报表

在选择公式中,我将其设置为生产不完整。我把它们都排好,瞧!它可以毫无问题地工作。

于 2013-08-28T13:00:42.037 回答