Folderul docs\ era pana acum in afara oricarui control de versiuni - nici git, nici SVN - desi contine planurile pe puncte, proiectarile si rapoartele de cercetare pe care se sprijina modificarile din cod. O stergere acolo era definitiva. Fisierele intermediare (handoff-uri intre sesiuni, diff-uri deja aplicate) au fost sterse inainte, nu versionate: ce era durabil in ele a intrat in antetele fisierelor de test la care se refereau. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SN8snvkk94KuhWwoXUUey3
100 lines
7.1 KiB
Markdown
100 lines
7.1 KiB
Markdown
# Mockup #13 — v7 -> v8 (rundele 9-11, deciziile 31-42), ce s-a schimbat
|
|
|
|
Fisier atins: `D:\ROA\ROAFACTURARE\docs\mockup_13_formular_unificat.html`. Niciun alt fisier.
|
|
Citire unica a HTML-ului (decizia 33); editarile de mai jos s-au aplicat intr-o singura serie, fara
|
|
recitire intermediara.
|
|
|
|
## Sectiuni atinse
|
|
|
|
- **Eyebrow / marcaj versiune** (linia ~199): `versiunea 7 (runda 8)` -> `versiunea 8 (runda 11)`.
|
|
- **Sectiunea 1** (disclosure-ul din panoul Document): decizia 41 — comutatorul unic „Alte date —
|
|
analitice, delegat si transport, incasare, adresa de facturare, text aditional” s-a despartit in
|
|
**doua** `.disclosure`: unul nou, doar „Incasare” (fara callout numerotat, ca sa nu se renumeroteze
|
|
legenda), cu hint „alocare/dezalocare — comutator propriu”; al doilea pastreaza callout-ul 2 si restul
|
|
campurilor (fara incasare). Legenda callout-ului 2 a fost rescrisa: titlu „Restul, pliat — doua
|
|
comutatoare”, text care explica motivul izolarii (efecte laterale reale doar pe incasare, blocata pe
|
|
document emis prin decizia 25, garda de non-alocare scrisa/testata intr-un singur loc).
|
|
- **Sectiunea 3** (meniul de adaugare): paragraf nou dupa observatia despre „adauga tot” — decizia 39:
|
|
`crsarticole` ramane registrul cantitatii ramase de facturat (folosit la inchiderea automata a
|
|
comenzii/avizului), decuplat de gridul incarcat; cautarea pe server ramane cum era in v7, doar
|
|
bookkeeping-ul se muta intr-un registru propriu.
|
|
- **Sectiunea 4** (Valuta si data cursului): paragraf nou la final — decizia 42: validarea cursurilor
|
|
(`verifica_cursuri_valute`) se restrange la valuta articolului cautat, nu mai ruleaza global la
|
|
deschidere; diferenta de comportament asumata explicit.
|
|
- **Sectiunea 7** (Ce se scrie la Termina): paragraf nou dupa tabel — decizia 35: un singur cod de
|
|
scriere contabila, `scrie_factura2` → `contabilizeaza_articol`, si la emitere si la editare (etapa
|
|
II); canalul `oscrie_in_fisiere` (folosit azi de #6) nu intra in #13.
|
|
- **Sectiunea 8** (Ce trebuie verificat inainte): bulletul „Coordonarea cu #6” (decizia 30) extins cu
|
|
decizia 38 — fluxul de editare al lui #6 nu se retrage, coexista cu regenerarea din #13, decizia
|
|
despre unificare se ia mai tarziu. Bullet nou, mic, pentru decizia 40 — bug-ul de dezalocare POS se
|
|
repara in trecere in S3b, testarea trebuie sa acopere si dezalocarea pe calea veche.
|
|
- **Sectiunea 10** (Contul de venit) — **rescrisa integral**, cum a fost cerut:
|
|
- decizia 24 ramane barata (`<s>`), neschimbata din v7;
|
|
- decizia 27 (tabelul cu cele doua ramuri, gestionabil/negestionabil) neschimbata;
|
|
- **decizia 27-bis (reteta VFP in 4 pasi) e acum barata** (`<s>`), cu explicatia abandonarii
|
|
(decizia 32 → decizia 34) — tiparul vizual e identic cu cel folosit pentru decizia 24 respinsa,
|
|
cerut explicit de mandat;
|
|
- **sectiune noua „Decizia 34”**: coloana noua `VANZARI_DETALII_TEMP.CONT_VENIT`, parametrul nou
|
|
`V_CONT_VENIT` la coada lui `adauga_articol_factura`, cei trei apelanti interni neatinsi
|
|
(BULK COLLECT pe `%ROWTYPE`), ramura noua infasoara `FACT-024`, `descarca_gestiune` o data prin
|
|
constructie, plus bulletul „de retinut la implementare” cu cele doua clase VFP separate
|
|
(`frm_facturare_articole` / `frm_facturare_articole2`), lista de coloane a `scrie_in_vanzari`, si
|
|
excluderea structurala a articolului compus;
|
|
- **sectiune noua „Decizia 36”**: tabel cu sursa lui `SCD` (optiune de firma, implicit `4111`, tiparul
|
|
din `scrie_incasare2`) si `CU_TVA` (derivat din `proc_tvav > 0`, cu riscul gasit la verificarea
|
|
adversariala explicat);
|
|
- **sectiune noua „Decizia 37”**: cheia `RF_CONT_ART_FARA_POL`, fara validare de cont, garda de
|
|
lungime (`ORA-12899`);
|
|
- paragraful „Intrebarea lui Marius, verificata” pastrat (raspunsul nu s-a schimbat fata de v7);
|
|
- **„Ce nu e gratuit” rescris** — cele 4 costuri vechi (specifice retetei in 4 pasi, azi abandonate)
|
|
inlocuite cu 4 costuri noi: regresia pe toata suita, cele doua clase VFP cablate separat, lista de
|
|
coloane a `scrie_in_vanzari`, si absenta validarii pe un cont fara precedent.
|
|
- **Sectiune noua 12** *(vezi corectie mai jos — de fapt 11)*: „Puncte marunte ramase”, tabelul a-k din
|
|
plan, cu nota „se merge pe recomandare daca Marius nu spune altfel”.
|
|
|
|
*Corectie fata de un draft intermediar al acestui raport: sectiunea noua e numerotata corect
|
|
**11** (urmatorul numar liber dupa 10, cum cere regula „nu renumerota sectiunile existente”), nu 12.*
|
|
|
|
## CSS
|
|
|
|
Nicio regula noua, nicio paleta noua. S-au refolosit `pill have` / `pill check`, `<s>`, `table.doc`,
|
|
`.tbl`, `ul.tight` — exact ca in v7. Ordonata list (`ol.tight`) a disparut din document odata cu
|
|
eliminarea retetei in 4 pasi (nu mai exista niciun `<ol>` in fisier), dar selectorul CSS extins la
|
|
`ul.tight, ol.tight` din v7 a fost pastrat neschimbat, pentru refolosire viitoare.
|
|
|
|
## Ce NU s-a atins
|
|
|
|
- Deciziile 31 si 33 nu apar in mockup (reguli de lucru interne, nu decizii de produs), cum a cerut
|
|
mandatul.
|
|
- Decizia 32 nu are sectiune proprie — e reflectata implicit prin explicatia abandonarii retetei in 4
|
|
pasi (barata) din sectiunea 10.
|
|
- Ramura `ntip = 4` / avize / `SCD` pe aviz — **exclusa deliberat**, nu apare nicaieri in mockup (in
|
|
verificare adversariala, conform mandatului).
|
|
- Sectiunile 2, 5, 6, 9 nu au fost modificate — deciziile 31-42 nu le ating continutul.
|
|
|
|
## Verificare
|
|
|
|
- Ambele fisiere exista pe cale absoluta (`docs\mockup_13_formular_unificat.html`,
|
|
`docs\cercetare\mockup_v8_modificari.md`).
|
|
- Tag-uri numarate cu regex pe fisierul final: `div` 148/148, `section` 6/6, `table` 11/11,
|
|
`tbody`/`thead` 11/11, `tr` 56/56, `ul` 2/2, `ol` 0/0 (eliminat odata cu reteta), `p` 58/58,
|
|
`h2` 11/11, `h3` 5/5 — toate echilibrate.
|
|
|
|
## Contradictii / alegeri facute
|
|
|
|
- **Numarul callout-ului pe noul disclosure „Incasare” (decizia 41):** am ales sa NU-i dau un numar de
|
|
callout propriu, ca sa nu renumerotez legenda existenta (1-4) sau sa creez un al 5-lea item de legenda
|
|
pentru un detaliu minor. In schimb am pus un `.hint` inline, dupa tiparul deja folosit in alte locuri
|
|
ale mockup-ului (ex. nota „3 linii · comanda CMD 3312 acoperita 100%”) pentru text explicativ fara
|
|
callout numerotat.
|
|
- **Plasarea deciziei 35:** am ales sectiunea 7 (Ce se scrie la Termina) in loc de o sectiune noua,
|
|
pentru ca tabelul de acolo descrie deja exact ce cod scrie fiecare tip de modificare — decizia 35 e o
|
|
precizare directa pe acel tabel, nu un subiect separat.
|
|
- **Plasarea deciziilor 39/42:** ambele au fost puse ca paragrafe `.meta` la finalul sectiunilor deja
|
|
existente (3, respectiv 4) despre subiectul lor, nu ca sectiuni noi — mandatul preciza ca „se vad in
|
|
formular”, dar niciuna nu schimba un desen existent (spre deosebire de 41), deci text a fost suficient.
|
|
- **Sectiunea 10, „Intrebarea lui Marius, verificata”:** am pastrat-o neschimbata din v7 pentru ca
|
|
raspunsul (ROAACNPRO nu cheama `contabilizeaza_articol`, contractul are `id_pol` din cursor) nu s-a
|
|
schimbat prin nicio decizie a rundelor 9-11 — doar mecanismul prin care se evita `FACT-024` s-a
|
|
schimbat, nu raspunsul la intrebarea de ce nu se aplica si acolo.
|