3.1.1 環境を設定する

ここでは,辞書の環境設定の内容について説明します。なお,辞書の環境は,運用を開始したあとでも必要に応じて変更できます。この場合は,環境構築ユティリティで環境を変更したあと,クライアントのリポジトリブラウザを再起動してください。リポジトリに作成されている,すべての辞書フォルダの環境が変更されます。

<この項の構成>
(1) 国語区分を設定する
(2) 言語区分を設定する
(3) 定義項目のフィールドの属性を設定する
(4) フィールドの名称を設定する
(5) ユーザ定義のタイプを追加する
(6) 分類区分とタイプの対応を変更する
(7) タイプのけた数の範囲を変更する
(8) タイプの組み合わせを変更する
(9) タイプに対するレコード生成キーワードを編集する
(10) 検査項目を定義する
(11) 命名ルールを定義する
(12) データ項目名・業務ルール名の一意性チェック範囲を設定する

(1) 国語区分を設定する

プロジェクトで使用する各国語の名称を,国語区分に設定します。国語区分の名称は,4種類まで設定できます。国語区分「日本語」および「英語」が標準に設定されています。

新しい国語区分の名称を付けるときは,「未設定n」の名称を変更します。

なお,標準に設定されている国語区分の設定順序は,SEWB+/REPOSITORYで参照されます。変更しないよう留意してください。

(2) 言語区分を設定する

アプリケーションの開発に使用するプログラミング言語の名称を,言語区分に設定します。言語区分の名称は,10種類まで設定できます。次に示す言語区分が標準に設定されています。

新しい言語区分の名称を付けるときは,「言語n」の名称を変更します。また,SQL言語を「HiRDBのSQL言語の言語区分」にするには,標準に設定されている分類区分とタイプの対応をカスタマイズする必要があります。カスタマイズの詳細については,「表2-8 分類区分とタイプの対応のカスタマイズ例(言語区分SQLのタイプをHiRDBとして使用する場合)」を参照してください。

なお,標準に設定されている言語区分の設定順序は,SEWB+/REPOSITORYやSEWB+/CONSTRUCTIONなどの辞書を利用するSEWB+ツールから参照されます。設定順序を変更しないよう留意してください。

(3) 定義項目のフィールドの属性を設定する

(a) 文字数の上限(フィールド長)の設定

リポジトリブラウザでの定義項目の文字数の上限(テキストボックスのフィールド長)を変更します。変更できる定義項目,標準に設定されている値および設定範囲については,「2.4.1 データ項目に定義する情報」または「2.6.1 業務ルールに定義する情報」を参照してください。

(b) データ項目の継承モードの設定

継承関係を定義したとき,データ項目の各定義項目の情報を,下位のデータ項目にどのように継承するかを継承モードで設定します。この設定は,リポジトリブラウザでのデータ項目の操作,およびコマンドを使ったCSV形式ファイル(標準フォーマット)の入出力時に反映されます。

(4) フィールドの名称を設定する

データ項目および業務ルールの定義項目「フィールド」の名称を変更して,プロジェクト独自の名称を付けます。また,リポジトリブラウザに表示するフィールドを設定します。標準に設定されている値および設定範囲については,「2.4.1 データ項目に定義する情報」または「2.6.1 業務ルールに定義する情報」を参照してください。

(5) ユーザ定義のタイプを追加する

標準で用意されているタイプに加えて,プロジェクトに応じたユーザ定義のタイプを登録できます。例えば,言語区分「COBOL又はOOCOBOL」で使用するタイプとして,「J 右寄せ英数字項目」を追加登録できます。

追加したユーザ定義のタイプについては,分類区分との対応づけやけた数の範囲など,タイプに関する設定をしてください。

ユーザ定義のタイプは,削除することもできます。ただし,ユーザ定義のタイプを削除するには,そのタイプが分類区分のデフォルトタイプではなく,さらに,リポジトリ内で使用されていない(データ項目の定義に使用されていない)ことが必要です。ユーザ定義のタイプを削除すると,そのタイプに関する分類区分の対応づけなどの設定も削除されます。

エクスポート・インポート機能を使用するような,複数のSEWB+/REPOSITORYサーバを使用する環境で言語別タイプを追加する場合には,エクスポート・インポート機能で言語別タイプ(データ項目,業務ルール辞書の環境情報)も配布してください。また,それぞれのSEWB+/REPOSITORYサーバで言語別タイプを追加するのではなく,言語別タイプを追加するSEWB+/REPOSITORYサーバを決めて管理するようにしてください。

(6) 分類区分とタイプの対応を変更する

プロジェクトに応じて,分類区分に対応するタイプを変更します。プロジェクトで使用するユーザ定義のタイプを追加したり,標準で設定されているタイプのうち使用しないものを削除したりします。また,タイプの初期値(デフォルトタイプ)を設定することもできます。

例えば,COBOLでアプリケーションを開発するプロジェクトで浮動小数点データ形式を扱わないとき,分類区分「整数データ」に対応するタイプから「E 外部浮動小数点項目」および「D 内部浮動小数点項目」を除きます。

