Files
solduri2roa/docs/raport_genxlsx.md
Marius Mutu 4c59a103c9 Analitic cu sold pe latura opusa: FACTURA cu suma negativa
Analiticul unui cont cu parteneri al carui sold e pe latura opusa laturii
fixate in cod primeste rand FACTURA, cu suma negativa pe latura
formularului (BALANTA si sold). Nu mai ramane nimic pe NEREPARTIZAT.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BdA5a3ECKFD6Citf1ptPZu
2026-09-21 00:14:07 +03:00

3.3 KiB

Raport lane genxlsx (v3)

Script: genereaza_xlsx.py. Produce pentru fiecare firma xlsx-ul de initializare (init_<FIRMA>_2025_12.xlsx, un sheet, randul 1 = capul de tabel, fara instructiuni/exemple) si raportul de verificare (docs/verificare_<FIRMA>.md).

Livrabile

  • init_FUNDATIA_2025_12.xlsx - 75 randuri (47 BALANTA, 28 FACTURA)
  • init_MASTER_2025_12.xlsx - 80 randuri (46 BALANTA, 34 FACTURA)
  • docs/verificare_FUNDATIA.md, docs/verificare_MASTER.md
  • genereaza_xlsx.py

Rezultate verificari (toate OK)

Firma SUM(totdeb)=SUM(totcred) frunze pierdute parteneri lungimi/dubluri
FUNDATIA 7068369.50 = 7068369.50 (net 0.00) 0 OK OK
MASTER 2318572.11 = 2318572.11 (net 0.00) 0 OK OK

Corectia v3 (fata de v2)

Analiticul cu sold pe latura opusa laturii fixate de formular (frm..sc2:379) NU mai este sarit. Primeste rand FACTURA, iar suma se scrie cu semn negativ pe latura formularului:

  • randul BALANTA al analiticului: totdeb = -|sold| (daca latura formularului e D) sau totcred = -|sold| (daca e C), cealalta latura goala;
  • randul FACTURA: sold = -|sold|, pe aceeasi latura si cu acelasi acont ca BALANTA.

Soldul ramane pe latura corecta, SUM(totdeb) = SUM(totcred) se pastreaza (ambele laturi scad cu aceeasi suma), randul FACTURA consuma exact randul BALANTA si nu mai ramane nimic pe NEREPARTIZAT. Regula se aplica general, la orice cont cu parteneri. Pretul acceptat: nota contine o suma negativa.

Efecte pe MASTER: +1 rand (FACTURA pentru 5121.01), iar SUM(totdeb)/SUM(totcred) scad cu 20.80 si ajung exact peste Totaluri.total_d/total_c din PDF (diferenta 0.00, fata de 20.80 in v2).

Ce ramane pe NEREPARTIZAT, per cont (sectiunea 3 din verificari)

net sintetic - SUM(sold FACTURA cu semn) = postare directa pe sintetic. Rezultat: toate conturile ies 0, mai putin MASTER 5121:

cont SUM FACTURA net sintetic postare directa NEREPARTIZAT asteptat diferenta
MASTER 5121 15578.45 15730.61 +152.16 152.16 152.16
  • MASTER 5121.01 PIRAEUS BANK - RON (sold creditor 20,80): BALANTA acont 01 totdeb=-20.80
    • FACTURA acont 01 sold=-20.80 -> se consuma exact, fara NEREPARTIZAT.
  • MASTER 5121 postare directa +152.16: rand BALANTA 5121 acont 99 DIFERENTA SINTETIC SAGA (fara FACTURA) -> NEREPARTIZAT.

Analitice cu semn negativ (sectiunea 4 din verificari)

Firma cont analitic sold (semnat) latura formularului
MASTER 5121 5121.01 -20.8 D
FUNDATIA - niciunul - -

Randuri de diferenta (pct. 13-15) generate

  • MASTER 117 (nepartener): +2635.87 -> rand BALANTA cont 117, acont 99, nume DIFERENTA SINTETIC SAGA.
  • MASTER 5121 (banca): +152.16 -> rand BALANTA cont 5121, acont 99, fara FACTURA.
  • FUNDATIA: niciunul (1171.01 are diferenta net zero - doar netare SAGA).

Observatii

  • FUNDATIA: SUM(totdeb) difera de Totaluri.total_d din PDF cu +739831.67 (gross-ul sinteticelor netate de SAGA nu se poate reconstrui din frunze); netul coincide exact.
  • MASTER: dupa corectia v3, SUM(totdeb) = Totaluri.total_d = 2318572.11 (diferenta 0.00).
  • Coloana explicatia (control D/C) este goala in xlsx-ul final.
  • Nu s-a facut niciun commit.