Входные параметры
Параметр | Тип | Описание |
---|---|---|
ADATEBEGIN |
DATE |
|
ADATEEND |
DATE |
|
STORAGEID |
INTEGER |
|
Выходные параметры
Параметр | Тип | Описание |
---|---|---|
REGDATE |
DATE |
|
INVENTORYID |
INTEGER |
|
SUPLIERNAME |
VARCHAR(30) |
|
LABQUALITYID |
INTEGER |
|
CROPCLASS |
VARCHAR(40) |
|
TRANSPORTNUMBER |
VARCHAR(55) |
|
NET |
INTEGER |
|
USERNAME |
VARCHAR(20) |
|
CLASSID |
INTEGER |
|
SAMPLERQUALITYID |
INTEGER |
|
STORINGID |
INTEGER |
|
RELATIONID |
INTEGER |
|
NUMBER |
INTEGER |
|
WORKINGDATE |
DATE |
|
HUMIDITY |
NUMERIC(9,2) |
|
ASH |
NUMERIC(9,2) |
|
WHITES |
NUMERIC(9,2) |
|
GLUTEN |
NUMERIC(9,1) |
|
GLUTENQUALITY |
INTEGER |
|
V_VOLUME |
INTEGER |
|
H_D |
NUMERIC(9,2) |
|
DIRT |
NUMERIC(9,2) |
|
PASS |
NUMERIC(9,2) |
|
REST |
NUMERIC(9,2) |
|
Описание
(Нет описания для процедуры LABOUT_JOURNAL_WORK)
Определение
CREATE PROCEDURE LABOUT_JOURNAL_WORK(
ADATEBEGIN DATE,
ADATEEND DATE,
STORAGEID INTEGER)
RETURNS (
REGDATE DATE,
INVENTORYID INTEGER,
SUPLIERNAME VARCHAR(30),
LABQUALITYID INTEGER,
CROPCLASS VARCHAR(40),
TRANSPORTNUMBER VARCHAR(55),
NET INTEGER,
USERNAME VARCHAR(20),
CLASSID INTEGER,
SAMPLERQUALITYID INTEGER,
STORINGID INTEGER,
RELATIONID INTEGER,
NUMBER INTEGER,
WORKINGDATE DATE,
HUMIDITY NUMERIC(9,2),
ASH NUMERIC(9,2),
WHITES NUMERIC(9,2),
GLUTEN NUMERIC(9,1),
GLUTENQUALITY INTEGER,
V_VOLUME INTEGER,
H_D NUMERIC(9,2),
DIRT NUMERIC(9,2),
PASS NUMERIC(9,2),
REST NUMERIC(9,2))
AS
DECLARE VARIABLE CROPTYPEID INTEGER;
DECLARE VARIABLE OUTVALUE NUMERIC(7,2);
begin
/*
for
SELECT IT.REGDATE, IT.InventoryID, clients.clientname, IT.LabQualityID, transporttype.transporttypename || ' ' || ittransport.TRANSPORTNUMBER,
IT.NET, IT.storageid, it.samplerqualityid, it.storingid, it.relationid, ittransport.transporttypeid, ittransport.sampleroutdate
FROM IT
LEFT JOIN clients ON (clients.clientid = it.ProviderID)
left join ittransport on it.inventoryid = ittransport.inventoryid
LEFT JOIN transporttype ON (transporttype.transporttypeid = ittransport.transporttypeid)
where ittransport.sampleroutdate between :ADateBegin and :ADateEnd
and it.operationid = 5 and it.parentid <= 0 and it.state > -1
and it.storageid = :storageid
order by ittransport.sampleroutdate, IT.InventoryID
into :regdate, :inventoryid, :supliername, :labqualityid, :transportnumber,
:net, :storageid, :samplerqualityid, :storingid, :relationid, :transporttypeid, :workingdate
do begin
classid = null;
if (:labqualityid is not null) then begin
select QualityValue from Outqualities
where OutQualityID = :labqualityid and qualitytypeid = 32
into :classid;
end
else begin
if (:transporttypeid = 2) then
select classid from quality where QualityID = :samplerqualityid
into :classid;
else
select QualityValue from Outqualities
where OutQualityID = :samplerqualityid and qualitytypeid = 32
into :classid;
end
select crop.croptypeid from class left join crop on (crop.cropid = class.cropid) where class.classid = :classid
into :croptypeid;
if (:classid is null or (:croptypeid = 2 and :classid <> 49))
then begin
cropclass = null;
username = null;
number = null;
select CROP.shortcropname || ' ' || CLASS.shortclassname from class inner join crop on (crop.cropid = class.cropid)
where class.classid = :classid
into :cropclass;
humidity = null;
ash = null;
whites = null;
gluten = null;
glutenquality = null;
for
select qualitytypeid, qualityvalue from Outqualities
where OutQualityID = :labqualityid
into :croptypeid, :outvalue
do begin
if (:croptypeid = 2) then humidity = cast(:outvalue as numeric(4,2));
if (:croptypeid = 11) then ash = cast(:outvalue as numeric(4,2));
if (:croptypeid = 43) then whites = cast(:outvalue as numeric(4,2));
if (:croptypeid = 3) then gluten = cast(:outvalue as numeric(4,1));
if (:croptypeid = 4) then glutenquality = cast(:outvalue as integer);
if (:croptypeid = 33) then select username from users where userid = cast(:outvalue as integer) into :username;
if (:croptypeid = 55) then number = cast(:outvalue as integer);
if (:croptypeid = 22) then v_volume = cast(:outvalue as integer);
if (:croptypeid = 23) then h_d = cast(:outvalue as numeric(4,2));
if (:croptypeid = 13) then dirt = cast(:outvalue as numeric(4,2));
end
suspend;
end
end
*/
END