Comments
Description
Transcript
talend_IBMi設定紙芝居_入門編①_i_to_PC(EXCEL)
公開資料名: talendによるIBMi 設定_入門編 No.① 皆さん初めまして、今回 IBMiをご利用の皆様にオープンソースのETLである「Talend」を使ってIBMiのDBをどのよ うに設定したら利用出来るのかについて、複数回に渡りご紹介いたします。 参考にしていただければ幸いです。 第1回目の設定例は、IBMiのテーブル(QEOL/HINMSP)データをPC(EXCEL)にダウンロードする方法を ご紹介します。 Talendのインストールが完了したら起動してみましょう。 ※インストール方法はインターネットで多く紹介されていますので割愛させていただきます。 ダウンロードは、以下のURLからも行えます。(450MB位あるので時間のあるときにダウンロードしてください) http://jp.talend.com/ http://sourceforge.jp/projects/sfnet_talend-studio/releases/ ご注意: ボランティアとしてご紹介しておりますので、本書に記述した内容に関して仮に問題があったとしても、ご利用される皆様 の責任において、ご活用いただけますようお願いいたします。 補足: Talendをお使いになる上での注意点としては、Talendのバージョンによって出来たり出来なかったりする機能がありました。 今回テストしたケース(範囲)で言えば、TOS_DI-Win32-r91494-V5.2.0RC1では問題なく稼働しましたが、「TOS_DI-Win32-r84309V5.1.1」では、同じ定義をしても実行するとアベンドしたり、SQLのテストが出来ないなど、様々な問題が起き余分な時間を使ってし まいました。 業務で使うにはやはりコミュニティー版では無く、ライセンス版をお使いになることをお勧めします。 また今回ご紹介した設定は簡単な機能のみでしたので、研修など受けずに出来ましたが、もっと高度な機能をお使いになるあるい は本格的に活用される場合は、研修をお受けになる事をお勧めします。 では早速、Talendを起動してみましょう。 ↓ まず起動すると、プロジェクトを作成するように求められます。 ↓作成をクリック ←任意のプロジェクト名を入れる ←説明があればを入れる(任意) ↓終了をクリック これでプロジェクトの作成完了です。 では、この環境で 幾つかのサンプルを作成してみましょう。 「demo」 を選択して 「開く」 をクリックします。 ↓ しばらくすると、以下の「ようこそ」の画面が表示されます。 「Start now」 をクリックします。 ↓ ここからが本番です。 まずは、「ジョブ」と呼ばれる定義を作成して、構成を定義していきます。 ↓ まずは、IBMiのDBを、PCのEXCEL(2007形式)ファイルにダウンロードする例です。 ↓ 「ジョブ」にカーソルを合わせ”右クリック”します。 「ジョブの作成」 をクリックします。 ↓ 「ジョブ」にカーソルを合わせ”右クリック”します。 ←この2行は必須です。 (任意の名前を入れます) ←テキストも入れておいた方が 良いでしょう。 ↓ 「終了」をクリックします。 ↓ これから、コンポーネントと呼ばれる予め用意された定義を使い設定していきます。 まずは、コンポーネントの中から、「Databases」、「AS400」をクリックしていくと以下の画面が出てきます。 ← 名前で XXX”Input” が読込み側のようです。 読んで出す と言うことでしょうか。 因みに、出力側が ”XXX”Output" となっています。 ↓ これをドラッグアンドドロップで、左の枠に入れると以下のようになります。 ↓ 続いて、出力先のEXCELのコンポーネントも同様にドラッグアンドドロップで、左の枠に入れます。 (後で行っても良いですが、説明上ここで行います) 「File」、[tFileOutputExcel」 を探し、ドラックアンドドロップします。 ↓ それでは、IBMi側の設定を行います。 「tAS400Input_1」 のアイコンをダブルクリックします。 すると、下のViewにパラメータ定義の画面が表示されます。 ↓ 此処のパラメータを入力します。 ※大文字小文字の区別はありません。 ← 注:データベースは ライブラリー名 を指定します。 ← 注:クエリの "sysobjects" の部分を読込ファイルである "hinmsp"に変更します。 ↓ 次にスキーマーの編集を行います。 「クエリタイプ」の 「Guess schema」 をクリックしてください。 以下のようにIBMiのDB情報から、フィールド属性を取得してくれます。 補足:Talendo 5.1.1のバージョンでは、フィールド属性を取得 出来ませんでした。バージョンによって不具合があるようです。 ↓ 「OK」 で抜けます。 見た目は何の変化もありませんが、内部的にフィールド属性が取得された状態になりました。 スキーマが取得出来ているかを確認するには、「スキーマの編集」をクリックしてください。 ↓ スキーマ編集の画面では、それぞれの属性が取り込まれているのが確認出来ます。 ↓ IBMi側の設定はこれだけです。 時間的には数分で完了します。 続いて、エクスポート先のEXCELの設定に移ります。 IBMiの時と同じように、ECXELのアイコンをダブルクリックします。 下のViewが出てきます。 これを編集していきます。 ↓ ← excel2007・・・にチェックを入れます。 ← PCの保管先のパスとファイル名を入れます。 ← excelのシート名を指定したい場合は、変更してください。 ← ヘッダーとして、IBMiのフィールド名を組み込む場合は ヘッダーを含むにチェックを入れてください。 ↓ 続いてエンコーディングの設定です。「詳細設定」タブを開きます。 エンコードの▼をクリックします。 ↓ → 「CUSTOM」 をクリックして選択してください。 ↓ ↓ "ISO-8859-15" を ”Windows-31j” という文字で書き換えます。 参考:ここに、”Shift-jis” も入れられますが、機種依存文字などが 文字化けしないようにJavaのプログラミングで一般的に使われている ” windows-31j ”にする事をお勧めします。 ↓ ↓ これでInput Outputのファイル両方の設定が完了です。 続いてこれら2つのファイルを結びつける設定を行います。 ← IBMiの設定したアイコンを左クリックした後、 右クリックします。上段にある「Row」をクリック、 続いて「Main」をクリックします。 ↓ カーソルをexcelのアイコンの上に移動すると 進入禁にマークが消えますので、そこでクリックします。 連結→ これで完了です。 定義が正しいかテストしてみます。 今まで設定していたタブに 「実行(ジョブ・・・・・・)」というタブがありますので、それをクリックして開いてください。 ↓ 「実行ボタン」をクリックしてください。 間違いなければ、終了コード0 で完了します。 これがエクスポートされたexcelファイルです。 注目していただきたいのは、2∼4行目のC列の漢字です。 凛、髙﨑、草彅 など、機種依存文字と言われる文字も文字化けせずに表示されています。 これは、エンコードの部分で"windows-31j"を指定した結果です。("Shift-jis"を指定した場合は文字化けします) 第1回入門編は以上です。 思った以上に簡単だったのではないでしょうか。 第2回入門編は、PCからIBMiへのアップロードを予定しています。