Входные параметры
Параметр | Тип | Описание |
---|---|---|
INVENTORYID |
INTEGER |
|
REGDATE |
DATE |
|
TRANSPORTNUMBER |
VARCHAR(31) |
|
CAPACITYWEIGHT |
INTEGER |
|
CAPACITYVOLUME |
INTEGER |
|
INVOICEID |
INTEGER |
|
ORDERLOADITEMID |
INTEGER |
|
STORAGEID |
INTEGER |
|
OWNERID |
INTEGER |
|
PROVIDERID |
INTEGER |
|
TARETIME |
TIMESTAMP |
|
GROSSTIME |
TIMESTAMP |
|
SAMPLERINDATE |
DATE |
|
GROSS |
INTEGER |
|
TARE |
INTEGER |
|
NET |
INTEGER |
|
INVOICEGROSS |
INTEGER |
|
INVOICETARE |
INTEGER |
|
INVOICENET |
INTEGER |
|
CONTRACTID |
INTEGER |
|
WEIGHTNUMBER |
INTEGER |
|
SAMPLERQUALITYID |
INTEGER |
|
TRANSPORTTYPEID |
INTEGER |
|
OPERATIONID |
INTEGER |
|
STATE |
INTEGER |
|
STORINGID |
INTEGER |
|
WEIGHTSESSION |
INTEGER |
|
SAMPLEROUTDATE |
DATE |
|
Выходные параметры
(Нет выходных параметров)
Описание
(Нет описания для процедуры RRW_UPDATE)
Определение
CREATE PROCEDURE RRW_UPDATE(
INVENTORYID INTEGER,
REGDATE DATE,
TRANSPORTNUMBER VARCHAR(31),
CAPACITYWEIGHT INTEGER,
CAPACITYVOLUME INTEGER,
INVOICEID INTEGER,
ORDERLOADITEMID INTEGER,
STORAGEID INTEGER,
OWNERID INTEGER,
PROVIDERID INTEGER,
TARETIME TIMESTAMP,
GROSSTIME TIMESTAMP,
SAMPLERINDATE DATE,
GROSS INTEGER,
TARE INTEGER,
NET INTEGER,
INVOICEGROSS INTEGER,
INVOICETARE INTEGER,
INVOICENET INTEGER,
CONTRACTID INTEGER,
WEIGHTNUMBER INTEGER,
SAMPLERQUALITYID INTEGER,
TRANSPORTTYPEID INTEGER,
OPERATIONID INTEGER,
STATE INTEGER,
STORINGID INTEGER,
WEIGHTSESSION INTEGER,
SAMPLEROUTDATE DATE)
AS
declare variable PARTYID integer;
begin
if (not exists (select INVENTORYID from ITTRANSPORT where INVENTORYID = :INVENTORYID)) then
insert into ITTRANSPORT (INVENTORYID, TRANSPORTNUMBER, CAPACITYWEIGHT, CAPACITYVOLUME,
INVOICEGROSS, INVOICETARE, INVOICENET, SAMPLERINDATE, TRANSPORTTYPEID,
WEIGHTSESSION, SAMPLEROUTDATE)
values (:INVENTORYID, :TRANSPORTNUMBER, :CAPACITYWEIGHT, :CAPACITYVOLUME,
:INVOICEGROSS, :INVOICETARE, :INVOICENET, :SAMPLERINDATE, :TRANSPORTTYPEID,
:WEIGHTSESSION, :SAMPLEROUTDATE);
else
update ITTRANSPORT
set TRANSPORTNUMBER = :TRANSPORTNUMBER,
CAPACITYWEIGHT = :CAPACITYWEIGHT,
CAPACITYVOLUME = :CAPACITYVOLUME,
INVOICEGROSS = :INVOICEGROSS,
INVOICETARE = :INVOICETARE,
INVOICENET = :INVOICENET,
SAMPLERINDATE = :SAMPLERINDATE,
TRANSPORTTYPEID = :TRANSPORTTYPEID,
WEIGHTSESSION = :WEIGHTSESSION,
SAMPLEROUTDATE = :SAMPLEROUTDATE
where (INVENTORYID = :INVENTORYID);
select
QUALITY.PARTYID
from QUALITY
left join ORDERLOADITEMS on (ORDERLOADITEMS.ORDERLOADITEMID = :ORDERLOADITEMID)
where (QUALITY.QUALITYID = ORDERLOADITEMS.QUALITYID)
into :PARTYID;
if (not exists (select INVENTORYID from IT where INVENTORYID = :INVENTORYID)) then
insert into IT (INVENTORYID, REGDATE, PARTYID, INVOICEID, ORDERLOADITEMID, STORAGEID,
OWNERID, PROVIDERID, TARETIME, GROSSTIME, GROSS, TARE, NET, CONTRACTID,
WEIGHTNUMBER, SAMPLERQUALITYID, OPERATIONID, STATE, STORINGID)
values (:INVENTORYID, :REGDATE, :PARTYID, :INVOICEID, :ORDERLOADITEMID, :STORAGEID,
:OWNERID, :PROVIDERID, :TARETIME, :GROSSTIME, :GROSS, :TARE, :NET, :CONTRACTID,
:WEIGHTNUMBER, :SAMPLERQUALITYID, :OPERATIONID, :STATE, :STORINGID);
else
update IT
set REGDATE = :REGDATE,
INVOICEID = :INVOICEID,
ORDERLOADITEMID = :ORDERLOADITEMID,
STORAGEID = :STORAGEID,
OWNERID = :OWNERID,
PROVIDERID = :PROVIDERID,
TARETIME = :TARETIME,
GROSSTIME = :GROSSTIME,
GROSS = :GROSS,
TARE = :TARE,
NET = :NET,
CONTRACTID = :CONTRACTID,
WEIGHTNUMBER = :WEIGHTNUMBER,
SAMPLERQUALITYID = :SAMPLERQUALITYID,
OPERATIONID = :OPERATIONID,
STATE = :STATE,
STORINGID = :STORINGID
where (INVENTORYID = :INVENTORYID);
end