
現在COBOLで以下のようなプログラムを作成しています。
受付日と今日の日付を比較して1ヶ月経過したデータと振り分ける。
1ヶ月経過したものは、削除分のデータとしてディスクに保存
1ヶ月経過していないものは、保存分のデータとしてディスクに保存
ただし、入力データは、受付日(6桁)に書かれているのは6桁(例:080524)
本日の日付は、システム時間で8桁(例:20080824)
このままでは、桁数が違うので、比較することができないため、受付日を8桁にしたいと考えています。
つまり、「'20'+受付日」としたいのです。
この場合、どのようにすればよろしいのでしょうか?
よろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
ANo1と殆ど変わらないのですが・・・
01 WK-DATE.
03 X8DATE PIC X(08).
03 X8DATE-R REDEFINES X8DATE.
05 YY20 PIC X(02).
05 X6DATE
07 X6YY PIC X(02).
07 X6MMDD PIC X(04).
・・・・・
IF X6YY > '60'
MOVE '19' TO X6YY
ELSE '20' TO X6YY
ENDIF.
或いは。
01 WK-DATE.
03 X8DATE PIC 9(08).
03 X8DATE-R REDEFINES X8DATE.
05 YY20 PIC 9(02).
05 X6DATE
07 X6YY PIC 9(02).
07 X6MMDD PIC 9(04).
・・・・・
IF X6YY > 60
MOVE 19 TO X6YY
ELSE 20 TO X6YY
ENDIF.
データが2000年以降と決まっているならば、
01 WK-DATE.
03 X8DATE PIC 9(08).
03 X8DATE-R REDEFINES X8DATE.
05 YY20 PIC 9(02) VALUE 20.
05 X6DATER PIC 9(6) VALUE ZERO.
・・・・
MOVE 元の6桁日付 TO X6DATE.
(比較はX8DATEとシステム日付の一カ月前と比較する)
(WK-DATEを他用せないのならばこれだけで良い)
等など色々考えられます。
この回答への補足
LN-TFさん、回答ありがとうございます。
補足させていただきます。
・判定するのは、年月のみ
・現在年月の1ヶ月前の年月を別のエリアで計算する
・受付年月は、
01 WORK-AREA.
05 WK-UKETUKEBI
10 WK-UKETUKE-YM PIC X(04).
10 FILLER PIC X(02).
01 DATE-AREA.
05 SISUTEMU-DATE.
10 SISUTEMU-NENGETU PIC X(06).
10 FILLER PIC X(02).
です。
No.1
- 回答日時:
COBOLといっても何COBOLなのかな?
ずいぶん離れて久しいので間違ってたらすみません。
REDEFINESを利用して以下のように宣言。
01 X8DATE.
03 WK-PUNIPUNI PIC X(08).
01 X8DATE-R REDEFINES X8DATE.
03 YY20 PIC X(02).
03 X6DATE PIC X(06).
【使い方】
初回のみYY20に '20'を放り込む。
以降、X6DATEに '080524'を放り込んでからX8DATEを参照すると '20080524'に見えます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 11:02
- その他(恋愛相談) 元彼と今彼を比較することについて。 私は現在付き合って1年半の彼氏がいます。 元彼とは高校の頃、1年 2 2023/02/18 02:35
- Excel(エクセル) Excelマクロの差分抽出のコードを教えていただきたいです。 2 2023/03/14 11:40
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 入力待ちをして、受け取った正の整数が表す行数だけ既存 4 2022/07/05 10:12
- ガーデニング・家庭菜園 玉ねぎ(中生種)の植え付け時期についての質問です。 1 2022/10/21 17:12
- Excel(エクセル) マクロを作成し、拡張子 .xlsm で保存しているのですが、データのみをBack Upするのは? 4 2023/06/18 09:54
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 09:24
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- 統計学 お世話になっています. x軸は時間(期間)y軸はある値に対する2つのグラフ比較をしますが、私個人の考 2 2023/03/30 11:42
- Excel(エクセル) エクセルで一つのセル内の特定の数字のみ足す方法 6 2022/12/06 15:11
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
教えて下さい
-
メモ帳(テキストデータ)をExc...
-
【エクセル】測定時間がバラバ...
-
この行は既に別のテーブルに属...
-
ユーザーフォームのテキストボ...
-
C# ソケット通信でデータ受信時...
-
配列でデータが入っている要素...
-
マクロで同じフォルダにある画...
-
[C言語] コメント文字列を無視...
-
多量のSUMIF式を軽くしたい
-
ブレーカー落ちで壊れたりしな...
-
不規則なデータのfft処理
-
VBA 円グラフ 特定条件に一致し...
-
C言語の度数分布の問題
-
ExcelからSQLサーバへデータを...
-
EXCELVBAでSQLserverからデータ...
-
javaでDBからデータを取ってき...
-
特定のデータの抽出方法を教え...
-
C#でヒストグラムの作り方
-
チェックサムの実装方法について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
教えて下さい
-
【エクセル】測定時間がバラバ...
-
多量のSUMIF式を軽くしたい
-
配列でデータが入っている要素...
-
メモ帳(テキストデータ)をExc...
-
ユーザーフォームのテキストボ...
-
特定のデータの抽出方法を教え...
-
二分探索の平均探索回数
-
EXCELVBAでSQLserverからデータ...
-
Accessで該当データにフラグを...
-
VBA 空白セルを削除ではない方...
-
この行は既に別のテーブルに属...
-
Excel VBAでのオートフィルター...
-
[C言語] コメント文字列を無視...
-
エクセルで2つの時系列のデー...
-
アクセス2000で画像データ...
-
CString型の文字列連結について
-
カンマからスラッシュに
-
VBにおいてフォーム間の変数の...
-
<VB>String→Object
おすすめ情報