トップページtech
1001コメント361KB

【COBOL】コボラー集まれ!!!【事務処理】

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/05/01(月) 18:32:38
いるだろ?語ろうぜ
0002デフォルトの名無しさん2006/05/01(月) 18:39:45
ひょっとしたらマ板の方がいいんじゃない?
0003デフォルトの名無しさん2006/05/01(月) 18:56:10
てst
0004デフォルトの名無しさん2006/05/01(月) 19:56:12
コボラーの占有面積は異常に狭い

俺が某保険会社で実際に目撃したものだが、奴らは超旧式なまっ四角で超窮屈な事務机しか与えられていない

その占有面積は俺のデスクの半分以下!

それはきっとコボラーの社会的なステータス自体がドン詰まりである事を表しているに違いない
0005デフォルトの名無しさん2006/05/01(月) 20:16:43
こぼるのおっさん
0006デフォルトの名無しさん2006/05/01(月) 20:28:54
身も蓋もNothing
0007デフォルトの名無しさん2006/05/01(月) 21:49:35
集めたら一網打尽!
0008デフォルトの名無しさん2006/05/01(月) 21:58:53
CobolもOOPの時代らしいけど、
そこまでして使いたいものなんかと、小一時間。
それならJavaでええがな。
0009デフォルトの名無しさん2006/05/02(火) 11:49:54
COBOLはバカでもできるしオッサンでもできる
もうそこら辺は重々承知してるんでこれ以上イジメんといて下さい
0010デフォルトの名無しさん2006/05/04(木) 00:00:53
コボラー集めてどうするの?
やっぱあれ?
0011デフォルトの名無しさん2006/05/05(金) 12:04:47
集団自殺
0012デフォルトの名無しさん2006/05/05(金) 13:59:16
コボル一筋12年の俺が来ましたよ
しかし、もう辞めたが
0013デフォルトの名無しさん2006/05/05(金) 14:40:26
漏れ COBOL は高校でかじっただけだが
COBOL の OOP のコードって見たことないけど
どんなんなってんの?

*想像上のコード*
 
 WORKING-STORAGE SECTION.
 01 KURASU     PIC CLASS.
    02 MESODDO PIC METHOD 〜

*/想像上のコード*

とかそんな感じ?実例見てみてぇー。
0014デフォルトの名無しさん2006/05/06(土) 18:43:30
IDENTIFICATION DIVISION.
PROGRAM-ID. ******.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SOURCE-COMPUTER. ****.
OBJECT-COMPUTER. ****.
SPECIAL-NAMES. CONSOLE IS *.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.
こんな感じ?
0015デフォルトの名無しさん2006/05/07(日) 17:57:13
大文字ってマジで見辛い。

OO機能追加する前に小文字使用をデフォルトにしてくれ
0016デフォルトの名無しさん2006/05/08(月) 23:22:10
>>14
項目が何も無いじゃない!
…べ、別に定義して欲しい訳じゃないからねっ!?

個人的にはデータが桁情報持ってたりとか
READ 構文がEOF判定までするところが変わってるなぁと思う

最近は古い言語も小文字デフォだったりするし
小文字の環境もあるんじゃないの?
実際の環境触ってないから分からんが。
0017デフォルトの名無しさん2006/05/10(水) 20:14:06
>>16

>READ 構文がEOF判定までするところが変わってる

いや、オレにはこれが「事務処理特化型」の特徴の一つだと思うよ。

try{
  read(xxFile);
}
catch(EofException e){
  eof = true;
}
catch(IOException e){
  ・・・
}
catch(Exception e){
  ・・・
}

こんなのよりも;

READ XXFILE
 AT END MOVE "ON" TO FLAG-EOF.

この方がよっぽど単純だし、信頼性の高い汎用機で動かすなら
これで充分だと思う。

