"localhost:/firebird/data/ILICHEVSK2.FDB". ��������� Previous topic Chapter index Next topic

ACN_CARGO_RESIDUE

 

������� ���������

��������

���

��������

RESIDUEDATE

DATE

 

CROPID

INTEGER

 

CLASSID

INTEGER

 

OWNERID

INTEGER

 

CONTRACTID

INTEGER

 

 

�������� ���������

��������

���

��������

CROPFULLNAME

VARCHAR(150)

 

CROPTYPEID

INTEGER

 

HARVESTYEAR

INTEGER

 

CARGORESIDUE

INTEGER

 

HUMIDITY

DECIMAL(4,2)

 

GRAINUNIT

INTEGER

 

GLUTEN

DECIMAL(4,2)

 

GLUTENQUALITY

INTEGER

 

PROTEIN

DECIMAL(4,2)

 

GOLOVNEVIE

DECIMAL(15,4)

 

DROPNUMBER

INTEGER

 

GLASSNESS

INTEGER

 

TURTLEBUG

DECIMAL(4,2)

 

OIL_M

DECIMAL(4,2)

 

DIRT

DECIMAL(4,2)

 

MINERAL

DECIMAL(4,2)

 

SPOILT

DECIMAL(4,2)

 

DIRTSEED

DECIMAL(4,2)

 

ORGANIC

DECIMAL(4,2)

 

FUSARIOSE

DECIMAL(4,2)

 

BRAND

DECIMAL(4,2)

 

D_MAIZE

DECIMAL(4,2)

 

D_PEA

DECIMAL(4,2)

 

D_OATS

DECIMAL(4,2)

 

D_SUNFLOWER

DECIMAL(4,2)

 

D_SOY

DECIMAL(4,2)

 

SCREENING

DECIMAL(4,2)

 

ACROSPIRE

DECIMAL(4,2)

 

DEFECTIVE

DECIMAL(4,2)

 

BEATEN

DECIMAL(4,2)

 

CORRODED

DECIMAL(4,2)

 

GREEN

DECIMAL(4,2)

 

NEVYPOLNENNYE

DECIMAL(4,2)

 

SMALLGRAIN

DECIMAL(4,2)

 

NAKED

DECIMAL(4,2)

 

S_BARLEY

DECIMAL(4,2)

 

S_RYE

DECIMAL(4,2)

 

S_PEA

DECIMAL(4,2)

 

S_TRITICALE

DECIMAL(4,2)

 

S_MAIZE

DECIMAL(4,2)

 

S_SOY

DECIMAL(4,2)

 

S_PROSO

DECIMAL(4,2)

 

 

��������

������� ����� �� �������/��������

 

�����������

CREATE PROCEDURE ACN_CARGO_RESIDUE(
    RESIDUEDATE DATE,
    CROPID INTEGER,
    CLASSID INTEGER,
    OWNERID INTEGER,
    CONTRACTID INTEGER)
RETURNS (
    CROPFULLNAME VARCHAR(150),
    CROPTYPEID INTEGER,
    HARVESTYEAR INTEGER,
    CARGORESIDUE INTEGER,
    HUMIDITY DECIMAL(4,2),
    GRAINUNIT INTEGER,
    GLUTEN DECIMAL(4,2),
    GLUTENQUALITY INTEGER,
    PROTEIN DECIMAL(4,2),
    GOLOVNEVIE DECIMAL(15,4),
    DROPNUMBER INTEGER,
    GLASSNESS INTEGER,
    TURTLEBUG DECIMAL(4,2),
    OIL_M DECIMAL(4,2),
    DIRT DECIMAL(4,2),
    MINERAL DECIMAL(4,2),
    SPOILT DECIMAL(4,2),
    DIRTSEED DECIMAL(4,2),
    ORGANIC DECIMAL(4,2),
    FUSARIOSE DECIMAL(4,2),
    BRAND DECIMAL(4,2),
    D_MAIZE DECIMAL(4,2),
    D_PEA DECIMAL(4,2),
    D_OATS DECIMAL(4,2),
    D_SUNFLOWER DECIMAL(4,2),
    D_SOY DECIMAL(4,2),
    SCREENING DECIMAL(4,2),
    ACROSPIRE DECIMAL(4,2),
    DEFECTIVE DECIMAL(4,2),
    BEATEN DECIMAL(4,2),
    CORRODED DECIMAL(4,2),
    GREEN DECIMAL(4,2),
    NEVYPOLNENNYE DECIMAL(4,2),
    SMALLGRAIN DECIMAL(4,2),
    NAKED DECIMAL(4,2),
    S_BARLEY DECIMAL(4,2),
    S_RYE DECIMAL(4,2),
    S_PEA DECIMAL(4,2),
    S_TRITICALE DECIMAL(4,2),
    S_MAIZE DECIMAL(4,2),
    S_SOY DECIMAL(4,2),
    S_PROSO DECIMAL(4,2))
