From 0f6b97ef32713496259eac99b8ce279d945e3df6 Mon Sep 17 00:00:00 2001 From: Marius Mutu Date: Fri, 18 Sep 2026 19:48:16 +0300 Subject: [PATCH] sync SVN r18181 --- TODOS.md | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/TODOS.md b/TODOS.md index 068fb72..50b09a1 100644 --- a/TODOS.md +++ b/TODOS.md @@ -239,3 +239,51 @@ Sursa: `docs/diff-TRANSA-cache-anaf.md`, `docs/handoff_cache_anaf.md`. - **De ce:** SmartBill/Oblio aduc deja tranzactiile automat; "import fisier lunar" imbatraneste in 12-24 luni. - **Contra:** contract cu agregator, consimtamant per client, cost recurent. - **Context:** review C7; motorul din Nivel 1 se scrie independent de sursa. **Efort:** L → M. **Depinde de:** decizie comerciala. + +## Storno eFactura (autoplan) + +## P3 — `anaf_efactura.detalii` pierde diacriticele (Poarta 0, 18.09.2026) +- **Ce:** orice octet non-ASCII din XML ajunge in CLOB ca `¿` / U+FFFD. Reparare propusa: escape in entitati numerice la scriere (`:1085`, `:2154`) + script de refacere din `detalii_zip`. +- **De ce:** PDF-urile/afisarile din `detalii` au `??`; storno ocoleste citind `detalii_zip`. +- **Context:** `docs/poarta0_codificare_detalii.md`. Marius: "nimic acum". **Efort:** S. **Depinde de:** confirmarea `client_charset`. + +## P3 — Storno real in produse (ROAAUTO/ROAFACTURARE) +- **Ce:** actiune "Anulare factura" in produse: document storno in ROA, deblocarea comenzii, trimitere eFactura; refoloseste `StornoXML`. +- **De ce:** borderoul lasa reconcilierea ROA-ANAF manuala (D8); concurentii (SmartBill/Oblio/Saga) au storno intr-un click. +- **Contra:** logica de facturare per produs, efort L. +- **Context:** review CEO 18.09.2026, `docs/plan_storno_efactura_review.md` (E7). **Efort:** L → M. **Depinde de:** livrarea storno-ului din borderou. + +## P3 — Deschiderea facturii ROA din mesajul final al storno-ului +- **Ce:** buton "Deschide factura pentru stergere" dupa trimitere, cand randul are document ROA. +- **De ce:** reduce pasul manual din D8 si riscul ca factura sa ramana in ROA. +- **Contra:** e diferit per produs; contrazice D8 in forma actuala. +- **Context:** review CEO E9. **Efort:** M → S. **Depinde de:** decizia utilizatorului de a redeschide D8. + +## P3 — Detectie B2C independenta de prefix in `SendEfactura` (redeschis: la poarta s-a ales T4) +- **Ce:** `SendEfactura` (`anaf_efactura.prg:949`) cauta literal ``; XML-urile cu alte prefixe pleaca pe `upload` in loc de `uploadb2c`. +- **De ce:** storno-ul primeste parametrul `tlB2C`, dar trimiterea de XML-uri externe din `anaf_efactura_xml` are aceeasi problema. +- **Context:** review CEO, Risc 1. **Efort:** S. **Depinde de:** nimic. + +## P3 — Termenul de transmitere calculat pe zile lucratoare +- **Ce:** avertizarea de termen din forma storno foloseste 5 zile calendaristice de la IssueDate; daca regula legala cere zile lucratoare, calculul cu sarbatori legale. +- **De ce:** avertizare falsa sau lipsa langa weekenduri/sarbatori. +- **Contra:** tabel de sarbatori de intretinut; avertizarea e doar informativa. +- **Context:** review Design 18.09.2026 (Audit Trail #30). **Efort:** S. **Depinde de:** confirmarea regulii legale. + +## P3 — Descarcarea automata a mesajelor dupa trimiterea storno-ului +- **Ce:** dupa trimitere, oferta de descarcare a mesajelor ANAF ca randul storno sa apara in Trimise. +- **De ce:** fara ea utilizatorul nu vede storno-ul in borderou si avertizarea de dublura (D11) nu il prinde. +- **Contra:** ANAF proceseaza cu intarziere; descarcarea imediata poate fi goala. +- **Context:** review Design, Pass 3. **Efort:** S. **Depinde de:** livrarea storno-ului. + +## P3 — Sursa storno exacta la octet din `detalii_zip` +- **Ce:** storno-ul citeste XML-ul din `detalii_zip` (arhiva ANAF) in loc de `detalii`. +- **De ce:** octetii 0x81/0x8D/0x8F/0x90/0x9D (A/I acut, O dublu acut) se pierd la drumul prin Oracle; azi storno-ul se opreste cu mesaj de parsare. +- **Contra:** dezarhivare in plus; D1 numeste `detalii`; cazul e rar (nume maghiare). +- **Context:** review Eng 18.09.2026, Risc 9 din `docs/plan_storno_efactura.md`. **Efort:** S. **Depinde de:** un caz real raportat. + +## P2 — View-urile de potrivire eFactura - jurnal TVA dupa un storno +- **Ce:** randul `nr-S` fara pereche in jurnal si doua facturi ANAF cu acelasi numar (originalul + cea corecta) dau diferente in reconciliere. +- **De ce:** storno-ul din borderou creeaza exact aceste perechi (D7: fara legatura in DB). +- **Contra:** logica de excludere a perechilor anulate in view-uri; atinge `docs/handoff_view_efactura_jurnal_tva.md`. +- **Context:** review Eng 18.09.2026, Risc 7. **Efort:** M. **Depinde de:** primul storno real (poarta P2 din test plan).