おまけにbuffer/streamなんかの類もコンパイラとOSのタッグで
意識せずに済む。なかなか素敵な話だと思うがね。
0018デフォルトの名無しさん2006/05/11(木) 01:41:53
COBOL知らない俺にフリーのCOBOL環境教えて君
0019デフォルトの名無しさん2006/05/11(木) 02:24:46
http://www.opencobol.org/
0020182006/05/11(木) 04:21:39
>>19
インスコ出来ねーぜちくしょう!
でも教えてくれただけでもまーいーやdクス
0021デフォルトの名無しさん2006/05/11(木) 15:51:35
>>17
streamの使い方が十分分かっていないのではないか?
上の記述が冗長に見えて、柔軟なのを分からないのが、とってもobsolete.
0022デフォルトの名無しさん2006/05/23(火) 11:27:00
ンモーすぐそんな事言う〜〜
0023仕様書無しさん2006/06/02(金) 00:24:15
編成ファイルって何?(ひきよう編成ってあるのか?)
0024デフォルトの名無しさん2006/06/02(金) 01:25:00
ttp://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E7%B7%A8%E6%88%90%E6%B3%95
0025デフォルトの名無しさん2006/06/07(水) 21:43:27
高校でCOBOLを習っているのですがテーブルって難しいですね。
0026デフォルトの名無しさん2006/06/11(日) 01:23:02
cobolの勉強をはじめました。
どこかにフリーソフトのエディターってあります?勉強で使う程度ですが。
0027デフォルトの名無しさん2006/06/12(月) 00:07:00
要点を抑えていないその質問だと、「メモ帳」と言う答えが関の山だと思われ
0028デフォルトの名無しさん2006/07/07(金) 18:14:52
いきなり質問で申し訳ないのですが、どなたかご教授願います。
当方COBOL85を使用しているのですが、Write命令で書き込みを
した際、書き込みレコードの後ろの半角文字が削除されてしまいます。
WriteするレコードをDisplayしたところ、きちんと半角文字が入っているの
は確認できます。

どなたか、原因はわかる方いますでしょうか?
宜しくお願いいたします。
0029デフォルトの名無しさん2006/07/08(土) 13:32:55
実行ジョブにレコード長という定義はありませんか?
0030デフォルトの名無しさん2006/07/08(土) 14:43:59
>>28

>書き込みレコードの後ろの半角文字

意味フメ。日本語ヨロ。
人に説明する能力の不足を自覚してるなら、せめてソース晒してくれ。

>>29

その質問方法では答えようがない。いったい何を訊きたいのだろ。ハァ
0031デフォルトの名無しさん2006/07/20(木) 11:42:01
最近、コボルトをコボルといい間違える。
DDOやってて、コボル・アソールトとか言ってる。
0032デフォルトの名無しさん2006/07/20(木) 12:03:30
あんだコラァ!
くだらねぇこと言ってんとコボるぞテメー!!
0033デフォルトの名無しさん2006/07/20(木) 12:36:15
うわぁ、コボラーの猛攻撃だぁ
0034デフォルトの名無しさん2006/07/23(日) 02:08:40
質問です。
入力ファイルをチェックして、正常分と異常分に振り分ける
プログラムを作ろうとしています。
1レコード毎に振り分けるのなら簡単なのですが、自分が作ろうとしているのは、
連続した複数レコード単位にチェックして、その中で1レコードでも異常なら、
そのまとまったレコードを全て異常分に出力するという仕様になっていて、
どのように実装するか悩んでいます。

最初は、配列を使おうと思ったのですが、レコードの件数は不定で、
何万件もある場合もあるので、汎用性がないということでボツにしました。
そこで次に考えたのは、チェック結果が確定するまで、一時的に作業用の
出力ファイルに溜め込んでいって、判定が確定したら、作業用のファイルを
一旦クローズして、再度入力モードでオープン&リードし、EOFまでそのまま
正常分か異常分に出力し、その後作業用ファイルをクローズ&再度出力モードで
オープンし、次の連続レコードを溜め込む・・・というのを繰り返すという方法です。