AS
declare variable PARTYID integer;
declare variable BEGINDATE date;
declare variable OUTCOMELASTDATE date;
declare variable OUTCOMELASTINVENTORYID integer;
declare variable HARVESTYEAR_C integer;
declare variable OUTCOMERESIDUE integer;
declare variable AFTEROUTCOMERESIDUE integer;
declare variable HUMIDITY_C decimal(15,4);
declare variable GRAINUNIT_C decimal(15,4);
declare variable GLUTEN_C decimal(15,0);
declare variable GLUTENQUALITY_C decimal(15,4);
declare variable PROTEIN_C decimal(15,4);
declare variable GOLOVNEVIE_C decimal(15,4);
declare variable DROPNUMBER_C decimal(15,4);
declare variable GLASSNESS_C decimal(15,4);
declare variable TURTLEBUG_C decimal(15,4);
declare variable OIL_M_C decimal(15,4);
declare variable DIRT_C decimal(15,4);
declare variable MINERAL_C decimal(15,4);
declare variable SPOILT_C decimal(15,4);
declare variable DIRTSEED_C decimal(15,4);
declare variable ORGANIC_C decimal(15,4);
declare variable FUSARIOSE_C decimal(15,4);
declare variable BRAND_C decimal(15,4);
declare variable D_MAIZE_C decimal(15,4);
declare variable D_PEA_C decimal(15,4);
declare variable D_OATS_C decimal(15,4);
declare variable D_SUNFLOWER_C decimal(15,4);
declare variable D_SOY_C decimal(15,4);
declare variable SCREENING_C decimal(15,4);
declare variable ACROSPIRE_C decimal(15,4);
declare variable DEFECTIVE_C decimal(15,4);
declare variable BEATEN_C decimal(15,4);
declare variable CORRODED_C decimal(15,4);
declare variable GREEN_C decimal(15,4);
declare variable NEVYPOLNENNYE_C decimal(15,4);
declare variable SMALLGRAIN_C decimal(15,4);
declare variable NAKED_C decimal(15,4);
declare variable S_BARLEY_C decimal(15,4);
declare variable S_RYE_C decimal(15,4);
declare variable S_PEA_C decimal(15,4);
declare variable S_TRITICALE_C decimal(15,4);
declare variable S_MAIZE_C decimal(15,4);
declare variable S_SOY_C decimal(15,4);
declare variable S_PROSO_C decimal(15,4);
begin
  for
    select PARTIES.PARTYID, PARTIES.BEGINDATE, QUALITY_CROPFULLNAME.CROPFULLNAME,
        (select CROP.CROPTYPEID from CROP where (CROP.CROPID = :CROPID)) CROPTYPEID
      from PARTIES
        left join QUALITY_CROPFULLNAME(:CROPID, PARTIES.CLASSID, null, 1) on (0=0)
    where (PARTIES.CROPID = :CROPID)
      and ((:CLASSID = -1) or (PARTIES.CLASSID = :CLASSID))
      and (PARTIES.STATE = 1)
    order by PARTIES.PARTYNAME
    into :PARTYID, :BEGINDATE, :CROPFULLNAME, :CROPTYPEID

  do begin
    CARGORESIDUE = null;
    OUTCOMERESIDUE = null;
    AFTEROUTCOMERESIDUE = null;
    HARVESTYEAR = null;
    HUMIDITY_C = null;
    GRAINUNIT_C = null;
    GLUTEN_C = null;
    GLUTENQUALITY_C = null;
    PROTEIN_C = null;
    GOLOVNEVIE_C = null;
    DROPNUMBER_C = null;
    GLASSNESS_C = null;
    TURTLEBUG_C = null;
    OIL_M_C = null;
    DIRT_C = null;
    MINERAL_C = null;
    SPOILT_C = null;
    DIRTSEED_C = null;
    ORGANIC_C = null;
    FUSARIOSE_C = null;
    BRAND_C = null;
    D_MAIZE_C = null;
    D_PEA_C = null;
    D_OATS_C = null;
    D_SUNFLOWER_C = null;
    D_SOY_C = null;
    SCREENING_C = null;
    ACROSPIRE_C = null;
    DEFECTIVE_C = null;
    BEATEN_C = null;
    CORRODED_C = null;
    GREEN_C = null;
    NEVYPOLNENNYE_C = null;
    SMALLGRAIN_C = null;
    NAKED_C = null;
    S_BARLEY_C = null;
    S_RYE_C = null;
    S_PEA_C = null;
    S_TRITICALE_C = null;
    S_MAIZE_C = null;
    S_SOY_C = null;
    S_PROSO_C = null;

    select coalesce(max(IT.REGDATE),:BEGINDATE), max(IT.INVENTORYID)
      from IT
      where (IT.PARTYID = :PARTYID) and (IT.REGDATE > :BEGINDATE)
        and (IT.OPERATIONID = 5) and (IT.OWNERID = :OWNERID) and (IT.STATE >= 0)
        and ((:CONTRACTID = -1) or (IT.CONTRACTID = :CONTRACTID))
    into :OUTCOMELASTDATE, :OUTCOMELASTINVENTORYID;

    select
        sum(case
              when ((IT.OPERATIONID = 1) or ((IT.OPERATIONID = 17) and (IT.NET > 0))) then
                IT.NET
              else
                case
                  when ((IT.OPERATIONID = 17) and (IT.NET < 0)) then
                    IT.NET
                  else -IT.NET
                end
            end),
        QUALITY_SELECT.HARVESTYEAR, QUALITY_SELECT.HUMIDITY, QUALITY_SELECT.GRAINUNIT, QUALITY_SELECT.GLUTEN,
        QUALITY_SELECT.GLUTENQUALITY, QUALITY_SELECT.PROTEIN, QUALITY_SELECT.GOLOVNEVIE,
        QUALITY_SELECT.DROPNUMBER, QUALITY_SELECT.GLASSNESS, QUALITY_SELECT.TURTLEBUG, QUALITY_SELECT.OIL_M,
        QUALITY_SELECT.DIRT, QUALITY_SELECT.MINERAL, QUALITY_SELECT.SPOILT, QUALITY_SELECT.DIRTSEED,
        QUALITY_SELECT.ORGANIC, QUALITY_SELECT.FUSARIOSE, QUALITY_SELECT.BRAND,
        min((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 81, 2, QUALITY_SELECT.MAIZE))),     -- ��������
        min((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 114, 2, QUALITY_SELECT.PEA))),      -- �����
        min((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 115, 2, QUALITY_SELECT.OATS))),     -- ����
        min((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 82, 2, QUALITY_SELECT.SUNFLOWER))), -- ������������
        min((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 128, 2, QUALITY_SELECT.SOY))),      -- ���
        case
          when (CROP.CROPTYPEID = 5) then
            QUALITY_SELECT.OILSEED
          else QUALITY_SELECT.SCREENING
        end SCREENING,
        QUALITY_SELECT.ACROSPIRE, QUALITY_SELECT.DEFECTIVE, QUALITY_SELECT.BEATEN,
        QUALITY_SELECT.CORRODED, QUALITY_SELECT.GREEN, QUALITY_SELECT.NEVYPOLNENNYE,
        QUALITY_SELECT.SMALLGRAIN, QUALITY_SELECT.NAKED,
        min((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 73, 1, QUALITY_SELECT.BARLEY))),    -- ������
        min((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 74, 1, QUALITY_SELECT.RYE))),       -- ����
        min((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 114, 1, QUALITY_SELECT.PEA))),      -- �����
        min((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 113, 1, QUALITY_SELECT.TRITICALE))),-- ���������
        min((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 81, 1, QUALITY_SELECT.MAIZE))),     -- ��������
        min((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 128, 1, QUALITY_SELECT.SOY))),      -- ���
        min((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 145, 1, QUALITY_SELECT.PROSO)))     -- �����
      from IT
        left join QUALITY_SELECT((select IT.BUHQUALITYID from IT where (IT.INVENTORYID = :OUTCOMELASTINVENTORYID))) on (0=0)
        left join CROP on (CROP.CROPID = QUALITY_SELECT.CROPID)
      where (IT.PARTYID = :PARTYID) and (IT.REGDATE between :BEGINDATE and :OUTCOMELASTDATE)
        and (IT.STATE >=0) and (IT.OPERATIONID in (1,5,17)) and (IT.OWNERID = :OWNERID)
