Входные параметры
Параметр | Тип | Описание |
---|---|---|
INVENTORYID |
INTEGER |
|
OPERATIONID |
INTEGER |
|
TRANSPORTTYPEID |
INTEGER |
|
REGDATE |
DATE |
|
TRANSPORTNUMBER |
VARCHAR(31) |
|
INVOICEID |
INTEGER |
|
INVOICEGROSS |
INTEGER |
|
INVOICETARE |
INTEGER |
|
INVOICENET |
INTEGER |
|
TARE |
INTEGER |
|
GROSS |
INTEGER |
|
NET |
INTEGER |
|
SAMPLERINDATE |
DATE |
|
ORDERLOADITEMID |
INTEGER |
|
STORAGEID |
INTEGER |
|
PROVIDERID |
INTEGER |
|
OWNERID |
INTEGER |
|
TARETIME |
TIMESTAMP |
|
GROSSTIME |
TIMESTAMP |
|
SILAGEID |
INTEGER |
|
ROUTEID |
INTEGER |
|
PLATFORMID |
INTEGER |
|
WEIGHTNUMBER |
INTEGER |
|
SAMPLERQUALITYID |
INTEGER |
|
STATE |
INTEGER |
|
Выходные параметры
(Нет выходных параметров)
Описание
Обновление для журнала ЖД силосной доски
Определение
CREATE PROCEDURE DESK_JOURNAL_UPDATE(
INVENTORYID INTEGER,
OPERATIONID INTEGER,
TRANSPORTTYPEID INTEGER,
REGDATE DATE,
TRANSPORTNUMBER VARCHAR(31),
INVOICEID INTEGER,
INVOICEGROSS INTEGER,
INVOICETARE INTEGER,
INVOICENET INTEGER,
TARE INTEGER,
GROSS INTEGER,
NET INTEGER,
SAMPLERINDATE DATE,
ORDERLOADITEMID INTEGER,
STORAGEID INTEGER,
PROVIDERID INTEGER,
OWNERID INTEGER,
TARETIME TIMESTAMP,
GROSSTIME TIMESTAMP,
SILAGEID INTEGER,
ROUTEID INTEGER,
PLATFORMID INTEGER,
WEIGHTNUMBER INTEGER,
SAMPLERQUALITYID INTEGER,
STATE INTEGER)
AS
begin
if (SAMPLERINDATE is null) then
if (REGDATE is not null) then
SAMPLERINDATE = REGDATE;
else SAMPLERINDATE = Current_Date;
if (not exists (select INVENTORYID from ITTRANSPORT where (INVENTORYID = :INVENTORYID))) then
insert into ITTRANSPORT (INVENTORYID, TRANSPORTNUMBER, INVOICEGROSS,
INVOICETARE, INVOICENET, SAMPLERINDATE, TRANSPORTTYPEID)
values (:INVENTORYID, :TRANSPORTNUMBER, :INVOICEGROSS,
:INVOICETARE, :INVOICENET, :SAMPLERINDATE, :TRANSPORTTYPEID);
else
update ITTRANSPORT
set TRANSPORTNUMBER = :TRANSPORTNUMBER,
INVOICEGROSS = :INVOICEGROSS,
INVOICETARE = :INVOICETARE,
INVOICENET = :INVOICENET,
SAMPLERINDATE = :SAMPLERINDATE,
TRANSPORTTYPEID = :TRANSPORTTYPEID
where (INVENTORYID = :INVENTORYID);
if ((:OPERATIONID = 1) and (not ((:ROUTEID is null) and (:PLATFORMID is null)))) then begin
if ((not :ROUTEID is null) and (exists (select * from ROUTECHEMA where ROUTECHEMA.ROUTECHEMAID = :ROUTEID))) then
update ROUTECHEMA
set PLATFORMID = :PLATFORMID
where (ROUTECHEMA.ROUTECHEMAID = :ROUTEID);
else begin
if (ROUTEID is null) then
ROUTEID = GEN_ID(ROUTECHEMAIDGEN, 1);
insert into ROUTECHEMA (ROUTECHEMAID, PLATFORMID)
values (:ROUTEID, :PLATFORMID);
end
end
if (not exists (select INVENTORYID from IT where INVENTORYID = :INVENTORYID)) then
insert into IT (INVENTORYID, REGDATE, INVOICEID, ORDERLOADITEMID, STORAGEID,
OWNERID, PROVIDERID, TARETIME, GROSSTIME, GROSS, TARE, NET,
WEIGHTNUMBER, SAMPLERQUALITYID, OPERATIONID, STATE, ROUTEID)
values (:INVENTORYID, :REGDATE, :INVOICEID, :ORDERLOADITEMID, :STORAGEID,
:OWNERID, :PROVIDERID, :TARETIME, :GROSSTIME, :GROSS, :TARE, :NET,
:WEIGHTNUMBER, :SAMPLERQUALITYID, :OPERATIONID, :STATE, :ROUTEID); --add last
else
update IT
set REGDATE = :REGDATE,
INVOICEID = :INVOICEID,
STORAGEID = :STORAGEID,
OWNERID = :OWNERID,
PROVIDERID = :PROVIDERID,
SILAGEID = :SILAGEID,
ROUTEID = :ROUTEID,
ORDERLOADITEMID = :ORDERLOADITEMID,
TARETIME = :TARETIME,
GROSSTIME = :GROSSTIME,
GROSS = :GROSS,
TARE = :TARE,
NET = :NET,
WEIGHTNUMBER = :WEIGHTNUMBER,
SAMPLERQUALITYID = :SAMPLERQUALITYID,
OPERATIONID = :OPERATIONID,
STATE = :STATE
where (INVENTORYID = :INVENTORYID);
end