Procedura-CashBookDetailedRows

Parametry:

NázevPopisDatový typ
ACashDoc_IDChar(10)
ACashDocRelDefInteger
ALocalRoundingAmountNumeric(15, 2)
ADivisionsSel_IDChar(10)
ADivisionsWithChildrenChar(1)
ABusOrdersSel_IDChar(10)
ABusOrdersWithChildrenChar(1)
ABusTransactionsSel_IDChar(10)
ABusTransactionsWithChildrenChar(1)
ABusProjectsSel_IDChar(10)
ABusProjectsWithChildrenChar(1)

Návratové hodnoty:

NázevPopisDatový typ
VATRate_IDChar(10)
LocalAmountNumeric(15, 2)
LocalAmountWithoutVATNumeric(15, 2)

Závislosti:

NázevPopisTřída
CashBookDetailedRawRowsVrátí skupiny ze zafiltrovaných řádků jednoho dokladu. Každý záznam reprezentuje skupinu za jednu DPH sazbu.Procedures

Tělo:

BEGIN
  /* Ziskani zauctovani... */
  mLocalAmount = ALocalRoundingAmount;
  mLocalAmountWithoutVAT = ALocalRoundingAmount;
  mWithouVAT = 0;
  IF (ALocalRoundingAmount <> CAST(0.00 AS NUMERIC(15, 2))) THEN
    mWithouVAT = 1;
  FOR
    SELECT VATRate_ID, LocalAmount, LocalAmountWithoutVAT
    FROM CashBookDetailedRawRows(:ACashDoc_ID, :ACashDocRelDef, :ADivisionsSel_ID,
      :ADivisionsWithChildren, :ABusOrdersSel_ID, :ABusOrdersWithChildren,
      :ABusTransactionsSel_ID, :ABusTransactionsWithChildren,
      :ABusProjectsSel_ID, :ABusProjectsWithChildren)
    INTO
      :VATRate_ID, :LocalAmount, :LocalAmountWithoutVAT
  DO BEGIN
    IF (VATRate_ID IS NULL) THEN BEGIN
      mLocalAmount = mLocalAmount + LocalAmount;
      mLocalAmountWithoutVAT = mLocalAmountWithoutVAT + LocalAmountWithoutVAT;
      mWithouVAT = mWithouVAT + 1;
    END
    ELSE BEGIN
      /* ostatni sazby se pousteji dal beze zmeny */
      SUSPEND;
    END
  END
  IF (mWithouVAT > 0) THEN BEGIN
    VATRate_ID = Null;
    LocalAmount = mLocalAmount;
    LocalAmountWithoutVAT = mLocalAmountWithoutVAT;
    SUSPEND;
  END
END;

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