我一直在处理一个代码,该代码在另一个for each
和for each
内运行find
,我需要跳过{{1}找到的记录}如果它与第二个find
的值不匹配,但是我无意中在第一个for each
上跳过表。
for each
而不是在找不到for each <table>.
for each <table1>.
find <table2> where <table2>.<code> = <table1>.<code> no-lock no-error.
if not avail <table2>
then next.
end.
end.
时,它正在跳过<table1>
,有没有办法解决这个问题?
版 :
OpenEdge版本10.2B
警告: 我是进步的新手
答案 0 :(得分:1)
目前还不清楚你要做什么。但也许就是这样:
for each table1 no-lock:
find table2 no-lock where table2.code = table1.code no-error.
if available table2 then
do:
/* do something that involves table2 */
end.
else
do:
/* do stuff that does not involve table2 -- in other words "skip it" */
end.
end.
答案 1 :(得分:1)
我也不太清楚你要求的是什么......
但是在处理嵌套循环时,总是更容易使用块标签来控制下一个循环。 outerloop和innerloop只是循环的任意选择名称。
outerloop:
for each <table>:
innerloop:
for each <table1>:
find <table2> where <table2>.<code> = <table1>.<code> no-lock no-error.
if not avail <table2>
then next innerloop .
end.
end.