3.1 KiB
Export surse Oracle (PACK_CONTAFIN & co.) — cum se face
PACK_CONTAFIN.pck din acest folder este exportul sursei pachetului PL/SQL PACK_CONTAFIN.
Claude Code își face singur exportul/reîmprospătarea — nu mai e nevoie de export manual din
PL/SQL Developer.
Conexiune
- Client:
D:\ROA\instantclient_19_18\sqlplus.exe(TNS_ADMINe deja setat spre același folder). - Alias TNS:
ROA_CENTRAL→10.0.20.121:1521,SERVICE_NAME=ROA(vezitnsnames.ora). - Schema/utilizator:
MARIUSM_AUTO(schema de dezvoltare a lui Marius). - Parola nu e versionată — se află local, în
D:\ROA\ROAGEST\docs\local\oracle.md(folder ignorat de git), pe mașina de lucru.
PACK_CONTAFIN există în schemele MARIUSM_AUTO (dev) și ACN, plus un sinonim PUBLIC.
Exportul de referință se face din MARIUSM_AUTO.
Gotcha sqlplus pe Windows/PowerShell
Nu trimite SQL prin pipe din PowerShell ('select...' | sqlplus) — BOM-ul UTF-16 sparge parserul
(SP2-0734: unknown command beginning "select..."). Scrie un fișier .sql cu encoding ASCII
și rulează-l cu @fisier.sql.
Comanda de export (re-generare .pck)
-- export_pack.sql
set pagesize 0 linesize 400 trimspool on feedback off heading off termout off
spool D:\ROA\ROAGEST\COMUN\docs\PACK_CONTAFIN.pck
select text from all_source where owner='MARIUSM_AUTO' and name='PACK_CONTAFIN' and type='PACKAGE' order by line;
select '/' from dual;
select text from all_source where owner='MARIUSM_AUTO' and name='PACK_CONTAFIN' and type='PACKAGE BODY' order by line;
select '/' from dual;
spool off
exit
& 'D:\ROA\instantclient_19_18\sqlplus.exe' -L -S 'MARIUSM_AUTO/<parola>@ROA_CENTRAL' '@export_pack.sql'
Același tipar merge pentru orice alt pachet/procedură (PACK_SESIUNE, PACK_PRETURI, …) sau pentru
DDL de tabele/view-uri (all_tab_columns, dbms_metadata.get_ddl).
Ce e strict necesar de știut despre PACK_CONTAFIN
Pachetul central de scriere a documentelor — clientul VFP populează tabelele temporare
ACT_TEMP/RUL_TEMP (prin oscrie_in_fisiere-ul din COMUN), apoi pachetul distribuie:
SCRIE_IN_FISIERE— orchestratorul (apelat per document).SCRIE_IN_ACT—ACT_TEMP→ACT(notele contabile).SCRIE_IN_RUL—RUL_TEMP→RUL(mișcările de stoc); completeazăCOD,DATAORA,ID_FACT(min.id_factfără conturi 5xx),ID_SUCURSALA,DATAIN/DATAOUTdindataact, opționalID_RUL_AUXpe furnizor (opțiunea de firmăRULAJFURNIZOR). Scrie exact ce e în RUL_TEMP — nu derivă rulaje din ACT, deci filtrarea liniilor de rulaj se face în clientul VFP.SCRIE_IN_RUL_OBINV/SCRIE_IN_STOC/SCRIE_IN_STOC_OBINV— variantele pentru obiecte de inventar și actualizarea stocului.VERIFICA_NOTE_CONTABILE,SCRIE_JC_2007/SCRIE_JV_2007(jurnale TVA),SCRIE_IN_BALANTA(_PARTENERI),sterge_document,finalizeaza_document_*.- Stare de sesiune prin settere/gettere (
SET_COD/GET_COD,SET_IDFACT,SET_ID_SUCURSALA, …)PACK_SESIUNE(an/lună, opțiuni firmă).