このように、1つのファイルのオープン&クローズを何度も行うやり方っていうのは
どうなんでしょうか?
一つのプログラムでやるとなると、これぐらいしか思いつかないのですが、
もっと賢いやり方はありますか?
0035デフォルトの名無しさん2006/07/24(月) 10:16:09
>>34
何で二つのプログラムに分けないの?
0036デフォルトの名無しさん2006/07/25(火) 01:49:37
              |
               |  なんでだろ〜♪
             \_____  _____
                      V
       _,ヾゝー'"'"'"ー、,;    ,.:-‐―‐-.、_
      ,ラ   、_    ヽ,、 /       \
      イ  r-'ー゙ "ー‐、,  ミ/          ヽ
      i!  ,!       i! ミi   ,ハ        i
      ,j i /ニ=、  ,r==、i ,,ハ ,ノヽi! ゙'レ>ヾ-、 ,!r'
      i V <(・)>i i!(・)>゙!,i  !!イ(・)) <.(・)>゙ i /!i
      ゙!ji!   ., j .i_   /j   i  。 。,      ト-'
      ,ィi:.  ;" ー-‐'   ト'   .!   ,.=、     / ̄ ゙̄ー-、_
    __ノ !ハ    : 0 ;  ,/ _,.-‐''\ ゙=''  ,/
  /   \\   ̄ ,//     ゙ー-‐‐"
/       \.゙ー-イ ,/
0037デフォルトの名無しさん2006/07/31(月) 21:37:18
>>34

マッチングしながら、ワークにデータをタンクしておいて
エラーがあったら出力でいいと思うよ。
適当にテーブルをワークをとっておき、自分の想定以上の
データ数が来たときには、ディスプレイで表示し後で
テーブルを修正。
効率は悪いけど、わかりやすいと思うよ。

>>28
書き込みしたファイルをコードで見れば
わかる。
0038デフォルトの名無しさん2006/08/23(水) 22:10:21
今日、会社で手足を縛られた上、コボルを無理やり教えられました。
明日も明後日もです・・・。
うう・・・ただの事務屋なのに・・・。
明日は朝からコーディングシートに鉛筆でなにやらかかされるそうです
0039デフォルトの名無しさん2006/09/01(金) 15:44:01
コボルをおぼえるなら今のうちだぞ。
現役コボラーのおじさん達が引退するのは
もう間もなくだ。
その後、コボルで作ったシステムの面倒を
誰が見るよ?
メンテするにもリプレースするにも
コボラーが必要になるんだよ。
0040デフォルトの名無しさん2006/09/02(土) 08:22:58
そのおじさん達にまともな仕様書を作らせておけば、
COBOLを熟知していない漏れが面倒みるのもやぶさかではないが。

まあ、長い人生において一度くらいは紙に鉛筆使って設計するのも
悪くない経験だろ。

