如何根据项目主文件进行验证 table

How to validate against item master table

我正在创建一个自定义报告屏幕,其中有一个字段项目编号、项目类型、产品线和状态,项目编号有一个条件,我必须根据 pt_mstr 验证它据我了解,我输入的项目编号应该出现在 pt_mstr 中。如果它是空白的,则给出错误。我已经用这段代码完成了空白验证

If lvc_part = "" then do: 
{us/bbi/pxmsg.i &msgnum=40 &errorlevel=3} 
Undo mainloop, retry mainloop.
End.

Lvc_part 是我为项目编号声明的变量,mainloop 是我在其中编写整个逻辑的循环。我得到了根据 pt_mstr 验证项目编号的一般想法,但我不知道如何将其记为代码。我想我们需要包含一个先查找查询,以查看项目编号是否存在于 pt_mstr 中,但我不确定。如果您想了解有关我使用的声明的任何信息或其他任何信息,任何线索都会有所帮助,请告诉我。提前致谢!

您需要添加这样的代码

IF NOT CAN-FIND (FIRST pt_mstr WHERE pt_mstr.<keyfieldname> = lvc_part) THEN 
    <display error message>

或者是多字段索引时:

IF NOT CAN-FIND (FIRST pt_mstr WHERE pt_mstr.<keyfieldname1> = lvc_part
                                 AND pt_mstr.<keyfieldname2> = <value>) THEN 
    <display error message>

您很可能可以(并且应该)在 CAN-FIND 表达式中省略 FIRST 短语,因为您通常会在此处使用 UNIQUE 查找。