Skip to content

ATS-ACC-BAT-020Post and reverse fiscal-close system batches: Capability Test Specification

Markdown

ATS-ACC-BAT-020

Post and reverse fiscal-close system batches: Capability Test Specification

Markdown
  • DocumentProposed
  • Product intentProposed

KindAcceptance test setProduct areaAccountingModuleBatch ManagementRevision2

Read atservices-accounting f47cb263react-console baf6dae3rhythm-v2-docs 37405d50

Post and reverse fiscal-close system batches: Capability Test Specification ​

Coverage ​

The scenarios define focused checks for this outcome. The coverage map distinguishes specified checks from unresolved proof; executable bindings identify inspected assertions and carry no execution result.

Fiscal collections reject ordinary controls. Fiscal close blocks ordinary recovery. Fiscal reopening restores pending releases. These checks use the related capability’s outcome as part of the setup or verification. Unbound interactions remain proposed until a suite executes the complete chain.

Coverage

  • Rule covered
  • Transition gap: FND-ACC-BAT-074
  • Validation covered
  • Permission not-applicable
  • Edge covered
  • Failure covered
  • Boundary gap: FND-ACC-BAT-074
  • Concurrency gap: FND-ACC-BAT-074
  • Invariant covered
  • Interaction covered

Test Scenarios

11 scenarios proving CAP-ACC-BAT-020; 7 bound to an existing test.

