▼ メニュー ▼

- Q&A集です。
## 古い情報のため最新の情報と相違があるかも知れません ##
Last updated
2000/11/03 13:05
- 通信系 -

Q: Windows98またはNT標準のFTPクライアントからmgetを使用してAS/400のデータと取り出すと漢字が化けてしまう。回避方法は?
登録日: 2000/11/03 修正日: ----/--/--

A: ありません。Windows98、NT標準のFTPクライアントの仕様です。ということでgetを複数回行いましょう。

DOSプロンプトのFTPでDEBUGを仕掛けると原因がわかります。
例) DOSプロンプトでのFTP
ftp> debug
Debugging On.
ftp> quote type c 943
---> type c 943
200 Representation type is CCSID 943.
ftp> mget TESTPF*
---> TYPE A
---> PORT XXX,XXX,XXX,XXX,8,144
---> NLST TESTPF*
---> TYPE A
200 Representation type is ASCII nonprint.

例のようにquote type c 943のあとにmgetを行うとNLSTを送出後、TYPE Aを送出しているためtype c 943が無効になっています。これでは変換できませんので化けるのも当然です。

よって、漢字を含むファイルをmgetで正常に取得することはできません。mgetではなくgetで対処しましょう。ちなみにquote type c 943のあとにbinを実行してmgetを行うとTYPE AではなくTYPE Iが送出されます。

[おまけ]
OS/2のFTPクライアントではquote type c 943を実行してmgetを行うと「mget(NLST)するにはASCIIやBINARYで行え」というエラーがでます。


Q: スパムメール対策ができる?
登録日: 2000/09/22 修正日: ----/--/--

A: できます。ただし、OSはV4R2以降です。
まず、PTFが適用されているか確認して下さい。
V4R2 - SF58556(個別のみ)
V4R3 - SF53421(累積C9131430以降に含まれています)
V4R4 - SF54014(累積C9313440以降に含まれています)

設定方法はAPARSA78331を参照して下さい。

[簡易説明](詳細はSA78331を参照)
ソースファイル(QUSRSYS/QTMSADRLST)にメンバー(REJECTCNNやACCEPTRLY)を作成してその中に拒否するIPを記述します。
メンバーREJECTCNNはSMTPサーバーの接続に対しての設定、メンバーACCEPTRLYはメールリレーの設定。


Q: Net.Dataでメールを送信する方法は?
登録日: 2000/08/01 修正日: ----/--/--

A: DTW_SENDMAIL関数を使用します。

例) Net.Dataサンプルマクロ
%DEFINE FROM     = "testuser@test.com"

%HTML(Start) {
<HTML>
<BODY>
<H1>Net.Data E-Mail サンプル</H1>
<FORM METHOD="POST" ACTION="sendMail">
     <P>
     To:<BR>
     <INPUT NAME="TO">
     <P>
     件名:<BR>
     <INPUT NAME="SUBJECT">
     <P>
     Message:<BR>
     <TEXTAREA NAME="MESSAGE" ROWS=20 COLS=40></TEXTAREA>
     <P>
     <INPUT TYPE="submit" VALUE="送信"><BR>
</FORM>
</BODY>
</HTML>
%}

%HTML(sendMail) {
<HTML>
<BODY>
<H1>Net.Data E-Mail サンプル</H1>
@DTW_SENDMAIL(FROM, TO, MESSAGE, SUBJECT)
<BR>
メールを送信しました。
</BODY>
</HTML>
%}

このマクロを使用するためにはDB2WWW.PGMがあるライブラリーにINIソースファイル、その中にDB2WWWメンバーが必要です。
[DB2WWWメンバーの内容]
DTW_SMTP_SERVER SMTPサーバーのIPアドレスまたはホスト名
DTW_SMTP_CHARSET ISO-2022-JP
DTW_SMTP_CCSID 5052


Q: AS/400 FTPクライアントからWin95,98,NTに接続できない。回避方法は?
登録日: 1999/12/15 修正日: ----/--/--

A: Win95,98,NT側でFTPサーバーが稼動していますか?
PC側のOSでFTPサーバーが稼動していなければFTP接続はできません。
NTにはIISがあるのでそれを導入すればFTPサーバーが稼動されますが95,98には標準ではFTPサーバーが搭載されていませんのでダウンロードサイトからFTPサーバーをダウンロードして下さい。
窓の杜などにあります。