役には立たんが。(w
0041デフォルトの名無しさん2006/09/02(土) 08:59:33
一度ならな
0042デフォルトの名無しさん2006/09/08(金) 23:48:22
質問です。
PROCEDURE DIVISION.
MEIN.
PREFORM READ_RTN.
STOP RUN.
READ_RTN.
READ INFILE AT END FLG = 1
END-READ.

PROCEDURE DIVISION.
MEIN.
PERFORM UNTIL FLG = 1
PERFORM READ_RTN
END-PERFORM.
STOP RUN.
READ_RTN.
READ INFILE AT END FLG = 1
END-READ.
・・・は同じですか?
0043デフォルトの名無しさん2006/09/09(土) 00:23:02
>42

釣り?

これ、コンパイル、通ります?

> READ INFILE AT END FLG = 1

これ
READ INFILE AT END
MOVE 1 TO FLG
END-READ.

だったら分かるんだけど、今の COBOL(ってオレが使ってるのは COBOL88だけど)
そんな代入できるの
0044デフォルトの名無しさん2006/09/09(土) 00:25:03
昔の二種Lvの俺の話で良いなら。

本当にコードがそれだけなら一緒だな。
INFILE読むだけで何もしてないからw

それ以前にOPENやCLOSEしてなくて大丈夫なのか?とか
ピリオドの位置ってそれで良いのか?とか
疑問は尽きないわけだが…



で、マジレスするなら
INFILEが空でない限り違うと思うぞ。

下のコードはループしてないから
ファイルが終端であろうとなかろうと
1レコード読んで終わるんでね?
0045デフォルトの名無しさん2006/09/09(土) 00:28:01
MEIN.
0046デフォルトの名無しさん2006/09/09(土) 00:29:28
>>45
そこは多分合ってるかと。
コボラー的には。
0047デフォルトの名無しさん2006/09/09(土) 15:55:11
COBOLerのローマ字文化はそこそこ理に適ってる

・予約語の数がハンパじゃない
・フルスペル
・環境によって存在する予約語とない予約語がまちまち

COBOLがこんなだからローマ字文化にもなる訳だが
他言語にまで持ち込むのは止めて欲しい罠
0048422006/09/10(日) 19:24:02
あ、すみません、初心者なので。。。
知りたいのは

PERFORM UNTIL 〜〜
PERFROM READ_RTN
END-PERFORM.

PERFORM READ_RTN.
だとREAD_RTNを通る回数が同じになるのかを知りたかったんです
0049デフォルトの名無しさん2006/09/10(日) 20:10:20
>>48
>>44
0050デフォルトの名無しさん2006/09/10(日) 20:11:44
あ、>>44は一部誤りがあるな。
ループしてないのは上のコード。
0051デフォルトの名無しさん2006/09/10(日) 20:15:40
つーか藻舞 UNTIL の意味解ってんの?
解ってたらこんな質問出ないハズ。
0052デフォルトの名無しさん2006/09/16(土) 10:12:06
openCOBOLは、変数名に漢字を使える?
0053デフォルトの名無しさん2006/09/16(土) 13:31:43
使えない
0054デフォルトの名無しさん2006/09/25(月) 00:27:31
COBOLerは、何故態度がでかいのでしょうか
0055デフォルトの名無しさん2006/09/25(月) 01:30:54
>>54
逆だよ。

歳ボケ+歳のせいにする→他の言語を覚えない

実力主義の人→COBOLだけでは立場がないと考える
年功序列主義→年上が偉いと考える

つまりCOBOLerだから態度がでかいのではなく
そういう性格だからCOBOLerなんだよ
0056デフォルトの名無しさん2006/09/25(月) 23:25:07
お勧めの入門サイトある?
0057デフォルトの名無しさん2006/09/26(火) 04:52:15
>56
言語そのものの入門ならググればすぐ出てきたよ。

ひよこグミ
ttp://www16.plala.or.jp/hiyokogumi/
入門者にゃ良いかもな。
但し、コイツのギャグセンスに耐えられる人向けであることを補足しておく。

COBOL入門
ttp://ueno.cool.ne.jp/shirokaze185/htcobol.html
これで十分な人はこれで十分かも。



でも、一番の問題はセットアップかなぁ。
0058デフォルトの名無しさん2006/09/27(水) 22:16:56
>>57
ありがとうございます
そうなんです、NetCOBOL体験版をみつけたんですが
プログラムを始めるとこまでなかなかいけなくて……
0059デフォルトの名無しさん2006/09/29(金) 18:15:34
>>58
COBOL85はとっつきやすくてよいかも知れません。
もう使い方忘れたけど。
0060大分前にOpenCOBOLのインスコに挫折してた人2006/09/30(土) 04:33:33
やっと、OpenCOBOL (Cygwin版) のインスコ出来たので報告。

1. Cygwin公式サイト(英語) から setup.exe を落とす。(Eみたいな形のアイコン)
2. 落とした setup.exe を起動して全部デフォルトで。インスコ始まったら待て。
3. インスコが終わったら、ショートカット作成するか訊いて来るがこの時点では関係なし。
4. もう一度 setup.exe を起動して、今度は途中のURLがズラーっと並んでる画面。
  下の User URL: のボックスに(頭の h は補完してね)
  ttp://members8.tsukaeru.net/pegstyle/cygwin/
  と入れて次の画面へ。
5. Select Packages 画面。これはツリーになってるので + をクリックすれば展開できる。
  Devel -> opencobol: COBOL compiler (かなり下の方にある)を見つける。
7. その行にリサイクルみたいなマークと Skip と書かれてる。
  このマークは Skip -> バージョン番号 -> 別のバージョン番号 -> とクリックする度に変わる。
9. バージョン 0.32(正式版) か 0.33(テスト版) にして、次の画面へ。
10. 後はそのまま。最後にまたショートカット作成するか訊いて来るからチェック入れる。
11. 0.32 を入れた場合、cygltdl-3.dll のバージョンが新し過ぎて動かないので古いバージョンを入れる。
  入手先は ttp://members8.tsukaeru.net/pegstyle/cygwin/cygltdl-3.zip 。

参考URL:
ttp://jp.opencobol.org/modules/mydownloads/
あとはCygwin関連のサイト諸々。
0061大分前にOpenCOBOLのインスコに挫折してた人2006/09/30(土) 04:47:06
ショートカットから Cygwin 起動 → cat > test01.cob

000010 IDENTIFICATION DIVISION.
000020 PROGRAM-ID. TEST01.
000030*
000040 ENVIRONMENT DIVISION.
000050*
000060 DATA DIVISION.
000070*
000080 PROCEDURE DIVISION.
000090 MAIN.
000100   DISPLAY "TEST"
000110   STOP RUN.

Ctrl+D で入力終了。

(2chで空白の入れ方判らんから行番号付きにして、
 B領域の頭に入れる4つの半角スペースは全角2個で書いた)

cobc test01.cob でコンパイルして ./test01.exe で実行。

TEST

と出た時には感動と同時に4ヶ月半の疲れがどっと出たぜ……
もうなんか COBOL とかどうでも良くなったwww

ちなみに上では cat > ファイル名 でやっちゃったけど
エディタは EUC+LF改行 に対応してるヤツを使えばOKぽい。
0062大分前にOpenCOBOLのインスコに挫折してた人2006/09/30(土) 04:51:42
間違えた。SJIS+LF 臭い。何だ初めて聞いたぞこんな組み合わせ。
0063デフォルトの名無しさん2006/10/07(土) 23:37:00
ソースコード検索エンジンでCOBOLに対応しているところはないでしょうか?
http://koders.com/http://www.krugle.com/では対応していませんでした。
0064デフォルトの名無しさん2006/10/08(日) 04:53:58
新人に汎用機のデカさやTSSを嬉々として説明してる自分に老いを感じた
0065デフォルトの名無しさん2006/10/08(日) 11:06:40
COBOLScriptなんてブッdだ代物が存在するんだな…w
思えば書けるプログラムの規模はスクリプト並だが
書く時の面倒臭さは汎用言語を上回るCOBOLって救えねぇ…w
0066デフォルトの名無しさん2006/10/10(火) 21:33:35
学校でCOBOL習ってるがさっぱりだ
0067デフォルトの名無しさん2006/10/10(火) 22:29:27
君にはプログラミングのセンスがありません
0068デフォルトの名無しさん2006/10/10(火) 23:06:57
辛辣な意見をありがとうございます
0069デフォルトの名無しさん2006/10/13(金) 01:52:05
高校普通科→大学文系→就職:プログラマー
これ最強コンボ
0070RAG2006/10/17(火) 19:57:35
始めまして。早速ですがわからないことがあるので教えて下さい。

例)
*ソート命令 サンプルプログラム

