Lucru cu BD in FIREBIRD

Retea, baze de date, salvari, restaurari etc.
Mesaj
Autor
simiona991
Mesaje: 5
Membru din: Joi Noi 21, 2024 9:05 am

Lucru cu BD in FIREBIRD

#1 Mesaj de simiona991 »

Buna ziua !

Urmeaza sa instalam SAGA si sa migram ceva date din alte aplicatii de CONTA, SALARII, IMOBILIZARI.

Am ales un sistem de administrare BD care vede foarte bine baza de date SAGA.
Folozind SQL, voi migra datele privind SOLDURILE Initiale, in special, caci nu exista o functie de Import pt asta Sau nu am gasit-o eu.

Mi-e teama sa nu fie ceva informatii ascunse care sa faca inoperabila SAGA dupa ce schimb inregistrarile din unele tabele ale BD.
De exemplu, sa fie inregistrat undeva nr inregistrarilor din tabela X si cand eu adaug in SQL o inregistrare in tabela X, BD sa devina inconsistenta, pentru ca numarul inregistrarilor ascuns undeva nu a fost actualizat.

Are cineva informatii despre astfel de lucruri ?

Mai e cineva interesat de lucru direct in BD Saga unde sa modifice date, sa extraga date ?

Numai bine tuturor !

Avatar utilizator
chirigiui509
Mesaje: 213
Membru din: Mar Iun 06, 2017 11:16 pm
Localitate: Petrosani
Contact:

Re: Lucru cu BD in FIREBIRD

#2 Mesaj de chirigiui509 »

Trecerea la SAGA este o bună alegere. Cu privire la preluarea datelor din alte aplicații există multe posibilități și se pare că deja ați găsit calea :).
Înainte de importul de date s-ar impune o analiză de consistență a informațiilor preluate.
În funcție de utilitarul de care-l folosiți pentru a scrie informațiile, o analiză amănunțită v-ar ajuta să înțelegeți și relațiile între tabele. Spun asta pentru că dacă tot vă pricepeți (...) ar fi păcat să nu preluați tot istoricul (chiar dacă vă poate da bătăi de cap).
V-aș recomanda totuși să începeți de aici https://manual.sagasoft.ro/sagac/topic-12-preluare-date-contabile.html iar dacă nu aveți foarte multe înregistrări, să optați pentru introducerea manuală sau, ulterior acesteia să observați/analizați datele scrise.
Pentru multe alte tipuri de setări/informații inițiale există funcții de import (merită studiat subiectul) ...de exemplu tabelele de terți.

Există și posibilitățile descrise aici https://manual.sagasoft.ro/sagac/topic-76-import-date.html și cu puțină imaginație și tehnică, tabele de import ar putea fi generate prin popularea cu informații prelucrate din alte serii de date.
Cred că metoda IMPORTULUI ar fi cea mai sigură cale (pentru început) întrucât structura relaționară a tabelelor este relativ complexă.
Pentru că nu aveți un "template populat" vă puteți crea unul prin culegerea manuală a câtorva serii de date, ulterior EXPORT și mai apoi studiați forma fișierelor generate. Veți găsi acolo niște DBF-uri dar cu siguranță vă descurcați și cu asta.
Generați propriile fișiere de IMPORT (structura o găsiți în help-ul aplicației iar pentru modalitatea de încărcare a datelor ...am explicat mai sus) și mai apoi, in urma IMPORTULUI DE DATE ar trebui să ajungeți în punctul în care vă doriți.
Desigur, operațiunile reclamă pricepe în lucrul cu baze de date dar se pare că dumneavoastră nu vă lipsește asta.

Cu privire la SAGA, din proprie experiență vă spun că funcționalitățile nu vor conteni să vă surprindă plăcut. Teoria ne spune că nu există programe perfecte ci doar perfectibile dar ecosistemul evoluează constant iar tendința de automatizare este din ce în ce mai evidentă.
În plus, așa cum spuneam, veți găsi aici (pe forum) oameni deosebiți ale căror postări constituie încă și pentru mine o permanentă sursă de inspirație.

Succes și bun venit în această mare familie!

ionescug551
Mesaje: 352
Membru din: Mar Feb 06, 2007 1:00 am

