COBOLなら、オレに聞け!<2>
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
NGNGPART2をたてときます
仕事だから仕方なくCOBOLをやってる人
本気でやってる人
いろいろいるとおもいますがオッサンたちで役に立つならお手伝いしますということで・・・
0951デフォルトの名無しさん
NGNG普通のプログラマなら3日でマスターできること
流動性の高い大規模プロジェクトならそれなりに利点
0952デフォルトの名無しさん
NGNG経験者の絶対数がJava/C++に比べて遥かに多い。
それゆえ人月・工数が膨大なPrj(例えば金融基幹業務など)は
人が集め易いCOBOLが今だに採用されやすい。
0953デフォルトの名無しさん
NGNG簡単に言っちゃうと、メインフレームはほとんどCOBOLでしょう。(長きに渡って実証されている高速安定信頼性)。
細かく言うと、メインフレーム内部のマルチタスク・REALTIME処理のOS的部分は分からないけど、
メインフレームDB自体(もしかしてこれも高級言語ではないかも?)や、デフォルトの端末はCOBOLでしょう、SQLアクセスやスクリプトでやるより処理が高速・安定。
ただ、システム自体にタッチするのでなければ、データ受け取って2次側での加工になるから、SQLとかスクリプト(C+、C++、VBスクリプトなんかだとMSSQL鯖が要るんじゃないかな)使って加工した方が便利でしょう。
けど、COBOLでやるにしろ、SQL・スクリプトでやるにしろ、データベースへのタッチ(専用端末からダウンロードは別)はデータベースの規模が大きくなると禁止されるのでは?特に基幹データベース。
実際、基幹や大きなデータベースでは新たにデータベースアクセスのプログラムを実業務に移す前に、充分な設計・テストを踏んだ後、移行されるわけだし。
0955デフォルトの名無しさん
NGNG寝ぼけたやつが書いたコードでもそこそこ動く。
チョット前まで素人だったやつでも2週間もあればコーディング可能。
パッと見が中学校1年生程度の英語なのでとっつきやすい。
事務系の世界では10進数の取り扱いがとても楽。
(PL/Iでも楽チンだが見た目が暗号とCOBOL使いによく言われる)
偉い人がCOBOLしかわからない。
既存のシステムがCOBOLなので移植するのが大変。
などなど
COBOL→VBはあんまり意味がなさそう。
COBOLのほうが素人にとっつきやすいでしょう。
PC用COBOLをみるとVBの必要性を感じない。
VBAは便利だとおもうけど。
c++はオブジェクト指向を理解できないと意味無い。
理解して使ってる人間なんてホンの一握り。
COBOLからリプレースするのは難しい。
結局COBOLから他の言語に移行するには金や労力がかかりすぎる
という予想が成り立つのでいつまでもCOBOLってことなんじゃないのかしら?
「COBOLはわけわからん」という人たちが大勢を占める時代が訪れない限りね!
そんな時代は訪れないような気がしてます。
以上酔っ払いのたわごとでした。
0956デフォルトの名無しさん
NGNG「COBOL以外はわけわからん」という連中が多数いるのも事実。
0957デフォルトの名無しさん
NGNGだからなんだ?
それ言いたいだけじゃないのか?流れと関係ないのに。
0958デフォルトの名無しさん
NGNGうちでは性能を重視してミドルプログラムを介してしか
DBにアクセスできないようになっています。
こういうのって少数派?
0959デフォルトの名無しさん
NGNGPRO*COBOLコンパイラってあるの?
0960デフォルトの名無しさん
NGNG訊く前にさらっとぐぐれ
0961デフォルトの名無しさん
NGNG性能を重視してじゃないだろ?
アフォでもつかえるようにだろ?
そういうところはいっぱいあるよ
0962まさ
NGNGホスト側に転送したのですが空白が詰まってしまいます。
うまくいく方法を知っておわれる方いませんか?
だめなら文字をいれてホスト側でスペースにchangeと考えてますが手間です。
0963デフォルトの名無しさん
NGNGCOBOLとは関係ないですね。
↓こっちのほうが有効な回答が得られると思いますよ。
http://pc5.2ch.net/test/read.cgi/prog/1081683407/
0964デフォルトの名無しさん
NGNGプリコンパイルを行ったら下記エラーが出て困ってます
PCB-F-NOERRFILE, unable to open message file, facility PCB
環境はNET*COBOLとOracle9iです・・・。
0965デフォルトの名無しさん
NGNG0966デフォルトの名無しさん
NGNG0967年寄
NGNGわしがやってる方法
Excelのデータを一旦Accessに取り込んでから
出力データの項目長を指定した定義でtxtに吐き出す。
それからホストへ転送。
Excelから直の場合はわかりませーん
日本語が入ってる場合、シフトコード位置が決まらないから
データはプログラムでシフトコード外さないと文字が化ける…
そのプログラムはCOBOLだw
0968デフォルトの名無しさん
NGNG使い分ければいいんだよね。
しかし、実際にシステムを使わない、仕様や要件を知らない馬鹿ほど
「一新」「完全移行」を言いたがる…
「一新厨」が多すぎる。というのが個人的な見解。
ただし、「使い分け」には新旧技術の理解が必須だけど
年寄は旧技術しか知らないし、若造は新技術しか知らないで
枯れた環境を馬鹿にする。結果として「動かない」や「不条理」が
どんどん増える。
SE会社の偉い人でも若いころ技術厨だった人ほど変なことを平気で
やる…そういう奴の取り巻きには詐欺師(今猿みたいなの)も多いしなー
技術は目的達成のためにあるんだよなあ(嘆
たまに新旧をうまく使い分けているユーザの記事とか読むと羨ましいと思うね。
>unable to open message file, facility PCB
メインフレーム側で、その端末からのOPEN許可になって無いんじゃないの。
message file(ヘッダー?もしくはトランザクションコード?)とのPCBマスクのどれかが。
それを言うなら、危ういSQLや捨てアドプロシージャを基幹にばら撒くのを防ぐ為というのが正解なんじゃないか?
0971デフォルトの名無しさん
NGNG普通はセキュリティ対策だろうね。
よっぽどでかいプロジェクトなんだろうな。
それか技術者がよっぽど信用されてないかのどっちかだ。
0972デフォルトの名無しさん
NGNG厚生年金とか、銀行のシステムは
COBOLプログラムの中で直接SQLを発行してるの?
は?COBOLの中に埋め込みSQL?
最近のCOBOLはそんなことできるんだぁ。
VBやCのスクリプトやスカールの中に埋め込みコボルならわかるけど・・・。
COBOLのDBDならフツーにいってCALL命令でしょ。
0974デフォルトの名無しさん
NGNGかなーり昔から埋め込みSQLは可能でしたが。
0975デフォルトの名無しさん
NGNGうわ、真性コボラーだ。
職場のお荷物なんだろうな。
0976デフォルトの名無しさん
NGNGhttp://mypage.naver.co.jp/rodman/cobol/3/cnt004.html
0977デフォルトの名無しさん
NGNGすいません馬鹿っぽいんですけど
0978デフォルトの名無しさん
NGNG文字コードの変遷を見てください。
昔は大文字ばっかりでした。
昔のBASICも大文字。
0979デフォルトの名無しさん
NGNGCOBOLというより、DBMS側の問題だよ。
15年以上前から埋め込みSQLは普通に存在してます。
それは、リレーショナルじゃなくて、端末自体にデータベースを持っている時のアクセスの仕方でしょ?
>>975
まぁでも、COBOLにSQL埋め込むとして、PCBマスクの考え方とか分かってるのかな。
バイト数の設定間違えるとDBの書き込みはもちろん、トランザクションの送信など、コードがずれ込んでそれ以降、DB文字化け、トランザクションなら例外で済めばいいけど違うコードで受け取られてしまいバグになる、なんてこともないのかな。
RDBだと大規模だろうから、悲劇だよ。基幹はアクセス制限を設けられてるだろうし、やるときは、充分検討・テストを積まれたプログラムで実運用に入ると思うけど。
0981デフォルトの名無しさん
NGNG何ですかそれは?初めて聞きました
0982デフォルトの名無しさん
NGNGその辺までプログラマに要求するようなSQLプリコンパイラがあってたまるか
0983デフォルトの名無しさん
NGNGたぶんOSとかミドルウェアとかレイヤーとかそういう単語も知らないだろう。
0984デフォルトの名無しさん
NGNG本当だよ。
いっしょにしないでよ。
頼むから。
0985デフォルトの名無しさん
NGNGPCBマスクってなんですか?
0986デフォルトの名無しさん
NGNGDB2にそんなもの必要なかったと記憶している
DB2ではPLAN
ここで度々登場するPCBってなんなの?
0987デフォルトの名無しさん
NGNGそのPCBってなによ。しかもPCBマスクって何よ。
IMSっなんなんだろう。今役に立ちそうもないので
ぐぐるのもまんどくさい。
0988986
NGNGPCB→Program Communication Bloc
IMS→Information Management System
IMSはIBMのメインフレーム用の階層型DBのDBMS
(トランザクション処理もやります)
その製品を使ってその製品のDBにアクセスする場合の
アクセス権限を決めるのに使うのがPCB
で、プログラム側ではIMSからPCBの情報をアドレスで受け取り
それをプログラム内で処理するための用意しておく情報エリア
(アクセス状況等)がPCBマスク
っていうのが俺が知ってるPCB
それは、すなはち権限登録は端末PCBじゃない?その端末状況コードを端末側で受け取るミラーが端末PCBマスク。
他にも、端末からのデータのエリアであるDBPCBと、
各種処理コード(トランザクション)のエリアであるIOPCBがあった、確か・・・。
PCBはLINKAGE SECTIONに指定する。
PCB以外にも、ヘッダーとして伝送用バッファ(2BITE?)と続いてシステム用バッファ(読み書きコード等の機能変数用の2BITE?)や送受信バッファをWORKING STORAGE SECTIONに確保する必要がある。
RDBすなはちDB通信では、ポインタ変数を指定するごとく、各種エリアを確保してやらないといけない。
PCBマスクってのはPCBのミラーであり、PCBってのはDB自体にある、そのアクセス権限や、機能変数値や、DBの送受信エリアで、その情報を端末側で受け取るのがマスク。
要は、銀行ATMの預金通帳のようなもん。DBが口座で、PCBがオンラインサーバ、端末がATM。
結果がどうなったかを端末側は、もし預金通帳が無いと分からない。オンラインサーバの結果のミラーを預金通帳に示す、その役目がマスク、と理解している。
今は、まるでパッチを当てるかのように、できあがりファイルを使用するファイルとして、IOSECTIONのFILE CONTROLLにファイル名をSELECTしてやると、そのファイルの中で内部変数が上記のプログラミングされているらしく、あとは使うだけ〜の様になっているようだ。
埋め込みSQLでは、内部でどうやってるのかは知らない。
0992デフォルトの名無しさん
NGNGあんたが何言ってるのかよくわからん
BITE→BYTEだろ
DB自体にあるPCBってなんじゃ?
ファイルの各レコードに割り振られたアドレスを示すポインターのことか?
それからIMSのPCBはDBアクセス用のDB PCBともう1種類はトランザクション処理用の
TP PCB(IO PCBとALT PCB)
PCBマスクにはアクセスの結果の状況コードやアクセスに使用したキー情報の
キーフィードバックエリアがある。
マスクはPCBを経由して渡されたポインタを先頭アドレスにもつ情報エリアを
使用するために定義するもの。いわゆる基底付変数。
IMS以外ではどうなのかは知らんが・・・
0993964
NGNGありがとうございます。お騒がせしました・・・。
0994デフォルトの名無しさん
NGNGCOBOLなら、オレに聞け!<3>
http://pc5.2ch.net/test/read.cgi/tech/1087178214/
0995晒しあげ。
NGNG>は?COBOLの中に埋め込みSQL?
>最近のCOBOLはそんなことできるんだぁ。
>VBやCのスクリプトやスカールの中に埋め込みコボルならわかるけど・・・。
>COBOLのDBDならフツーにいってCALL命令でしょ。
>>973 >>973 >>973 >>973 >>973
0996デフォルトの名無しさん
NGNG0997ビル・ジョブス
NGNG0998デフォルトの名無しさん
NGNG0999デフォルトの名無しさん
NGNG1000デフォルトの名無しさん
NGNG10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。