--        and (IT.INVENTORYID <= :OUTCOMELASTINVENTORYID)
        and ((:CONTRACTID = -1) or (IT.CONTRACTID = :CONTRACTID))
    group by QUALITY_SELECT.HARVESTYEAR, QUALITY_SELECT.HUMIDITY, QUALITY_SELECT.GRAINUNIT, QUALITY_SELECT.GLUTEN,
        QUALITY_SELECT.GLUTENQUALITY, QUALITY_SELECT.PROTEIN, QUALITY_SELECT.GOLOVNEVIE,
        QUALITY_SELECT.DROPNUMBER, QUALITY_SELECT.GLASSNESS, QUALITY_SELECT.TURTLEBUG, QUALITY_SELECT.OIL_M,
        QUALITY_SELECT.DIRT, QUALITY_SELECT.MINERAL, QUALITY_SELECT.SPOILT, QUALITY_SELECT.DIRTSEED,
        QUALITY_SELECT.ORGANIC, QUALITY_SELECT.FUSARIOSE, QUALITY_SELECT.BRAND, SCREENING,
        QUALITY_SELECT.ACROSPIRE, QUALITY_SELECT.DEFECTIVE, QUALITY_SELECT.BEATEN,
        QUALITY_SELECT.CORRODED, QUALITY_SELECT.GREEN, QUALITY_SELECT.NEVYPOLNENNYE,
        QUALITY_SELECT.SMALLGRAIN, QUALITY_SELECT.NAKED
    into :OUTCOMERESIDUE, :HARVESTYEAR, :HUMIDITY, :GRAINUNIT, :GLUTEN, :GLUTENQUALITY,
        :PROTEIN, :GOLOVNEVIE, :DROPNUMBER, :GLASSNESS, :TURTLEBUG, :OIL_M,
        :DIRT, :MINERAL, :SPOILT, :DIRTSEED, :ORGANIC, :FUSARIOSE, :BRAND,
        :D_MAIZE, :D_PEA, :D_OATS, :D_SUNFLOWER, :D_SOY,
        :SCREENING, :ACROSPIRE, :DEFECTIVE, :BEATEN, :CORRODED, :GREEN, :NEVYPOLNENNYE,
        :SMALLGRAIN, :NAKED,
        :S_BARLEY, :S_RYE, :S_PEA, :S_TRITICALE, :S_MAIZE, :S_SOY, :S_PROSO;

    select
        QUALITY_SELECT.HARVESTYEAR, sum(IT.NET),
        sum(QUALITY_SELECT.HUMIDITY * IT.NET), sum(QUALITY_SELECT.GRAINUNIT * IT.NET),
        sum(QUALITY_SELECT.GLUTEN * IT.NET), sum(QUALITY_SELECT.GLUTENQUALITY * IT.NET),
        sum(QUALITY_SELECT.PROTEIN * IT.NET), sum(QUALITY_SELECT.GOLOVNEVIE * IT.NET),
        sum(QUALITY_SELECT.DROPNUMBER * IT.NET), sum(QUALITY_SELECT.GLASSNESS * IT.NET),
        sum(QUALITY_SELECT.TURTLEBUG * IT.NET), sum(QUALITY_SELECT.OIL_M * IT.NET),
        sum(QUALITY_SELECT.DIRT * IT.NET), sum(QUALITY_SELECT.MINERAL * IT.NET),
        sum(QUALITY_SELECT.SPOILT * IT.NET), sum(QUALITY_SELECT.DIRTSEED * IT.NET),
        sum(QUALITY_SELECT.ORGANIC * IT.NET), sum(QUALITY_SELECT.FUSARIOSE * IT.NET),
        sum(QUALITY_SELECT.BRAND * IT.NET),
        sum((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 81, 2, QUALITY_SELECT.MAIZE)) * IT.NET),     -- ��������
        sum((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 114, 2, QUALITY_SELECT.PEA)) * IT.NET),      -- �����
        sum((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 115, 2, QUALITY_SELECT.OATS)) * IT.NET),     -- ����
        sum((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 82, 2, QUALITY_SELECT.SUNFLOWER)) * IT.NET), -- ������������
        sum((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 128, 2, QUALITY_SELECT.SOY)) * IT.NET),      -- ���
        case
          when (max(CROP.CROPTYPEID) = 5) then
            sum(QUALITY_SELECT.OILSEED * IT.NET)
          else sum(QUALITY_SELECT.SCREENING * IT.NET)
        end,
        sum(QUALITY_SELECT.ACROSPIRE * IT.NET), sum(QUALITY_SELECT.DEFECTIVE * IT.NET),
        sum(QUALITY_SELECT.BEATEN * IT.NET), sum(QUALITY_SELECT.CORRODED * IT.NET),
        sum(QUALITY_SELECT.GREEN * IT.NET), sum(QUALITY_SELECT.NEVYPOLNENNYE * IT.NET),
        sum(QUALITY_SELECT.SMALLGRAIN * IT.NET), sum(QUALITY_SELECT.NAKED * IT.NET),
        sum((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 73, 1, QUALITY_SELECT.BARLEY)) * IT.NET),    -- ������
        sum((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 74, 1, QUALITY_SELECT.RYE)) * IT.NET),       -- ����
        sum((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 114, 1, QUALITY_SELECT.PEA)) * IT.NET),      -- �����
        sum((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 113, 1, QUALITY_SELECT.TRITICALE)) * IT.NET),-- ���������
        sum((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 81, 1, QUALITY_SELECT.MAIZE)) * IT.NET),     -- ��������
        sum((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 128, 1, QUALITY_SELECT.SOY)) * IT.NET),      -- ���
        sum((select QUALITY_IS_PARENT.V from QUALITY_IS_PARENT(QUALITY_SELECT.CROPID, QUALITY_SELECT.CLASSID, 145, 1, QUALITY_SELECT.PROSO)) * IT.NET)     -- �����
      from IT
        left join QUALITY_SELECT(IT.BUHQUALITYID) on (0=0)
        left join CROP on (CROP.CROPID = QUALITY_SELECT.CROPID)
      where (IT.PARTYID = :PARTYID) and (IT.REGDATE between :OUTCOMELASTDATE + 1 and :RESIDUEDATE)
        and (IT.STATE >=0) and (IT.OPERATIONID in (1,17)) and (IT.OWNERID = :OWNERID)
        and (IT.NET <> 0)