Re: Lucru cu BD in FIREBIRD

#3 Mesaj de ionescug551 »

Buna ziua,Vreau sa intreb daca este normal ca atunci cind deschid programul Saga sa dureze ati
t de mult pina cind dispare mesajull de preluare baza de date Firebird.

Avatar utilizator
chirigiui509
Mesaje: 213
Membru din: Mar Iun 06, 2017 11:16 pm
Localitate: Petrosani
Contact:

Re: Lucru cu BD in FIREBIRD

#4 Mesaj de chirigiui509 »

Timpul de răspuns depinde de mai mulți factori între care menționez:
- viteza de conexiune la internet (dacă utilizați conexiuni distante);
- calitatea/viteza rețelei locale și viteza de lucru în care negociază echipamentele de routare (în toate situațiile);
- tipul de conexiune (cablu sau radio, recomand cablu și chiar un VLAN dedicat);
- arhitectura hardware (procesor, memorie, mediu de stocare... atât pentru client cât și pentru server);
- setările server-ului și ale fiecărei stații de lucru;
- volumul de date ...in corelație cu intervalul setat pentru prelucrare;
- config-ul conectorului Firebird (chestiune ceva mai complexă), sistem de operare actualizat;
...și mai sunt și altele (independente de posibilitatea utilizatorilor de a face modificări).

Optimizarea poate fi făcută iar pentru asta analizați fiecare dintre punctele de mai sus.
Pentru exemplificare, sistemele de routare pe care le utilizăm noi sunt din categoria "Enterprise" (Ubiquiti, FortiGate ...), conexiunile WAN sunt pe fibră, viteze mari (simetric), mai mulți provider-i simultan, balansate, iar în scurtă vreme vom trece pe fibră și conexiunile între echipamemtele locale (între data-center și birou).
Stația (client) pe care lucrez eu este un HP EliteDesk 800 G5 Desktop Mini, cu 32 Gb RAM, un Processor Intel(R) Core(TM) i9-9900 CPU @ 3.10GHz, 3096 Mhz, 8 Core(s), 16 Logical Processor(s) și un suport de date Samsung SSD 970 EVO Plus 1TB.
Server-ul este un workstation (Intel Xeon W-2145, 256GB DDR4, ...), destul de bine echipat și el pentru că asigurăm conexiuni simultane pentru mulți utilizatori externi (inclusiv rețele naționale de magazine).
Deci merge!

Dacă nu procesați baze de date mari (cu adevărat), nu aveți nevoie de configurații sofisticate de tipul celor de mai sus și este posibil ca ajustările de care v-am vorbit în prima parte să fie suficiente.

