Как сохранить пользовательскую дату и изменить ее, добавив дни? - PullRequest
0 голосов
/ 08 января 2020

Мне нужен совет по следующим темам c: у меня есть проект, который создает собственные электронные письма с информацией из некоторых материалов, где @DUEDATE - это столбец таблицы и результат

SET @LV_DUEDATE =  DATEADD(day, @PV,GETDATE()) 

, где @PV - дни, добавляемые к текущему времени и дате, затем мы вычитаем 15 дней из результата DUEDATE и вставляем этот результат в столбец @EXPDV, используя

SET @LV_EXPDV = DATEADD(day, -15, @LV_DUEDATE) 

Значение @PV хранится на экране из другой программы.

Работает нормально, но теперь мне нужно добавить пользовательскую дату, например, в другой столбец добавить 2019-12-31 (гггг-мм-дд) а затем добавьте дни с использованием значения из @PV, пользовательской даты 2019-12-31 (может быть любой датой) + 20 дней из результата @PV = DUEDATE 2020-01-19 и вставьте этот результат в столбец с форматом даты , все должно быть форматов даты, есть идеи, как вставить пользовательскую дату?

Спасибо!

@PRF VARCHAR(20),
@PSPN VARCHAR(20),
@PSDRCV VARCHAR(20),
@PSLOT VARCHAR (20),
@PSQRCV VARCHAR (20),
@NAX VARCHAR (20),
@EXPD VARCHAR (20),
@PV INT

AS
BEGIN
    SET NOCOUNT ON;

    DECLARE 
         @LV_PSPN VARCHAR(20),
         @LV_PRF VARCHAR (20),
         @LV_PSDRCV VARCHAR(20),
         @LV_PSLOT VARCHAR(20),
         @LV_PSQRCV VARCHAR (20),
         @LV_DUEDATE DATETIME,
         @LV_NAX VARCHAR(20),
         @LV_EXPD VARCHAR (20),
         @LV_EXPDV DATETIME,
         @LV_PV INT

    SET @LV_PRF = @PRF
    SET @LV_PSPN = RTRIM(@PSPN)
    SET @LV_PSDRCV = @PSDRCV
    SET @LV_PSLOT = @PSLOT
    SET @LV_PSQRCV = @PSQRCV
    SET @PV = @PV

    SET @LV_DUEDATE =  DATEADD(day, @PV, GETDATE())  --Current date where I add the days as @pv and got the column DUEDATE on my table--

    SET @LV_EXPDV = DATEADD(day, -15, @LV_DUEDATE)  --The result of DUEDATE Minus 15 days--

    SET @LV_NAX = @NAX
    SET @LV_EXPD = @EXPD

    INSERT INTO QT_ShelfLifev3 (PSPN, PRF, PSDRCV, PSLOT, PSQRCV, Dateadded, DUEDATE, EXPD, EXPDV, PV) 
    VALUES (@PSPN, @PRF, @PSDRCV, @PSLOT, @PSQRCV, GETDATE(), @LV_DUEDATE, @EXPD, @LV_EXPDV, @PV)

    SELECT SCOPE_IDENTITY()
END
...