Rational Developer for System z
PL/I for Windows, Version 7.6, プログラミング・ガイド

目次

ワークステーション上での PL/I の導入
本書について
新機能
構文図の読み方
ご意見の送付方法
プラットフォーム間でのアプリケーションの移植
メインフレーム・アプリケーションのワークステーション上でのコンパイル
正しいコンパイル時オプションの選択
制限された言語
プログラムの移植を助けるマクロ機能の使用
メインフレーム・アプリケーションのワークステーション上での実行
リンクの相違
ランタイムの相違をもたらすデータ表記
移植性に影響する環境の相違
ランタイムの相違を引き起こす言語エレメント
プログラムのコンパイルおよびリンク
プログラムのコンパイル
簡単な練習問題
HELLO プログラム
コンパイル時オプションの使用
製品同梱のサンプル・プログラムの使用
ソース・プログラムのコンパイルの準備
プログラム・ファイルの構造
プログラム・ファイルのフォーマット
コンパイル時環境変数の設定
IBM.OPTIONS
IBM.PPINCLUDE
IBM.PPMACRO
IBM.PPSQL
IBM.PPCICS
IBM.SOURCE
IBM.SYSLIB
IBM.PRINT
IBM.OBJECT
IBM.DECK
INCLUDE
TMP
コンパイラーを呼び出す PLI コマンドの使用
コンパイル時オプションを指定する場所
IBM.OPTIONS と IBM.PPxxx 環境変数
PLI コマンド
%PROCESS ステートメント
コンパイル時オプションの説明
コンパイル時オプションの説明
コンパイル時オプションの使用規則
ADDEXT
AGGREGATE
ATTRIBUTES
BIFPREC
BLANK
CHECK
CMPAT
CODEPAGE
COMPILE
COPYRIGHT
CURRENCY
DBCS
DEFAULT
DLLINIT
EXIT
EXTRN
FLAG
FLOATINMATH
GONUMBER
GRAPHIC
IMPRECISE
INCAFTER
INCLUDE
INITAUTO
INITBASED
INITCTL
INITSTATIC
INSOURCE
LANGLVL
LIBS
LIMITS
LINECOUNT
LINEDIR
LIST
LISTVIEW
MACRO
MARGINI
MARGINS
MAXGEN
MAXMSG
MAXNEST
MAXSTMT
MAXTEMP
MDECK
MSG
NAMES
NATLANG
NEST
NOT
NUMBER
OBJECT
OFFSET
ONSNAP
OPTIMIZE
OPTIONS
OR
PP
PPCICS
PPINCLUDE
PPMACRO
PPSQL
PPTRACE
PRECTYPE
PREFIX
PROBE
PROCEED
PROCESS
QUOTE
REDUCE
RESEXP
RESPECT
RULES
SEMANTIC
SNAP
SOSI
SOURCE
STATIC
STMT
STORAGE
SYNTAX
SYSPARM
SYSTEM
TERMINAL
TEST
USAGE
WIDECHAR
WINDOW
XINFO
XML
XREF
PL/I プリプロセッサー
インクルード・プリプロセッサー
例:
インクルード・プリプロセッサー・オプション環境変数
マクロ・プリプロセッサー
マクロ・プリプロセッサーのオプション
マクロ機能オプション環境変数
SQL プリプロセッサー
プログラミングとコンパイルに関する考慮事項
SQL プリプロセッサーのオプション
SQL プリプロセッサー・オプション環境変数
SQL プリプロセッサー BIND 環境変数
PL/I アプリケーション内での SQL ステートメントのコーディング
ラージ・オブジェクト (LOB) サポート
ユーザー定義関数のサンプル・プログラム
CICS サポート
プログラミングとコンパイルに関する考慮事項
CICS プリプロセッサーのオプション
CICS プリプロセッサー・オプション環境変数
PL/I アプリケーション内での CICS ステートメントのコーディング
PL/I を使用した CICS トランザクションの作成
PL/I プログラムに使用される CICS 異常終了
CICS ランタイム・ユーザー出口
コンパイル出力
コンパイラー・リストの使用
コンパイラー出力ファイル
プログラムのリンク
リンカーの開始
静的リンク
コマンド行によるリンク
MAKE ファイルでリンク
入出力
検索規則
ディレクトリーの指定
ファイル名のデフォルト
オブジェクト・ファイルの指定
応答ファイルの使用
実行可能ファイルの出力タイプの指定
.EXE ファイルの作成
ダイナミック・リンク・ライブラリーの作成
実行可能ファイルのパッキング
マップ・ファイルの生成
リンカーの戻りコード
リンカー・オプションの設定
コマンド行でのオプションの設定
ILINK 環境変数でのオプションの設定
リンカーの使用
数値引数の指定
Windows リンカー・オプションの要約
Windows リンカー・オプション
/?
/ALIGNADDR
/ALIGNFILE
/BASE
/CODE
/DATA
/DBGPACK、/NODBGPACK
/DEBUG、/NODEBUG
/DEFAULTLIBRARYSEARCH
/DLL
/ENTRY
/EXECUTABLE
/EXTDICTIONARY、/NOEXTDICTIONARY
/FIXED、/NOFIXED
/FORCE
/HEAP
/HELP
/INCLUDE
/INFORMATION、/NOINFORMATION
/LINENUMBERS、/NOLINENUMBERS
/LOGO、/NOLOGO
/MAP、/NOMAP
/OUT
/PMTYPE
/SECTION
/SEGMENTS
/STACK
/STUB
/SUBSYSTEM
/VERBOSE
/VERSION
プログラムの実行およびデバッグ
ランタイム・オプションの使用
ランタイム環境変数の設定
PATH
DPATH
ランタイム・オプションの指定
ランタイム・オプションの指定場所
複数のランタイム・オプションまたはサブオプションの指定
ランタイム・オプション
NATLANG
ランタイム DLL の出荷
プログラムのテストとデバッグ
プログラムのテスト
一般的なデバッグのヒント
PL/I デバッグ技法
デバッグでのコンパイル時オプションの使用
デバッグでのフットプリントの使用
デバッグでのダンプの使用
デバッグでのエラーおよび条件処理の使用
エラー処理の概念
一般的なプログラミング・エラー
ソース・プログラムの論理エラー
PL/I の使用方法が無効
未初期化の入り口変数の呼び出し
ループおよびその他の予期しないエラー
予期しない入出力データ
予期しないプログラム終了
その他の予期しないプログラム結果
コンパイラーまたはライブラリー・サブルーチンの障害
システム障害
ローパフォーマンス
入出力
データ・セットとファイルの使用
データ・セットのタイプ
ネイティブ・データ・セット
その他のデータ・セット
データ・セット特性の設定
レコード
レコード・フォーマット
データ・セットの編成
PL/I ENVIRONMENT 属性の使用による特性の指定
DD:ddname 環境変数の使用による特性の指定
PL/I ファイルとデータ・セットの関連付け
環境変数の使用
OPEN ステートメントの TITLE オプションの使用
データ・セットに関連付けられていないファイルの使用の試み
PL/I によるデータ・セットの検索方法
PL/I ファイルのオープンとクローズ
ファイルのオープン
ファイルのクローズ
複数のデータ・セットと 1 つのファイルの関連付け
入出力ステートメント、属性、およびオプションの組み合わせ
DISPLAY ステートメントの入出力
PL/I 標準ファイル (SYSPRINT と SYSIN)
標準入力、標準出力、および標準エラー装置のリダイレクト
連続データ・セットの定義と使用
プリンター向けファイル
ストリーム指向データ伝送の使用
ストリーム入出力を用いたファイルの定義
ストリーム指向データ伝送用 ENVIRONMENT オプション
ストリーム入出力によるデータ・セットの作成
ストリーム入出力によるデータ・セットへのアクセス
PRINT ファイルの使用
SYSIN ファイルおよび SYSPRINT ファイルの使用方法
コンソールからの入力の制御
会話型のファイルの使用
データのフォーマット
ストリーム・ファイルおよびレコード・ファイル
大文字と小文字
ファイルの終わり
コンソールへの出力の制御
PRINT ファイルのフォーマット
ストリーム・ファイルおよびレコード・ファイル
対話式プログラムの例
レコード単位入出力の使用
レコード入出力の使用によるファイルの定義
レコード単位データ伝送用 ENVIRONMENT オプション
レコード入出力によるデータ・セットの作成
レコード入出力によるデータ・セットへのアクセスと更新
領域データ・セットの定義と使用
領域データ・セット用のファイルの定義
ENVIRONMENT オプションの指定
領域データ・セットの作成時、および領域データ・セットへのアクセス時の必須情報
領域データ・セットでのキーの使用
REGIONAL(1) データ・セットの使用
ダミー・レコード
REGIONAL(1) データ・セットの作成
REGIONAL(1) データ・セットへのアクセスと更新
順次アクセス
直接アクセス
ワークステーション VSAM データ・セットの定義と使用
ワークステーションとメインフレーム間のデータの移動
ワークステーション VSAM 編成
ワークステーション VSAM データ・セットの作成とアクセス
必要なワークステーション VSAM データ・セットの判別
ワークステーション VSAM データ・セット内のレコードへのアクセス
ワークステーション VSAM データ・セットのキーの使用
データ・セット・タイプの選択
ワークステーション VSAM データ・セットのファイルの定義
PL/I ENVIRONMENT 属性のオプションの指定
既存のプログラムのワークステーション VSAM 向けの修正
ワークステーション VSAM 順次データ・セットの使用
順次ファイルを用いたワークステーション VSAM 順次データ・セットへのアクセス
ワークステーション VSAM 順次データ・セットの定義とロード
ワークステーション VSAM キー順データ・セット
ワークステーション VSAM キー順データ・セットのロード
SEQUENTIAL ファイルを用いたワークステーション VSAM キー順データ・セットへのアクセス
DIRECT ファイルを用いたワークステーション VSAM キー順データ・セットへのアクセス
ワークステーション VSAM 直接データ・セット
ワークステーション VSAM 直接データ・セットのロード
SEQUENTIAL ファイルを使用したワークステーション VSAM 直接データ・セットへのアクセス
DIRECT ファイルを使用したワークステーション VSAM 直接データ・セットへのアクセス
データベースとの PL/I の使用
Open Database Connectivity
ODBC の紹介
背景
ODBC ドライバー・マネージャー
組み込み SQL または ODBC の選択
ODBC ドライバーの使用
オンライン・ヘルプ
環境固有の情報
データ・ソースへの接続
エラー・メッセージ
PL/I からの ODBC API
CALL インターフェースの規則
提供されるインクルード・ファイルの使用
ODBC C タイプのマッピング
ODBC ドライバー・マネージャー/ドライバーのライセンス情報の設定
提供されるインクルード・ファイルを使用したサンプル・プログラム
java Dclgen の使用
java Dclgen 用語の理解
PL/I java Dclgen のサポート
テーブル宣言とホスト構造の作成
データベースの選択
テーブルの選択と PL/I 宣言の生成
生成された PL/I 宣言の変更と保管
java Dclgen の終了
プログラムへのデータ宣言の組み込み
上級トピック
Program Maintenance Utility NMAKE の使用
NMAKE を使用する理由
NMAKE の実行
コマンド行の使用
NMAKE コマンド・ファイルの使用
NMAKE オプション
エラー・ファイルの生成 (/X)
すべてのターゲットのビルド (/A)
メッセージの抑制 (/C)
変更日の表示 (/D)
環境変数のオーバーライド (/E)
記述ファイルの指定 (/F)
ヘルプの表示 (/HELP または /?)
終了コードの無視 (/I)
コマンドの表示 (/N)
サインオン・バナーの抑制 (/NOLOGO)
マクロ定義とターゲット定義の出力 (/P)
終了コードのリターン (/Q)
TOOLS.INI ファイルの無視 (/R)
コマンド表示の抑制 (/S)
ターゲット変更日の変更 (/T)
記述ファイル
記述ブロック
特殊機構
複数の記述ブロックでのターゲット
マクロの使用
マクロの例
特殊機構
記述ファイル内のマクロ
コマンド行でのマクロ
継承されたマクロ
定義されたマクロ
マクロ置換
特殊マクロ
特殊マクロの例
ファイル指定の各部分
特殊マクロを変更する文字
変更された特殊マクロの例
マクロ優先順位規則
推論規則
特殊機構
推論規則の例
推論規則パス指定
事前定義推論規則
ディレクティブ
ディレクティブの例
疑似ターゲット
事前定義疑似ターゲット
インライン・ファイル
インライン・ファイルの例
エスケープ文字
コマンドを変更する文字
エラー・チェックのオフへの切り替え (-)
ダッシュ・コマンド修飾子の例
コマンド表示の抑制 (@)
アットマーク (@) コマンド修飾子の例
従属ファイルに対するコマンド実行 (!)
感嘆符 (!) コマンド修飾子の例
EXTMAKE 構文
TOOLS.INI のマクロと推論規則
TOOLS.INI の例
パフォーマンスの向上
最適なパフォーマンスのためのコンパイル時オプションの選択
OPTIMIZE
IMPRECISE
GONUMBER
SNAP
RULES
PREFIX
DEFAULT
パフォーマンスを向上させるコンパイル時オプションの要約
パフォーマンス向上のためのコーディング
DATA 指示入出力
入力専用パラメーター
ストリングの割り当て
ループ制御変数
PACKAGE 対ネストされた PROCEDURE
REDUCIBLE 関数
DEFINED 対 UNION
名前付き定数対静的変数
ライブラリー・ルーチンの呼び出しの回避
ユーザー出口の用法
コンパイラー・ユーザー出口の使用
コンパイラー・ユーザー出口によって実行されるプロシージャー
コンパイラー・ユーザー出口の活動化
IBM 提供のコンパイラー出口、IBMUEXIT
コンパイラー・ユーザー出口のカスタマイズ
CICS ランタイム・ユーザー出口の使用
プログラム起動前の動作
プログラム終了後の操作
CEEFXITA の変更
データ変換表の使用
ダイナミック・リンク・ライブラリーの構築
DLL ソース・ファイルの作成
DLL ソースのコンパイル
DLL のリンク準備
Windows におけるエクスポートする名前の指定
DLL のリンク
DLL の使用
DLL を構築するサンプル・プログラム
メインプログラムでの FETCH および RELEASE の使用
DLL からのデータのエクスポート
Windows における IBM Library Manager の使用
ILIB の実行
コマンド行の使用
ILIB 環境変数の使用
ILIB 応答ファイルの使用
ILIB パラメーターの指定例
ILIB 入力の制御
ILIB 出力の制御
ILIB 出力の制御
ILIB オブジェクト
ILIB オブジェクトの要約
Add/Replace
/EXTRACT
/REMOVE
ILIB オプション
ILIB オプションの要約
/?
/BACKUP
/DEF
/FREEFORMAT
/GENDEF
/GI
/HELP
/LIST
/NOEXT
/OUT
/QUIET
/WARN
呼び出し規則
リンケージについての考慮事項の理解
OPTLINK リンケージ
OPTLINK の機能
OPTLINK 使用のヒント
汎用レジスターの説明
パラメーター
パラメーターの受け渡し例
SYSTEM リンケージ
SYSTEM の機能
SYSTEM リンケージの使用例
STDCALL リンケージ (Windows のみ)
STDCALL の機能
STDCALL 規則の使用例
WinMain の使用 (Windows のみ)
CDECL リンケージ
CDECL の機能
CDECL 規則の使用例
混合言語アプリケーションでの PL/I の使用
データおよびリンケージの一致
受け渡されるデータの内容
データが受け渡される方法
データが受け渡される場所
使用する環境の保守
PL/I メインからの非 PL/I ルーチンの呼び出し
非 PL/I メインからの PL/I ルーチンの呼び出し
ON ANYCONDITION の使用
Java とのインターフェース
Java Native Interface (JNI) の概要
JNI サンプル・プログラム #1 - 「Hello World」
ステップ 1: Java プログラムの作成
ステップ 2: Java プログラムのコンパイル
ステップ 3: PL/I プログラムの作成
ステップ 4: PL/I プログラムのコンパイルとリンク
ステップ 5: サンプル・プログラムの実行
JNI サンプル・プログラム #2 - ストリングの引き渡し
ステップ 1: Java プログラムの作成
ステップ 2: Java プログラムのコンパイル
ステップ 3: PL/I プログラムの作成
ステップ 4: PL/I プログラムのコンパイルとリンク
ステップ 5: サンプル・プログラムの実行
JNI サンプル・プログラム #3 - 整数の引き渡し
ステップ 1: Java プログラムの作成
ステップ 2: Java プログラムのコンパイル
ステップ 3: PL/I プログラムの作成
ステップ 4: PL/I プログラムのコンパイルとリンク
ステップ 5: サンプル・プログラムの実行
Java および PL/I の同等なデータ型の判別
ソート・ルーチンの使用
S/390 とワークステーションのソート・プログラムの比較
ソート・プログラムの使用準備
ソート・タイプの選択
ソート・フィールドの指定
ソートするレコードの指定
ソート・プログラムの呼び出し
PLISRT の例
ソートが成功したかどうかの判別
ソート・データの入出力
ソート・データの処理ルーチン
E15 - 入力処理ルーチン (ソート出口 E15)
E35 - 出力処理ルーチン (ソート出口 E35)
PLISRTA の呼び出し
PLISRTB の呼び出し
PLISRTC の呼び出し
PLISRTD の呼び出し、例 1
PLISRTD の呼び出し、例 2
SAX パーサーの使用
概要
PLISAXA 組み込みサブルーチン
PLISAXB 組み込みサブルーチン
SAX イベント構造体
start_of_document
version_information
encoding_declaration
standalone_declaration
document_type_declaration
end_of_document
start_of_element
attribute_name
attribute_characters
attribute_predefined_reference
attribute_character_reference
end_of_element
start_of_CDATA_section
end_of_CDATA_section
content_characters
content_predefined_reference
content_character_reference
processing_instruction
comment
unknown_attribute_reference
unknown_content_reference
start_of_prefix_mapping
end_of_prefix_mapping
exception
イベント関数に渡されるパラメーター
XML 文書のコード化文字セット
サポートされる EBCDIC コード・ページ
サポートされる ASCII コード・ページ
コード・ページの指定
例外
継続可能な例外コード
例外コードの終了
アプリケーションにおける PL/I MLE の使用
属性およびオプションの適用
DATE 属性
RESPECT コンパイル時オプション
WINDOW コンパイル時オプション
RULES コンパイル時オプション
日付パターンの理解
パターンおよびウィンドウ操作
MLE による組み込み関数の使用
DAYS
DAYSTODATE
日付の計算および比較の実行
明示的な日付計算
暗黙的な日付計算
暗黙的な日付比較
暗黙的な DATE の代入
SQL プリプロセッサーによる MLE の使用
付録および後付け
特記事項
プログラミング・インターフェース情報
ユーザー用のマクロ
商標
参考文献
Enterprise PL/I 資料
DB2 UDB for OS/390 および z/OS
CICS Transaction Server
用語集
索引

Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)