Google
オフコン練習帳内を検索
インターネット全体を検索

NECオフコン関連
オフコン一般
情報

NECのオフコン情報掲示板(ノウハウ系)

NECのオフコンを活用するためのノウハウを話し合うための掲示板です。

1: #NFCNVの制限?(2)   2: LLNIPの印刷(3)   3: #BKUPでusbに直接出力できますか?(3)   4: A−VXのプリンタ設定方法が分かりません(2)   5: OSのCDについて(4)   6: 初期プログラムに関する質問(4)   7: ボリュームMAPにあるが、#ABCだとファイルがみつからない(2)   8: SYS@DDFの復旧(2)   9: スプールデータの取り出し方法についての質問(10)   10: SG処理にて、PAGW実行中にエラーが発生しました(9)   11: ソースライブラリの一括検索(9)   12: 帳表をPDF印刷する方法(PRINTVEWを使わず)はありますか(2)   13: SKYLINKでテーブルを検索するとエラーとなる(1)   14: オフコン(3)   15: 管理人さんへの質問です(3)   16: #LTEDITでフォームのソースを指定するとメンバーが見つからないと表示される(4)   17: UPS無しの構成へのシステム移行(12)   18: #NFCNV でパソコンへ転送すると、データの先頭に空白がついてしまう(3)   19: CBL85資産をOPENcobolに移行する(3)   20: COBOLソースから仕様書の鏡作成ツール(3)   21: PrintBridgeの使い方(8)   22: WSエミュレータをWindows7Pro32bitSP1PCにインストール出来なくなった(1)   23: 漢字とANKの縮小印字について(3)   24: #NFCNVで先頭のカラムが0になるのは?(2)   25: N7884-14Bと互換性があるプリンタについて(2)   26: 表示(印刷)を任意の順番にしたいのですが・・・(6)   27: JSまたはPMのコールが間違っています(3)   28: ページプリンターのSG方法(2)   29: SMARTの画面明細項目が終われない(8)   30: AVXでの外字(槇)について(6)  

 新規投稿 | スレッド表示 | ツリー表示 | 投稿順表示 | i-mode | トップ 
« 1 ... 88 89 90 (91) 92 93 94 ... 108 »

MIX項目の1,2バイト文字判断
うどん 2005-4-13 10:41:00  [返信] [編集]

お世話になります。

早速ですが、MIX項目内の文字を1バイトか2バイトか判断するのに

(COBOL内で)何か良い手は無いでしょうか?



やりたい事は、送先住所というMIX項目を伝票に出力したいのですが、

横幅の印字文字が限られている為、自動で改行しないいけません。

改行というのがくせ者で、2バイト文字が離れない(?)様にしないと

文字化けしてしまいます。



現在のフォーマットは、日本語(Nタイプ)で定義されているので

気にしなくて良かったのですが..



宜しくお願い致します。
Re:#SAB43の高速モードコピーの速度を実測
ターラヤン 2005-4-12 21:02:00  [返信] [編集]

知りませんでした。

ものすごく高速ですね。



マニュアルに書いてある内容を見る限り、#SAB43は

新システム体系ユーティリティの一部で、本来内部で呼び出される

ものみたいですね。

直接実行して、単独でも動かすことができるというわけですか。



今度フロッピーディスクにコピーするときに使用してみます。

Re:私ももっていますが..........
富山清風 2005-4-12 19:20:00  [返信] [編集]

私もSUL,PML,JSLを読み書きする隠しCUをもっていますが、

ITOS-VX R17.XX時代のものであり、最新のCUは持っていません。

対応する機器がないため、新たに開発はしていませんが、色々な個人的なユーティリティを開発しました(過去の話)。

しかし、LMは今でも健在です。

たとえば、COBOLソースのCOPY文を解析し、縦AP一覧/横COPY名一覧のマトリックス表を印刷するプログラムとか、ソースリストの印刷で汎用紙に左右60行づつすなわち120行/1頁印刷するプログラムとか持っています。入手の経緯は、「SULが読み書きできるプログラムを提供して欲しいとNECにたのんだところ、丸秘か暫定処置かでもらいました。」