Câteva recomandări:
- măsurați viteza conexiunii (de exemplu, într-un browser de internet, navigați aici https://www.speedtest.net/ ) și vedeți rezultatul (la sub 20-30 Mbs n-ar trebui să vă mire timpul de încărcare dacă utilizați o conexiune distantă);
- rulați funcția TaskManager unde veți vedea ce procese rulează și care este gradul de încărcare pe principalele componente (procesor, memorie, disk) și astfel vă veți face o primă părere cu privire la ce trebuie înlocuit;
- rulați funcția SERVICES (necesită drepturi de admin ptr.eventuale modificări) și analizați oportunitatea de a opri procesele care nu vă sunt necesare (extrem de util în cazul sistemelor mai vechi).
Dacă aveți nevoie de suport tehnic, ar fi recomandat să apelați la unul dintre distribuitorii din zona dumneavoastră (în ideea în care se impun poate anumite schimbări de echipamente).

Este rezonabil să existe lag-uri între primul click și efectul final al execuției unei funcții atunci când volumul de date este mare.
Noi utilizăm baze de date destul de mari (să zicem că peste limita permisă de formatul clasic, DBF) și nu resimțim o problemă evidentă/supărătoare/deranjantă (...) a timpilor de prelucrare.
Recunosc, n-a fost simplu să ajungem aici (având în vedere contextul arătat mai sus), am făcut numeroase teste și determinări, am beneficiat și de suportul minunatei echipe de la SAGA iar astăzi ne declarăm mulțumiți și optimiști.
Utilizăm acest mod de lucru de mulți ani, perioadă în care întregul ecosistem și-a demonstrat reziliența.

Urmăriți și analizați principalele cauze care generează latențele de care vorbiți și veți găsi răspunsuri la toate întrebările.
Succes!

Alte resurse informaționale:
- https://www.sagasoftware.ro/client-server10-informatii-utile/
- https://www.revistaie.ase.ro/content/18/bica.pdf
- https://ro.wikipedia.org/wiki/Client-server
- https://ib-aid.com/en/articles/23-more-ways-to-speed-up-firebird/
- https://ib-aid.com/en/articles/45-ways-to-speed-up-firebird-database/
- https://ib-aid.com/en/optimized-firebird-configuration/
- https://www.one-it.ro/blog/optimizarea-vitezei-transferului-de-date-si-a-internetului-la-tine-in-firma/
- https://connect44.ro/portofoliu-de-solutii/planificarea-retelei

ciucam288
Mesaje: 112
Membru din: Joi Iun 03, 2021 10:37 am

Re: Lucru cu BD in FIREBIRD

#5 Mesaj de ciucam288 »

:D Pai Domnu' Chirigiu ?!? ...si cand plecati cu laptopul in vacantza, conectat la hot spot de telefon, care era limita dimensiunii bazei de date? :lol: (glumesc)
Cel mai importanta cred ca este latentza. Se da ping catre adresa serverului bazei de date si daca numarul sare de sute sau chiar zeci de milisecunde deja e descurajator.

Avatar utilizator
chirigiui509
Mesaje: 213
Membru din: Mar Iun 06, 2017 11:16 pm
Localitate: Petrosani
Contact:

Re: Lucru cu BD in FIREBIRD

#6 Mesaj de chirigiui509 »

Corectă observația! :) Pentru astfel de situații există conexiuni remote. În plus, echipa de la birou preia majoritatea problemelor și sunt puține cazurile escaladate către mine.
Mulțumesc frumos pentru glumă, este mereu binevenit un astfel de moment!
Cu prietenie,
I.Chirigiu

simiona991
Mesaje: 5
Membru din: Joi Noi 21, 2024 9:05 am

Re: Lucru cu BD in FIREBIRD

#7 Mesaj de simiona991 »

chirigiui509 scrie: Joi Noi 21, 2024 3:14 pm Trecerea la SAGA este o bună alegere. Cu privire la preluarea datelor din alte aplicații există multe posibilități și se pare că deja ați găsit calea :).
Înainte de importul de date s-ar impune o analiză de consistență a informațiilor preluate.
În funcție de utilitarul de care-l folosiți pentru a scrie informațiile, o analiză amănunțită v-ar ajuta să înțelegeți și relațiile între tabele. Spun asta pentru că dacă tot vă pricepeți (...) ar fi păcat să nu preluați tot istoricul (chiar dacă vă poate da bătăi de cap).

. . .

Succes și bun venit în această mare familie!
Pentru I.Chirigiu:

Va multumesc forte mult pentru mesaj si continutul sau.
Consider mesajul foarte prietenos si apreciez in mod deosebit dorinta de a ajuta.

As mai avea nevoie de ceva informatii pentru a progresa in migrarea la care m-am referit.
Aceste informatii m-ar ajuta si la configurarea modului de cooperare al SAGA cu o alta aplicatie care va utiliza date din SAGA.

Pentru asta, m-ar ajuta urmatoarele:

A. Exista o Baza de Date MODEL / EXEMPLU pe care sa se poata testa ? Adica o BD cu ceva date incarcate.
B. Exista vreo descriere a tabeleleor principale din BD SAGA ?
Eu nu am incarcat inca date si nu am reusit sa identific tabela de inregistrari contabile.
Dupa ce voi incarca date voi putea sa caut dupa numarul de inregistrari din tabele.

Multumesc pentru orice informatie utila.

Cu stima,
AT

simiona991
Mesaje: 5
Membru din: Joi Noi 21, 2024 9:05 am

Re: Lucru cu BD in FIREBIRD

#8 Mesaj de simiona991 »