標準に設定されている分類区分とタイプの対応については,「2.4.1 データ項目に定義する情報」を参照してください。

(7) タイプのけた数の範囲を変更する

検査でチェックされるけた数の範囲は,あらかじめ各プログラミング言語の仕様に基づいて設定されています。さらにプロジェクト固有の制限を設けたい場合には,けた数の上限値と下限値を設定して範囲を変更します。

標準に設定されているタイプに対応するけた数については,「2.4.1 データ項目に定義する情報」を参照してください。

(8) タイプの組み合わせを変更する

言語間でデータの形式を表すタイプの整合性を保つため,「COBOL又はOOCOBOL」,「C又はC++」,「SQL」,「帳票定義」,「Java」のタイプの組み合わせが標準に設定されています。例えば,「COBOL又はOOCOBOL」のタイプ「X 英数字項目」に着目した場合,次の組み合わせが規則に従って設定されています。

[図データ]

規則
「COBOL又はOOCOBOL」のタイプ「X 英数字項目」は分類区分「英数字文字列データ」,「英数字項目」,「日付データ」に対応しています。「COBOL又はOOCOBOL」と「C又はC++」間のデータ形式を表すタイプの整合性を保つために,「C又はC++」の分類区分「英数字文字列データ」,「英数字項目」,「日付データ」に対応するタイプが標準に設定されています。つまり,「C又はC++」のタイプ「char 文字型」,「char* 文字型(ポインタ)」が設定されています。分類区分とタイプの対応については「2.4.1(3)(a) 分類」を参照してください。
ほかの「言語区分」と「タイプの種類」に対する標準に設定されているタイプの組み合わせも,同様に,この規則に従っています。ただし,分類区分の「分類なし」は標準のタイプの組み合わせには設定されていません。

必要に応じて,整合性を取るタイプの組み合わせを変更してください。

また,言語区分SQLのタイプをHiRDBとして使用する場合,標準に設定されているタイプの組み合わせを変更する必要があります。例えば「COBOL又はOOCOBOL」のタイプ「X 英数字項目」に着目した場合,次の組み合わせを設定します。

[図データ]

(9) タイプに対するレコード生成キーワードを編集する

レコード生成キーワードは,「COBOL又はOOCOBOL」および「C又はC++」の言語別のタイプごとに,データ項目の定義情報を,どのようにソースコードに生成するかを指定するものです。SEWB+/CONSTRUCTIONでアプリケーション開発を始める前に,レコード生成キーワードの内容を確認し,必要であれば編集してください。ただし,この内容は,SEWB+/CONSTRUCTIONおよびSEWB+/RECORD DEFINERでのすべてのプログラム生成およびレコード生成に有効になりますので,編集に際しては,あらかじめ十分な検討が必要です。

レコード生成キーワードは,プログラミング言語で規定されたデータの定義と,データ項目の定義情報を置換するための可変記号(@で始まる文字列)で記述されます。標準設定の内容を表3-1および表3-2に示します。また,可変記号の生成規則を表3-3に示します。

表3-1 レコード生成キーワードの内容(COBOL又はOOCOBOL)

タイプレコード生成キーワード
X 英数字項目

@DATAITEM PIC X@LEN @OCCURS @VALUE

Z 数字編集項目

@DATAITEM PIC @EDITCHAR @OCCURS @VALUE

N 漢字項目

@DATAITEM PIC N@LEN @OCCURS @VALUE

9 符号なし外部10進項目

@DATAITEM PIC 9@ILEN@DLEN @OCCURS @VALUE

S 符号付き外部10進項目

@DATAITEM PIC S9@ILEN@DLEN @OCCURS @VALUE

U 符号なし内部10進項目

@DATAITEM PIC 9@ILEN@DLEN USAGE PACKED-DECIMAL @OCCURS @VALUE

P 符号付き内部10進項目

@DATAITEM PIC S9@ILEN@DLEN USAGE PACKED-DECIMAL @OCCURS @VALUE

BU 符号なし2進項目

@DATAITEM PIC 9@ILEN@DLEN USAGE BINALY @OCCURS @VALUE

B 符号付き2進項目

@DATAITEM PIC S9@ILEN@DLEN USAGE BINALY @OCCURS @VALUE

E 外部浮動小数点項目

@DATAITEM PIC @EDITCHAR @OCCURS

D 内部浮動小数点項目

@DATAITEM @COMP @OCCURS @VALUE

1 内部ブール項目

@DATAITEM PIC 1@LEN USAGE BIT @OCCURS @VALUE

8 外部ブール項目

@DATAITEM PIC 1@LEN USAGE DISPLAY @OCCURS @VALUE

T アドレスデータ項目

@DATAITEM USAGE ADDRESS @OCCURS @VALUE

フリー定義

@DATAITEM @FREE

表3-2 レコード生成キーワードの内容(C又はC++)

タイプレコード生成キーワード
char 文字型

