--- name: roa-domeniu-rutare description: Rutare rapida in domeniul ROA - unde gasesti un obiect sau un flux fara sa scanezi D:\ROA generic. Harta surselor: scripturile DB (D:\ROA\DATABASE\SCRIPTURI_CLAR\\), pachetele Oracle (PACK_FACTURARE = facturare, PACK_PRETURI = politici pret/articole/note vanzari, PACK_CONTAFIN = contabilitate, PACK_SETURI = seturi de note), codul VFP (COMUN\programe, COMUN\clase), notele de cercetare (\docs\cercetare), schema de referinta MARIUSM_AUTO@ROA_CENTRAL. Acopera si lantul notei contabile de vanzare (CRM_POLITICI_PRET_ART -> CRM_POLITICI_PRETURI -> CRM_NOTE_VANZARI -> NOTE_CONTABILE) si spatiul ID_SET (doua lucruri distincte: set de contare 25000+tip vs nota contabila NOTE_CONTABILE.ID_SET). Foloseste-l OBLIGATORIU cand investighezi facturare, articole, preturi, comenzi, politici de pret, note contabile, id_set, crm_note_vanzari, sau cand nu stii unde sta un obiect/coloana/pachet DB si ai fi tentat sa cauti generic in D:\ROA. --- # Rutare in domeniul ROA: unde cauti, fara scanari generice Cand nu stii unde sta un obiect sau ce flux atinge o zona, deschide mai intai harta de mai jos. Nu cauta generic in `D:\ROA` - sursele sunt localizate. ## Harta surselor (mergi direct) | Cauti | Mergi direct la | |---|---| | DDL / pachete / triggere / secvente Oracle | `D:\ROA\DATABASE\SCRIPTURI_CLAR\\\*.sql` (SVN) | | schema de referinta (dev) | `MARIUSM_AUTO@ROA_CENTRAL` -> `conventie_mediu_oracle.md` | | productia unui client | tunel SSH -> `conexiuni-tunel-ssh-odbc.md` (skill `roa-oracle-production-access`) | | pachet facturare (`scrie_nota`, `cursor_articol`, `cont_venit_articol_stoc`) | `PACK_FACTURARE` | | politici pret / articole / note de vanzari (`gaseste_creeaza_nota_vanzare`, `salveaza_pret_nomenclator`, `sterge_nota_vanzare`) | `PACK_PRETURI` | | contabilitate (`SCRiE_IN_ACT`, situatii, jurnale TVA) | `PACK_CONTAFIN` | | seturi de note / copiere set | `PACK_SETURI` | | actualizare versiune scripturi | `PACK_MIGRARE.UpdateVersiune` | | cod VFP - proceduri / clase `.prg` | `\COMUN\programe\*.prg` | | cod VFP - formulare `.vcx`/`.vc2` | `\COMUN\clase\*.vc2` -> skill `roa-vfp-text-edit` | | cercetare incheiata pe un subiect | `\docs\cercetare\*.md` | | export sursa de pachet pentru grep | `COMUN\docs\*.pck` | ## Fluxurile de domeniu deja documentate (deschide-le, nu le recauta) - `tipuri_documente_facturare.md` - `VANZARI.TIP` + seturile de contare `ID_SET` (25000 + tip). - `flux-modificare-stergere-nota-jurnal.md` - PACK_CONTAFIN, ACT/RUL, modificare/stergere nota. - `machete-note-xrequest-explicatii.md` - XREQUEST/XNOTE (ce campuri cere o operatie la introducere). - `fluxul_svn_git.md` - SVN <-> git. ## Lantul notei contabile de vanzare `CRM_POLITICI_PRET_ART.ID_NOTA -> CRM_POLITICI_PRETURI.ID_NOTA -> CRM_NOTE_VANZARI.ID_NOTA`; liniile sablonului: `CRM_NOTE_VANZARI.ID_SET -> NOTE_CONTABILE.ID_SET` (SCD/ASCD/SCC/ASCC). ## Spatiul ID_SET - doua lucruri distincte (usor de confundat) 1. **Set de contare** `XSETS.ID_SET = ACT.ID_SET`, valoare `25000 + tip` - documentat in `tipuri_documente_facturare.md`. 2. **Nota contabila** `NOTE_CONTABILE.ID_SET = CRM_NOTE_VANZARI.ID_SET` - liniile sablonului de nota. Generatoare pentru (2): `SEQ_CRM_NOTE_ID_SET` (trigger pe CRM_NOTE_VANZARI) si `SEQ_XSETS` (XSETS, valori >= 1000000), plus seturi predefinite (< 1000000, puse manual de programator). Fix 2026-09-17 (`ff_2026_09_17_03_COMUN_ID_SET_UNIC.sql`): un singur generator `SEQ_XSETS`, coloane `ID_SET` din `crm_note_vanzari`/`note_contabile` largite `NUMBER(6) -> NUMBER(10)`. Capcana: `sterge_nota_vanzari` face `delete from note_contabile where id_set`; indexul pe `NOTE_CONTABILE.ID_SET` e NONUNIQUE, deci o coliziune sterge silentios si randurile unui set predefinit. ## Referinta (doar la nevoie) - `COMUN\docs\conventie_mediu_oracle.md`, `conexiuni-tunel-ssh-odbc.md`, `scripturi-migrare-db.md`.