Входные параметры
Параметр | Тип | Описание |
---|---|---|
STORAGEID |
INTEGER |
|
TRANSPORTBASETYPEID |
INTEGER |
|
FROMINVENTORYID |
INTEGER |
|
DELTA |
INTEGER |
|
Выходные параметры
(Нет выходных параметров)
Описание
(Нет описания для процедуры ADD_TO_WEIGHTNUMBER)
Определение
CREATE PROCEDURE ADD_TO_WEIGHTNUMBER(
STORAGEID INTEGER,
TRANSPORTBASETYPEID INTEGER,
FROMINVENTORYID INTEGER,
DELTA INTEGER)
AS
declare variable generatorname varchar(31);
declare variable itid integer;
declare variable GenOldValue bigint;
begin
GeneratorName = 'WEIGHTNUMBERGEN' || coalesce('_ST' || Storageid, '')
|| coalesce('_TT' || TransportBaseTypeID, '');
for
select it.inventoryid, it.weightnumber from it
left join ittransport on ittransport.inventoryid = it.inventoryid
left join transporttype on ittransport.transporttypeid =
transporttype.transporttypeid
where it.storageid = :storageid and it.inventoryid >= :frominventoryid
and (transporttype.transportsubtype = :transportbasetypeid or
(transporttype.transportsubtype is null and
:transportbasetypeid is null))
into :ITID, :GenOldValue
do
begin
update it set it.weightnumber = it.weightnumber + :delta
where it.inventoryid = :itid;
end
Execute statement 'Set Generator ' || :GeneratorName || ' to ' ||
(GenOldValue + delta + 1);
end