−−−−−中略−−−−−

ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SOURCE-COMPUTER. UP4800.
OBJECT-COMPUTER. UP4800.
*
INPUT-OUTPUT SECTION.
FILE-CONTROL.

SELECT OTFILE1 ASSIGN TO OTFILE1-MSD
ORGANIZATION SEQUENTIAL
ACCESS MODE IS SEQUENTIAL
FILE STATUS IS FO1-STATUS.

−−−−−中略−−−−−

OPEN OUTPUT OTFILE1.

続きます。。。
0071RAG2006/10/17(火) 19:58:53
上のようなプログラムの場合なんですが、このOUTPUT【OTFILE1】は
どこに出力されるのですか?
他のCOBOL関係のサイトを見てみたんですが、

例2)
INPUT-OUTPUT SECTION. *>入出力節の宣言文
FILE-CONTROL. *>ファイル管理段落の宣言文
SELECT F1 ASSIGN TO "C:\dat\c005.dat". *>利用ファイルの詳細

みたいに他ではパスとファイル名まで書かれているのにこのOUTPUT【OTFILE1】は
『OTFILE1-MSD』に出力する(?)みたいな事になっています。
イメージとして『OTFILE1-MSD』はなんかの定数で
別で 『OTFILE1-MSD = "C:\dat\c005.dat"』
のようなモジュール(?)があるのでしょうか?