Q: FTPでAS/400から他のプラットフォームにデータをputしたら漢字やカナが化けてしまう。回避方法は?
登録日: 1999/12/15 修正日: ----/--/--

A: LTYPE C 932を実行してからputする。

これで文字化けが回避されるはずです。

またLTYPE C 943でもよいでしょう。

補1) 932,943はSJIS用のコードです。EUCでしたら5050を設定して下さい。
補2) このQAはAS/400がFTPクライアントになっています。


Q: FTPで他のプラットフォームからAS/400のデータをgetしたら漢字やカナが化けてしまう。回避方法は?
登録日: 1999/12/15 修正日: ----/--/--

A: quote type c 932を実行してからgetする。

これで文字化けが回避されるはずです。

またquote type b 1やquote type c 943でもよいでしょう。

補1) 932,943はSJIS用のコードです。EUCでしたら5050を設定して下さい。
補2) このQAはAS/400がFTPサーバーになっています。


Q: AS/400のFTPクライアントがputなどを行い、FTPサーバーが無応答(処理中など)になるといつのまにかにFTPクライアントから切断している?
登録日: 1999/12/01 修正日: ----/--/--

A: タイムアウトするとAS/400 FTPクライアントが切断するようです。

このタイムアウトを制御できます。次のサブコマンドで対処しましょう。

DEBUG T1 xxxxx
または
DEBUG T2 xxxxx

xxxxx : 秒数(最大32767秒)

補)
T1 : コントロールセッション(のようです)
T2 : データセッション(のようです)
このT1とT2はFTPセッションでDEBUGと打鍵してF1を押して確かめて下さい。


Q: FTPでPCからAS/400上のデータをgetしたら後ろスペースが除去されてしまう。回避方法は?
登録日: 1999/06/10 修正日: ----/--/--

A: TRIMサブコマンド使用します。(R320からのサポートのようです)

例)
[AS/400がFTP Serverの場合]
FTPクライアントからquote site trim 0

[AS/400がFTP Clientの場合]
locsite trim 0 (R370の場合debug trim 0でした)

参考)
TRIM 0 : 後ろスペースはそのまま。
TRIM 1 : 後ろスペースは除去されます。

補)
TRIMサブコマンドは個別PTFまたは累積PTFで提供されています。
PTF番号はアンサーラインに問い合わせるかIBM eServer iSeries and AS/400 Technical Supportで調べましょう。


Q: FTPでPCからAS/400にDBCSデータ(SJIS)をputすると一部の文字が旧文字になってしまう。回避方法は?
登録日: 1999/06/04 修正日: ----/--/--

A: quote type c 943を実行してからputする。

[旧文字になる例]
putする前にquote type b 1を実行
桧-->檜

PC上では"桧"となっていますがAS/400上で確認すると"檜"となってしまう。

参考
quote type b 1はquote type c 932と同じ

CCSID 932 : 旧JIS
CCSID 943 : 新JIS


Q: ワークステーション・ゲートウェイにアクセスするためのURLの指定は?
登録日: 1999/03/01 修正日: ----/--/--

A: ブラウザから次のようにタイプして下さい。
http://MyAS400:5061/WSGとして下さい。
(:5061と/WSGがポイントです)

WSGの構成とWSGジョブの起ち上げは1998/10/02のQAを参照。(下の方にあります)


Q: AS/400からUNIXにログインは可能?
登録日: 1999/02/08 修正日: ----/--/--

A: TELNETコマンドを使用しましょう。

TELNET RMTSYS('xxx.xxx.xxx.xxx')
xxx.xxx.xxx.xxx : IPアドレスまたはホスト名

上記で失敗するような場合は
1. PCOMMのホストコードページを939にする。
2. TELNET RMTSYS('xxx.xxx.xxx.xxx') CCSID(819)を実行。


Q: NETSTAT *CNNで表示されるポートにTELNETなどと名前がついていますが、それをユーザー指定のポートにもつけられますか?
登録日: 1999/01/28 修正日: ----/--/--

A: 可能です。

ADDSRVTBLEコマンドを使用しましょう。またはWRKSRVTBLE。

例)
ADDSRVTBLE SERVICE('xxx') PORT(yyy) PROTOCOL('zzz')
xxx : 任意の名前
yyy : 任意のポート番号
zzz : tcpまたはudp

