Procedura-GetFirstPeriodForBankAccount

Parametry:

NázevPopisDatový typ
IN_DATE_FROM$DATEFloat(0, 0)
IN_DATE_TO$DATEFloat(0, 0)
IN_BANKACCOUNT_IDChar(10)

Návratové hodnoty:

NázevPopisDatový typ
OUT_PERIOD_IDChar(10)

Závislosti:

NázevPopisTřída
GetFirstPeriodByDatesVrátí první možné období dle zadaných datumů. Zohledňuje první možné období kvůli pokladnám (které začínají od určitého období)Procedures

Tělo:

BEGIN
  SELECT A.firstopenperiod_id, A.lastopenperiod_id
  FROM bankaccounts A
  WHERE A.id = :IN_BANKACCOUNT_ID
  INTO FIRST_OPEN_PERIOD_ID, LAST_OPEN_PERIOD_ID;
  SELECT rperiod_id
  FROM getfirstperiodbydates(:IN_DATE_FROM$DATE, :IN_DATE_TO$DATE, :FIRST_OPEN_PERIOD_ID)
  INTO OUT_PERIOD_ID;
  IF (OUT_PERIOD_ID IS NOT NULL) THEN BEGIN
    SELECT COUNT(*)
    FROM bankaccounts2
    WHERE parent_id = :IN_BANKACCOUNT_ID AND period_id = :OUT_PERIOD_ID
    INTO RECORD_COUNT;
    IF (RECORD_COUNT = 0) THEN BEGIN
      OUT_PERIOD_ID = LAST_OPEN_PERIOD_ID;
    END
    SUSPEND;
  END
END;

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