【COBOL】コボラー集まれ!!!【事務処理】
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2006/05/01(月) 18:32:380002デフォルトの名無しさん
2006/05/01(月) 18:39:450003デフォルトの名無しさん
2006/05/01(月) 18:56:100004デフォルトの名無しさん
2006/05/01(月) 19:56:12俺が某保険会社で実際に目撃したものだが、奴らは超旧式なまっ四角で超窮屈な事務机しか与えられていない
その占有面積は俺のデスクの半分以下!
それはきっとコボラーの社会的なステータス自体がドン詰まりである事を表しているに違いない
0005デフォルトの名無しさん
2006/05/01(月) 20:16:430006デフォルトの名無しさん
2006/05/01(月) 20:28:540007デフォルトの名無しさん
2006/05/01(月) 21:49:350008デフォルトの名無しさん
2006/05/01(月) 21:58:53そこまでして使いたいものなんかと、小一時間。
それならJavaでええがな。
0009デフォルトの名無しさん
2006/05/02(火) 11:49:54もうそこら辺は重々承知してるんでこれ以上イジメんといて下さい
0010デフォルトの名無しさん
2006/05/04(木) 00:00:53やっぱあれ?
0011デフォルトの名無しさん
2006/05/05(金) 12:04:470012デフォルトの名無しさん
2006/05/05(金) 13:59:16しかし、もう辞めたが
0013デフォルトの名無しさん
2006/05/05(金) 14:40:26COBOL の OOP のコードって見たことないけど
どんなんなってんの?
*想像上のコード*
WORKING-STORAGE SECTION.
01 KURASU PIC CLASS.
02 MESODDO PIC METHOD 〜
*/想像上のコード*
とかそんな感じ?実例見てみてぇー。
0014デフォルトの名無しさん
2006/05/06(土) 18:43:30PROGRAM-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:13OO機能追加する前に小文字使用をデフォルトにしてくれ
0016デフォルトの名無しさん
2006/05/08(月) 23:22:10項目が何も無いじゃない!
…べ、別に定義して欲しい訳じゃないからねっ!?
個人的にはデータが桁情報持ってたりとか
READ 構文がEOF判定までするところが変わってるなぁと思う
最近は古い言語も小文字デフォだったりするし
小文字の環境もあるんじゃないの?
実際の環境触ってないから分からんが。
0017デフォルトの名無しさん
2006/05/10(水) 20:14:06>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:530019デフォルトの名無しさん
2006/05/11(木) 02:24:460021デフォルトの名無しさん
2006/05/11(木) 15:51:35streamの使い方が十分分かっていないのではないか?
上の記述が冗長に見えて、柔軟なのを分からないのが、とってもobsolete.
0022デフォルトの名無しさん
2006/05/23(火) 11:27:000023仕様書無しさん
2006/06/02(金) 00:24:150024デフォルトの名無しさん
2006/06/02(金) 01:25:000025デフォルトの名無しさん
2006/06/07(水) 21:43:270026デフォルトの名無しさん
2006/06/11(日) 01:23:02どこかにフリーソフトのエディターってあります?勉強で使う程度ですが。
0027デフォルトの名無しさん
2006/06/12(月) 00:07:000028デフォルトの名無しさん
2006/07/07(金) 18:14:52当方COBOL85を使用しているのですが、Write命令で書き込みを
した際、書き込みレコードの後ろの半角文字が削除されてしまいます。
WriteするレコードをDisplayしたところ、きちんと半角文字が入っているの
は確認できます。
どなたか、原因はわかる方いますでしょうか?
宜しくお願いいたします。
0029デフォルトの名無しさん
2006/07/08(土) 13:32:550030デフォルトの名無しさん
2006/07/08(土) 14:43:59>書き込みレコードの後ろの半角文字
意味フメ。日本語ヨロ。
人に説明する能力の不足を自覚してるなら、せめてソース晒してくれ。
>>29
その質問方法では答えようがない。いったい何を訊きたいのだろ。ハァ
0031デフォルトの名無しさん
2006/07/20(木) 11:42:01DDOやってて、コボル・アソールトとか言ってる。
0032デフォルトの名無しさん
2006/07/20(木) 12:03:30くだらねぇこと言ってんとコボるぞテメー!!
0033デフォルトの名無しさん
2006/07/20(木) 12:36:150034デフォルトの名無しさん
2006/07/23(日) 02:08:40入力ファイルをチェックして、正常分と異常分に振り分ける
プログラムを作ろうとしています。
1レコード毎に振り分けるのなら簡単なのですが、自分が作ろうとしているのは、
連続した複数レコード単位にチェックして、その中で1レコードでも異常なら、
そのまとまったレコードを全て異常分に出力するという仕様になっていて、
どのように実装するか悩んでいます。
最初は、配列を使おうと思ったのですが、レコードの件数は不定で、
何万件もある場合もあるので、汎用性がないということでボツにしました。
そこで次に考えたのは、チェック結果が確定するまで、一時的に作業用の
出力ファイルに溜め込んでいって、判定が確定したら、作業用のファイルを
一旦クローズして、再度入力モードでオープン&リードし、EOFまでそのまま
正常分か異常分に出力し、その後作業用ファイルをクローズ&再度出力モードで
オープンし、次の連続レコードを溜め込む・・・というのを繰り返すという方法です。
このように、1つのファイルのオープン&クローズを何度も行うやり方っていうのは
どうなんでしょうか?
一つのプログラムでやるとなると、これぐらいしか思いつかないのですが、
もっと賢いやり方はありますか?
0035デフォルトの名無しさん
2006/07/24(月) 10:16:09何で二つのプログラムに分けないの?
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マッチングしながら、ワークにデータをタンクしておいて
エラーがあったら出力でいいと思うよ。
適当にテーブルをワークをとっておき、自分の想定以上の
データ数が来たときには、ディスプレイで表示し後で
テーブルを修正。
効率は悪いけど、わかりやすいと思うよ。
>>28
書き込みしたファイルをコードで見れば
わかる。
0038デフォルトの名無しさん
2006/08/23(水) 22:10:21明日も明後日もです・・・。
うう・・・ただの事務屋なのに・・・。
明日は朝からコーディングシートに鉛筆でなにやらかかされるそうです
0039デフォルトの名無しさん
2006/09/01(金) 15:44:01現役コボラーのおじさん達が引退するのは
もう間もなくだ。
その後、コボルで作ったシステムの面倒を
誰が見るよ?
メンテするにもリプレースするにも
コボラーが必要になるんだよ。
0040デフォルトの名無しさん
2006/09/02(土) 08:22:58COBOLを熟知していない漏れが面倒みるのもやぶさかではないが。
まあ、長い人生において一度くらいは紙に鉛筆使って設計するのも
悪くない経験だろ。
役には立たんが。(w
0041デフォルトの名無しさん
2006/09/02(土) 08:59:330042デフォルトの名無しさん
2006/09/08(金) 23:48:22PROCEDURE 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釣り?
これ、コンパイル、通ります?
> 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本当にコードがそれだけなら一緒だな。
INFILE読むだけで何もしてないからw
それ以前にOPENやCLOSEしてなくて大丈夫なのか?とか
ピリオドの位置ってそれで良いのか?とか
疑問は尽きないわけだが…
で、マジレスするなら
INFILEが空でない限り違うと思うぞ。
下のコードはループしてないから
ファイルが終端であろうとなかろうと
1レコード読んで終わるんでね?
0045デフォルトの名無しさん
2006/09/09(土) 00:28:010046デフォルトの名無しさん
2006/09/09(土) 00:29:28そこは多分合ってるかと。
コボラー的には。
0047デフォルトの名無しさん
2006/09/09(土) 15:55:11・予約語の数がハンパじゃない
・フルスペル
・環境によって存在する予約語とない予約語がまちまち
COBOLがこんなだからローマ字文化にもなる訳だが
他言語にまで持ち込むのは止めて欲しい罠
004842
2006/09/10(日) 19:24:02知りたいのは
PERFORM UNTIL 〜〜
PERFROM READ_RTN
END-PERFORM.
と
PERFORM READ_RTN.
だとREAD_RTNを通る回数が同じになるのかを知りたかったんです
0049デフォルトの名無しさん
2006/09/10(日) 20:10:20>>44
0050デフォルトの名無しさん
2006/09/10(日) 20:11:44ループしてないのは上のコード。
0051デフォルトの名無しさん
2006/09/10(日) 20:15:40解ってたらこんな質問出ないハズ。
0052デフォルトの名無しさん
2006/09/16(土) 10:12:060053デフォルトの名無しさん
2006/09/16(土) 13:31:430054デフォルトの名無しさん
2006/09/25(月) 00:27:310055デフォルトの名無しさん
2006/09/25(月) 01:30:54逆だよ。
歳ボケ+歳のせいにする→他の言語を覚えない
実力主義の人→COBOLだけでは立場がないと考える
年功序列主義→年上が偉いと考える
つまりCOBOLerだから態度がでかいのではなく
そういう性格だからCOBOLerなんだよ
0056デフォルトの名無しさん
2006/09/25(月) 23:25:070057デフォルトの名無しさん
2006/09/26(火) 04:52:15言語そのものの入門ならググればすぐ出てきたよ。
ひよこグミ
ttp://www16.plala.or.jp/hiyokogumi/
入門者にゃ良いかもな。
但し、コイツのギャグセンスに耐えられる人向けであることを補足しておく。
COBOL入門
ttp://ueno.cool.ne.jp/shirokaze185/htcobol.html
これで十分な人はこれで十分かも。
でも、一番の問題はセットアップかなぁ。
0058デフォルトの名無しさん
2006/09/27(水) 22:16:56ありがとうございます
そうなんです、NetCOBOL体験版をみつけたんですが
プログラムを始めるとこまでなかなかいけなくて……
0059デフォルトの名無しさん
2006/09/29(金) 18:15:34COBOL85はとっつきやすくてよいかも知れません。
もう使い方忘れたけど。
0060大分前にOpenCOBOLのインスコに挫折してた人
2006/09/30(土) 04:33:331. 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:06000010 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:420063デフォルトの名無しさん
2006/10/07(土) 23:37:00http://koders.com/やhttp://www.krugle.com/では対応していませんでした。
0064デフォルトの名無しさん
2006/10/08(日) 04:53:580065デフォルトの名無しさん
2006/10/08(日) 11:06:40思えば書けるプログラムの規模はスクリプト並だが
書く時の面倒臭さは汎用言語を上回るCOBOLって救えねぇ…w
0066デフォルトの名無しさん
2006/10/10(火) 21:33:350067デフォルトの名無しさん
2006/10/10(火) 22:29:270068デフォルトの名無しさん
2006/10/10(火) 23:06:570069デフォルトの名無しさん
2006/10/13(金) 01:52:05これ最強コンボ
0070RAG
2006/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.
続きます。。。
0071RAG
2006/10/17(火) 19:58:53どこに出力されるのですか?
他の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製品によるけど環境変数等で設定されてるはず
0073デフォルトの名無しさん
2006/10/17(火) 23:23:33であれば実行時に環境変数を指定するウインドウとか出てこない?
0074デフォルトの名無しさん
2006/10/18(水) 00:11:14現場を離れてみて思い起こすと、未だにあの使いにくい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>>73 さん
回答、ありがとうございます。
詳しくは言えないのですが、現状、手元には上記にのソースがある(.cobファイル)のみで
A-COSをASP.NETにオープン化する際の解析段階の事をしています。
環境変数等で設定されているという事はソース上では分からないという事でいいんですよね?
>>72
>>73 さん
その他の方々、よろしければ返事をお願いします。
0076デフォルトの名無しさん
2006/10/18(水) 23:30:360077デフォルトの名無しさん
2006/10/19(木) 00:14:51NetCOBOLならIDEから設定できる
0078デフォルトの名無しさん
2006/10/20(金) 00:02:12大至急覚えないといけなくなったんだけど
文法覚えた後なにしようか迷う
0079デフォルトの名無しさん
2006/10/20(金) 01:46:49が王道パターン。Oracleと組み合わせてPro*COBOLなんかも。
0080デフォルトの名無しさん
2006/10/20(金) 04:07:31メンテ
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別にExcel+VBAでもエキスパートになれば食う分には困らんと思うが。
0084デフォルトの名無しさん
2006/11/04(土) 20:42:44コボラ(上がり)は何故全角文字を使いたがるのだろう?
教えてけれ。
0085デフォルトの名無しさん
2006/11/10(金) 00:03:050086デフォルトの名無しさん
2006/11/10(金) 21:59:13方がなんとなくムカつくんだけど。
0087デフォルトの名無しさん
2006/11/11(土) 13:14:440088デフォルトの名無しさん
2006/11/11(土) 15:34:10なにがしたいんだ?
3桁の数値しかもパック項目をX(2)って・・・
俺だったら一旦、
S9(3)COMP-3 → S9(3) → X(3)
にするが、+-がわからなくなってしまうので考慮が必要。
008987
2006/11/11(土) 21:38:56やっぱS9(3)を挟まないとダメなんですかね?
0090デフォルトの名無しさん
2006/11/12(日) 00:01:3103 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基本的には 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何書いてあるのかさっぱりわからん。
009387
2006/11/12(日) 01:13:29理解しました。有難う御座います。
0094デフォルトの名無しさん
2006/11/13(月) 20:03:54ぷ
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たくさんあるよ、ただ版がね
0099デフォルトの名無しさん
2006/11/17(金) 01:10:240100デフォルトの名無しさん
2006/11/17(金) 10:55:31他の高級言語の範囲が広くなるとそうもいってられない。
というか、COBOLぐらいなんてことはない。
むしろ、よさが分かる。[EOR]
0101デフォルトの名無しさん
2006/11/18(土) 09:26:19俺の場合、文法よりもデータ構造に戸惑った
各itemの定義(数値n桁や文字x桁)の仕方だけでなく
レコードと各要素の関係まで全て桁がベースになってるのには驚いたよ
例えばレコードRの各要素にデータ突っ込んで
Rを取り出したら繋がった内容が出て来たりとか
逆にRに1行突っ込むと勝手に桁で区切って
各要素に分解されたりとかそのへん
■ このスレッドは過去ログ倉庫に格納されています