補)
私の場合はウェブサーバー(ポート30001)にjibi-webなどと名前をつけています。
ADDSRVTBLE SERVICE('MyWeb') PORT(30001) PROTOCOL('tcp')


Q: ブラウザ(ネスケやIEなど)でAS/400のFTPサーバーにログインするには?
登録日: 1998/10/30 修正日: ----/--/--

A: URLにftp://userid@hostname

実行するとパスワードを聞いてきます。
useridはAS/400のユーザープロフィール
hostnameはAS/400のホスト名またはIPアドレス

ログインしてから任意のライブラリーを参照するにはURLを指定をして下さい。
例)
ftp://testuser@xxx.xxx.xxx.xxx/QSYS.LIB/TESTLIB.LIBなどと指定して下さい。

補)
もちろんAS/400以外のFTPサーバーでも上記は可能です。


Q: AS/400のFTPクライアントでポートを指定できますか?
登録日: 1998/10/27 修正日: ----/--/--

A: 可能です。

例)
FTP 'XXX.XXX.XXX.XXX YYYY'
このように実行するとポートYYYYで接続試行されます。

XXX.XXX.XXX.XXXはIPアドレスまたは、ホスト名
YYYYはポート番号


Q: FTPサーバーのタイムアウトの時間をクライアントから変更できますか?
登録日: 1998/10/14 修正日: ----/--/--

A: 可能です。

ftpでloginした後に
ftp>quote time 999999999999
と大きな値を入れてください。そのセッションの間だけタイムアウトの時間を変更出来ます。

補)
QUOTE TIME 1000 (1000は秒です)
timeサブコマンドをサポートしていないサーバーもあります
情報提供 - Yoshikazu Ide 氏


Q: Win95などのTELNETソフトでAS/400に接続できますか?
登録日: 1998/10/13 修正日: ----/--/--

A: 可能ですが制限があります。

・SBCSのサブシステムが必要。
・日本語が表示できない。
・ワークステーション項目に*ASCIIが必要。(3179も必要かな?)
・機能キーが一部しか使用できない。

条件を満たしてサイン・オンできたが英数小文字が表示されない場合はCHGTELNA CCSID(00819)でCCSIDを変更してTELNETサーバーを再起動して下さい。

補)
私個人としてはあまりお薦めしません^^; (PCOMM等を利用しましょう)


Q: FTPサーバーのタイムアウトの時間を変更できますか?
登録日: 1998/10/05 修正日: ----/--/--

A: 可能です。

CHGFTPAでタイムアウトの時間を変更できます。

例)
CHGFTPA INACTTIMO(300)
(INACTTIMOは秒です)

初期値は300秒(5分)です。

(0にすると時間無制限になります)


Q: AS/400でLANカード複数枚差しでIPルーティングができますか?
登録日: 1998/10/03 修正日: ----/--/--

A: 可能です。

CHGTCPAで「IPデータグラムの転送」を*YESにして下さい。
(標準では*NOになっていると思う)


Q: PINGは通るがTELNET5250やFTPで接続できないのは?
登録日: 1998/10/02 修正日: ----/--/--

A: デーモン(ジョブ)が稼働してないと思われます。

まずWRKACTJOBでJOBを確認します。
TELNETならQTGTELNETS、FTPならQTFTPxxxxxなどのジョブです。

稼働していないならSTRTCPSVR SERVER(*TELNET)やSTRTCPSVR SERVER(*FTP)等を実行して接続してみましょう。

補)
STRTCPSVRのSERVERパラメータは様々やサーバーがありますので試してみるのも一興です。


Q: ワークステーション・ゲートウェイで2バイト文字が表示されないのは?
登録日: 1998/10/02 修正日: ----/--/--

A: ワークステーション・ゲートウェイの属性が適正でない可能性があります。

CHGWSGAを使用してコード化文字セット識別子を00932する。

例)
ENDTCPSVR SERVER(*WSG)
CHGWSGA CCSID(00932)
STRTCPSVR SERVER(*WSG)

補)
ワークステーション・ゲートウェイはポート5061で接続待機しています。


Q: CLでPINGコマンドをモニタリングできますか?
登録日: 1998/09/30 修正日: ----/--/--

A: V4R2から可能です。