そこで、最新のOS A-VX01で動く「SUL,PML,JSLを読み書きするCU」をお持ちの方がございましたら、いただけませんか?

 
Re:#SAB43の高速モードコピーの速度を実測
富山清風 2005-4-12 18:41:00  [返信] [編集]

「#SAB43」を始めて知りましたが、公に使用していいLMなのですか?

結果ご報告
あしか 2005-4-12 10:51:00  [返信] [編集]

みなさん、いろいろな情報をありがとうございました。

先週、環境調査に行ってきました。(みなさんの情報に気づかずに・・・)

10,000弱のSULのコピーをLBMで行い、1時間以上かかったため
LMのコピーは次回に見送りました。(あまり時間がとれないため)
アロケートJSを作成するつもりでしたが
現地にその機能がなく、作成できませんでした。

SYS@FDFのことも勉強して、再度行く予定です。

#SAB43の高速モードコピーの速度を実測
温泉好きのうさぎ 2005-4-11 11:31:00  [返信] [編集]

SULのメンバをMSDからFDUにコピーするのに要する時間を、#LBMと#SAB43それぞれについて、実測してみました。


テストデータとして、次の3種類のものを用意しました。(言語タイプはCOBOL、SULの大きさは3800セクタ)


(1) 1本当り2000ステップ、90セクタのメンバが36本、合計3240セクタ
(2) 1本当り2000ステップ、655セクタのメンバが5本、合計3275セクタ
(3) 10000ステップ、3268セクタのメンバが1本、3268セクタ


いずれも、出力先のFDUのSULは、初期化し空の状態です。また、測定中他にジョブは動いておらず、負荷の無い状態です。


(1) #LBMでは、18分47秒、#SAB43では、3分22秒
(2) #LBMでは、18分02秒、#SAB43では、1分05秒
(3) #LBMでは、17分51秒、#SAB43では、48秒


予想を上回る絶大な効果があると思われます。

特に、サイズが大きなメンバほど、効果が発揮されています。


こんどは、逆方向の、FDUからMSDへのコピーも測定しました。


(1) #LBMでは、8分52秒、#SAB43では、9分32秒
(2) #LBMでは、8分50秒、#SAB43では、9分22秒
(3) #LBMでは、8分47秒、#SAB43では、9分17秒


こちらでは、高速モードコピーの威力が発揮されるどころか、#LBMのほうが速いという結果になってしまいました。


なお、計測は腕時計の秒針を見て行いました。また、マシンやOS、フロッピー等による差もあると思われますので、あくまでこの情報は参考としてお取り扱いください。
訂正
温泉好きのうさぎ 2005-4-11 11:30:00  [返信] [編集]

高速モード使用の条件について、ユーティリティ説明書に詳しく書いてありました。私の書いた内容は間違っておりました。



以下、説明書を一部引用します。(表の部分が見にくいと思います。)

<以下引用開始>



 高速モードを”使用する”と指定することにより、以下の条件が満たされている場合にライブラリメンバの複写を高速に行います。


・複写先(出力側のファイルがあらかじめ初期化されている。)

・複写対象メンバが下記のサイズである。


[高速化の基準値]

指定装置−ファイルタイプ  SUL/JSL/PML   CUL   LML

MSD→MSD       600ステップ以上 300セクタ以上 100セクタ以上

FDU→MSD      1800ステップ以上 700セクタ以上 300セクタ以上

MSD→FDU       60ステップ以上 20セクタ以上 300セクタ以上

(上記は1メンバのサイズです)


<以上引用終わり>


SUL,JSL,PMLで差は無いようです。入出力の装置によってかなり条件が違うようです。

この件に関して、テストデータの測定の結果を、別スレッドにて立ち上げました。ご確認ください。

Re:SUL等のコピーは#LBMより高速の#SAB43がお勧め
BLUELION 2005-4-11 0:44:00  [返信] [編集]

こんにちは



