SFM/app/pipeline
Raykov-MS cceee02243 Fill the report from the XML only, without the filtering rules
Every rule that emptied a column because the operation code, transfer type or
participant type was not in an allowed list is gone. What is left never loses
data: it assembles a column from several tags, substitutes the zero
placeholder into an empty account column, and clears the ЕИО/ЦП blocks when
the record has no such block at all.

Removed: rules 10, 11, 15 (code validity), 21, 22-24, 26, 28, 31, 36, 39/47,
40, 42-43, 119/122, 124, 125, 141/152/167/178, the ОКАТО-by-country rule, 163,
and the continuation-row validation, which only re-ran the three code checks.

Removing them exposed three defects the rules had been masking, all of them
the other half of the customer's requirement — a value must land in the column
of its own block:

- Columns 40 and 42 pulled the bank name from a foreign block. The tag НаимКО
  sits in six blocks, and short lookup matched the first one, so a record with
  only СведБанкПолучатель filled the payer's column too. 4180 and 6906 wrong
  values on the 03.02.2023 export. Fixed by forbidding short lookup, the same
  way columns 41 and 43 already do it.
- Column 141 pulled the participant address from the cash place block for the
  same reason. All 380 values it held were wrong; the 311 that remain now come
  from the participant's own address block, verified one to one against the
  XML.
- The one-line and structured address versions were treated as mutually
  exclusive: a filled one-line column wiped the structured column and every
  component. That cost 50 structured addresses on this export. Now both are
  kept, and only an exact duplicate of the one-line value is suppressed, so a
  single tag matching both columns is not echoed twice.

Three path typos in mapping_table.json also came out, checked against the
schema: УчастникФлип, СвебИНБОЮЛ and полноеНаимИНБОЮЛ. The first made the
participant one-line address unreachable by its scoped path, which is why it
depended on the leaking short lookup.

On the 03.02.2023 export only 12 columns change and nothing but column 141
goes down. The 5016 cross-check still reports no losses: every value in the
cash receipt, cash payment, status and account columns reaches the report.
2026-09-24 18:03:08 +03:00
..
2026-06-22 07:25:27 +03:00
fix
2026-08-25 15:14:32 +03:00
2026-08-25 14:56:20 +03:00