這裏是我的情況:我 有看起來像這樣的程序答:RPG編譯器將S型轉換爲P型?
Fmfile IF E K DISK USROPN d grue s like(dhseqn) d C *ENTRY PLIST C PARM grue c open mfile c*** do something with grue c close mfile c eval *inlr = *on
dhseqn是2,0 S區域。
的編譯清單顯示我:
*RNF7031 DHSEQN P(2,0) 000200 1000002D GRUE P(2,0) 000200D 000500M 000700 000800M BASED(_QRNL_PRM+)
當我調用程序的與已被宣佈爲2,0 S上的參數,我得到一個十進制數據錯誤。
這是預期的,還是這是一個編譯器錯誤?
真正的問題是'爲什麼DHSEQN顯示爲P,當數據庫顯示爲S?'時。 (ASalazar提供了答案) – Derek 2010-07-05 14:48:45
@Derek RPG引用在這一點上很不清楚,只定義了'沒有指定LIKE關鍵字時',暗示使用LIKE()時的差異。但是,在這種情況下實際上也是如此。 – user2338816 2015-09-02 11:43:26