位置情報で子どもの居場所をお知らせ

お世話になります。
AS/400を使っての開発を行っているものですが、日本にあるAS/400を日本と中国で使用しているユーザーがいます。
ある登録機能で日本語ではない文字を中国で入力する為、DBには文字化け(たとえば「・」等)でデータが格納され、そのデータをAS/400外のシステム(VB.net)で使用した場合に型変換エラーで処理がこけてしまいます。

日本語以外を入れないでください。というお願いはどうやら理解してもらえないらしく、
AS/400での入力時に文字化けしてしまうものは入力エラーとしたいのですが、その方法がわかりません。
漢字コード一覧表を作成し、不一致ならエラー。という案を教えていただいたのですが、その一覧表を作成するのが大変だと思うので、
もっと何か簡単にチェックできないかなぁ?と考えています。

良い方法をご存知の方教えていただけませんでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (1件)

こちらに文字コード一覧があるので、



http://www-03.ibm.com/systems/i/software/globali …

文字コードが、
   xxxx ~ yyyy
この範囲に無いものであれば、エラーとする、
ような考え方で良いと思います。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
御礼が大変遅くなり、申し訳ありませんでした。
教えていただいた方法でチャレンジしてみようと思います。

お礼日時:2010/01/01 00:05

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QIBM漢字コードのSJIS変換方法

こんにちは。

現在IBMホストのデータをFTPしてUNIX上にて使用しています。ファイルの内容はcsvファイルで、ある項目は英数字のみ、ある項目は漢字のみというような物です。
現在、英数字は上手くいってますが、漢字の部分が化けてしまっています。

今やっているやり方は、ホストのファイルをbinaryモードでFTPして、ddコマンドにてEBICDICコードをASCIIコードに変換します。しかし、漢字の部分が化けているという状況です。

IBMのホームページをみると、
「IBM漢字コードとシフトJISとの変換は、オペレーティング・システム標準の iconvコマンドとiconv()サブルーチンで可能ですので、こちらをご利用下さい。 」

と書いてありますが、まったく要領を得ません。
iconvをmanのコマンドで見ましたが、書いてある内容が理解できません。
どなたか同じような経験をしたかた、アドバイスをよろしくお願いします。
iconvのオプションはこう付ければ上手くいくとか、
変換表を自前で作成したなどなど、他にこんな方法があるなどヒントをいただけると助かります。

こんにちは。

現在IBMホストのデータをFTPしてUNIX上にて使用しています。ファイルの内容はcsvファイルで、ある項目は英数字のみ、ある項目は漢字のみというような物です。
現在、英数字は上手くいってますが、漢字の部分が化けてしまっています。

今やっているやり方は、ホストのファイルをbinaryモードでFTPして、ddコマンドにてEBICDICコードをASCIIコードに変換します。しかし、漢字の部分が化けているという状況です。

IBMのホームページをみると、
「IBM漢字コードとシフトJISと...続きを読む

Aベストアンサー

unixのiconvコマンドについては、下記サイトの説明がわかりやすいかと。

ただし、メーカーによって実装に違いがあるかも知れませんので、あとはmanコマンドで参照した内容で補足してください。

参考URL:http://docs.hp.com/ja/B3782-90873/ch07s04.html

QAS400プリンタセッション作成について質問させてください

AS400のプリンタセッションを作りたく思いいろいろ調べました。
下記手順で間違ったところがあればご指摘・またはアドバイス等頂きたく思い投稿させて頂きました。

(1)端末(WinXP pro)にパーソナルコミュニケーションズ(PCOMM)4.3を導入。

※PCOMM以外にもクライアントアクセスなるソフトがあったのですがPCOMMと大きく違いはあるのでしょうか?

(2)同端末に出力したいプリンタのドライバインストール。

(3)PCOMM起動。通信→構成の[リンクパラメータ]でAS400のIPアドレスを記入。[セッションパラメータ]でセッションタイプのプリンタにチェックを入れる。
ホストのタイプはAS400、接続タイプはTELNETの5250を選択。

※セッションパラメータ中にワークステーション名という項目があるのですがここにはどういった値を入れればよいのでしょう?またこの画面内にある[拡張]をクリックして開くところにあるメッセージ待ち行列とは気にしなくていいのでしょうか?

(4)ファイル→プリンタ設定より出力したいプリンタを選らんでOKをクリック。

(5)テスト印刷