例)
PGM
   PING RMTSYS('xxx.xxx.xxx.xxx') MSGMODE(*VERBOSE *ESCAPE)
      MONMSG MSGID(TCP3210) EXEC(DO)
        処理を記述
      ENDDO
ENDPGM

このモニタリング(TCP3210)はPINGで検査が失敗した時のみにモニタできます。


Q: ASに搭載されているLANアダプターのMACアドレスは?
登録日: 1998/09/30 修正日: ----/--/--

A: WRKLINDで確認できます。

WRKLINDで表示したラインを5で表示する。
(ローカル・アダプター・アドレスがMACアドレスです)


Q: FTPでSAVFをputしたがSAVF属性にならずPF属性になってしまう。
登録日: 1998/09/21 修正日: ----/--/--

A: put先に予めSAVFを用意する。または、NAMEFMTを1にする。

putする前にput先のAS/400に転送したいSAVFと同じ名前でSAVFを作成しておいて下さい。その後にputすればOKです。

NAMEFMTを1にするにはquote site namefmt 1
その後、put yoursavf.savfとsavf拡張子をつける。


Q: バッチでFTPはできますか?
登録日: 1998/09/16 修正日: ----/--/--

A: 可能です。

例)
<QCLSRC/BCH.FTP>
PGM
   OVRDBF  FILE(INPUT) TOFILE(ALIB/QFTPSRC) MBR(FTPCMD1)

   *1 OVRPRTF FILE(OUTPUT) TOFILE(QPRINT) OUTQ(QPRINT)
   (この場合のログはスプールとしてQPRINTに出力されます)

   *1 OVRDBF FILE(OUTPUT) TOFILE(ALIB/QFTPSRC) MBR(FTP.LOG)
   (この場合のログはソースメンバーとしてFTP.LOGに出力されます)

   FTP       RMTSYS(FTPサーバ名またはIPアドレス)
   DLTOVR    FILE(*ALL)
ENDPGM
(*1どちらか1つを使用して下さい)

<QFTPSRC/FTPCMD1>
(これはソースメンバーにFTPサブコマンドを記述するだけです)
user-id password
FTPサブコマンドを記述する(get,putなど)

<そして実行はCLをCALLする>


おまけ
Windows側のバッチFTPの書き方
<batchftp.bat>
ftp -n -s:ftpcmd.txt

<ftpcmd.txt>
open FTPサーバ名またはIPアドレス
user user-id password
FTPサブコマンドを記述する(get,putなど)


Q: DOSプロンプトのftpからAS/400(V4R2)のFTPサーバーに接続したときサーバーからのメッセージが化けてしまう。
登録日: 1998/09/10 修正日: 1999/01/12

A: システム値QCCSIDが65535になっていると化けるようです。

V4R2のFTPサーバーの発行するメッセージが英数小文字になった為と思われます。(V4R1までは英数大文字のメッセージでした)

システム値QCCSIDを5035にしたら化けずに表示されました。

追加情報(1999/01/12)
PTFがでました。PTFを適用することにより英数大文字のメッセージになります。


Q: AS/400のデータをPCからFTPでgetした時に次のメッセージがでる。
登録日: 1998/05/27 修正日: ----/--/--

MESSAGE
ftp> quote type b 1
200 REPRESENTATION TYPE IS SHIFT JIS KANJI.
ftp> get testdb
200 PORT SUBCOMMAND REQUEST SUCCESSFUL.
150 RETRIEVING MEMBER TESTDB IN FILE TESTDB IN LIBRARY JIBILIB.
426-UNABLE TO CONVERT DATA FROM CCSID 5035 TO CCSID 932: REASON 3028.
426 DATA TRANSFER ENDED.

A: AS/400のデータにPACKフィールドが含まれていませんか? しかも、そのフィールドの最後の桁が0(ゼロ)ではありませんか?

そのファイルを、16進(HEX)表示で見てみるとフィールド最後の桁に0Fが入っていますね。これは漢字制御コードとして認識されます。よって変換できない旨のメッセージがでてしまうのです。

解決方法としてはPACKフィールドをZONEフィールドにするか、PACKフィールドそのものを除去する。(但し、どちらにしても数字タイプフィールドの値は正確にはgetできません)

正確な値が欲しい場合はテキストタイプ(AまたはO(オー))にしてgetして下さい。

presented by OnBeDo
HOMEに戻る