- import_nota / import_adauga_factura: flux unificat note contabile + articole, sincronizare automata, total factura automat, TVA impartit pe conturile creditoare ale notelor (rundele 1-31) - runda 32: totalurile import_nota pe _label/_textbox din _baza.vcx (Arial 10), fara containerele clb_tx_simplu si fara bifa "Recalculeaza TVA" (recalcul mereu automat); "Sincronizeaza facturile secundare" mutata sub butoane - utile/Teste: harness UI VFP headless (vfp_ui_harness.ps1, ui_harness.prg, precompilare, mock-uri) in radacina; suitele e2e pentru achizitia din import grupate in utile/Teste/achizitie_import/ - docs: flux editare text vcx/scx, testare-ui-vfp si testare-vfp-mcp (mutate din ROAGEST, general valabile), inventar comun, orchestrare subagenti, conventie GO recno, depanare testare VFP Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019DGibQKa5uK4P2TNSFFQNh
475 B
475 B
Conventie: GO pe Recno() capturat
SELECT-SQL ... FROM cursor lasa pointerul cursorului sursa pe EOF, deci un Recno() capturat dupa aceea poate fi Reccount()+1 -> GO da "Record is out of range".
Regula: nu folosi GO direct pe un recno primit ca parametru sau capturat anterior; impacheteaza-l:
TRY
GO tnRecNo
CATCH
GO TOP
ENDTRY
Preferabil, unde exista cheie de rand (ex. doc_key): repozitionare prin LOCATE pe cheie in loc de recno absolut.