char @DATAITEM@OCCURS@LEN

char* 文字型(ポインタ)

char* @DATAITEM@OCCURS

short 符号付き短整数型

short @DATAITEM@OCCURS

unsigned short 符号なし短整数型

unsigned short @DATAITEM@OCCURS

int 符号付き整数型

int @DATAITEM@OCCURS

unsigned int 符号なし整数型

unsigned int @DATAITEM@OCCURS

long 符号付き長整数型

long @DATAITEM@OCCURS

unsigned long 符号なし長整数型

unsigned long @DATAITEM@OCCURS

float 単精度浮動小数点型

float @DATAITEM@OCCURS

double 倍精度浮動小数点型

double @DATAITEM@OCCURS

long double 拡張精度浮動小数点型

long double @DATAITEM@OCCURS

フリー定義

@FREE @DATAITEM

表3-3 可変記号の生成規則

可変記号COBOL又はOOCOBOLC又はC++
@DATAITEM言語別の名前※1言語別の名前※1
@LENけた数がnのとき「(n)」が生成されるけた数がnのとき「[n+1]」が生成される
分類が日本語文字列データの場合,1文字を2バイトとして扱い「[n×2+1]」となる
@PLENけた数がnのとき「(n)」が生成されるけた数がnのとき「[n]」が生成される
分類が日本語文字列データの場合,1文字を2バイトとして扱い「[n×2]」となる
@ILENけた数がm小数部けた数がnのとき「(m-nの値)」が生成される
@DLEN小数部けた数がnのとき「V9(n)」が生成される
@OCCURS反復回数がnのとき「OCCURS n」が生成される反復回数がnのとき「[n]」が生成される
@VALUEデータ項目に初期値があるとき,「VALUE 初期値」が生成される※2
@EDITCHAR編集文字列
@COMPタイプがDのとき,次のどちらかが生成される
「COMP-1」:けた数が1~7の場合
「COMP-2」:けた数が8~16の場合
@FREEフリー定義の内容フリー定義の内容
(凡例)
-:指定できません(何も生成されません)。
注1
可変記号は必ず大文字で記述してください。
注2
可変記号に対応するデータ項目の定義情報がない場合には,何も生成されません。
注※1
言語別の名前が定義されていない場合は,データ項目名と置換されます。
注※2
SEWB+/CONSTRUCTIONのテンプレートの@@expand文に@VALUEの指定がない場合には,生成されません。

日立製以外のCOBOLを使用する場合には
言語区分「COBOL又はOOCOBOL」のレコード生成キーワードの内容はCOBOL2002の文法に従って設定されています。日立製以外のCOBOLを使用する場合は,タイプごとにデータを定義する文法に相違がないか確認し,違いがあればレコード生成キーワードを変更してください。例えば,PICTURE句の日本語データを定義する文字が異なる場合,タイプ「N 漢字項目」のレコード生成キーワード「@DATAITEM PIC N@LEN @OCCURS」の「N」を目的の文字に変更します。

(10) 検査項目を定義する

データ項目および業務ルールの検査項目から,適用する検査項目を選びます。

(a) データ項目の検査項目

データ項目用に用意されているの各検査項目の内容を次に説明します。

(b) 業務ルールの検査項目

業務ルール用に用意されている各検査項目の内容を次に説明します。

(c) 検査項目のカスタマイズ

標準で用意されている検査項目は,DLLとして登録されています。これに加えて,SEWB+/REPOSITORYでは,プロジェクト独自の基準を反映して検査DLLを作成,登録するためのインタフェースを提供しています。検査項目インタフェースと検査DLLの作成方法については,「付録D 検査項目インタフェース」を参照してください。

(11) 命名ルールを定義する

検査で適用する命名ルールの条件を選択して,辞書フォルダ単位で定義項目別に値を設定します。次の定義項目に対する命名ルールを定義できます。

例えば,辞書フォルダ「システム開発辞書」のデータ項目名,辞書フォルダ「社内向け辞書」の業務ルール名というように,辞書フォルダ単位で定義項目別に命名ルールを定義できます。プロジェクトの名称基準を基に命名ルールを定義することで,名称の標準化を図れます。

(a) 命名ルールの条件

命名ルールには,複数の条件を組み合わせて設定します。次に示す条件が標準に用意されています。

(b) 条件のカスタマイズ

標準で用意されている命名ルールの条件は,DLLとして登録されています。これに加えて,SEWB+/REPOSITORYでは,プロジェクト独自の名称基準を反映して条件DLLを作成,登録するためのインタフェースを提供しています。命名ルールインタフェースと条件DLLの作成方法については,「付録C 命名ルールインタフェース」を参照してください。

(12) データ項目名・業務ルール名の一意性チェック範囲を設定する

データ項目名および業務ルール名の一意性チェック範囲の設定について説明します。この設定を有効にするには,データ項目の場合は検査項目「データ項目名の一意性チェック」を,業務ルールの場合は検査項目「業務ルール名の一意性チェック」を選択しておく必要があります。