最初のページに戻ります。

総合の目次があるページに戻ります。

よく使うマニュアルです

Wiki

updated on 2004.06.23

20.11.異界TCP/IPへの道(7)

[ Previous ] [ HOME ] [ Upper ]


NFSではなかった

実は、お便りを頂き、これは、PC5250の共用フォルダーではないか、との連絡を頂きました。ありがとうございます。「共用フォルダー?」あれって、無くなったんじゃないのかなぁ。と思っていたら、

eNetwork パーソナル・コミュニケーションズ Version J4.2 - Windows 95、Windows NTより

3.4.3 AS/400 ネットワーク・ドライブ(共用フォルダー)

AS/400 システムは、フォルダーという構造を使用して文書、メール、その他の関連オブジェクトを保管し、編成します。パーソナル・コミュニケーションズにより、これらのフォルダーを共用し、AS/400 文書とワークステーション・ファイルを両方ともそれらのフォルダーに保管します。

ネットワーク・ドライブ機能を使用して、ワークステーションのドライブさながらに、AS/400 システムのフォルダーにアクセスできます。たとえば、AS/400 システムのフォルダーをワークステーションのドライブ E に割り当てて、ハード・ドライブのドライブ C にアクセスするのと同じようにドライブ E にアクセスできます。


3.4.3.1 AS/400 ネットワーク・ドライブの設定

AS/400 ネットワーク・ドライブを使用するには、AS/400 への SNA 接続(IEEE 802.2 を介する Twinax または LAN など)が必要です。ディスプレイまたはプリンター・セッション、SNA ノード構成を介して定義されている別個の APPC 接続でもかまいませ。TCP/IP または IPX 接続は使用できません。

複数の AS/400 が相互に接続されており、そのうち 1 つ以上の AS/400 システムでネットワーク・ドライブを使用したい場合、直接リンクはそのうち 1 つのシステムに対してのみ必要になります。すべての AS/400 は SNA ネットワーク・ノードなので、どれに接続しても他のシステムにアクセスできます。必要なのは、直接リンクの構成に AS/400 相互のパートナーLU 定義を追加することだけです。このことは、「SNA ノード構成」でできます。

ひええ、あるんだ。IEEE802.2でSNA接続したんで、出来てたんだ。知らなかった...共用フォルダーが出来ないから、わざわざWindows3.1+PC5250を残していたこともあったのに...そして、STRNFSSVRをしなくても、AS/400にアクセスできてしまいました。あれま。

申し訳有りませんでした。訂正してお詫びします。STRNFSSVRは別の機会にご報告します。

ここから下は、ネットワーク・ドライブ(共用フォルダー)のレポートと考えて下さい。

nfsnetwrk001.gif (10759 バイト)

この下の画面までは良いのですが、うっかり、qsys.libを選ぶと、ずーっとガラガラガラガラとハードディスクがうるさく、時間がかかります。メモリ不足なんだろうか?64メガなんだけど。再表示で、若干早いので、キャッシュはしている見たいです。AS/400でライブラリー名を変更して、QSYSに「戻る」操作をしたら、ライブラリーは古い名前のままでした。リフレッシュすれば名前の表示も変わったのでしょうが、遅いので止めました。

nfsnetwrk002.gif (18396 バイト)

QDLS (Document Library Services) が、AS/400のWRKFLRでアクセス出きるものらしい。これを使ってみます。

nfsnetwrk016.gif (16414 バイト)

このフォルダーKakefudaに、PCのファイルをコピーしてみました。

nfs0020.gif (20273 バイト)

よし、よし。このファイルをダブルクリックすると、アプリケーションが起動しました。MS-WORD, MS-EXCELともに問題なし。しかしながら、ファイル名が漢字だとエラーになります。

ディスクはいっぱいではないし、ライトプロテクトもしていないし、使用中でもない。相手(AS/400)が受け入れを拒否しているので、きっと、考えられる原因を出したのだろうけど、全部ハズレー。

ここで、フォルダーを見てみましょう。WRKFLRで、KAKEFUDAを選択しました。あるある。文書記述がおかしいのは、半角カタカナだからですね。実は、どっかでおかしくなるだろうと思いつつ、わざと、半角カタカナのファイル名を入れたんです。やっぱ、ファイル名は、英語にして置いた方がいいですね。

nfs0022.gif (13274 バイト)

それでは、PCの画面に戻って、CSVファイルの中身を確認しましょう。本物のデータで、テストしてはまずい(ここに出せない)ので、適当に書き換えました。

nfs0023.gif (26033 バイト)

CPYFRMPCD

まず、CPYFRMPCDを使ってみましょう。予め、CRTPF A RCDLEN(500) IGCDTA(*YES) でファイルを作りました。(500バイトは長すぎた...)

nfs0024.gif (14501 バイト)

こともなく、コピー完了。レコード一括転送されるらしい。漢字も出ている。実は、CSVの1レコード目の1バイト(A1)のセルが、元々、空白になっています。(上の猫の画面を見て欲しい)そのため、空白ではなく、そのセルを潰して、転送されている事に注意してほしいです。

nfs0025.gif (20732 バイト)

CPYFRMIMPF

今度は、CPYFRMIMPFを使ってみましょう。これは、CSVから、AS/400の外部記述のファイルのフィールドに、マッピングしてくれます。そこで、DDSを作って、CRTPFしてみましょう。

nfs0029.gif (12653 バイト)

RCDDLMは、*CRLFへ、STRDLM(ストリング区切り文字)は、*NONEにします。イメージ画面でQSYS/が付いてるのは、画面から「CPYFRM*」+実行キーでコマンドリストを出して利用したからです。

さて、おや?エラーが出ましたね。何でしょう。

nfs0026.gif (19388 バイト)

兎に角19件はうまくいったみたいです。見てみましょう。おお、ちゃんとフィールド別にマッピングされていますね。おや?CSVの一行目が入っていない。エラーはそこに有るようですね。

nfs0028.gif (13728 バイト)

「理由コード4によりコピーが完了していない」の行で、F1を押してみました。どうやら、例のA1の空白がスペースではなく、NULL扱いになるのが原因のようです。仕方ない。ファイルにALWNULLキーワードを付けましょう。

nfs0027.gif (17735 バイト)

各フィールドにALWNULLを付けました。

nfs0035.gif (15248 バイト)

今度はエラーが有りませんでした。でも、DSPDやSZAPは、ALWNULL付きファイルをサポートしてないので、ここでお見せできないのが残念です。まあ、QRYで見てみれば分かるでしょう。

nfs0034.gif (18864 バイト)

もうひとつ注意です。

CSVよりも、AS/400のフィールドの方が多い場合、つまり、上の例だと、フィールドが5個以上の時、CPYFRMIMPFは、その余分なフィールドにNULLを入れようとします。上記の理由4がたくさん起きます。ALWNULLを付けておくと、エラーは出ません。ただ、今までアプリでこのNULLを扱った経験がほとんどないため、取り扱いに注意して下さい。

これは、結構いけますね。今回のテストはこんな感じでした。

NT QDLS AS/400 FILE
ドラッグ&ドロップ CPYFRMPCD

CPYFRMIMPF

以上

2000-2-5


[ Previous ] [ HOME ] [ Upper ]

You are at K's tips-n-kicks of AS/400

 

SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送