我很抱歉,這是一個非常簡單的問題,但是作爲ABL開放邊緣和im卡住的第一次使用者。我有輸入值到一個表像這樣ABL插入和顯示錶格數據
METHOD PRIVATE VOID POPULATETABLE ():
DEFINE VARIABLE I AS INTEGER.
DO I = 0 TO 100:
CREATE TEST.
ASSIGN TEST.CUSTOMER_NAME="SMITH"
TEST.ORDER_NUMBER=I
TEST.ORDER="BOOKS"
TEST.COST=45.00
TEST.CUSTOMER_NAME = "JACKSON"
TEST.ORDER_NUMBER=I
TEST.ORDER="PAPER CLIPS"
TEST.COST=1.7.
ASSIGN TEST.CUSTOMER_NAME="JONES"
TEST.ORDER_NUMBER =I
TEST.ORDER="PENCILS"
TEST.COST=2.50
TEST.CUSTOMER_NAME = "TURNER"
TEST.ORDER_NUMBER = I
TEST.ORDER="PENS"
TEST.COST=0.7.
END.
END METHOD.
我試圖用這個
FOR EACH TEST:
DISPLAY TEST.COST TEST.CUSTOMER_NAME TEST.ORDER TEST.ORDER_NUMBER.
RETURN.
END.
顯示它們。但是結果只顯示輸入的數據的最後一行。任何人都可以提供幫助,我甚至不確定顯示功能是正確還是分配。
找出最快的方法是查看datadictionary甚至獲得Test表中的記錄數。你的分配聲明有一次又一次分配的相同字段,這是故意的嗎?表測試的主要關鍵是什麼? – JTMon 2012-08-09 11:33:45
我不知道你的意思,然後你說我一遍又一遍地分配相同的字段。我應該以不同的方式輸入數據行嗎?聽起來這可能是問題的根源。 – 2012-08-09 11:42:35
你有2個賦值語句給一個創建語句。這意味着您仍然在使用同一個recrod並覆蓋以前的值。該循環的每次通過只會創建一個記錄(TURNER,PENS,0.7)。還有什麼是你的測試表的主要關鍵字段? – JTMon 2012-08-09 11:49:43