Eu am lucrat cu SQL MAESTRO FIREBIRD pt acces la BD SAGA.
FREE pt 30 zile.
Apoi trebuie licenta. Nu e scumpa, dar nu am gasit niciun furnizor in RO care sa ne livreze produsul.

Puteti recomanda un software ca lucreazaa bine cu FIREBIRD si e FREE sau poate fi achizitionat in RO, respectand regulile pt achizitii din fonduri publice ?

Multumesc pentru orice raspuns util.

A T

Avatar utilizator
chirigiui509
Mesaje: 213
Membru din: Mar Iun 06, 2017 11:16 pm
Localitate: Petrosani
Contact:

Re: Lucru cu BD in FIREBIRD

#9 Mesaj de chirigiui509 »

A. La întrebarea referitoare la existența unei baze de date MODEL/EXEMPLU, răspunsul este negativ. Cu toate astea, este destul de simplu să vă generați propria bază de date pornind de la câteva operații pe care le introduceți în aplicație.
B. Există o descriere a principalelor tabele, găsiți amănunte în secțiunea de IMPORT/EXPORT, structura fișierelor ... (găsiți aici) https://manual.sagasoft.ro/sagac/topic-76-import-date.html

Dacă aveți în vedere să faceți UPDATE în baze, este necesar să aveți o foarte bună înțelegere a întregului flow întrucât interconexiunile între tabele sunt mult mai complexe.
Vă recomand ca pentru preluarea informațiilor istorice (din alte aplicații) să procedați astfel:
- vă definiți o partidă în care să lucrați;
- faceți configurările inițiale;
- faceți o primă salvare a bazei de date;
- introduceți operațiuni în secțiunile aplicației;
- faceți un export de date (se vor genera mai multe fișiere DBF);
- analizați structura fișierelor exportate;
- încărcați propriile date (exportate din vechea aplicație de conta) în fișierele generate cu prilejul exportului (dacă am ajuns să discutăm despre asta nu cred că veți avea o problemă cu accesarea DBF-urilor);
- efectuați o restaurare a bazei de date salvate anterior (conținând setări de configurare fără alte date);
- mergeți în secțiunea de import și preluați datele din fișierele definite la punctul de mai sus;
- analizați consistența datelor preluate;
- efectuați eventualele corecții.
Observați că întreaga procedură se bazează pe capabilități actuale ale aplicației și singurul efort se limitează la construcția DBF-urilor pentru import.
Mai multe și mai concrete informații, găsiți apăsând tasta <F1> în interiorul fiecărei aplicații de la SAGA.

Succes!

simiona991
Mesaje: 5
Membru din: Joi Noi 21, 2024 9:05 am

Re: Lucru cu BD in FIREBIRD

#10 Mesaj de simiona991 »

Multumesc pentru raspuns.
Ma va ajuta in activitatile urmatoare pentru migrare.

simiona991
Mesaje: 5
Membru din: Joi Noi 21, 2024 9:05 am

Re: Lucru cu BD in FIREBIRD

#11 Mesaj de simiona991 »

Cum SAGA face Export / Import DBF, am cautat un DBF Administrator cu functiile necesare managementului fisierelor de acest tip.

Am gasit software "DBF Commander" https://dbf-software.com/

Pare foarte puternic pentru managementul fisierelor DBF si sunt sigur ca va raspunde cerintelor in lucru DBF necesare pentru SAGA.

cristeam807
Mesaje: 6
Membru din: Mie Feb 23, 2011 4:37 pm

Re: Lucru cu BD in FIREBIRD

#12 Mesaj de cristeam807 »

Buna ! Am urmatoarea situatie :
am proiectat o aplicatie Fox cu care export facturi dintrun program intern in Saga C. Lucrurile au mers bine pana la povestea cu CONT_BAZA. Fisierul de importat in Saga necesita un Cod Client pe care il obtineam direct din fisierul client Saga pentru clientii deja inregistrati. Pentru clientii noi generam un cod nou in succesiunea din Saga. Acum acest fisier (clienti saga) nu mai este accesibil si in consecinta aplicatia nu mai poate functiona deoarece nu pot face distinctia intre clientii noi si cei deja inregistrati, rezultatul fiind ca unii clienti se dubleaza avand coduri diferite. Stiti ca acel cod client intra si in componenta analiticului din factura. Intrebarea este urmatoarea :
1. Exista posibilitatea de a extrage din CONT_BAZA fisierul CLIENT.CSV (presupun ca in baza avem CLIENT.DB) ? Am gasit pe net un utilitar CSVExport.exe care chipurile ar face aceasta conversie. Am incercat cu sintaxa :