--        and (IT.INVENTORYID > :OUTCOMELASTINVENTORYID)
        and ((:CONTRACTID = -1) or (IT.CONTRACTID = :CONTRACTID))
    group by QUALITY_SELECT.HARVESTYEAR
    into :HARVESTYEAR_C, :AFTEROUTCOMERESIDUE, :HUMIDITY_C, :GRAINUNIT_C, :GLUTEN_C, :GLUTENQUALITY_C,
        :PROTEIN_C, :GOLOVNEVIE_C, :DROPNUMBER_C, :GLASSNESS_C, :TURTLEBUG_C, :OIL_M_C,
        :DIRT_C, :MINERAL_C, :SPOILT_C, :DIRTSEED_C, :ORGANIC_C, :FUSARIOSE_C, :BRAND_C,
        :D_MAIZE_C, :D_PEA_C, :D_OATS_C, :D_SUNFLOWER_C, :D_SOY_C,
        :SCREENING_C, :ACROSPIRE_C, :DEFECTIVE_C, :BEATEN_C, :CORRODED_C, :GREEN_C, :NEVYPOLNENNYE_C,
        :SMALLGRAIN_C, :NAKED_C,
        :S_BARLEY_C, :S_RYE_C, :S_PEA_C, :S_TRITICALE_C, :S_MAIZE_C, :S_SOY_C, :S_PROSO_C;

    CARGORESIDUE = coalesce(OUTCOMERESIDUE,0) + coalesce(AFTEROUTCOMERESIDUE,0);

    if (CARGORESIDUE > 0) then begin
      HARVESTYEAR = coalesce(HARVESTYEAR,HARVESTYEAR_C);
      HUMIDITY = (coalesce(HUMIDITY_C,0) + coalesce((HUMIDITY * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      GRAINUNIT = (coalesce(GRAINUNIT_C,0) + coalesce((GRAINUNIT * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      GLUTEN = (coalesce(GLUTEN_C,0) + coalesce((GLUTEN * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      GLUTENQUALITY = (coalesce(GLUTENQUALITY_C,0) + coalesce((GLUTENQUALITY * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      PROTEIN = (coalesce(PROTEIN_C,0) + coalesce((PROTEIN * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      GOLOVNEVIE = (coalesce(GOLOVNEVIE_C,0) + coalesce((GOLOVNEVIE * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      DROPNUMBER = (coalesce(DROPNUMBER_C,0) + coalesce((DROPNUMBER * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      GLASSNESS = (coalesce(GLASSNESS_C,0) + coalesce((GLASSNESS * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      TURTLEBUG = (coalesce(TURTLEBUG_C,0) + coalesce((TURTLEBUG * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      OIL_M = (coalesce(OIL_M_C,0) + coalesce((OIL_M * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      DIRT = (coalesce(DIRT_C,0) + coalesce((DIRT * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      MINERAL = (coalesce(MINERAL_C,0) + coalesce((MINERAL * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      SPOILT = (coalesce(SPOILT_C,0) + coalesce((SPOILT * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      DIRTSEED = (coalesce(DIRTSEED_C,0) + coalesce((DIRTSEED * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      ORGANIC = (coalesce(ORGANIC_C,0) + coalesce((ORGANIC * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      FUSARIOSE = (coalesce(FUSARIOSE_C,0) + coalesce((FUSARIOSE * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      BRAND = (coalesce(BRAND_C,0) + coalesce((BRAND * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      D_MAIZE = (coalesce(D_MAIZE_C,0) + coalesce((D_MAIZE * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      D_PEA = (coalesce(D_PEA_C,0) + coalesce((D_PEA * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      D_OATS = (coalesce(D_OATS_C,0) + coalesce((D_OATS * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      D_SUNFLOWER = (coalesce(D_SUNFLOWER_C,0) + coalesce((D_SUNFLOWER * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      D_SOY = (coalesce(D_SOY_C,0) + coalesce((D_SOY * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      SCREENING = (coalesce(SCREENING_C,0) + coalesce((SCREENING * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      ACROSPIRE = (coalesce(ACROSPIRE_C,0) + coalesce((ACROSPIRE * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      DEFECTIVE = (coalesce(DEFECTIVE_C,0) + coalesce((DEFECTIVE * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      BEATEN = (coalesce(BEATEN_C,0) + coalesce((BEATEN * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      CORRODED = (coalesce(CORRODED_C,0) + coalesce((CORRODED * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      GREEN = (coalesce(GREEN_C,0) + coalesce((GREEN * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      NEVYPOLNENNYE = (coalesce(NEVYPOLNENNYE_C,0) + coalesce((NEVYPOLNENNYE * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      SMALLGRAIN = (coalesce(SMALLGRAIN_C,0) + coalesce((SMALLGRAIN * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      NAKED = (coalesce(NAKED_C,0) + coalesce((NAKED * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      S_BARLEY = (coalesce(S_BARLEY_C,0) + coalesce((S_BARLEY * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      S_RYE = (coalesce(S_RYE_C,0) + coalesce((S_RYE * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      S_PEA = (coalesce(S_PEA_C,0) + coalesce((S_PEA * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      S_TRITICALE = (coalesce(S_TRITICALE_C,0) + coalesce((S_TRITICALE * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      S_MAIZE = (coalesce(S_MAIZE_C,0) + coalesce((S_MAIZE * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      S_SOY = (coalesce(S_SOY_C,0) + coalesce((S_SOY * OUTCOMERESIDUE),0)) / CARGORESIDUE;
      S_PROSO = (coalesce(S_PROSO_C,0) + coalesce((S_PROSO * OUTCOMERESIDUE),0)) / CARGORESIDUE;

      suspend;
    end
  end
end

 

     Previous topic Chapter index Next topic