以上、実際に試せる環境がないのでこれで出力できるか確認できていませんが詳しい方いらっしゃいましたらご教授願います。

AS400のプリンタセッションを作りたく思いいろいろ調べました。
下記手順で間違ったところがあればご指摘・またはアドバイス等頂きたく思い投稿させて頂きました。

(1)端末(WinXP pro)にパーソナルコミュニケーションズ(PCOMM)4.3を導入。

※PCOMM以外にもクライアントアクセスなるソフトがあったのですがPCOMMと大きく違いはあるのでしょうか?

(2)同端末に出力したいプリンタのドライバインストール。

(3)PCOMM起動。通信→構成の[リンクパラメータ]でAS400のIPアドレスを記入。[セッションパラメ...続きを読む

Aベストアンサー

#1の続きです。

>>WinXPではサポート外なのですね。
Pcomm(途中のバージョンからは、製品名としては『HACP』と呼ぶようになりましたが)の各バージョンのOS対応について、以下のURLにリストがありますので参照して下さい。
http://www-06.ibm.com/jp/software/network/pcomm/version.html

昔のバージョンでは『シュリンクラップ』という、パッケージを単体で購入できるものがありましたが、今のPcomm(正確には『HACP』ですが)は確か、『パスポート・アドバンテージ』製品になっているはずですので、ソフトウェア・メンテナンスの契約をちゃんとしていれば、最新バージョンを使用することは可能です。(サポート期間中のものについて『パスポート・アドバンテージ・オンライン』のサイトでダウンロードできますから、最新のものに限らずインストールイメージを入手することは可能です。)


>>ワークステーション名に関しては任意の名前をつけておいて印刷するときディスプレイセッションからその名前を指定すれば出力できるという認識で大丈夫でしょうか?

前回の説明をもう少し具体的に解説します。

例えば、あるPCにディスプレイセッションとプリンタセッションを1つずつ作成したとします。
ディスプレイセッションのワークステーション名を『DSP100』、プリンタセッションのワークステーション名を『PRT100』としたとします。この時、プリンタセッションを作成する際に、メッセージ待ち行列を『DSP100』と指定すれば、AS/400側に出来る『PRT100』という『装置記述』に、メッセージ待ち行列が『DSP100』と指定されるため、『PRT100』というプリンタに関するメッセージ(用紙交換とか、用紙切れとか...)は、デフォルトでは『DSP100』というメッセージ待ち行列(これはとりもなおさず、『DSP100』というディスプレイセッションの装置記述が持つメッセージ待ち行列です)にメッセージが届くことになります。(配布モードが『*BREAK』になっていなくても、SysReqの4番で確認できます。)

ただし、AS/400にサイン・オンした際に実行される(と思われる)初期プログラムによってその設定を変更されるケースもありえますので、『絶対』だとは言えません。



使用するプリンタがCANON LBP-750ということですが、既に販売が終了されている製品です。
このプリンタでの5577エミュレーションモードについてですが、デフォルトでは持っていません。コントロールカード(別売)を追加することによってサポートされることになります。
http://cweb.canon.jp/e-support/qasearch/answer/lasershotprinters/q001000010862.html
コントロールカードを使わない場合であれば、ESC/Pがサポートされていますが、ESC/Pの場合、AS/400側のアプリケーションの作成仕様にもよりますが、制約を受けることが多々あると思って下さい。
一例としてですが、例えば、プリンタファイルを使用した帳票設計で、15CPI(198文字)はサポートされません。(通常では158文字=12CPIまでが限界)


...と、ここまでいろいろ書いてしまいましたが、私もAS/400関連を離れてかなり時間がたっていますので、最新の情報(正しい情報)については、出入りされているベンダーさんに確認していただくのがよいでしょう。(特に5577エミュレーションあたりについては、アプリケーション側の作り込みの仕様との兼ね合いがかなり大きいですから、ベンダーさんだけでなく、SIerさんにも確認する必要があるでしょう。)

#1の続きです。

>>WinXPではサポート外なのですね。
Pcomm(途中のバージョンからは、製品名としては『HACP』と呼ぶようになりましたが)の各バージョンのOS対応について、以下のURLにリストがありますので参照して下さい。
http://www-06.ibm.com/jp/software/network/pcomm/version.html

昔のバージョンでは『シュリンクラップ』という、パッケージを単体で購入できるものがありましたが、今のPcomm(正確には『HACP』ですが)は確か、『パスポート・アドバンテージ』製品になっているはずですの...続きを読む

QIBMのAS/400について

こんどAS/400に関する仕事をしそうなのですが、AS/400についてご存じのかた、下記の件について教えていただけませんでしょうか。
1.AS/400はハードウェアの名称でしょうか。
2.通常、AS/400上に搭載されるOSはAIXでしょうか。
3.AIXは64ビットUNIXと聞きましたが、他のUNIX系OS(Soralis,HP-UX,Linux)等と比べて、大きい違いはあるでしょうか。もし、AIXで開発作業を行う場合、他のUNIX系OSの知識があるとしても、かなり覚えるべきことがあるのでしょうか。(Solaris,HP-UX,Linuxでは開発経験があります)

Aベストアンサー

3は分からないので、1と2だけ。

>1.AS/400はハードウェアの名称でしょうか。

はい。その通りです。
ただし、2年ほど前から統合アプリケーションサーバという位置付けになり、名称もiSeriesと呼ばれるようになっています。

>2.通常、AS/400上に搭載されるOSはAIXでしょうか。

基本OSはOS/400という独自のOSです。
ただし、iSeriesと呼ばれる機種になってから、WindowsやUNIX、LINUXなどのプラットフォームに対応するようになっています。(それ以前の機種では対応しません)
参考URLをご覧ください。

参考URL:http://www-6.ibm.com/jp/servers/eserver/iseries/product/

Qpingでポートの指定

pingでIPアドレスを指定して、通信できるかどうかというのは
よく使いますが、pingでポートを指定して応答するかどうかは調べられるのでしょうか?

よろしくお願いします

Aベストアンサー

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含むICMP)ではできません。

