Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Using Procedure Update Date day -1

User_4CY9MDec 8 2021 — edited Dec 10 2021

The details I want, please help
Here I want to see the history of the last location..
example:
when I create a new contract with location SCI-SCG4 start date:25-NOV-21 and end date:25-NOV-26(5yrs from start date)
but a few months/years before the contract expires, SCI-SCG4 closes and moves to a new location then the input becomes:
SCI-SCG5 start date:07-DEC-21 and end date:25-NOV-26 (take from the contract that was previously inputted)
I want history from the previous location (SCI-SCG4) with start date : 25-NOV-2021(take it from the first contract input) and end date: 06-DEC-21(because the store closed this date)

create or replace PACKAGE BODY PKKDSCMSCNTRCTHHIST AS

procedure INS_HEADER_HIST(
PCNTRCTHHISTSDATE DATE,
PCNTRCTHHISTEDATE DATE,
PCNTRCTHHISTCRBY VARCHAR2,
PCNTRCTHHISTCOMP VARCHAR2,
PCNTRCTHHISTLNUM NUMBER,
PCNTRCTHHISTLASTLOC VARCHAR2,
POUTRSNCODE OUT NUMBER,
POUTRSNMSG OUT VARCHAR2) AS
BEGIN
-- TODO: Implementation required for procedure PKKDSCMSCNTRCTHHIST.INS_HEADER_HIST
INSERT INTO KDSCMSCNTRCTHHIST
(CNTRCTHHISTID, CNTRCTHHISTSDATE,CNTRCTHHISTEDATE,CNTRCTHHISTCDAT,CNTRCTHHISTMDAT, CNTRCTHHISTCRBY,CNTRCTHHISTMOBY,CNTRCTHHISTNMOD,CNTRCTHHISTCOMP,CNTRCTHHISTLNUM,CNTRCTHHISTLASTLOC)
VALUES
(KDSCMSCNTRCTHHIST_SEQ.NEXTVAL, PCNTRCTHHISTSDATE, PCNTRCTHHISTEDATE,CURRENT_DATE,CURRENT_DATE, PCNTRCTHHISTCRBY,PCNTRCTHHISTCRBY,0,PCNTRCTHHISTCOMP, PCNTRCTHHISTLNUM,PCNTRCTHHISTLASTLOC);
POUTRSNCODE := 1;
POUTRSNMSG := 'SUCCESS INSERTING';

EXCEPTION
WHEN OTHERS THEN

POUTRSNCODE := -99;  
POUTRSNMSG := 'FAILED INSERT';  
   
PKKDSCMSLOG.WRITELOG(SQLCODE, SUBSTR(SQLERRM, 1, 200), PCNTRCTHHISTCRBY, 'PCNTRCTHHISTCRBY.INS\_HEADER\_HIST', PCNTRCTHHISTCOMP);  

NULL;
END INS_HEADER_HIST;

PROCEDURE UPD_HEADER_HIST(
PCNTRCTHHISTID IN NUMBER,
PCNTRCTHHISTSDATE IN DATE,
PCNTRCTHHISTEDATE IN DATE,
PCNTRCTHHISTCRBY VARCHAR2,
PCNTRCTHHISTCOMP VARCHAR2,
PCNTRCTHHISTLNUM NUMBER,
PCNTRCTHHISTLASTLOC VARCHAR2,
POUTRSNCODE OUT NUMBER,
POUTRSNMSG OUT VARCHAR2) AS

  var TCNTRCTHHISTID NUMBER;  
  var locationChangeDate DATE;  

BEGIN
TCNTRCTHHISTID :='141';
locationChangeDate := '07-DEC-21';
-- TODO: Implementation required for PROCEDURE PKKDSCMSCNTRCTH.UPD_DATA
UPDATE KDSCMSCNTRCTHHIST
SET CNTRCTHHISTEDATE = DATEADD(day, - 1, locationChangeDate)
WHERE CNTRCTHHISTID = TCNTRCTHHISTID
AND CNTRCTHHISTCOMP = PCNTRCTHHISTCOMP;

NULL;  

END UPD_HEADER_HIST;
END PKKDSCMSCNTRCTHHIST;

Comments

Processing

Post Details

Added on Dec 8 2021
11 comments
313 views