我想學習一些RPGIV。我對語言沒有太多的瞭解。我正在尋找免費的在線資源,到目前爲止,我剛剛找到了必須付費的網站。免費在線資源學RPGIV
我想學習的原因是,我們是否正在使用調用Web服務的RPG函數。它給出了一個通用的內部服務器錯誤500.所以我想學習RPGIV,所以我可以問正確的問題,並解決這個問題。
我想學習一些RPGIV。我對語言沒有太多的瞭解。我正在尋找免費的在線資源,到目前爲止,我剛剛找到了必須付費的網站。免費在線資源學RPGIV
我想學習的原因是,我們是否正在使用調用Web服務的RPG函數。它給出了一個通用的內部服務器錯誤500.所以我想學習RPGIV,所以我可以問正確的問題,並解決這個問題。
這是一個非常寬泛的問題。如果你能解釋一些關於爲什麼RPG IV和你將使用它的問題,答案的用處將會增加。
與Java或C++不同,RPG IV沒有任何基於PC的編譯器。 RPG IV僅在IBM中端系列計算機上運行,因此有必要訪問其中一個以嘗試任何代碼。 Holger Scherer has a public machine available;可能還有其他的,但它是一個薄弱的市場。
一般來說,學習RPG IV是不夠的。爲了能夠在中端計算機上使用,您還需要了解最少的DDS和CL。除此之外,您還應該學習一些基本的工作管理概念,例如查找您的編譯器列表進入哪個輸出隊列,如何將作業提交到批處理(以及「作業」是什麼!)以及如何使用庫列表。我也強烈建議學習ILE。內置數據庫是DB2變體;一個開始的程序員不會關心如何創建一個數據庫,以至於瞭解它是如何構建的,以及各個表之間如何相互關聯。這嚴格依賴於數據庫,關於設計它的業務。作爲程序員,您將使用embedded SQL,因此請參閱該手冊以及SQL programming和SQL Reference手冊。
編輯:
RPG IV並不難,如果你正在看就明白。寫它是一個更多的工作:-)另外,它聽起來好像你有一個本地的來源,可以引導你通過一些看起來很奇怪的部分。我現在的建議是將RPG IV程序加入調試並觀察來回發生的事情。 (STRDBG
)比較Web服務作者提供的任何示例(使用Java,也許?)並查看HTTP請求是否有些格式錯誤。
由於這個問題是關於學習RPG而不是調試500錯誤,我將繼續專注於學習方面。如果您需要調試幫助,請發起一個不同的問題併發布相關代碼。獲得代碼的方法是在RPG IV程序上找到DSPPGM
,然後查找構成它的模塊。顯示模塊的細節(選項5)並跟蹤源文件,庫和成員名稱。然後,在源文件和庫上輸入,並在右上角的「位置到」字段中輸出源成員名稱。按Enter鍵,該源成員將位於列表的頂部。使用選項5瀏覽源成員。
簡而言之,F規範描述了程序將使用的表格。 RPG使用操作碼爲READ
,WRITE
,EXCEPT
,UPDATE
的文件。如果程序使用嵌入式SQL,那麼除了RPG使用的那些外,可能還有SQL使用的表。你會看到在EXEC SQL
聲明中指定的那些。 D規格描述所有工作變量,包括單個變量,數組和數據結構。
C規格是實際計算髮生的地方。這些被使用/自由格式計算的人視爲棄用,但您可能會遇到它們。固定形式的C-specs是columnnar;具體的列意味着非常具體的事情最重要的列是因子1,操作碼,因子2和結果。這種風格的典型計算可能是BUFFERLEN ADD 1 BUFFERLEN
,它將變量BUFFERLEN加1。
固定格式C規格的變體是擴展係數2.同樣的計算看起來像這樣(empty factor 1) EVAL BUFFERLEN = BUFFERLEN + 1
。當你在代碼中看到它時,這會更有意義。
自由格式計算根本不關心列。上面的計算看起來像BUFFERLEN += 1;
或BUFFERLEN = BUFFERLEN + 1;
O規範描述如何產生內部描述的輸出。這通常用於打印報告,但您可能會遇到這裏描述實際文件輸出的情況。
子程序是不言自明的。子程序可能需要一些解釋。這些基本上是函數調用。 PR規範描述了原型,因此編譯器將能夠鍵入檢查變量,並且PI規範描述了實際的過程。在過程中聲明的變量(在D規格中)是該過程的本地變量。您可能會遇到不包含在RPG程序源中的程序,而是綁定到服務程序中。您將能夠看到DSPPGM
中的那些人。
要訪問Web服務,很可能您正在使用Scott Klement的HTTPAPI軟件,該軟件有自己的支持。 http://scottklement.com/ftpapi/ftpapilist.html將允許您註冊支持郵件列表,在那裏您可以發佈您的問題並獲得_very_helpful_響應。 – Dennis
@丹尼斯感謝這是一個偉大的幫助將調查 – ZioN
你可能想看看這個相關的問題http://stackoverflow.com/questions/10457764/how-to-learn-rpg-400 – kratenko