使用Crystal Report Field Objects并尝试将“EnableSuppress”设置为False或更改字段对象的位置或宽度时,会生成“无效的对象格式名称”错误。在尝试实际加载报告之前,调试器会显示所有运行的代码都没有错误。此时,它会毫无问题地运行第一对,然后在弄乱字段对象时失败,其余的都不会运行。代码如下所示。生成错误的所有内容都是FieldObject,但并非所有fieldObject都会生成错误。在下面的代码中,Section2中的所有内容都是TextObject,Section3中的所有内容都是FieldObject。
If condition = True Then
'Lines marked as runs ok, only run when a line that generates an error is not present before it.
Report.Section2.ReportObjects("Text7").Left = 7830 'Runs ok
Report.Section3.ReportObjects("Field4").Left = 8085 'Runs ok
Report.Section2.ReportObjects("Text13").ObjectFormat.EnableSuppress = False 'Runs ok
Report.Section3.ReportObjects("Field28").ObjectFormat.EnableSuppress = False 'error
Report.Section2.ReportObjects("Text9").Left = 10830 'Runs ok
Report.Section3.ReportObjects("Field23").Left = 10830 'error
Report.Section3.ReportObjects("Field23").Width = 615 'error
Report.Section2.ReportObjects("Text10").Left = 11445 'Runs ok
Report.Section3.ReportObjects("Field25").Left = 11445 'Runs ok
End If
答案 0 :(得分:0)
除非你弄清楚抛出错误的字段有什么不同,并且绝对在VB代码中设置格式,我建议你在Crystal报表中进行格式化。您显然知道条件抑制以及更改字段的大小和位置,您可以右键单击该字段并单击“大小和位置”。还有一个条件放置选项(公式)。
希望有所帮助,
克里斯