FTPの疎通確認であれば、クライアントからサーバに対するTCP/21通信(FTP-CMD)が可能であること(サーバからクライアントへのTCP/21からの応答を含む)+サーバからクライアントに対するTCP/20通信(FTP-DATA)が可能であること(クライアントからサーバへのTCP/21からの応答を含む)が必要でしょう。

監視ソフトによるものであれば、
・クライアントからサーバへのログイン(TCP/21)
・クライアントからサーバへのlsの結果(TCP/20)
で確認すればよいでしょう。

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含む...続きを読む

QEXCEL VBAで計算値を四捨五入、切り上げ、切捨てする方法

ネットで探してみたのですが、計算結果を四捨五入して特定のセルを
返すにはどうしたらいいのでしょうか?

Sub hokangosa()

Dim ZPS As Double
Dim ZPOS As Double
Dim DMN As Double
MsgBox (" >>> 補間誤差自動計算 <<< ")
MsgBox (" >>> 初期値入力します <<< ")
ZPS = InputBox(">>> ステップを入力してください<<<")
ZPOS = Sheet1.Cells(22, 4).Value
DMN = ZPOS / ZPS
Sheet1.Cells(23, 6).Value = DMN
End Sub

ここでDMNの値を四捨五入したいです。

またこれとは別に切上げ、切捨ても教えていただけるとありがたいです。

Aベストアンサー

DMN = Application.WorksheetFunction.Round(ZPOS / ZPS, 0)
で、四捨五入
DMN = Application.RoundDown(ZPOS / ZPS, 0)
で切り捨て
DMN = Application.RoundUp(ZPOS / ZPS, 0)
で切り上げです。

引数で、対象桁を変更できます。

Q矢印キーのロック解除方法

矢印キーがロックされてしまい、エクセルで矢印キーでのセルの移動ができません。解除方法を教えてください。

Aベストアンサー

キーボードのスクロールロックキーを押してください。
ノートPCだとFnキーを押しながらNumLkキーを押すなどなっている場合があります。

QAS400のスプールファイルをエクセルに取り込む方法は?

単純にコピー、貼り付けだと上手くセルに入らないし、データ量が膨大なので、いちいちそんなことやってられません。当方、AS400は全くわからないのですが、なんかそんなソフト、ツールはあるのでしょうか?また、自分で作ることとかできるんでしょうか?

Aベストアンサー

ツールやソフトがあるかどうかわかりませんが、仮にあったとしても、高価だと思いますよ。

OB96さんは、ASはまったくわからないと言う事ですが、コマンドとかの入力もした事無いですか?

もし、少々コマンド入力などの知識があれば、ちょっと面倒だけど、テキストデータを落として、P-COMかCAのデータ転送ツールを使ってエクセルで読み込ませる方法があります。
但し、エクセルのセルにキレイにデータが落ちるかどうかはわかりません。
(帳票によっては、複雑な印字をしている場合があるので)

