Входные параметры
Параметр | Тип | Описание |
---|---|---|
AOWNERID |
INTEGER |
|
ACROPID |
INTEGER |
|
ACLASSID |
INTEGER |
|
AORDERLOADITEMID |
INTEGER |
|
APROVIDERID |
INTEGER |
|
ASTORAGEID |
INTEGER |
|
ISCURRENT |
INTEGER |
|
APARTYDATE |
DATE |
|
ISWEIGHT |
SMALLINT |
|
Выходные параметры
Параметр | Тип | Описание |
---|---|---|
ACTDATE |
DATE |
|
ACTNUMBER |
VARCHAR(10) |
|
EXPORTACTID |
INTEGER |
|
TRANSPORTSUBTYPEID |
INTEGER |
|
READONLYREC |
INTEGER |
|
ISCHECKED |
INTEGER |
|
SUMACTNET |
BIGINT |
|
CUSTOMRENET |
BIGINT |
|
SUMTRWEIGHT |
BIGINT |
|
PROVIDERFULLNAME |
VARCHAR(30) |
|
PARTYID |
INTEGER |
|
OUTCOMEWEIGHT |
INTEGER |
|
Описание
(Нет описания для процедуры FORWARDER_REGRID)
Определение
CREATE PROCEDURE FORWARDER_REGRID(
AOWNERID INTEGER,
ACROPID INTEGER,
ACLASSID INTEGER,
AORDERLOADITEMID INTEGER,
APROVIDERID INTEGER,
ASTORAGEID INTEGER,
ISCURRENT INTEGER,
APARTYDATE DATE,
ISWEIGHT SMALLINT)
RETURNS (
ACTDATE DATE,
ACTNUMBER VARCHAR(10),
EXPORTACTID INTEGER,
TRANSPORTSUBTYPEID INTEGER,
READONLYREC INTEGER,
ISCHECKED INTEGER,
SUMACTNET BIGINT,
CUSTOMRENET BIGINT,
SUMTRWEIGHT BIGINT,
PROVIDERFULLNAME VARCHAR(30),
PARTYID INTEGER,
OUTCOMEWEIGHT INTEGER)
AS
declare variable MINDATE date;
declare variable OUTEXPORTACTID integer;
begin
select first 1 EXPORTACTS.ACTDATE
from EXPORTACTS
left join EXPORTACTITEMS on (EXPORTACTITEMS.EXPORTACTID = EXPORTACTS.EXPORTACTID)
left join IT on (IT.INVENTORYID = EXPORTACTITEMS.INVENTORYID)
join GETWORKPARTIES(:ISCURRENT, :APARTYDATE, :ACROPID, :ACLASSID, :ASTORAGEID) on (GETWORKPARTIES.PARTYID = IT.PARTYID)
left join QUALITY on (QUALITY.QUALITYID = EXPORTACTS.QUALITYID)
where (EXPORTACTS.OWNERID = :AOWNERID) and (EXPORTACTS.OPERATIONID in (1,17,45))
and (EXPORTACTS.STATE <> -1) and (QUALITY.CROPID = :ACROPID)
and (QUALITY.CLASSID = :ACLASSID)
order by 1
into :MINDATE;
select EXPORTACTS.EXPORTACTID
from EXPORTACTS
where ((EXPORTACTS.ORDERITEMID = :AORDERLOADITEMID) and (EXPORTACTS.OPERATIONID = -17))
into :OUTEXPORTACTID;
for
select
EA.ACTDATE, min(PROVIDERS.CLIENTNAME) PROVIDERFULLNAME, EA.ACTNUMBER,
EA.EXPORTACTID, EA.TRANSPORTSUBTYPEID, 0 READONLYREC, 0 ISCHECKED,
min(IT.PARTYID) PARTYID
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)
join GETWORKPARTIES(:ISCURRENT, :APARTYDATE, :ACROPID, :ACLASSID, :ASTORAGEID) on (GETWORKPARTIES.PARTYID = IT.PARTYID)
where (EA.REGDATE >= :MINDATE) and (EA.OWNERID = :AOWNERID)
and (EA.OPERATIONID in (1,17)) and (EA.STATE = 0)
and (QUALITY.CROPID = :ACROPID) and (QUALITY.CLASSID = :ACLASSID)
and ((IT.STORAGEID = coalesce(:ASTORAGEID,-1)) or (coalesce(:ASTORAGEID,-1) = -1))
and ((not ((EA.ORDERITEMID = :AORDERLOADITEMID) and (EA.OWNERID = :APROVIDERID)))
or (EA.ORDERITEMID is null))
group by EA.ACTDATE, EA.PROVIDERID, EA.ACTNUMBER, EA.EXPORTACTID, EA.TRANSPORTSUBTYPEID
into :ACTDATE, :PROVIDERFULLNAME, :ACTNUMBER, :EXPORTACTID,
:TRANSPORTSUBTYPEID, :READONLYREC, :ISCHECKED, :PARTYID
do begin
for
select
sum(FORWARDER_WEIGHTITEM_STORAGE.RESTWEIGHT) SUMACTNET,
sum(FORWARDER_WEIGHTITEM_STORAGE.REWEIGHT) CUSTOMRENET,
sum(FORWARDER_WEIGHTITEM_STORAGE.INCOMEWEIGHT) SUMTRWEIGHT,
sum(coalesce(FORWARDER_WEIGHTITEM_STORAGE.OUTCOMEWEIGHT,0)) OUTCOMEWEIGHT
from EXPORTACTITEMS_VIEW EAIMAIN
left join FORWARDER_WEIGHTITEM_STORAGE(:AORDERLOADITEMID, EAIMAIN.EXPORTACTITEMID,
EAIMAIN.EXPORTACTID, :ISWEIGHT) on (0=0)
where ((EAIMAIN.EXPORTACTID = :EXPORTACTID)
or ((EAIMAIN.EXPORTACTID = :OUTEXPORTACTID)
and (EAIMAIN.OPERATIONID not in (-64,17))
and ((select EXPORTACTITEMS.EXPORTACTID
from EXPORTACTITEMS
where (EXPORTACTITEMS.EXPORTACTITEMID = EAIMAIN.PARENTITEMID)) = :EXPORTACTID)))
and (EAIMAIN.OPERATIONID in (1,17,45)) and (EAIMAIN.STATE <> 10)
into :SUMACTNET, :CUSTOMRENET, :SUMTRWEIGHT, :OUTCOMEWEIGHT
do begin
if (((:CUSTOMRENET <> 0) or (:SUMACTNET > 0)) and (SUMTRWEIGHT >= OUTCOMEWEIGHT)) then
suspend;
end
end
end