外部DB参照定義
フィールド形式がDB参照項目、DB参照コード入力の場合に使用するデータベース や 外部システムへの接続情報などを登録します。JDBC 経由でデータベースに接続してデータを参照する方法と、WEB API 経由で外部システムに接続してデータを参照する方法があります。
JDBC 経由でデータベースに接続する場合、DB参照で利用するテーブルには、コードと名称の列が必要となります。なお、データベースへの接続方法や SQL の記述、データベースへのデータの登録方法などについては、ご利用になるデータベースのマニュアルなどを参照してください。
WEB API 経由で外部システムに接続する場合、使用するプログラム(API)は別途アドオン開発する必要があります。アドオン開発の詳細については、オプション製品「SDK API使用権許諾」内の開発者マニュアルを参照してください。
JDBC 経由で参照する先のデータベースは、JDK8 に対応した JDBC ドライバが提供されているデータベースとバージョンである必要があります。動作実績があるものは下記のとおりです。
なお、PostgreSQL 以外のデータベースに接続する場合は、アプリケーションサーバ上で JDBC ドライバの設定が必要となります。設定方法は当システムのインストールガイドを参照してください。 |
JDBC連携の外部DB参照定義を登録する
-
外部DB参照定義を作成したいデータベースのデータベース設定画面を開きます。
起動方法は、「データベースの新規作成」の「データベースをロック・ロック解除する」の項を参照してください。 -
左ペインの
をクリックします。
-
外部DB参照定義の設定(一覧)画面の
をクリックします。
登録済みの外部DB参照定義のラジオボタンを選択し、
をクリックすることにより、登録済みの外部DB参照定義を複写して新規に外部DB参照定義を作成できます。
-
連携種類に ”JDBC連携” を選択し、
をクリックします。
連携種類は、最初に選択します。選択した連携種類により以降の設定画面が異なります。連携種類を後から変更することはできません。
-
外部DB参照定義の設定(登録)画面に、以下の項目を入力します。
項目名 説明 名称 *
DB参照定義の名称を入力します。
ドライバ *
データベースに接続する際に利用するJDBCドライバのクラス名を入力します。
PostgreSQLに接続する場合は、
”org.postgresql.Driver” となります。
Oracleデータベースに接続する場合は、
”oracle.jdbc.driver.OracleDriver” となります。JDBC URL *
データベースに接続するための JDBC URL を指定します。
PostgreSQLの場合は、
“jdbc:postgresql://<サーバ名>:<ポート番号>/<データベース名>” となります。
Oracleデータベースの場合は、
“jdbc:oracle:thin:@<ホスト名>:1521:<インスタンス名>” となります。ユーザ名
データベースに接続するためのユーザ名を指定します。
パスワード
データベースに接続するユーザのパスワードを指定します。
テーブル名 *
参照するテーブル名を入力します。
コード項目列名 *
コードとして利用する値が格納されている列の名前を指定します。
コード項目ラベル *
選択画面でコード項目のラベルとして利用する文字列を指定します。
名称項目列名 *
名称として利用する値が格納されている列の名前を指定します。
指定できるのは、文字列型のみとなります。名称ラベル *
選択画面で名称項目のラベルとして利用する文字列を指定します。
検索設定
選択画面で検索機能を利用する場合は、“検索機能を使用する” を選択し、検索方法を指定します。検索方法は、完全一致/前方一致/前後方一致 より選択できます。
選択画面でキーワード検索時の検索対象は、「コード項目列名」、「名称項目列名」で指定した項目、および「追加項目列名」で “選択画面の検索結果列に表示する” を選択して追加した項目になります。追加項目列名・ラベル
名称・コード以外の値を取得する場合に、取得する追加項目の列名とラベルを指定します。最大 100 まで指定可能です。
項目を追加するには、をクリックし追加項目の設定領域を表示します。
「追加項目列名」「追加項目ラベル」を指定し、をクリックします。
■追加項目の設定領域
追加項目列名 *
:
取得する追加項目の列名を入力します。取得した値は、文字列(1行)/文字列(複数行)/リッチテキスト/数値/フラグ/ラジオボタン/ドロップダウンリスト/日付項目/年月項目/時刻項目/日付時刻項目/時間量項目 に転送できます。
追加項目の転送先の指定は、フィールド設定で行います。追加項目ラベル *
:
追加項目に該当するラベルを入力します。
ラベルはフィールド設定時の転送先項目の指定画面に表示されます。表示項目
:
選択画面の検索結果に表示する場合は “選択画面の検索結果列に表示する” を選択します。選択できるのは最大3項目までとなります。
追加検索条件
選択画面が発行するSQLのWHERE条件に付加する文字列を指定します。
並ベ替え指定
選択画面が発行するSQLのORDER句に指定する文字列を指定します。
-
をクリックします。設定内容にて正しくデータベースに接続できるかを確認できます。
接続テストの結果は画面上のメッセージ領域に表示されます。エラーが発生した場合は、赤色で表示されます。表示されるメッセージにあわせ設定内容を修正してください。 -
をクリックします。
|
補足:当システムのデータベースから社員情報を取得する
外部DB参照にて、当システムのデータが格納されるデータベースから直接社員の所属情報を取得するビューが登録されています。外部DB参照にて社員の所属情報を利用する場合は、以下のビューを利用してください。
なお、当ビューは、データを参照する事を目的としています。当ビューを利用して、データベースに直接データを登録する事はできません。
■ビュー名:HV2_BELONG_TO_DEPARTMENT
列名 | 型 | 桁数 | 説明 |
---|---|---|---|
CORPID |
VARCHAR |
10 |
会社コード |
BelongToDeptID |
BIGINT |
当システム内部の所属の識別子 |
|
AnnounceDateID |
BIGINT |
当システム内部の発令日の識別子 |
|
DeptID |
BIGINT |
当システム内部の部門の識別子 |
|
EmpID |
BIGINT |
当システム内部の社員の識別子 |
|
CorpName |
VARCHAR |
200 |
会社名 |
CorpShortName |
VARCHAR |
120 |
会社略称 |
DeptName |
VARCHAR |
180 |
部門名称 |
DeptShortName |
VARCHAR |
120 |
部門略称 |
EmpName |
VARCHAR |
120 |
社員名 |
UserID |
VARCHAR |
20 |
ユーザID |
EmpClassName |
VARCHAR |
80 |
社員区分名 |
TitleName |
VARCHAR |
80 |
役職名 |
BelongClass |
CHAR |
1 |
兼務区分(0:主務、1:兼務) |
ForeignEmpNumber1 |
VARCHAR |
20 |
外部社員コード1 |
ForeignEmpNumber2 |
VARCHAR |
20 |
外部社員コード2 |
Expire |
DATE |
ID有効期限 |
|
RetireDate |
DATE |
退職日 |
|
Remark1 |
VARCHAR |
100 |
社員所属情報のメモ1 |
Remark2 |
VARCHAR |
100 |
社員所属情報のメモ2 |
Remark3 |
VARCHAR |
100 |
社員所属情報のメモ3 |
EmpRemark1 |
VARCHAR |
100 |
社員情報のメモ1 |
EmpRemark2 |
VARCHAR |
100 |
社員情報のメモ2 |
EmpRemark3 |
VARCHAR |
100 |
社員情報のメモ3 |
ForeignCorpNumber |
VARCHAR |
20 |
外部会社コード |
ForeignDeptNumber1 |
VARCHAR |
20 |
外部部門コード1 |
ForeignDeptNumber2 |
VARCHAR |
20 |
外部部門コード2 |
ForeignEmpClassNumber |
VARCHAR |
20 |
外部社員区分コード |
ForeignTitleNumber |
VARCHAR |
20 |
外部役職コード |
|
WEB API連携の外部DB参照定義を登録する
-
外部DB参照定義を作成したいデータベースのデータベース設定画面を開きます。
起動方法は、「データベースの新規作成」の「データベースをロック・ロック解除する」の項を参照してください。 -
左ペインの
をクリックします。
-
外部DB参照定義の設定(一覧)画面の
をクリックします。
登録済みの外部DB参照定義のラジオボタンを選択し、
をクリックすることにより、登録済みの外部DB参照定義を複写して新規に外部DB参照定義を作成できます。
-
連携種類に ”WEB API連携” を選択し、
をクリックします。
連携種類は、最初に選択します。選択した連携種類により以降の設定画面が異なります。連携種類を後から変更することはできません。
-
外部DB参照定義の設定(登録)画面に、以下の項目を入力します。
項目名 説明 名称 *
DB参照定義の名称を入力します。
連携先URL *
参照時に呼び出すプログラム(API)の URL を指定します。
URL は、"http://"、"https://" で始まる URL のみ指定可能です。HTTPヘッダ
外部システムへ接続時に付加するヘッダ情報を指定します。
"プロパティ名:値" の形式で指定してください。半角英数字記号で入力してください。
複数指定する場合は改行で区切ってください。
なお、当システムのマスタ情報を指定することもできます。利用できるマスタ情報は、「補足:HTTPヘッダについて」を参照してください。連携先URL と HTTPヘッダを指定した後、
をクリックします。外部システムへの接続が行われ、外部システムから取得した値がコード項目ラベル、名称項目ラベル、追加項目列名・ラベルに表示されます。
コード項目ラベル
をクリックすることで、外部システムからコード項目として取得した項目が表示されます。直接入力・変更することはできません。
選択画面でコード項目のラベルとして利用されます。名称項目ラベル
をクリックすることで、外部システムから名称項目として取得した項目が表示されます。直接入力・変更することはできません。
選択画面で名称項目のラベルとして利用されます。追加項目列名・ラベル
をクリックすることで、外部システムから追加項目として取得した項目の列名とラベルが表示されます。直接追加・変更することはできません。最大 100 まで設定可能です。
追加項目列名
:
DB参照項目、DB参照コード入力で選択・入力時に取得した値は、文字列(1行)/文字列(複数行)/リッチテキスト/数値/フラグ/ラジオボタン/ドロップダウンリスト/日付項目/年月項目/時刻項目/日付時刻項目/時間量項目 に転送できます。
追加項目の転送先の指定は、フィールド設定で行います。追加項目ラベル
:
ラベルはフィールド設定時の転送先項目の指定画面に表示されます。
表示区分
:
選択画面の検索結果に表示する場合は “表示する” を選択します。選択できるのは最大3項目までとなります。
リンクURL
内容表示画面において、登録済みのDB参照項目、DB参照コード入力に外部システムを起動するリンクを表示する場合、リンクに使用する URL を指定します。
URL は、"http://"、"https://" で始まる URL のみ指定可能です。
なお、スマートフォン版ではリンクは表示されません。リンクパラメタ名
リンクURL に、DB参照項目、DB参照コード入力で選択・入力された値以外のフィールドの値をパラメタとして設定したい場合は、パラメタの名称を指定します。
設定できるリンクパラメタは1つのみとなります。リンクパラメタ値
リンクパラメタ名で指定したパラメタに値を設定するWebデータベースのフィールドを選択します。選択できる入力形式は文字列(1行)のみとなります。
選択しない場合、リンクURL にはDB参照項目、DB参照コード入力で選択・入力された値が設定されます。クエリURL *
DB参照項目、DB参照コード入力において、検索時に使用する API の URL を入力します。
URLは、"http://"、"https://" で始まる URL のみ指定可能です。 -
をクリックします。設定内容にて正しく外部システムに接続できるかを確認できます。
接続テストの結果は画面上のメッセージ領域に表示されます。エラーが発生した場合は、赤色で表示されます。表示されるメッセージにあわせ設定内容を修正してください。 -
をクリックします。
|
補足:HTTPヘッダについて
当システムのマスタ情報をHTTPヘッダに指定する場合は、以下のリテラルを指定します。
暗号化なしの形式とAES共通鍵による暗号化ありの形式で指定できます。
AES共通鍵による暗号化の形式で指定する場合は、当システムのWebサーバにある定義ファイル(poweregg.properties)にて、AES共通鍵による暗号化を使用するよう変数が設定されている必要があります。事前に設定値を確認してください。poweregg.properties での設定については、オプション製品「SDK API使用権許諾」内の開発者マニュアルを参照してください。
マスタ項目 | リテラル(暗号化なし) | リテラル(AES共通鍵による暗号化あり) |
---|---|---|
当システムのユーザID |
@@userid@@ |
@@userid_aes@@ |
当システムのログインパスワード |
@@password@@ |
@@password_aes@@ |
メールアドレス |
@@mailaddress@@ |
@@mailaddress_aes@@ |
POPユーザID |
@@popuserid@@ |
@@popuserid_aes@@ |
POPパスワード |
@@poppasswd@@ |
@@poppasswd_aes@@ |
外部社員コード1 |
@@empid1@@ |
@@empid1_aes@@ |
外部社員コード2 |
@@empid2@@ |
@@empid2_aes@@ |
社員情報のメモ1 |
@@empmemo1@@ |
@@empmemo1_aes@@ |
社員情報のメモ2 |
@@empmemo2@@ |
@@empmemo2_aes@@ |
社員情報のメモ3 |
@@empmemo3@@ |
@@empmemo3_aes@@ |
社員所属情報のメモ1 |
@@belongmemo1@@ |
@@belongmemo1_aes@@ |
社員所属情報のメモ2 |
@@belongmemo2@@ |
@@belongmemo2_aes@@ |
社員所属情報のメモ3 |
@@belongmemo3@@ |
@@belongmemo3_aes@@ |
外部部門コード1 |
@@divid1@@ |
@@divid1_aes@@ |
外部部門コード2 |
@@divid2@@ |
@@divid2_aes@@ |
部門情報のメモ1 |
@@divmemo1@@ |
@@divmemo1_aes@@ |
部門情報のメモ2 |
@@divmemo2@@ |
@@divmemo2_aes@@ |
部門情報のメモ3 |
@@divmemo3@@ |
@@divmemo3_aes@@ |
会社コード |
@@corpcode@@ |
@@corpcode_aes@@ |
外部会社コード |
@@corpid@@ |
@@corpid_aes@@ |
ログイン社員名 |
@@empname@@ |
@@empname_aes@@ |