NECのオフコン情報掲示板(ノウハウ系)
NECのオフコンを活用するためのノウハウを話し合うための掲示板です。 |
新規投稿 | スレッド表示 | ツリー表示 | 投稿順表示 | i-mode | トップ |
■▲▼ | ||
1 | 受信したデータの削除方法 | |
よしぼ〜 2006-9-12 14:56:00
[返信] [編集] 早速ですが、他社システムから何らかのデータを受信し、 そのデータを取り込む場合、取り込んだ後に受信した データを削除する必要があると思いますが、みなさんは 削除処理をどういった方法でしておられますか? 何が知りたいかというと、取り込み後に削除しようとし た瞬間に再度データが送られてきてしまうと、送られて きたデータを取り込めずに削除してしまう恐れがあると 思います。そういうミスを仕組み的にに回避する方法が あれば、教えて頂きたいと思い書き込みさせて頂きました。 現状は受信データを別ファイルへコピーし、その後に 受信データを削除するという処理を個別のプログラムで 実行しています。 受信データは順編成のファイルで考えています。 マルチレイアウトのデータのため、索引編成は使用でき ないことが多いです。 運用で取り込む時間帯には受信しないようにするという ことが一番無難かもしれませんが、よい方法があれば 教えて頂けないでしょうか。 | ||
2 | Re:受信したデータの削除方法 | |
苦労人 2006-9-12 23:07:00
[返信] [編集] 私が良く使う方法は相対編成ファイルに受信データを登録していき、何レコード目まで受信していて、何レコード目まで処理したかを別ファイルにて相対アドレスで管理しています。この方法だと受信ログとしてデータを保管できますし、処理済ポインターを戻す事で再度同じデータで処理させる事も出来ます。 結構使いやすいですけどね。 順編成ファイルで考えているとの事ですが、相対編成ファイルであれば、そう違いは無いと思いますが・・・ ただ、どこかでオーバーフローも想定されますので、一日に一回はデータを消すか、登録でINVALIDの場合はオーバーフローですので、登録ポインターを1に戻してサイクリックに使用するかですね。私はサイクリックに使用して、登録済みポインターを処理済みポインターが追いかける方法をとっています。 | ||
3 | Re:受信したデータの削除方法 | |
よしぼ〜 2006-9-14 12:44:00
[返信] [編集] お返事ありがとうございます。 ひとつ質問なのですが、相対編成ファイルに直接データを 受信するのかと思うのですが、仮にJCAで受信する場合、 前回受信したデータの続きからファイルに書き込むことが 可能ということなのでしょうか。 | ||
4 | Re:受信したデータの削除方法 | |
苦労人 2006-9-14 15:09:00
[返信] [編集] 直接データを受信するというのはどういう意味でしょうか? #NFCNV等でデータをコピーするのであれば、ポインター管理は難しいと思いますが、JCAで受信と言う事は、プログラムで受信するのですよね? プログラムで相対編成ファイルの書き込むのであれば相対キーを指定して登録するので、前回の終了ポインターが分かっていればプラス1のポインターから登録すればOKだと思います。 もしかして、データの受信をプログラムでは行わないという事なのでしょうか? | ||
5 | Re:受信したデータの削除方法 | |
よしぼ〜 2006-9-14 18:12:00
[返信] [編集] 「直接データを受信する」というのは、「JCAでデータを 受信する際の出力先ファイルに相対編成ファイルを指定 するのでしょうか」ということです。 今回は有償ソフトのファイル転送プログラム(JCA手順)の 使用を想定しています。マニュアルをみると、JCAの集信 ファイルには順編成ファイルを定義するように記載されて いるのですが、JCA手順でデータを受信する際にポインター 管理をすることができるということなのでしょうか? | ||
6 | Re:受信したデータの削除方法 | |
苦労人 2006-9-15 11:04:00
[返信] [編集] COBOLプログラムで受信した場合にはポインター管理できますが、ファイル転送プログラムではきっと無理ですね。 お役に立てず済みません。 | ||
7 | Re:受信したデータの削除方法 | |
ll0e0ell 2006-9-15 12:41:00
[返信] [編集] SEQファイルへ受信を追加モードで受けて、取り出しプログラム(COBOL)では同ファイルのレコード単位で処理済フラグを更新して制御し、夜間等絶対に受信しない時間帯でフラグ更新済データを消去する夜間バッチの自動実行運用ではどうでしょうか?(SEQファイルの削除には作業ファイル必要ですが) 受信プログラムはたしかファイル排他になっていたと思うので取り出しプログラムがファイル使用中にならないようにする制御も受信プログラム起動前後に受信中フラグの制御を仕掛ければバッティングを避けることが出来るかな? | ||
8 | Re:受信したデータの削除方法 | |
よしぼ〜 2006-9-21 14:28:00
[返信] [編集] 苦労人さま、ll0e0ellさま。 お返事が遅くなり申し訳ありません。 助言いただいた内容でいろいろと考えてみようと 思います。 お忙しいところ、ありがとうございました。 | ||
全部読む 最新50 1-100 板のトップ リロード |
■▲▼ | ||
1 | 最近のバーコードプリンタについて | |
苦労人 2006-9-5 12:47:00
[返信] [編集] 知っている人がおりましたら教えてください。 現在あるユーザで、SATOのバーコードプリンタをエミュレータ端末につないで出力しています。 かれこれ10年も前に接続したバーコードプリンタで、「変換君」という箱を経由して出力しています。 この「変換君」を使用するとCOBOLプログラムから直接印字できます。(たぶんコード変換をしてくれるもの) 今回ハードのレベルアップを提案しており、バーコードプリンタもかなりガタが来ているので、合わせて交換しようと思っています。 ところが、SATOではもう「変換君」は扱っておらず、COBOLプログラムからプリンタへ直接印字できる形式のバーコードプリンタを探しております。 間にWindowsプログラム等を経由すれば問題なく印字は出来るのでしょうが、出来ればCOBOLからエミュレータ経由で直接印字できる事を希望しております。 どなたかご存知ありませんか? | ||
2 | Re:最近のバーコードプリンタについて | |
桃太郎 2006-9-5 15:59:00
[返信] [編集] 苦労人さん 初めまして、桃太郎と申します。 変換君の場合、使った事は有りませんが、データーをプリンターに書き出すイメージでプログラムを書かれているのではないかと思いますが、 サーバー本体に回線ボードを入れて、MM3を使いRS232Cケーブルで接続、SEND、RECEIVE命令を使う通信プログラムを書く事が出来れば現在市販の各社のプリンターが使用可能かと思いまが、 内部コードのEBCDICとプリンターのJIS8(S−JIS)との変換が壁になると思います、MM3のパラメータの中に相手機器のコードを指定できるようになっていますが、 その指定では上手く動かないと思います、プログラム内で1バイト系、2バイト系に分けて16進レベルで変換して送り出す事が必要かと思います。 尚、RS232Cケーブルは通常15mまででそれ以上延長する場合は途中に信号増幅器を付けるとか、 IBSJapanと言う会社より売り出されている長距離伝送ケーブルなどを使う必要が有ると思います。プリンター側がLAN対応の機器であればMMSでの接続も可能かと思いますが、 この場合接続距離は問題なくなりますがやはりコード変換の問題は残ると思います、MMSのマニュアルに「コード変換が必要な場合は、アプリケーションプログラムで行って下さい。」と記載があるので同じくコード変換が壁になると思います。 この掲示板をご覧の方で変換のコーディングの分かる方がおいでになったら実現可能かも知れませんね、 参考になれば良いのですが、失礼します。 | ||
3 | Re:最近のバーコードプリンタについて | |
苦労人 2006-9-5 17:51:00
[返信] [編集] お返事有難うございます。 「変換君」を使用した接続は、クライアントPCのセントロから接続しているので、普通のプリンタを接続するイメージです。 COBOLからもプリンターに印字する要領でWRITEしています。(ただWRITEしている中身は、縦何ドット目、横何ドット目にこういう文字を何ポのサイズで印字しなさい!みたいなイメージですが) LAN接続できるバーコードプリンタの場合、MMSでの接続って可能なのでしょうかね? 当方では、シフトJISにコード変換するサブルーチンは用意しているので、組み立てたデータをテキストとして送信すれば良いのであれば問題ないのですが・・・・ LAN接続可能と言っても、たぶんネットワークプリンタのようなものであり、プリンタに対する制御コードみたいなものが必要であればやはり専用のドライバを経由するしかないですよね? | ||
4 | Re:最近のバーコードプリンタについて | |
桃太郎 2006-9-5 18:23:00
[返信] [編集] MMSでの接続の場合、プリンターメーカーより提供されているドライバーは使えないので、例えば、エプソンだったらESC/POSコマンドを使って制御コードを全てプリンター側の指定コードを紙テープイメージで送信するようになると思います。EPSONのホームページで開発者向けの詳細取り扱い説明書がダウンロードできます、スター精密だと確かコマンドの一覧も出ていたと思います、EPSONの場合POSコマンドのマニュアルは直接請求が必要かと思いますが。コード変換がアプリケーションの中で行えるので有れば実現の可能性は有ると思いますが。 | ||
5 | Re:最近のバーコードプリンタについて | |
オフコン人 2006-9-5 19:44:00
[返信] [編集] SATOのバーコードプリンタを知らないので的外れなことかも知れません。 WSエミュレータ接続のページプリンタへはバーコードが印字できます。当然、COBOLからです。 ページプリンタなのでA4などページプリンタで扱える用紙サイズに限られますが。 | ||
6 | Re:最近のバーコードプリンタについて | |
ターラヤン 2006-9-5 21:09:00
[返信] [編集] 苦労人さん、こんにちは。 SATOのバーコードプリンタ用のプログラムを無改造で使いたいのか、COBOLプログラムを全面作り直しても良いのか、 COBOLも少し直す程度で済ませたいのかによりますが、 オフコン人さんも書かれている通り、COBOLでページプリンタにバーコードを印字するプログラムを組むこともできます。 簡単に済ませたいならば、 http://www.ace.comp.nec.co.jp/BizReporting/index.html バーコードを印字するパッケージソフトもあります。 この紹介ホームページを見ても今ひとつ何ができるソフトなのかわかりずらいですが、 「利用シーン」辺りに”コードを送るとパッケージソフト側でバーコードに変換”する機能が書いてあります。 | ||
7 | Re:[6]:お探しのものはこのようなものでしょうか? | |
江須扇 2006-9-5 23:46:00
[返信] [編集] 多分機能的には 日本システックスのプリンターボに似ているのではと思います。 http://www.n-systex.co.jp/site_file/02_product_part/product/00_ex/ex_05_shosai.html COBOLのプログラム上では、 !@&904 *123ABC* !@&1 と印字するとプリンターボで変換されCODE39の*123ABC* のバーコードが印刷されるという仕組みです。 SATOとコマンドは違うと思いますので改造は必要だと思います。 なお、旧マシンであれば、FB−11/5200系になりますが、 PC/WS−EMLにつなぐプリンタであれば、 FB−11/9800になるのではと想像します。 (エミュレーションでは使った事がないので想像です) | ||
8 | やっぱり連係機能を使う方が。。 | |
EXCHANGE 2006-9-6 6:27:00
[返信] [編集] * 技術上のお話の中へちょっと筋違いな(お節介な)ことをいうのもまずいのですが、このようなケースの場合やはり他システムとの連携をはかる方向の方が将来的に良いのでは。。と思います。 * SATOの場合、外部からデータ(CSV等)を受け取ってバーコードラベラを印字するパッケージソフトがあったと思います。 このソフトはユーザ側でデザイン、カスタマイズが出来ます。 しかも印字のデザインは非常に自由に設計できたと思います。 * A−VX側のCOBOLでNT領域にCSVで吐き出して、連携させてやれば楽に構築できます。 * こうしておけば、(バーコードラベラのメーカは、キョウビどこでもこのようなパッケージを用意していますから)他メーカへ乗り換えるときでもラベラ側のみの変更(しかもデザイナ部分のみなのでらくちん!)で済みます。 * それぞれのベンダの得意とするハードやソフトを組み合わせて柔軟にシステム構築する、というのがオープンの時代の最大のメリットかと思います。 * あまりA−VX自前主義にこだわりすぎると次の担当者が手直しできないほど専門的(=特殊仕様)になりすぎ、結果的に「訳の分からんA−VXをまるごとを取替よ!!」ということになりかなません。 * せっかく構築された基幹システムは長期にわたって改良しつつ育てるべきですし、安易に再構築することを望む人はいないと思います。そのためには連係機能をうまくつかって風通し良くしておくことが長い目で見れば得策なのではないのでしょうか? | ||
9 | Re:[6]:お探しのものはこのようなものでしょうか? | |
苦労人 2006-9-6 9:19:00
[返信] [編集] 確か、SATOのバーコードプリンタにもこのようなコマンドを出力していました。 ただ、エミュレータ経由で出力すると今までは201系のプリンタドライバ経由となるため、「変換君」では201系のコードをバーコードプリンタが認識できる内容に変換していたのだと思います。 プリンタメーカが変われば当然出力するコマンドの変更とかはあると思っています。 ただ、接続しようとしているプリンタはシリアルプリンタでは無く、ロール式のバーコードプリンタ( http://www.sato.co.jp/products/printer/on_line/lesprit_t8.html ) なのです。 特にメーカはこだわらないのですが・・・ | ||
10 | Re:やっぱり連係機能を使う方が。。 | |
苦労人 2006-9-6 9:37:00
[返信] [編集] SATOのホームページを見ていたら、「接続君」というのがあって、ホスト側からはシリアルプリンタ感覚でバーコードプリンタが接続できると・・・・。 まさしく今運用で接続されている形態です。 しかし、対応ホストが、IBM・富士通・日立のみ。 なぜNECが無い? ショック! >* SATOの場合、外部からデータ(CSV等)を受け取ってバーコードラベラを印字するパッケージソフトがあったと思います。 これが可能であれば、AVX側から制御できそうです。 「Multi LABELIST me」というソフトでしょうかね? ちょっと仕様を問い合わせてみます。 | ||
11 | Re:最近のバーコードプリンタについて | |
苦労人 2006-9-6 9:57:00
[返信] [編集] SATOに問い合わせましたら、昔の「変換君」に変わる「直結くんII」というのがありました。 最新のAVXエミュレータで接続できるかどうかはテストしてみないと何とも言えないが、201系のプリンタとして接続すればたぶん大丈夫でしょう! というお答えでした。 | ||
全部読む 最新50 1-100 板のトップ リロード |
■▲▼ | ||
1 | SYSSPAWNで#ABC | |
あゆりーな 2006-9-4 11:03:00
[返信] [編集] SYSSPAWNで#ALLOCはうまくいくのですが #ABC;で再編成やアロケートをしようとすると ステータスが90(RUNコマンドパラメータエラー) になってしまいます。 送っている文字列は下記↓
間違いに気づいていないだけだといいのですが。 どなたかうまくいっている方はいらっしゃいませんか。 | ||
2 | Re:SYSSPAWNで#ABC | |
江須扇 2006-9-4 12:43:00
[返信] [編集] ちょっと気になるのですが、 #ABC; となっておりますが、”#ABC”と”;”の間にスペースは 2桁あるのでしょうか? たしかメンバー名は必ず6桁固定と記憶しております。 はずしたらごめんなさい。記憶で書いております。 | ||
3 | ;の位置が… | |
あゆりーな 2006-9-4 12:57:00
[返信] [編集] ああ。 「#ABC; 」になっていました。 「#ABC ;」が正しいですね。 2時間悩みました…ありがとうございました。 | ||
全部読む 最新50 1-100 板のトップ リロード |
■▲▼ | ||
1 | JIPSEのシフトインコード | |
さるさるるーと 2006-9-1 7:34:34
[返信] [編集] COBOLソースを解析していて、 どうもJIPSEのソースのようでした。 ところが、文字変換がどうしてもシフトインの部分で 文字化けしています。 以下のコードは、 「課」という漢字ですが、 シフトインのあとの、”3F44”、”7B78” が必ず入っています。 16進数表記でかくと、0x3F、0x44、0x7B、0x78 です。 この意味知っている人いませんか? 3F75 3F44 7B78 F25A 3F76 ==== ==== ==== ==== ==== Shift-In 課 Shift-Out よろしくお願いします。 | ||
2 | Re:JIPSEのシフトインコード | |
江須扇 2006-9-1 7:56:48
[返信] [編集] さるさるるーとさん初めまして 江須扇と申します。 このCOBOLソースは何の機種のどの状態を指しているのですか? A−VX関連であれば、トップメニューのひとつ上の 掲示板「NECのオフコン情報掲示板」へ投稿される方がいろいろの方が回答される可能性があると思います。 他機種の事ですと私もまったくわかりません。 | ||
3 | Re:JIPSEのシフトインコード | |
さるさるるーと 2006-9-1 9:38:09
[返信] [編集] 江須扇さま ご指摘ありがとうございます。 このソース自体はwindows-cobolです。 (コンパイラーも消えました。知っている者も消えました。) 憶測ですが、windows版に移行したと思われます。 このソースに記述している文字コードをもつ ファイルを作成していたのが、 NECのオフコンではないかと思ったのは、 使用している別のアプリケーションで、 JIPSEを指定していたので、 かろうじて、NECであることにたどりついたのです。 機種は不明です。 NECは使用経験がありません。 | ||
4 | Re:JIPSEのシフトインコード | |
ターラヤン 2006-9-1 12:46:36
[返信] [編集] さるさるるーとさん、はじめまして。 JIPS(E)は私もあまり知りませんが、 NECの汎用コンピュータのOS、ACOSー2、ACOSー4系で 良く使われるコードです。 JIPS(E)はオフコンの文字コードとは親戚関係ですが、オフコン ではそのまま使えません。 本題の文字ではなさそうなコードについてですが、 ”3F44”は、制御符号ではないでしょうか。 CEXシーケンスは”3F”で始まります。 そうすると次の”44”は機能を表します。 おそらく次の2バイトはシーケンスパラメータでしょう 漢字IN、漢字OUTも”3F”で始まっていますよね。 残念ながら”44”が何の機能なのかはわかりません。 たぶん制御符号ではないかと思うのですが・・・。 | ||
5 | Re:JIPSEのシフトインコード | |
さるさるるーと 2006-9-7 2:35:58
[返信] [編集] ターラヤン様 情報ありがとうございました。 オフコンではそのまま使えないのですか。。。 シフトコードのあとの制御コードって何が入るのでしょうね。 うーん。外字とか第2水準とかそれとも ひょっとして太字とかゴシックとか。 ”3F44”のあとの”7B78” がパラメータということでしょうか。 制御符号ということだけでもすっきりしました。 ありがとうございました。 | ||
全部読む 最新50 1-100 板のトップ リロード |
■▲▼ | ||
1 | AS400とA-VXのデータのやりとり | |
MAA 2006-8-31 17:20:00
[返信] [編集] AS400とA-VXのデータの送受信を行いたいと考えています。1バイトコードはEBCDICで同じかと思いますが、2バイト文字コードがAS400側はシフト付きの文字、A-VX側は内部コードということで変換を行うよい方法を伝授いただきたいです。お願いします。 | ||
2 | Re:AS400とA-VXのデータのやりとり | |
江須扇 2006-8-31 22:50:00
[返信] [編集] IBM側でJISコードに変換できれば、#KFCNVを利用できると思います。 的外れかもしれませんか? この掲示板の181番をご参照ください。 | ||
3 | Re:AS400とA-VXのデータのやりとり | |
ターラヤン 2006-8-31 23:22:00
[返信] [編集] 一番簡単なのは、2つのコードから共通に変換可能なコードを介する方法です。 例えば、 A−VX側で内部コードから一旦S−JISコードに変換、相手に送信後、AS/400側でS−JISからIBM漢字コードに変換 というようにします。 いきなり内部コードからIBM漢字コードに変換するのは、ノウハウも少ない場合が多く難しいことが多いです。 一方、内部コードやIBM漢字コードとS−JISコードの間なら、オフコン−パソコン間のコード変換であるため、実績も多く、大抵変換ツールも数多く用意されているため、比較的楽です。 | ||
全部読む 最新50 1-100 板のトップ リロード |
新規投稿 | スレッド表示 | ツリー表示 | 投稿順表示 | i-mode | トップ |
BluesBB ©Sting_Band