- 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
16 lines
475 B
Markdown
16 lines
475 B
Markdown
# 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:
|
|
|
|
```foxpro
|
|
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.
|