Входные параметры
Параметр  | Тип  | Описание  | 
|---|---|---|
ACROPID  | 
    INTEGER  | 
    
  | 
  
ACLASSID  | 
    INTEGER  | 
    
  | 
  
AQUALITYTYPEID  | 
    INTEGER  | 
    
  | 
  
PARENT  | 
    INTEGER  | 
    
  | 
  
AVALUE  | 
    NUMERIC(9,2)  | 
    
  | 
  
Выходные параметры
Параметр  | Тип  | Описание  | 
|---|---|---|
V  | 
    NUMERIC(9,2)  | 
    
  | 
  
Описание
(Нет описания для процедуры QUALITY_IS_PARENT)
Определение
CREATE PROCEDURE QUALITY_IS_PARENT(
    ACROPID INTEGER,
    ACLASSID INTEGER,
    AQUALITYTYPEID INTEGER,
    PARENT INTEGER,
    AVALUE NUMERIC(9,2))
RETURNS (
    V NUMERIC(9,2))
AS
declare variable FQUALITYTYPEID integer;
declare variable FSTATE integer;
declare variable QUALITYTYPEID integer;
declare variable QPARENT integer;
begin
-- PARENT 0 - культурные, 1 - зерновая, 2 - сорная
  V = :AVALUE;
  QUALITYTYPEID = -1;
  select first 1 CROPPARAMS.QUALITYTYPEID, CROPPARAMS.STATE, CROPPARAMS.PARENTID
    from CROPPARAMS
    where (CROPPARAMS.CROPPARAMTYPEID = 10)
      and (CROPPARAMS.CROPID in (-1,:ACROPID))
      and ((CROPPARAMS.CLASSID is null) or (CROPPARAMS.CLASSID = :ACLASSID))
      and (CROPPARAMS.QUALITYTYPEID = :AQUALITYTYPEID)
  order by CROPPARAMS.CROPPARAMID desc
  into :FQUALITYTYPEID, :FSTATE, :QPARENT;
  if ((:FQUALITYTYPEID <> -1) and (:FSTATE > -1)) then begin
    if (((:PARENT = 1) and (:QPARENT in (14,110)))
        or ((:PARENT = 2) and (:QPARENT = 13))
        or ((:PARENT = 0) and (coalesce(:QPARENT,0) not in (13,14)))) then
      suspend;
  end
end
         
         
         
       |