错误“剩余的文本似乎不是公式的一部分”Crystal Reports 11.5.8.826

问题描述 投票:1回答:2

我收到了Crystal Reports中问题标题中所述的错误。我已经故障排除了一段时间,我正在画空白。我在单独的公式中有一些简单的If..Then..Else语句和Select..Case语句,但我收到的所有语句都有相同的错误。我在VB.Net中编写公式,我怀疑问题源于我如何声明我的变量。

公式的一个例子是:

Dim xyz As Number = {VALUE1} 
Dim array1 = New Integer() {1111, 1112, 1214, 1215} 
Dim array2 = New Integer() {1211, 1212, 1213, 1414, 1415} 
Dim array3 = New Integer() {1311, 1312, 1514, 1515} 
Dim array4 = New Integer() {1911} 

If Array.IndexOf(array1, xyz) >= 0 Then
    {VALUE2} & "_001"
ElseIf Array.IndexOf(array2, xyz) >= 0 Then
    {VALUE2} & "_002"
ElseIf Array.IndexOf(array3, xyz) >= 0 Then
    {VALUE2} & "_003"
ElseIf Array.IndexOf(array4, xyz) >= 0 Then
    {VALUE2} & "_004"
Else
    {VALUE2}
End If

当我将该公式输入所选字段时,它会突出显示第1行(=)上的Dim xyz As Number =...标记后的所有内容。

在搜索之后,我尝试使用具有等号(:=)和分号的冒号来结束if语句,但在网上找不到更多指导我。我确实发现线程暗示.dll可能会丢失,但我目前没有对我正在使用的系统上的许多区域的写权限,因此对我来说任何修复都是不可能的。

我的问题很简单,为什么我收到这个错误?这是我的If..Then..Else语法还是我如何声明变量?或者我不应该像我一样在水晶报告中使用VB.Net?

vb.net vbscript crystal-reports crystal-reports-xi
2个回答
1
投票

Crystal确实支持基本语法,但它更像VBA或VB6而不是.Net,并且还有其自身的特点和局限性。

  • 声明没有初始化
  • 返回值为“Formula =”,它不像Crystal语法中那样暗示。
  • 大多数函数和运算符更像是Crystal语法而不是常规基本。
  • 所有返回值都必须属于同一类型。

以下是我认为您的目标:

Dim xyz As Number
Dim array1() as number
Dim array2() as number
Dim array3() as number
Dim array4() as number

xyz = {VALUE1}
array1 =  array(1111, 1112, 1214, 1215)
array2 = array(1211, 1212, 1213, 1414, 1415)
array3 = array(1311, 1312, 1514, 1515)
array4 = array(1911)

If  (xyz in array1) Then
    Formula = {VALUE2} & "_001"
ElseIf (xyz in array2) Then
    Formula = {VALUE2} & "_002"
ElseIf (xyz in array3) Then
    Formula = {VALUE2} & "_003"
ElseIf (xyz in array4) Then
    Formula = {VALUE2} & "_004"
Else
    Formula = totext({VALUE2})
End If

1
投票

你的语法在Crystal报表中使用是错误的,它总是以数据类型开头,然后是变量名

numbervar pos;
stringvar cpu;
numbervar pos := 0;
stringvar cpu := 'abc';
NumberVar k := {@Counting_Data}/{@Counting_Fail} 

这个链接为你类似的问题有crystal reports error : remaining text does not appear to be part of the formula

如果您更多地了解变量,则在范围方面有3种类型的变量

  • 本地
  • 全球
  • 共享

https://www.tutorialspoint.com/crystal_reports/crystal_reports_creating_variables.htm

© www.soinside.com 2019 - 2024. All rights reserved.