我可以使用表达式生成器将 return 一个 SQL 查询结果传递给一个变量吗?

Can I use expression builder to return a SQL query result to a variable?

我正在使用一个软件 pc/mrp,它似乎有一个用于 FRX 文件的内置 Visual Fox Pro 编辑器。它还具有 ef 文件的外部用法。根据 Google 的一些用法,报表设计器似乎是标准的,而不是自定义的。 ef 文件的使用可能是自定义的。现在,我需要找到一种方法来访问报告中 SQL 语句中的值。该语句需要在报告中每行 运行。

EF: 该文件包含以下部分: ~在~ ~出来~

在这些部分中,我可以 运行 编码,但是如果有 ~perline~ 类型的部分,我不知道如何访问它。我可以使用 ~in~ 来尝试创建数据库之间的关系,如下例所示:

~IN~
THISAREA = SELECT()
USE PARTMAST ORDER BYPARTNO IN 0
SELECT (THISAREA)
SET RELATION TO PARTNO INTO PARTMAST ADDITIVE
GO TOP

~OUT~
USE IN SELECT("SALES")

但是,为此我不知道如何加入数据库。我有两个数据库(A,B),我需要根据两个字段(pono,line)连接它们。如果 (A.pono 和 a.line) = (B.pono 和 B.line) 那么它们将被链接。这可能吗?

报表设计器: 我看到这种工作的另一种方式是在报表设计器中进行查询。内部报告属性是一个变量选项卡。我可以使用它来使用表达式分配给变量。我需要:

SELECT field from B where B.pono = pono and B.line = line; INTO ARRAY varArray;

但是,它给了我一个错误,可能是因为这是在尝试创建一个新变量,而不是实际分配给报告中的变量。我尝试在设计器中编辑一个字段以也使用前面的代码,但也失败了。

有没有办法使用报表设计器或 ef 文件来获取我需要的每行数据?

您显示的示例代码正在执行类似于使用 SET RELATION 命令进行连接的操作。要使用 SET RELATION,子 table 中的相关字段(表达式)必须有一个索引。所以,如果你的 table B 在 PONO + LINE 上有一个索引(或者,如果那些是数字,STR(PONO, length) + STR(LINE, length)),你可以设置 RELATION TO PONO + LINE INTO B , 如有必要,再次使用更复杂的表达式。