簡単に手順を説明すると、

(1)AS側で、転送用の仮ファイルを作成
  CRTPF FILE(XXLIB/FL200) RCDLEN(200) IGCDTA(*YES) SIZE(*NOMAX)
  ※XXLIBは自分で作成してください。
(2)AS側で、スプールファイルを(1)にコピー
  CPYSPLF FILE(スプールファイルのファイル名) TOFILE(XXLIBLIB/FL200)
(3)(2)でコピーされたものをASからPCへデータ転送
(4)エクセルで開く時、セルを分割させながら開く

という様になります。

ツールやソフトがあるかどうかわかりませんが、仮にあったとしても、高価だと思いますよ。

OB96さんは、ASはまったくわからないと言う事ですが、コマンドとかの入力もした事無いですか?

もし、少々コマンド入力などの知識があれば、ちょっと面倒だけど、テキストデータを落として、P-COMかCAのデータ転送ツールを使ってエクセルで読み込ませる方法があります。
但し、エクセルのセルにキレイにデータが落ちるかどうかはわかりません。
(帳票によっては、複雑な印字をしている場合があるので...続きを読む

QRPG パラメーターについて

AS/400のRPG言語に携わり1年が経ちます。
お恥ずかしながら質問させていただきますが、
CLを組んで、CALLでRPGを呼び出す時にパラメーターを受け渡すようにしました。
初めてやってみましたが、なんとか動くようになりましたが、
今度はデバッグするときや、コマンドラインで直接プログラムを呼び出す時、CALLのオプションでパラメーターを指定しなければならなくなりました。
例えばOPTという数字変数のパラメータとAという文字パラメーター、Bという論理データのパラメーターにそれぞれ
1、’登録’、’1’というものを渡したい場合、
CALL PGM(EM02PR) PARM(・・・・・・)
PARMの記述はどう記入すればよいのでしょうか?

おわかりになる方宜しくお願い致します。

Aベストアンサー

CALL PGM(EM02PR) PARM('1' '0' '0' X'1F')もしくは
CALL PGM(EM02PR) PARM('1' '0' '0' X'01F')
どちらかで大丈夫だと思います。
いかがでしょうか。

QRPG 配列宣言について

いつもお世話になっております。
IBM AS/400の駆け出しプログラマーです。
今、配列を使ったシステムを組んでいるのですが、
たとえばAというDBの項目に同じものがいくつかあるとします。
課所コード1(KSCD1)、課所コード2(KSCD2)、・・・・
といったような項目です。
そのAのファイルを読み、課所コードを配列に入れたいのですが、
配列KSCというものに
KSC,1にはKSCD1
KSC,2にはKSCD2といった感じです。
演算仕様書でMOVEL  KSCD1  KSC,1
と個々にやっていく方法以外にレコードを読んだときに自動的に配列に入れるような方法があったら教えていただきたいと思います。
何せ個々に入れていくとそれだけで80行使ってしまうので・・・・
知っている方がいらっしゃいましたらどうかお助けください。
お願い致します。

Aベストアンサー

以下の様にプログラミングすれば可能です。

E* テーブル
E  KSC  80 5 (80はテーブル数、5は桁数)
I  DS
I      1  5 KSCD1 (KSCD1はAファイルのフィールド名)
I      6  10 KSCD2
I      11  15 KSCD3
I      16  20 KSCD4
      ・
      ・
      ・
I     396 400 KSCD80

あとはAファイルを読み込めば KSCD1 --> KSC,1 、KSCD2 --> KSC,2 ・・・・ KSCD80 --> KSC,80に自動的にセットされます。
この方法を使えば、画面ファイルのフィールドも同様に使用できます(私は良く使用しております)。
何かわからないことがあれば、補足します。

QiSeries(AS400)のデータベース

iSeries(AS400)のデータベースにはどんなものがありますか?

Aベストアンサー

こんにちは。

前回答者さんのおっしゃるとおり、DB2を利用することができます。ただし、iSeriesの場合、DB2はOSの一部として統合されているため、新たにインストールしたりする必要はありません。

また、DB2はRDBMSの一種です。他のRDBMSと同じようにSQLを使用してアクセスすることができます。また、iSeriesのOSに統合されているため、iSeries特有のコマンドを使用してアクセスすることもできるようです。


人気Q&Aランキング