如何根据控制中断在标题中打印文本或图像

时间:2019-06-18 18:24:02

标签: reporting-services epicorerp

我正在自定义我们的MICR检查。我们经常打印数百张支票。有些支票支付许多汇款,因此汇款行不能全部放在一页上,因此会产生溢出。我们需要在支票本身上打印VOID,该支票在该支票的第二页和后续页面的HEADER中。

我写了一个可见性表达式,如下所示:

= Iif(Globals!PageNumber> 1,False,True)

完成的工作是将其隐藏在打印作业的第1页上。问题在于,第1页之后的大多数页面都是新支票,因此不应作废。同一张支票上的第二页才应该。
我需要在控制中断时执行此操作,他需要检查数字更改。仅当当前页面具有与上一页相同的支票号码时,才应打印VOID。由于它在标题中,因此支票号指向正文中的隐藏字段:

= reportitems!txtCalc_DspCheckNum21.value

我会将这个值与先前的支票号码进行比较,但是如何存储该先前的支票号码并现在将两者进行比较?

我在支票上添加了一个文本框(非常大的字母)并将其隐藏。然后我

1 个答案:

答案 0 :(得分:1)

您可能需要使用自定义代码进行设置。

在“报告属性代码”页面中,插入以下代码:

Dim LastCheck As String
Dim ThisCheck As String

Function SetCheck(CheckNumber As String) AS String
Begin
    LastCheck = ThisCheck
    ThisCheck = CheckNumber
    Return ThisCheck
End

现在为您的文本框txtCalc_DspCheckNum21输入以下表达式:

=Code!SetCheck(Fields!CheckNum.Value)

在标题中,将图像可见性隐藏表达式设置为:

=IIF(Code.ThisCheck = Code.LastCheck, False, True)

所以我们正在做的是,每当您显示文本框txtCalc_DspCheckNum21时,它就会记住先前和当前的校验号。如果它们不同(即该支票的第一页),它将隐藏图像,如果它们相同,则显示VOID图像(即该支票的后续页面)。

请注意,这取决于在每个页面上呈现txtCalc_DspCheckNum21