> ご存知無い方が多いと思いますので、簡単に紹介しますと、機能は#LBMと同等で、SUL,JSL,PML,LML間でメンバの追加、置換、コピーを行うものなのですが、高速モードが存在します。

初めて知りました 試してみます



FDUにアロケートしたのと同じ大きさのSULをMSD上にもアロケートしておき、そこに今回のFDUにコピーしたいメンバを入れます。(MSD同士だと速いので#LBMを使ってもよい)



 私は同じファイルのサイズで割り付けるのまでは同じですが#ABCの複写でファイル全体をコピーします

この方法もライブラリ使用率が高い場合は無駄な部分が少なくなるので効果的です
SUL等のコピーは#LBMより高速の#SAB43がお勧め
温泉好きのうさぎ 2005-4-10 1:58:00  [返信] [編集]

こんばんは。

まったく本題とは離れますが、



> ライブラリ類は、LBMで、容量いっぱいコピーする、を繰り返し



ソースやJS,PMをフロッピーにコピーするのは非常に時間がかかりますよね。

とくにSULのメンバを#LBMでコピーすると、フロッピー1枚で20〜30分ぐらいかかったりします。

そういうときは、#LBMより高速でコピーできる「#SAB43」の使用が便利です。



ご存知無い方が多いと思いますので、簡単に紹介しますと、機能は#LBMと同等で、SUL,JSL,PML,LML間でメンバの追加、置換、コピーを行うものなのですが、高速モードが存在します。

ただし、常に高速モードになるわけではなく、いくつかの条件があります。そのうち主なものが、

(1) 出力先の空領域がコピーしようとするメンバのサイズ(複数指定のときは、その合計)以上あること

(2) 1メンバのサイズがある大きさ以上(具体的な数値を思い出せませんが、SUは50セクタぐらいだったような、JS,PMはそれより少し小さかったか。)



JSやPMは(2)の条件にひっかることが多いので、あまり効果が出ませんが、通常のCOBOLのソースであれば、#LBMの1/3ぐらいの時間でコピーできます。



(1)の条件を考慮すると、効果的な方法として、FDUにアロケートしたのと同じ大きさのSULをMSD上にもアロケートしておき、そこに今回のFDUにコピーしたいメンバを入れます。(MSD同士だと速いので#LBMを使ってもよい)

#SAB43のACT=HCOPYでNAM=!として、全メンバを高速コピーする。(進捗表示が画面に出ます)

MSD上のSULを2個用意しておいて、交互にそれぞれのコピーを行うようにすれば完璧。



ちょっとわかりにくい説明で申し訳ありません。

Re:FDによるデータ退避
ターラヤン 2005-4-9 22:49:00  [返信] [編集]

> さっそくの回答ありがとうございました。
>
> 先輩に「FDなら、VOLSRじゃない?」と言われて、#NEWSRは使用しませんでした。退避媒体がFDも#NEWSRを使用できるものなんですか?
> (基本的な質問ですみません)
>

#NEWSRでもできます。
私は基本的に#VOLSRの機能強化バージョンが
#NEWSRだと思っています。
(でも、何か#NEWSRでは使えないものもあった
ような気がしますが、忘れてしまいました。)
だいたい同じ機能を持っていたと思います。


>先ほどのエラーは、上位のマシン、OSで試したところ
>解決しました。


やはりメモリ不足ですかね。
無事解決できてよかった。

Re:富山清風の質問の詳細とターラヤンさんの質問の回答
ターラヤン 2005-4-9 22:40:00  [返信] [編集]

私もマニュアルを見ているだけなので、全銀手順とかは詳しくないのですが、


> 私が一番疑問におもっているのは、旧マシン(初回の質問メールJSを記入済み)でJSが問題なく、稼動していることなのです。



今や以前作ったプログラムがそのまま動くというのが、
600シリーズの最大最後の売りなのに、
以前のものがそのまま動かないのは問題ですね。

> ここで、もうひとつ気になっているのが、初回の質問メールJSのABC001の/run文の「SSW8=OFF」の部分ですが、......
> /RUN $FBFT ,DEV=MSD000,FIL=SYS@LML ,SSW8=OFF;
>
> 旧マシンのマニュアルを読みましたが、SSW8はあまり関係ないようなのですが
>
> 私の疑問点は理解できましたか?


理解できました。
不可解な現象ですね。
ただ私も$FBFTは実際に使ったことがないのでこれ以上はわかりません。(会社にマニュアルが転がっていただけです・・・)

いずれにしても、マニュアルには「JRコードでエラーチェックすべし」と書いてあることですし、JRコードでチェックするようにするしかないかと・・・。


好意的に解釈するに
昔はセンススイッチとNORMAL/ABORTでチェックさせていたのが、機能強化でJRコードで詳細にエラー原因を通知するようになったとか・・・
でも昔のマニュアルにもなかったそうですから、かなり無理がある解釈ですが、そうとでも解釈しないと納得できませんよね。

Re:富山清風の質問の詳細とターラヤンさんの質問の回答
富山清風 2005-4-8 21:45:00  [返信] [編集]


JS名:ABC001は「ほぼ流用し」とは、
新マシンでは、キーパラメータ(XXX=YYY)ではなく、位置パラメータになっているため、それに準じて変更したのみです。

以下に新マシンのJS

JS名:ABC001
/RUN $FBFT ,DEV=MSD000,FIL=SYS@LML ,SSW8=OFF;
NO_
DDX _
033456XXXXXX _
003_
_
QUE001 _
VTR001 _
XXXXXX40404040_
XXXXXX40404040_
HEXA_
XXXXXX404040_
MSD _
HEXA_
_
_
RECV_
_
VAA69000 _&0 _XXXXXX404040_0250_NO _
END_
_
NO_
_
_
_
_
_
_
NO_
YES_
/> ;


「全銀手順実行時にエラーが発生した場合は」とは、
たとえば、「FBFMSG E S0014センターファイルレコードなし」などです。

私が一番疑問におもっているのは、旧マシン(初回の質問メールJSを記入済み)でJSが問題なく、稼動していることなのです。

すなわち、
ABC001、XYZ001が「FBFMSG E S0014センターファイルレコードなし」のエラーとなった場合には、
ちゃんと/: ABORT文が有効に働きエラー処理ができていることなのです。(アボートダンプの取得にはいかないのにですよ)

ここで、もうひとつ気になっているのが、初回の質問メールJSのABC001の/run文の「SSW8=OFF」の部分ですが、......

/RUN $FBFT ,DEV=MSD000,FIL=SYS@LML,SSW8=OFF;

旧マシンのマニュアルを読みましたが、SSW8はあまり関係ないようなのですが

私の疑問点は理解できましたか?

複雑な内容になってしまいましたが、時間が許せば、調べてみてください。

ITOSを触りつづけて20年の無知な男より


Re:FDによるデータ退避
BLUELION 2005-4-8 21:29:00  [返信] [編集]

追伸:#FLCNVの隠し機能でCOPYしないと出来なかったと思います
Re:FDによるデータ退避
bluelion 2005-4-8 21:11:00  [返信] [編集]

SYS@FDFなどを持っていくと ファイルのアロックパラメータなどを作るのは簡単ですよ



FDFの構造はマニュアルに載ってあります

普通は #MAPなどのリストがかんたんかもしれませんけど

FDFから生成すれば ファイル名などを打たなくてすみますから

Re:FDによるデータ退避
あしか 2005-4-8 18:49:00  [返信] [編集]

ありがとうございます。



そうなんですね・・・。



ただ、今回は作業時間もそんなに取れないので

ライブラリ類は、LBMで、容量いっぱいコピーする、を繰り返し、

その他データファイル類は、allocate JSを作成して

とりあえずの環境を持ち帰ることで対応することにしました。



まだ訪問予定もありますので、その際に、必要なデータはいただいて帰ることにします。



コマンドの意味とかやっぱりちゃんと分かってないとだめですね・・・
Re:FDによるデータ退避
BLUELION 2005-4-8 18:36:00  [返信] [編集]

> ただ、「そんなに容量ないだろう」というファイルのバックアップだけでも、何枚も何枚も媒体の変更を要求されるのですが

> そういうものなのでしょうか?

的はずれかもしれませんが



SYS@FDFなどのファイル管理ファイルも保存されるからではないでしょうか?

また MSD000だとパラメータによっては 他のシステムファイルも保存対象となりますよ
Re:FDによるデータ退避
あしか 2005-4-8 16:57:00  [返信] [編集]

さっそくの回答ありがとうございました。



先輩に「FDなら、VOLSRじゃない?」と言われて、#NEWSRは使用しませんでした。退避媒体がFDも#NEWSRを使用できるものなんですか?

(基本的な質問ですみません)



先ほどのエラーは、上位のマシン、OSで試したところ

解決しました。

ただ、「そんなに容量ないだろう」というファイルのバックアップだけでも、何枚も何枚も媒体の変更を要求されるのですが

そういうものなのでしょうか?
Re:FDによるデータ退避
ターラヤン 2005-4-8 16:17:00  [返信] [編集]

こんにちは。



同じマニュアルをお持ちかどうかわからないのですが、

「システム操作法ガイドブック<メッセージ編>」のボリューム退避復帰のページをみると、

「制御テーブルがオーバーフローしました」の説明に「実行時メモり不足を検出しました」と書いてあります。

OSバージョンによっては違うかもしれませんので、お持ちのマニュアルで確認してみてください。



それよりも気になるのは、#VOLSRを使用していることです。

「互換操作法ガイドブック<パラメータ編>」のボリューム退避復帰のページをみてください。

そこの注意事項に以下のような内容が書いてあります。

「#VOLSRで退避復帰対象となるファイル数は999ファイルまでです。ただし、一度999ファイルを越えたことのある磁気ディスクに関しては退避することができません。」

#NEWSRを使ってみてはどうでしょうか。それでもダメでしょうか。



VOLSR = VOLUMN SAVE RESUME

NEWSR = NEW SAVE RESUME



NEWSRの方が新しいユーティリティです。



> #VOLPRを使って、FDに環境を退避できないかと

> 社内で試してみたところ、「制御ファイルがオーバーフローしました」というエラーが発生してしまいました。

全然詳しくないですが
ターラヤン 2005-4-8 15:19:00  [返信] [編集]

会社の段ボール箱をひっくりかえしたら、なぜかマニュアルがあったので、読んでみました。


マニュアルを読む限り、FBFTのエラーチェックはJRコードでやるべきのようにみえます。(付録D参照)

試しにエラーになった時にどんなJRコードが返ってくるのかチェックしてみてはどうでしょうか。


エラーはどんなエラーですか?

JCLのabort,normalでチェックできるのは、異常終了した後にAPのアボートログを取る画面になるようなエラーの時です。

アボートログ採取画面にならないようなエラーの時は、NORMALに行くはず。


少し変えた部分は、自動再送モードのパラメータなのでしょうか?

それともTEL部分など相手先の情報?




> 全銀手順($FBFT)のエラーの判断について
>
> 新マシンにて実行し、
> 全銀手順実行時にエラーが発生した場合は、
> XYZ001の00060行が絶えず有効となり、PAUSE文へ行かない。
FDによるデータ退避
あしか 2005-4-8 13:48:00  [返信] [編集]

こんにちは、はじめまして。

今回、あるユーザーの環境を社内に構築することになったのですが

CGMTを接続しているマシンが社内にないため

#VOLPRを使って、FDに環境を退避できないかと

社内で試してみたところ、「制御ファイルがオーバーフローしました」というエラーが発生してしまいました。

#NEWSRや#BKUPを使って、テープにデータを退避することは

FDでは不可能なのでしょうか?



ご教授よろしくお願いします。

 新規投稿 | スレッド表示 | ツリー表示 | 投稿順表示 | i-mode | トップ 
« 1 ... 88 89 90 (91) 92 93 94 ... 108 »

BluesBB ©Sting_Band