RPG IV プログラムにコーディングすることができるソース・レコードには、メイン・ソース・セクション、サブプロシージャー・セクション、およびプログラム・データ・
セクションの 3 つのグループがあります。メイン・ソース・セクションには、
モジュール内の H、F、D、I、C、および O 仕様書からなる最初のセット、または、自由形式でそれらに相当するものが
含まれます。制御仕様書で MAIN または NOMAIN が指定されている場合、このセクションにはサイクル・メイン・プロシージャーは含まれません。
したがって、いかなる実行可能演算も含むことができません。
キーワード MAIN または NOMAIN が指定されていない場合、ここには独立型プログラムまたはサイクル・メイン・プロシージャーに相当するものが入ります。
すべてのモジュールに、サブプロシージャーのコーディングの有無にかかわらず
、メイン・ソース・セクションが必要です。 
サブプロシージャー・セクションには、 モジュール内でコーディングされるすべてのサブプロシージャーを定義する仕様書が含まれます。プログラム・データ・セクションには、コンパイル時に指定されるデータが入っているレコードが含まれます。
RPG IV 言語は、位置に依存するコードと自由形式のコードの混合から構成され
ます。 キーワード (制御、ファイル記述、定義、およびプロシージャー) をサポートす
る仕様書によって、キーワード・フィールドに自由形式を使用することができます。 制御ステートメント、
ファイル記述ステートメント、
定義ステートメント、および
プロシージャー・ステートメントでは、完全に自由形式の仕様書が許可されます。
完全に自由形式の仕様書は、
拡張演算項目 2 をサポートする演算コードが指定された演算ステートメントにも許可されます。
自由形式の演算ステートメントを参照してください。
それ以外の場合、RPG IV 記入項目は位置が固定されています。これを表すために、RPG IV コードのそれぞれの例示は、最上部に横方向のス
ケールを付けたリスト形式になっています。 
以下の図は、各グループに記入することができるソース・レコードのタイプとその順 序を示しています。
RPG IV ソースは、表 1 に示されている順序でシステムに入力しなければなりません。 どの仕様タイプが欠けていてもかまいませんが、メイン・ソース・セクションからの少な くとも 1 つの仕様タイプが存在していなければなりません。
ファイル記述仕様と定義仕様を混在させることができます。 
| ソース・セクション | 仕様書の順序 |
|---|---|
| メイン・ソース・セクション |
|
| サブプロシージャー・セクション |
|
| ** 形式を使用する場合のプログラム・データ | ** |
| **TYPE 形式を使用する場合のプログラム・データ | (任意の順序で指定) |