Входные параметры
Параметр | Тип | Описание |
---|---|---|
AOWNERID |
INTEGER |
|
AEXPORACTID |
INTEGER |
|
ACROPID |
INTEGER |
|
ACLASSID |
INTEGER |
|
APROVIDERID |
INTEGER |
|
ASTORAGEID |
INTEGER |
|
APARTYID |
INTEGER |
|
Выходные параметры
Параметр | Тип | Описание |
---|---|---|
ACTDATE |
DATE |
|
ACTNUMBER |
VARCHAR(10) |
|
EXPORTACTID |
INTEGER |
|
TRANSPORTSUBTYPEID |
INTEGER |
|
READONLYREC |
INTEGER |
|
ISCHECKED |
INTEGER |
|
SUMACTNET |
BIGINT |
|
CUSTOMNET |
BIGINT |
|
SUMTRWEIGHT |
BIGINT |
|
PROVIDERFULLNAME |
VARCHAR(30) |
|
Описание
(Нет описания для процедуры FORWARDER_INVENTORY)
Определение
CREATE PROCEDURE FORWARDER_INVENTORY(
AOWNERID INTEGER,
AEXPORACTID INTEGER,
ACROPID INTEGER,
ACLASSID INTEGER,
APROVIDERID INTEGER,
ASTORAGEID INTEGER,
APARTYID INTEGER)
RETURNS (
ACTDATE DATE,
ACTNUMBER VARCHAR(10),
EXPORTACTID INTEGER,
TRANSPORTSUBTYPEID INTEGER,
READONLYREC INTEGER,
ISCHECKED INTEGER,
SUMACTNET BIGINT,
CUSTOMNET BIGINT,
SUMTRWEIGHT BIGINT,
PROVIDERFULLNAME VARCHAR(30))
AS
declare variable MINDATE date;
begin
select first 1 IT.REGDATE
from IT
left join QUALITY on (QUALITY.QUALITYID = IT.BUHQUALITYID)
where (IT.OWNERID = :AOWNERID)
and (IT.OPERATIONID in (1,17,45))
and (IT.STATE <> -1)
and (IT.PARTYID = :APARTYID)
and (IT.STORAGEID = :ASTORAGEID) --нвс
and (QUALITY.CROPID = :ACROPID)
and (QUALITY.CLASSID = :ACLASSID)
into :MINDATE;
for
select EA.ACTDATE, PROVIDERS.CLIENTNAME PROVIDERFULLNAME, EA.ACTNUMBER,
EA.EXPORTACTID, EA.TRANSPORTSUBTYPEID, 0 READONLYREC, 0 ISCHECKED
from EXPORTACTS EA
left join CLIENTS PROVIDERS on (PROVIDERS.CLIENTID = EA.PROVIDERID)
left join QUALITY on (QUALITY.QUALITYID = EA.QUALITYID)
left join EXPORTACTITEMS on (EXPORTACTITEMS.EXPORTACTID = EA.EXPORTACTID)
left join IT on (IT.INVENTORYID = EXPORTACTITEMS.INVENTORYID)
where (EA.REGDATE >= :MINDATE)
and (EA.OWNERID = :AOWNERID)
and (EA.OPERATIONID in (1,17))
and (EA.STATE = 0)
and (IT.PARTYID = :APARTYID)
and (QUALITY.CROPID = :ACROPID)
and (QUALITY.CLASSID = :ACLASSID)
and (IT.STORAGEID = coalesce(:ASTORAGEID,-1) or (coalesce(:ASTORAGEID,-1) = -1))
group by EA.ACTDATE, PROVIDERS.CLIENTNAME, EA.ACTNUMBER, EA.EXPORTACTID,
EA.TRANSPORTSUBTYPEID
into :ACTDATE, :PROVIDERFULLNAME, :ACTNUMBER, :EXPORTACTID,
:TRANSPORTSUBTYPEID, :READONLYREC, :ISCHECKED
do begin
for
select sum(RESTWEIGHT) SUMACTNET, sum(INV_WEIGHT) CUSTOMNET, sum(INCOMEWEIGHT) SUMTRWEIGHT
from EXPORTACTITEMS_VIEW EAIMAIN
left join FORWARDER_WEIGHTITEM_INVENTORY(:AEXPORACTID, EAIMAIN.EXPORTACTITEMID, EAIMAIN.EXPORTACTID) on (0=0)
where ((EAIMAIN.EXPORTACTID = :EXPORTACTID) and (EAIMAIN.STATE <> 10))
into :SUMACTNET, :CUSTOMNET, :SUMTRWEIGHT
do begin
if ((:CUSTOMNET <> 0) or (SUMACTNET > 0)) then
suspend;
end
end
end