CSVExport.exe -H -F="CLIENTI.db" -P=1 \ -d "C:\Program Files\Firebird\Firebird30_Saga\CONT_BAZA.FDB" -u SYSDBA -p mastersaga --charset=WIN1252 -o c:\atos\temp\clienti.csv

Semificatia parametrilor este:

Usage CSVExport [out_dir] <options>
General options:
-h [ --help ] Show help
-o [ --output-dir ] path Output directory
-H [ --print-header ] Print CSV header, default false
-f [ --table-filter ] Table filter
-S [ --column-separator ] Column separator, default ",". Supported: ",", ";" and "t".
Where "t" is '\t'.
-P [ --parallel ] Parallel threads, default 1

Database options:
-d [ --database ] connection_string Database connection string
-u [ --username ] user User name
-p [ --password ] password Password
-c [ --charset ] charset Character set, default UTF8
-s [ --sql-dialect ] dialect SQL dialect, default 3

Nu imi da eraore, dar nici nu genereaza c:\atos\temp\clienti.csv !!?

Raspunsul este :

Elapsed time in milliseconds parallel_part: 35894 ms
Elapsed time in milliseconds: 36317 ms

Imi puteti sugera o sintaxa corecta, eventual o alta cale de a obtine componente din CONT_BAZA in format CSV ?
Precizez ca trebuie sa fac acest lucru in mod command line !
Ultima oară modificat Mie Dec 11, 2024 3:34 pm de către cristeam807, modificat de 2 ori în total.

ciucam288
Mesaje: 112
Membru din: Joi Iun 03, 2021 10:37 am

Re: Lucru cu BD in FIREBIRD

#13 Mesaj de ciucam288 »

De unde ati gasit acest utilitar?
Dece aveti fisierul cont_baza.fdb in folderul de instalare Firebird (acel folder in principiu e restrictionat de windows)?
Dece folositi acea parola?
Testati si cu o baza generata din sagaPS unde inainte importati o lista cu orice CIFuri doriti. Folositi direct calea catre folderul societatii de ex. D:\sagaPS\0001\cont_baza.fdb

cristeam807
Mesaje: 6
Membru din: Mie Feb 23, 2011 4:37 pm

Re: Lucru cu BD in FIREBIRD

#14 Mesaj de cristeam807 »

L-am gasit aici : https://github.com/IBSurgeon/FBCSVExport
CONT_BAZA l-am copiat manual. Nu am primit niciun avertizment. Intradevar utilitarul nu m-a lasat sa-l pun acolo, este in alta locatie. Parola este cea dela CONT_BAZA iar directarea este corecta. Baza utilizata este din Saga. Presupun ca nu conteaza locatia bazei de date. Daca fac testare nu pot ataca baza curenta.

ciucam288
Mesaje: 112
Membru din: Joi Iun 03, 2021 10:37 am

Re: Lucru cu BD in FIREBIRD

#15 Mesaj de ciucam288 »

Din ce am observat eu si din exemplele date de autor: se foloseste --table-filter="" in loc de -F="" (cred ca -F e doar pt. testarea vitezei)
Am aruncat si utilitarul si baza intr-un folder temporar si am facut un script:

Cod: Selectaţi tot

set path=C:\Program Files\Firebird\Firebird30_Saga
CSVExport.exe -H --table-filter="CLIENTI" --parallel=1 \ -d CONT_BAZA.FDB --charset=WIN1251 -o ./
pause
Oricum cred ca programelul nu e compatibil cu versiunea de firebird saga si da o eroare Error: Interface IUtil version too old: expected 4, found 2
apoi salveaza doar capul de tabel, fara inregistrari.
Nu sunt programator, dar banuiesc ca resursele nu sunt pe placul programelului.
Ultima oară modificat Mie Dec 11, 2024 7:18 pm de către ciucam288, modificat 1 dată în total.

Scrie răspuns