【食品】買掛更新取消

概要

買掛更新に失敗した為、更新前の状態に戻したいと依頼があった場合。

手順

1.以下の画面の使用停止を依頼する。
 管理メニュー機能制限をリコンパイル WZU01001

              
・2.請求額入力
・3.支払明細チェック入力
・4.支払明細更新
              
            

2.支払更新処理で累積移動されたデータを復元する

              
SPACDFを確認 ※復元先データの確認
SELECT * FROM SPACDF
WHERE PACSKSCOD = ? and PACBUCOD = ?

SPACRFを確認 ※復元元データの確認)
SELECT * FROM SPACRF
WHERE PACSKSCOD = ? and PACBUCOD = ? and PACDELYMD = ?

SPACRFからSPACDFへデータコピー
CPYF FROMFILE(HKMZ002/SPACRF) TOFILE(HKMZ002/SPACDF)
 MBROPT(*ADD) INCREL(
 (*IF  PACSKSCOD *EQ ?) 
 (*AND PACBUCOD *EQ ?)
 (*AND PACDELYMD *EQ ?))

SPACDFを確認 ※復元後データの確認
SELECT * FROM SPACDF
WHERE PACSKSCOD = ? and PACBUCOD = ?
              
            

3.支払更新処理で作成されたデータを削除する

              
SPKTDFを削除
DELETE FROM SPKTDF
WHERE PKTSKSCOD = ? and PKTBUCOD = ? and PKTCRTYMD = ?

SPANDFを削除
DELETE FROM SPANDF
WHERE PANSKSCOD = ? and PANBUCOD = ? and PANCRTYMD = ?

SPACRFを削除
DELETE FROM SPACRF
WHERE PACSKSCOD = ? and PACBUCOD = ? and PACDELYMD = ?
              
            

4.前回更新等を削除する

              
復元したSPACDFから前回エリアを削除する
UPDATE SPACDF
SET PACZYSBAR = 0, PACZYSSUR = 0,
PACZMSBAR = 0, PACZMSSUR = 0,
PACZCPKBN = 0, PACZTANKA = 0,
PACZKINGK = 0, PACZZEIGK = 0,
PACZNIAGK = 0, PACZNIAZI = 0,
PACZCENGK = 0, PACZCENZI = 0,
PACDELID ='', PACDELOPE = 0,
PACDELYMD = 0, PACDELTIM = 0 
WHERE PACSKSCOD = ? and PACBUCOD = ? and PACDELYMD = ?
              
            

5.請求額ファイルを更新前に戻す

              
SPASGDFを確認 ※復元先データの確認
SELECT * FROM SPASGDF
WHERE PASSKSCOD = ? and PASBUCOD = ? and PASYB2YMD = ? ※YB2YMD=更新日

SPASGRFを確認 ※復元元データの確認)
SELECT * FROM SPASGRF
WHERE PASSKSCOD = ? and PASBUCOD = ? and PASYB2YMD = ?

SPASGRFからSPASGDFへデータコピー
CPYF FROMFILE(HKMZ002/SPASGRF) TOFILE(HKMZ002/SPASGDF)
 MBROPT(*ADD) INCREL(
 (*IF  PASSKSCOD *EQ ?) 
 (*AND PASBUCOD *EQ ?)
 (*AND PASYB2YMD *EQ ?))

SPASGDFを確認 ※復元後データの確認
SELECT * FROM SPASGDF
WHERE PASSKSCOD = ? and PASBUCOD = ? and PASYB2YMD = ?

SPASGRFを削除 ※復元元データの削除
DELETE FROM SPASGRF
WHERE PASSKSCOD = ? and PASBUCOD = ? and PASYB2YMD = ?

復元したSPASGDFから更新結果エリアを削除する
UPDATE SPASGDF                                    
 SET PASYB1NBR = 0, PASYB2NBR = 0, PASYB3NBR = 0,
 PASYB4NBR = 0, PASYB5NBR = 0, PASYB1ATI = 0, PASYB2YMD = 0
WHERE PASSKSCOD = ? AND PASBUCOD = ? AND PASYB2YMD = ?
              
            

作業一覧

元ファイル 作業 作業内容
SPACRF CPYF SPACDFへコピー
SPKTDF DELETE 対象削除
SPANDF DELETE 対象削除
SPACRF DELETE 対象削除
SPACDF UPDATE 前回等削除
SPASGRF CPYF SPASGDFへコピー
SPASGRF DELETE 対象削除
SPASGDF UPDATE 前回等削除