Import eFactura in lot: borderou cu ce lipseste, coada de contabilizare, alegerea contului
Borderoul tine per factura ce mai are de completat si daca are articole de gestiune (camp gest, coloana si filtru), coada contabilizeaza in serie facturile bifate si incheie cu un rezumat, iar contul de furnizor/client se alege din planul de conturi. Cheia normalizata de articol, rezolvarea automata a partenerului si anularea in bloc intra tot aici. Pozitia in lista se pastreaza peste reaplicarea filtrului. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Aroafxp4z8bmM5oVECZRXY
This commit is contained in:
@@ -1,5 +1,14 @@
|
||||
# Reguli de lucru agent (comune proiectelor ROA VFP)
|
||||
|
||||
0. **Contextul sesiunii principale: te opresti la maxim 250k si salvezi progresul.** Nu e
|
||||
optional si nu se negociaza cu "mai termin o banda". La 250k opresti lucrul, scrii in fisierul
|
||||
de progres starea exacta - ce e gata si testat, ce e scris dar neverificat, ce fisiere sunt
|
||||
lasate intr-o stare intermediara (in special text `.vc2`/`.sc2` fara write-back in binar) si
|
||||
care e primul lucru de facut - si predai unei sesiuni noi. Limita absoluta 275k.
|
||||
Nu estima contextul, masoara-l (`monitorizare-context.md`); daca nu ai masuratoare, opreste-te
|
||||
mai devreme, nu mai tarziu. Orchestrarea multor benzi paralele consuma context mai repede
|
||||
decat pare: fiecare raport de agent, fiecare verificare si fiecare decizie se aduna.
|
||||
|
||||
1. Modificari de cod: diff ca FISIER `docs\diff_runda<N>_<subiect>.patch`
|
||||
(`git diff --no-index <baseline.bak> <editat>`), nu in terminal. **COMMIT-ul** e singurul pas
|
||||
care asteapta aprobarea patch-ului. Write-back-ul in binar (txt2vcx) si testele se fac IMEDIAT
|
||||
@@ -43,6 +52,26 @@
|
||||
propune COMPLETAREA unei functii/tabele/view comune, nu o varianta paralela. 80/20: solutia cea
|
||||
mai simpla care rezolva cazul real. Completeaza `inventar-comun.md` la orice descoperire/creare
|
||||
de element comun nedocumentat.
|
||||
**Scara (ponytail), te opresti la prima treapta care tine** - se aplica si de subagenti, nu doar
|
||||
de sesiunea principala: (1) trebuie sa existe? nevoie presupusa, nu ceruta = nu se scrie, se
|
||||
spune intr-un rand; (2) exista deja in cod (`inventar-comun.md`, `COMUN\`, clasa/procedura din
|
||||
acelasi modul)? refoloseste; (3) o face limbajul (VFP, SQL Oracle) sau o biblioteca deja
|
||||
incarcata in `roacont.prg`? foloseste-o - dependinta noua, niciodata pentru ce tin cateva linii;
|
||||
(4) intra intr-o linie? o linie; (5) abia apoi minimul care merge.
|
||||
Scara scurteaza SOLUTIA, niciodata cititul: intai urmaresti fluxul real prin toate fisierele
|
||||
atinse, apoi alegi treapta. Diff mic in locul gresit nu e economie, e a doua eroare.
|
||||
La eroare: repari cauza in functia comuna prin care trec toti apelantii (`-Grep` pe apelanti
|
||||
inainte de a edita), nu doar calea din raport - o garda intr-un loc e diff mai mic decat o garda
|
||||
in fiecare apelant, si nu lasa fratii stricati.
|
||||
Interzis din oficiu: clasa/interfata cu o singura utilizare, optiune de configurare pentru o
|
||||
valoare care nu se schimba, schele "pentru mai tarziu", generalizare pentru un al doilea caz
|
||||
care nu exista.
|
||||
Nu se simplifica NICIODATA: validarea datelor venite din exterior (XML eFactura, import,
|
||||
raspuns web), tratarea erorilor care pot pierde date, drepturile de utilizator, si ce s-a cerut
|
||||
explicit.
|
||||
Scurtatura deliberata cu plafon cunoscut (blocare globala, scanare O(n2), euristica naiva) se
|
||||
marcheaza cu un singur comentariu `*!* ponytail: <plafonul> - <cum se creste daca deranjeaza>`;
|
||||
e singura exceptie de la regula 2, care interzice justificarile in cod.
|
||||
**Cod nou: clase in `.prg`, nu metode in `.vcx`/`.scx`.** Logica se incapsuleaza intr-o clasa
|
||||
(`Define Class ... As Custom`) dintr-un `.prg`; formularul sau clasa vizuala doar instantiaza
|
||||
obiectul (`Createobject`) si il apeleaza, metoda din binar ramanand un apel de o linie. Sablon:
|
||||
|
||||
Reference in New Issue
Block a user