citire_fdb.py produce balanta, parteneri si facturi din CONT_BAZA.FDB. Soldurile stocate in CONTURI sunt 0, deci balanta se obtine agregand REGISTRU pe cele trei intervale de data; analiticul se ruleaza in sintetic si se emit ambele randuri; contul colector % se exclude. Conexiune embedded, READ, doar SELECT, rollback. Garzi pe NULL: scadenta lipsa cade pe ultima zi a lunii, codul fiscal lipsa pe codul provizoriu, partenerul intrand in lista pentru cautarea ANAF. Poarta: CSV-ul din FDB e identic la octet cu cel produs de citire_xlsx.py din exportul firmei de joaca (09/2026), iar SUM(REGISTRU) pe fiecare latura da netul balantei. Verificat independent: 10 conturi, 7298.15 pe ambele laturi. Limita, scrisa si in cod si in raport: firma de joaca nu are niciun analitic, deci cititorul e verificat DOAR pe cazul sintetic si nu se foloseste la un client fara rerularea portii pe datele lui. docs/procedura_copie_fdb_client.md: cum isi face clientul copia bazei. 23 de teste trec, fara skip. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EYeAtVxeS8m4oXekjX8Am2
60 lines
2.4 KiB
Markdown
60 lines
2.4 KiB
Markdown
# Copia bazei SAGA pentru conversie (pentru client)
|
|
|
|
Ca sa convertim soldurile avem nevoie de o **copie** a bazei SAGA, nu de baza pe
|
|
care lucrezi zilnic. Copia se face asa incat sa fie `consistenta` (sa se poata
|
|
deschide) si sa nu te deranjeze in lucru.
|
|
|
|
## Ce este baza
|
|
|
|
Baza este un fisier numit `CONT_BAZA.FDB`, intr-un subfolder al instalarii SAGA
|
|
(de exemplu `C:\SAGA\0001\CONT_BAZA.FDB`; `0001` este firma). Dimensiunea creste in
|
|
timp; la firmele mici ajunge la zeci de MB.
|
|
|
|
## Varianta recomandata - backup din SAGA (baza poate rula)
|
|
|
|
1. In SAGA, cauta functia de administrare / intretinere a bazei: ceva de forma
|
|
"Backup baza de date" sau "Salvare baza de date".
|
|
2. Salveaza fisierul rezultat (are de obicei extensia `.fbk`) intr-un folder obisnuit.
|
|
3. Rezultatul este o copie **consistenta** si **mai mica** decat fisierul brut, si se
|
|
face fara sa opresti SAGA.
|
|
|
|
Daca in SAGA nu gasesti functia, foloseste varianta urmatoare.
|
|
|
|
## Varianta cu gbak (daca ai acces la folderul SAGA)
|
|
|
|
Deschide o fereastra de comanda (Start -> scrie `cmd` -> Enter) si ruleaza, pe un
|
|
singur rand:
|
|
|
|
"C:\Program Files\Firebird\Firebird30_Saga\gbak.exe" -b -v "C:\SAGA\0001\CONT_BAZA.FDB" "C:\temp\firma.fbk" -user SYSDBA -password PAROLA_SAGA
|
|
|
|
- inlocuieste `C:\SAGA\0001\CONT_BAZA.FDB` cu calea reala a bazei tale;
|
|
- inlocuieste `C:\temp\firma.fbk` cu unde vrei sa iasa copia;
|
|
- `PAROLA_SAGA` este parola pe care o foloseste SAGA pentru baza (daca nu o stii,
|
|
foloseste varianta cu backupul din SAGA).
|
|
|
|
Fisierul `.fbk` rezultat este mai mic decat baza si se deschide la noi cu o comanda
|
|
asemanatoare (`gbak -c`), fara sa atingem instalarea ta.
|
|
|
|
## Daca preferi sa trimiti fisierul brut `CONT_BAZA.FDB`
|
|
|
|
Atunci trebuie neaparat sa **inchizi SAGA inainte**:
|
|
|
|
1. Inchide SAGA complet (Fisier -> Iesire) si astepta sa se inchida.
|
|
2. Asteapta cateva secunde.
|
|
3. Copiaza `CONT_BAZA.FDB` intr-un folder obisnuit (Copy / Paste).
|
|
|
|
Daca SAGA este pornit in timpul copierii, copia poate iesi **stricata** si nu se mai
|
|
poate deschide.
|
|
|
|
## Cum trimiti
|
|
|
|
- Pune fisierul (`.fbk` sau `.FDB`) intr-o arhiva ZIP, ca sa se trimita mai usor.
|
|
- Trimite arhiva pe canalul obisnuit.
|
|
- Nu modifica si nu redenumi baza.
|
|
|
|
## Ce facem noi cu ea
|
|
|
|
Deschidem doar copia, in mod **citire** (`read-only`), nu modificam si nu scriem
|
|
nimic in ea, si extragem balanta, partenerii si facturile pentru conversie. Baza ta
|
|
originala ramane neatinsa.
|