欄位用法屬性

以下規則控管開啟查詢檔中的欄位用法屬性 (僅輸入或同時輸入及輸出)。

無法在「開啟查詢檔案 (OPNQRYF)」指令的任何參數上指定包含在記錄格式中的欄位,該記錄格式在 FILE 參數上識別,並定義 (在用來建立檔案的 DDS 中) ,其用法值為 N (既非輸入也非輸出)。 只能指定定義為 I (僅限輸入) 或 B (輸入及輸出) 用法的欄位。 OPNQRYF 指令會忽略在 FORMAT 參數上所識別的記錄格式中使用定義為 N 的任何欄位。

開啟查詢檔記錄中的欄位通常具有與 FORMAT 參數上所識別之記錄格式中的欄位相同的用法屬性 (僅限輸入或同時輸入及輸出) ,但本主題稍後所指出的例外。 如果為包含輸出或更新及任何用法的任何選項 (OPTION 參數) 開啟檔案,且在開啟查詢檔案記錄格式中,將 FORMAT 參數所識別記錄格式中的任何 B (輸入及輸出) 欄位變更為 I (僅輸入) ,則 OPNQRYF 指令會傳送參考訊息。

如果您要求結合處理或群組處理,或如果您指定 UNIQUEKEY 處理,則查詢記錄中的所有欄位都會被提供僅供輸入使用。 從正在處理的檔案 (在 FILE 參數上識別) 中僅輸入欄位的任何對映,都會在開啟查詢檔案記錄格式中提供僅供輸入使用。 使用 MAPFLD 參數定義的欄位通常只在開啟查詢檔中使用輸入。 如果符合下列所有條件,則會為 MAPFLD 參數上定義的欄位提供符合其組成欄位使用的值:
  • 由於本主題先前說明的任何條件,不需要僅輸入。
  • MAPFLD 參數上指定的欄位定義表示式是欄位名稱 (沒有運算子或內建函數)。
  • 欄位定義表示式中使用的欄位存在於 FILE 參數指定的其中一個檔案、成員或記錄格式中 (不在使用 MAPFLD 參數定義的另一個欄位中)。
  • 基本欄位和對映欄位是相容的欄位類型 (除非對映在相同長度的分區和字元欄位之間,否則對映不會混合數值和字元欄位類型)。
  • 如果基本欄位是具有非零小數精準度的二進位,則對映欄位也必須是二進位且具有相同的精準度。