01 Close submissions are keyed and repeatable after reopeninginvariantapinegativetest
Proves
BR-CAP-ACC-BAT-020-01 BR-CAP-ACC-BAT-020-02 INV-DOM-ACC-BAT-003-07
Preconditions
An Open period has recognition entries due.
Steps
Post its system batch, repeat the key with unchanged and changed entries, then reopen and submit a new key.
Expected
The initial post uses the period context; equivalent replay writes nothing, changed replay fails and re-close reuses the batch with fresh entry references.
Data
Provide close fixtures.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/close/post-system-batch.integration.spec.js#writes the batch already posted, in the period, named and dated as given
02 System-entry inputs must be validvalidationunitnegativetest
Proves
BR-CAP-ACC-BAT-020-03
Preconditions
No special setup is necessary.
Steps
Submit unbalanced, too-short, negative, over-precision, duplicate, foreign-unit, empty and out-of-period entries.
Expected
Each invalid submission reports its specific refusal.
Data
Provide no fixtures beyond the stated setup.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/close/post-system-batch.integration.spec.js#refuses unbalanced entries (`entry_unbalanced`)
03 Fiscal state controls recognition and reversalruleapinegativetest
Proves
BR-CAP-ACC-BAT-020-04
Preconditions
Periods represent Open, Closing, Closed and Reopening.
Steps
Apply strict checks, system posting, recognition, reversal and unrecognition.
Expected
Posting and recognition allow Open or Closing; reversal and unrecognition allow Closed or Reopening.
Data
Provide period statuses.
Bound to
Source
services-accounting:modules/batches/tests/unit/close/close-rules.spec.js#refuses system_reversal in a period that is open (period_not_closed)
04 Close recognises due entries atomicallytransitionapinegativetest
Proves
BR-CAP-ACC-BAT-020-05 BR-CAP-ACC-BAT-020-06 INV-DOM-ACC-BAT-005-05
Preconditions
Two schedules include a late-booked July entry.
Steps
Close successive months and attempt recognition outside a transaction.
Expected
Each close recognises due entries, including the earlier straggler; the final close completes both schedules and the standalone call fails.
Data
Provide close fixtures.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/close/revenue-recognition.integration.spec.js#sweeps in B's back-dated July entries with A's and B's August entries
05 Reopen reverses only the selected recognition periodinteractionbrowsertest
Proves
BR-CAP-ACC-BAT-020-07 BR-CAP-ACC-BAT-020-08
Preconditions
September has closed.
Steps
Reopen it.
Expected
Reversal entries accompany retained originals, the posting is reversed and batch Open; September recognition resets while earlier months remain recognised.
Data
Provide a closed period.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/close/reverse-system-batch.integration.spec.js#writes a reversing entry for each entry, debits and credits swapped, and keeps the originals
06 System reversal rejects invalid targetsedgeapinegativetest
Proves
BR-CAP-ACC-BAT-020-09 BR-CAP-ACC-BAT-020-10
Preconditions
Targets include an ordinary posting, a reversed system posting and an already-posted system batch.
Steps
Reverse the first two and submit another post for the third.
Expected
Ordinary reversal fails; repeated reversal writes nothing; reposting without reopening reports the posted-system refusal.
Data
Provide close fixtures.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/close/reverse-system-batch.integration.spec.js#refuses a transaction batch's posting (`not_a_system_batch`)
07 Closed periods protect both ordinary and system recordsinteractionbrowsernegativetest
Proves
BR-CAP-ACC-BAT-020-11
Preconditions
An invoice batch posted before its month closed.
Steps
Unpost the invoice batch and invoke every action on the period’s system batch.
Expected
The period guard blocks ordinary recovery and system-batch guards reject all staff actions.
Data
Provide the acceptance workspace.
Bound to
Source
react-console:acceptance/accounting/playwright/journeys/batches-posting/ACT-ACC-0528.spec.ts#ACT-ACC-0528
08 Fiscal collections reject ordinary controlsinteractionapinegativeproposed
Proves
BR-CAP-ACC-BAT-004-09 BR-CAP-ACC-BAT-020-11
Preconditions
Fiscal close has produced a Posted deferred-revenue system batch.
Steps
Retrieve its ordinary actions and attempt Close, Archive and Unpost.
Expected
The action list is empty and each attempted ordinary action is refused without changing fiscal entries.
Data
An isolated workspace with the stated business-unit calendar, documents and configuration.
Source
services-accounting:modules/batches/tests/e2e/system-batches.e2e.spec.js#offers an administrator no action for the system batch; react-console:acceptance/accounting/playwright/journeys/batches-posting/ACT-ACC-0528.spec.ts#ACT-ACC-0528
09 Fiscal close blocks ordinary recoveryinteractionapinegativeproposed
Proves
BR-CAP-ACC-BAT-016-08 BR-CAP-ACC-BAT-020-11
Preconditions
A posted ordinary batch belongs to a Closed period with a system batch.
Steps
Attempt ordinary recovery and inspect both the ordinary and system accounting.
Expected
Recovery is refused; both postings and their entries stay intact.
Data
An isolated workspace with the stated business-unit calendar, documents and configuration.
Source
services-accounting:modules/batches/tests/integration/services/close/posting-period-guard.integration.spec.js#refuses the batch action `unpost` (`period_not_open`), submitting no job; react-console:acceptance/accounting/playwright/journeys/batches-posting/ACT-ACC-0528.spec.ts#ACT-ACC-0528
10 Fiscal reopening restores pending releasesinteractionapiproposed
Proves
BR-CAP-ACC-BAT-019-08 BR-CAP-ACC-BAT-020-08
Preconditions
A current deferred plan has due entries in three successive periods.
Steps
Recognise the periods, reopen the final period and inspect plan status and fiscal entries.
Expected
Only the selected releases become pending again; earlier recognition remains and mirrored system entries accompany the retained originals.
Data
An isolated workspace with the stated business-unit calendar, documents and configuration.
Source
services-accounting:modules/batches/tests/unit/rules/schedule-truncation.spec.js#inverts the nine unrecognised months at half each on their own dates and nothing for the recognised three; services-accounting:modules/batches/tests/integration/services/close/revenue-recognition.integration.spec.js#un-recognizes A's and B's September entries and opens both schedules again
11 Fiscal accounting rolls back as one caller transactionfailureapinegativeproposed
Proves
BR-CAP-ACC-BAT-020-06 BR-CAP-ACC-BAT-020-07
Preconditions
A current deferred plan has due releases and the fiscal caller transaction has a controlled write failure.
Steps
Recognise and post within that transaction, force the failure, then read schedule and system records from another transaction.
Expected
No partial recognition or new fiscal generation remains after rollback.
Data
Owned records in an isolated workspace with the stated calendar and accounting setup.
Source
services-accounting:modules/batches/tests/integration/services/close/revenue-recognition.integration.spec.js#refuses recognition outside a transaction (`transaction-required`); services-accounting:modules/batches/tests/integration/services/close/reverse-system-batch.integration.spec.js#writes a reversing entry for each entry, debits and credits swapped, and keeps the originals

The Markdown files under specs/ in rhythmsoftware/rhythm-v2-docs are the canonical source of truth. This reader is a generated, read-only projection of them.