わかりにくくてすみません。
わかる方がいらっしゃいましたら教えて下さい。
0072デフォルトの名無しさん2006/10/17(火) 23:05:06
>>71
製品によるけど環境変数等で設定されてるはず
0073デフォルトの名無しさん2006/10/17(火) 23:23:33
Windowsの統合開発環境か何かでやってるかい?
であれば実行時に環境変数を指定するウインドウとか出てこない?
0074デフォルトの名無しさん2006/10/18(水) 00:11:14
久しぶりに無性にJCLを書きたくなってしまって書いた。
現場を離れてみて思い起こすと、未だにあの使いにくいCUIでコーディング・テストとか
やってるなんて浮世離れしている感があるなあ…

//TEST  JOB CLASS=U,MSGCLASS=X
//JOBLIB  DISP=SHR,DSN=HOGE.LIB
//JOBCAT DISP=SHR,DSN=HOGE.CAT
//TEST01 EXEC PGM=HOGE01
//OTFILE-1MSD DD DISP=(NEW,CATLG),DSN=TEST.HOGE,
//      UNIT=DASD,VOL=SER=HOGEVL,
//      DCB=(RECFM=FB,LRECL=115,BLKSIZE=23000),
//      SPACE=(TRK,(1,1),RLSE)
//SYSOUT  SYSOUT=*
0075デフォルトの名無しさん2006/10/18(水) 09:20:24
>>72
>>73 さん

回答、ありがとうございます。
詳しくは言えないのですが、現状、手元には上記にのソースがある(.cobファイル)のみで
A-COSをASP.NETにオープン化する際の解析段階の事をしています。

環境変数等で設定されているという事はソース上では分からないという事でいいんですよね?
>>72
>>73 さん
その他の方々、よろしければ返事をお願いします。
0076デフォルトの名無しさん2006/10/18(水) 23:30:36
どこかでOTFILE1-MSDをACCEPTしてない?
0077デフォルトの名無しさん2006/10/19(木) 00:14:51
>>75
NetCOBOLならIDEから設定できる
0078デフォルトの名無しさん2006/10/20(金) 00:02:12
COBOLってどんな仕事やってる?
大至急覚えないといけなくなったんだけど
文法覚えた後なにしようか迷う
0079デフォルトの名無しさん2006/10/20(金) 01:46:49
ファイルの読み込み→編集→ファイル出力または帳票出力
が王道パターン。Oracleと組み合わせてPro*COBOLなんかも。
0080デフォルトの名無しさん2006/10/20(金) 04:07:31
>>78
メンテ
0081デフォルトの名無しさん2006/10/20(金) 23:11:00
そしておいらにもメンテの仕事がまわってきたよ
ソース解析するのに便利なツールなんかある?
0082デフォルトの名無しさん2006/10/29(日) 03:14:06
俺はコボラーでいまだに、コボルで開発やっている。
先がないのは、わかっているので、今後を見据えて
Java、VB.NET、VB6、ACCESSを
かじった。今後専門的に伸ばしていくには
どれがよいか教えて。
0083デフォルトの名無しさん2006/10/29(日) 16:43:02
DB2,OracleなどのRDBの基礎とSQLだろ。

