Procedura-GroupedVATSummary

Parametry:

NázevPopisDatový typ
AFirmSelIDChar(10)
ADivisionsSelIDChar(10)
ABusOrdersSelIDChar(10)
ABusTransactionsSelIDChar(10)
ABusProjectsSelIDChar(10)
AVATDateFromFloat(0, 0)
AVATDateToFloat(0, 0)
ADivisionsWithChildsChar(1)
ABusOrdersWithChildsChar(1)
ABusTransactionsWithChildsChar(1)
ABusProjectsWithChildsChar(1)
AVATCountry_IDChar(10)

Návratové hodnoty:

NázevPopisDatový typ
VATIndex_IDChar(10)
TAmountWithoutVATNumeric(15, 2)
TAmountNumeric(15, 2)
ForeignTAmountWithoutVATNumeric(15, 2)
ForeignTAmountNumeric(15, 2)

Závislosti:

NázevPopisTřída
GroupedVATSummaryAccProcedures
GroupedVATSummaryCashProcedures
GroupedVATSummaryInvProcedures
GroupedVATSummaryPosProcedures
GroupedVATSummaryPaymentsProcedures

Tělo:

BEGIN
  FOR
    SELECT
      VATIndex_ID,
      SUM(TAmountWithoutVAT), SUM(TAmount), SUM(ForeignTAmountWithoutVAT), SUM(ForeignTAmount)
    FROM
    (
    SELECT
      VATIndex_ID,
      TAmountWithoutVAT, TAmount, ForeignTAmountWithoutVAT, ForeignTAmount
    FROM
      GroupedVATSummaryInv(:AFirmSelID, :ADivisionsSelID, :ABusOrdersSelID,
        :ABusTransactionsSelID, :ABusProjectsSelID, :AVATDateFrom, :AVATDateTo, :ADivisionsWithChilds,
        :ABusOrdersWithChilds, :ABusTransactionsWithChilds, :ABusProjectsWithChilds, :AVATCountry_ID)
    UNION ALL
    SELECT
      VATIndex_ID,
      TAmountWithoutVAT, TAmount, ForeignTAmountWithoutVAT, ForeignTAmount
    FROM
      GroupedVATSummaryAcc(:AFirmSelID, :ADivisionsSelID, :ABusOrdersSelID,
        :ABusTransactionsSelID, :ABusProjectsSelID, :AVATDateFrom, :AVATDateTo, :ADivisionsWithChilds,
        :ABusOrdersWithChilds, :ABusTransactionsWithChilds, :ABusProjectsWithChilds, :AVATCountry_ID)
    UNION ALL
    SELECT
      VATIndex_ID,
      TAmountWithoutVAT, TAmount, ForeignTAmountWithoutVAT, ForeignTAmount
    FROM
      GroupedVATSummaryCash(:AFirmSelID, :ADivisionsSelID, :ABusOrdersSelID,
        :ABusTransactionsSelID, :ABusProjectsSelID, :AVATDateFrom, :AVATDateTo, :ADivisionsWithChilds,
        :ABusOrdersWithChilds, :ABusTransactionsWithChilds, :ABusProjectsWithChilds, :AVATCountry_ID)
    UNION ALL
    SELECT
      VATIndex_ID,
      TAmountWithoutVAT, TAmount, ForeignTAmountWithoutVAT, ForeignTAmount
    FROM
      GroupedVATSummaryPos(:AFirmSelID, :ADivisionsSelID, :ABusOrdersSelID,
        :ABusTransactionsSelID, :ABusProjectsSelID, :AVATDateFrom, :AVATDateTo, :ADivisionsWithChilds,
        :ABusOrdersWithChilds, :ABusTransactionsWithChilds, :ABusProjectsWithChilds, :AVATCountry_ID)
    UNION ALL
    SELECT
      VATIndex_ID,
      TAmountWithoutVAT, TAmount, ForeignTAmountWithoutVAT, ForeignTAmount
    FROM
      GroupedVATSummaryPayments(:AFirmSelID, :ADivisionsSelID, :ABusOrdersSelID,
        :ABusTransactionsSelID, :ABusProjectsSelID, :AVATDateFrom, :AVATDateTo, :ADivisionsWithChilds,
        :ABusOrdersWithChilds, :ABusTransactionsWithChilds, :ABusProjectsWithChilds, :AVATCountry_ID)
    )
    GROUP BY VATIndex_ID
    INTO
      :VATIndex_ID, :TAmountWithoutVAT, :TAmount, :ForeignTAmountWithoutVAT, :ForeignTAmount
  DO begin
    SUSPEND;
  end  
END

Generated by ABRA Software a.s. 27.10.2021 16:34:15