Specificatie minima cu datele de care depinde facturarea ROA, pentru caietul de sarcini al modernizarii RoRIS. Include: - DOCUMENTATIE_DATE_FACTURARE_RORIS.md/.docx (livrabil) - dictionar_date_facturare.csv (anexa tehnica) - PACK_ACN_IMPORT.pck (sursa analizata) - CLAUDE.md (context) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
5.2 KiB
CLAUDE.md
Context pentru asistarea pe acest folder. Citește înainte de a relua lucrul.
Ce este acest folder
Folder de lucru pentru o documentație de modernizare RoRIS cerută de ACN. Autorul/clientul
este Marius Mutu (ROMFAST SRL) — firma care a dezvoltat ERP-ul de facturare ROA
(aplicația ROAACNPRO). ACN a depus cerere de finanțare pentru modernizarea sistemului RoRIS
și are nevoie de o specificație cu datele de care depinde facturarea, ca să o impună în caietul de
sarcini către firma care va face modernizarea.
Arhitectura sistemelor (de reținut)
- RoRIS = sistemul sursă (date operaționale tranzit barje/nave, ecluzări, acostări). Bază de date SQL Server.
- ROA (
ROAACNPRO, dezvoltat de ROMFAST) = ERP-ul de facturare. Bază de date Oracle, aplicație Visual FoxPro 9. - ROA (Oracle) preia datele din RoRIS (SQL Server) printr-un database link (gateway heterogen
Oracle → SQL Server,
RORISSQL). Importul e o copiere (merge) în tabele Oracleips_*. Nu există API/REST — clientul vrea explicit să păstreze acest model, nu să-l înlocuiască.
Fișierele din acest folder
PACK_ACN_IMPORT.pck— pachetul Oracle care importă din RoRIS în ROA (sursa analizei).DOCUMENTATIE_DATE_FACTURARE_RORIS.md— livrabilul principal (specificație minimă, în română, ton impersonal). Structură: 1) Principiu integrare; 2) Entități + nomenclatoare (2.1); 3) Câmpuri esențiale; 4) Impact asupra facturării (tabel de riscuri).DOCUMENTATIE_DATE_FACTURARE_RORIS.docx— versiunea Word, generată din .md (vezi mai jos).dictionar_date_facturare.csv— anexă tehnică, dicționar complet de câmpuri (delimitator;, se deschide nativ în Excel România).
Sursa de adevăr (codul ROA real)
Programul de facturare e în D:\ROA\ROAACNPRO. Pentru detalii de cod, relevante:
D:\ROA\ROAACNPRO\PACK_ACN_IMPORT.pck(copie și aici) — ce entități se importă.D:\ROA\ROAACNPRO\Programe\proceduri_acnpro.prg— calcul/salvare facturare; rapoarte de indicatorivizualizare_tranzit_nave(~linia 228) șivizualizare_cheiaj_nave(~383); distribuția pe ecluze (completeaza_regdoc_tranzit, ~2259–2606); tarifeips_tarife_tranzit(vizualizare_tarife_tranzit, ~4820).D:\ROA\ROAACNPRO\database.txt— sinonime/granturi RoRIS.D:\ROA\ROAACNPRO\docs\fluxuri_calcul_facturare.mdșidocs\facturare.md— fluxuri de calcul.D:\ROA\ROAACNPRO\CLAUDE.md— ghidul aplicației ROA.
Constatări cheie (deja încorporate în documentație)
- Ecluzele se potrivesc pe DENUMIRE, nu pe
id_lock. Codul filtreazălock_name LIKE '%AGIGEA%'/'%CERNAVODA%'/'%OVIDIU%'/'%NAVODARI%'șichamber_nameexactSAS1/SAS2(canal principal CDMN) sauC1/C2(canal PAMN, Năvodari).id_lockpoate fi orice. Camera trebuie obligatoriu completată (existăverificare_roris_ecluze.execare semnalează lipsurile). - ID-urile entităților din RoRIS trebuie stabile în timp. Sunt folosite ca FK în tarife, contracte și vânzările deja facturate → relistarea facturilor istorice depinde de ele.
- Nomenclatoarele de grupare/tarifare NU există în RoRIS — sunt create în ROA și referă prin
ID entitățile RoRIS: grupe tip navă (
ips_grup_tip_nave), grupe marfă (ips_goods_groups), UM (ips_vas_um), echivalențe (ips_vas_echivalent), dane (ips_dane), tarifele (ips_tarife_tranzit). Tariful de tranzit se alege pe combinația grupă tip navă + grupă/tip marfă + rută + capacitate, totul pe ID-uri RoRIS. Dacă RoRIS schimbă ID-urile de bază, configurarea din ROA se desincronizează. - Entități importate din RoRIS (12): contacts, countries, goods (RISGOODS), vessels,
vessel_types (RIS_VES_TYPES), route_points, voyages, voyage_members, cargoes, voyage_locks
(VOYAGE_LOCK), berthings;
ips_routese generat în ROA din voyage_members + route_points.
Cum se regenerează DOCX din MD
Nu există pandoc; există Word 2010 (COM). Workflow: MD → HTML curat → Word salvează ca .docx.
Scriptul convertor (_md2docx.ps1) se creează ad-hoc, se rulează și se șterge după (e temporar,
nu se păstrează în folder). Pași:
- Scrie
_md2docx.ps1(convertor MD→HTML cu suport pentru titluri, tabele, bold,cod, blockquote, liste; apoi Word COMSaveAsformat 16 = .docx). - Salvează întâi într-un
_doc_new.docx, apoiMove-Itempeste cel final (dacă fișierul final e deschis în Word, e blocat — anunță utilizatorul să închidă Word). - Șterge fișierele temporare
_md2docx.ps1,_doc_new.docx,_doc_tmp.html.
Verificare: documentul Word este uneori deschis în IDE/Word și blochează suprascrierea.
Preferințe ale utilizatorului (din interacțiuni)
- Documentație minimă, lizibilă pentru oameni, nu restrictivă/verbose.
- Ton impersonal — fără adresare cu „tu".
- Folosește terminologia din sistem (ex.
TRN, nu „NRT"). - Accent pe afectarea cât mai mică a facturării și pe păstrarea modelului actual (import din vederi RoRIS, fără API/REST); dacă e nevoie de strat de compatibilitate, de menționat că trebuie prevăzut în buget.
- Limba documentelor: română.