別にExcel+VBAでもエキスパートになれば食う分には困らんと思うが。
0084デフォルトの名無しさん2006/11/04(土) 20:42:44
>>82
コボラ(上がり)は何故全角文字を使いたがるのだろう?
教えてけれ。
0085デフォルトの名無しさん2006/11/10(金) 00:03:05
COBOLって全角半角混在できないでしょ?
0086デフォルトの名無しさん2006/11/10(金) 21:59:13
漏れはそれよりもソースリストの注釈をガンガッテ半角カナで入れられる
方がなんとなくムカつくんだけど。
0087デフォルトの名無しさん2006/11/11(土) 13:14:44
S9(3) COMP-3 から X(2) に項目移送するってできんの??
0088デフォルトの名無しさん2006/11/11(土) 15:34:10
>>87

なにがしたいんだ?

3桁の数値しかもパック項目をX(2)って・・・

俺だったら一旦、
S9(3)COMP-3 → S9(3) → X(3)

にするが、+-がわからなくなってしまうので考慮が必要。
0089872006/11/11(土) 21:38:56
X(3)の間違いでした。。すみません。
やっぱS9(3)を挟まないとダメなんですかね?
0090デフォルトの名無しさん2006/11/12(日) 00:01:31
01 NULLPO COMP-3.
 03 A PIC S9(03) VALUE -111.
01 GATT.
 03 B PIC X(02).
******

MOVE NULLPO TO GATT.

↑のコーディングで
Bの中身は「111D」(パックで-111)になるはずだけど、
こういう何をやりたいのかわかりにくいコーディングは糞なのでおすすめしない。
0091デフォルトの名無しさん2006/11/12(日) 00:30:04
ああ、>>89見てなかった。

基本的には S9 → X はダメ。
ただし、S9をREDEFINESや集団項目でXタイプにみたてて送り出すなら転記可能。

しかし、X(3)の中にどういうデータを入れたいのか明確にしないとバグになるぞ。

-111だとしたら
「F1F1F1」ならS9(3)COMP-3 → 9(3) → X(3)
「F1F1D1」ならS9(3)COMP-3 → S9(3) → X(3)
「60F1F1F1」ならS9(3)COMP-3 → -(4) → X(4)
0092デフォルトの名無しさん2006/11/12(日) 00:56:34
くそう、コードを書かれだすと叩きにくくなるな。
何書いてあるのかさっぱりわからん。
0093872006/11/12(日) 01:13:29
>91
理解しました。有難う御座います。
0094デフォルトの名無しさん2006/11/13(月) 20:03:54
>>92
0095RAG ◆nOA3ItxPxI 2006/11/14(火) 16:06:31
すみません,またまた質問させて下さい。

----------------------------------------------
01 WK-NUM.
02 WK-NUM01 PIC ------.999.
----------------------------------------------

上記の『 WK-NUM01 』に「-123456.123」をセットすると
アボートしちゃいますか?
0096デフォルトの名無しさん2006/11/15(水) 03:50:39
桁あふれは一般的には切り捨て。
ていうか、そういうのは文法書みるとか、マニュアルみるとかしな。
0097デフォルトの名無しさん2006/11/15(水) 17:22:07
マニュアル、でふと思った
無料でオンラインの文法書ってあります?
0098デフォルトの名無しさん2006/11/15(水) 18:51:39
>>97
たくさんあるよ、ただ版がね
0099デフォルトの名無しさん2006/11/17(金) 01:10:24
他の高級言語と違って、COBOLの文法は初見だとよく分からん。
0100デフォルトの名無しさん2006/11/17(金) 10:55:31
>>99
他の高級言語の範囲が広くなるとそうもいってられない。
というか、COBOLぐらいなんてことはない。
むしろ、よさが分かる。[EOR]
0101デフォルトの名無しさん2006/11/18(土) 09:26:19
>99
俺の場合、文法よりもデータ構造に戸惑った

各itemの定義(数値n桁や文字x桁)の仕方だけでなく
レコードと各要素の関係まで全て桁がベースになってるのには驚いたよ

例えばレコードRの各要素にデータ突っ込んで
Rを取り出したら繋がった内容が出て来たりとか

逆にRに1行突っ込むと勝手に桁で区切って
各要素に分解されたりとかそのへん
■ このスレッドは過去ログ倉庫に格納されています