Aceasta e o versiune anterioară a paginii.
Comenzile şi utilitarele sunt scripturi (secvenţe de program) cu conţinut modificabil, care sunt încorporate şi executate în aplicaţii. Astfel aplicaţiile devin adaptabile. Comenzile/utilitarele sunt memorate sub forma unor înregistrări în fişierul „gcmd“.
Comenzile şi utilitarele din hUTIL servesc pentru implementarea variantelor de salvare, restaurare, imprimare paralelă, utilitare, comenzi batch.
Fişierul „gcmd“ pentru hUTIL este prezent începând cu versiunea V 2. Pentru ca să se păstreze compatibilitatea cu bazele de date mai vechi, în cazul în care „gcmd“ nu este prezent, hUTIL foloseşte algoritmi impliciţi pentru operaţiile de salvare/restaurare şi listare paralelă.
Într-o bază de date pot exista mai multe fişiere „gcmd“, dar numai unul pentru fiecare aplicaţie.
Dacă fişierul este utilizat de toate aplicaţiile din baza de date, atunci câmpul Aplicatii din Files nu se completează. Dacă anumite comenzi/utilitare sunt ataşate numai de anumite aplicaţii, atunci câmpul Aplicatii din cadrul fişierului „gcmd“ se completează cu codul aplicaţiilor respective.
Gestionarea fişierului de comenzi/utilitare necesită cunoştinţe de programare (trebuie studiată Documentaţia de administrare aplicaţii hMET2: Limbaj de scripting hMET2 şi Comenzi si utilitare, programul hMET2C).
Pentru editarea fisierului „gcmd“ se foloseşte programul hMET2C.exe, care este un instrument al distribuitorului şi nu face parte din pachetele de aplicaţii.
Variantele pentru operaţiile de Salvare/restaurare/ştergere se implementează prin comenzi generale.
Se pot utiliza 5 variante:
Pachetul de comenzi conţine programul care realizează operaţiile de salvare, restaurare, ştergere, iar fişierele indică suportul (catalogul) pe care sunt fişierele de arhivă. Dacă programul din pachet include dialog pentru alegerea unui alt suport, atunci catalogul din fişierul corespunzător va indica doar suportul implicit, care se propune.
Un pachet de comenzi va fi afişat în meniul hUTIL dacă acesta este deschis şi dacă fişierul corespunzător este definit în Catalogul fisierelor. Textul meniului va fi format din denumirea pachetului de comenzi, urmat eventual de denumirea suportului. Pentru ca denumirea suportului să fie inclusă în textul meniului, aceasta trebuie înscrisă în Nume utilizator cu semnul „-“ în prima poziţie. Exemplu: „- cd“.
Comenzile fiind adaptabile, ele fac posibilă lansarea unor programe externe. Programele externe se pot lansa chiar şi în alt task. Astfel se rezolvă problemele de lansare sub XP şi se pot utiliza şi alte programe de arhivare, nu numai pkzip.
Variante accesibile la livrare:
COPY- Salvare/Restaurare/Stergere-discheta:
- salvare/restaurare cu pkzip;
- pe Windows 9x şi Linux lansare pkzip/unzip în acelaşi task,
pe dischetă în mod multivolum (presupune pkzip V2.04g);
- pe Windows XP lansare pkzip/unzip în alt task,
numai monovolum (afişarea fiind redirecţionată în fişier,
dialogul de montare dischete nu este posibil);
- ştergerea pentru dischete constă în formatare, iar pe alte suporturi
din ştergerea fişierelor *.zip
COP1- Salvare/Restaurare/Stergere-suport ales
- salvare/restaurare cu pkzip;
- dacă suportul ales este dischetă, atunci salvarea este în mod
multivolum, indiferent de sistemul de operare;
- ştergerea pentru dischete constă în formatare, iar pe alte suporturi
din ştergerea fişierelor *.zip
COPY şi COP1 reprezintă variantele active la livrare.
Alte exemple, variante inactive la livrare, care pot fi folosite:
COP2- Salvare/Restaurare prin bat - implementează operaţia de
Salvare/Restaurare/Stergere, operaţia propriu-zisă pentru salvare
restaurare se execută prin generarea unui fişier bat care în
continuare se apelează în task separat.
COP2- Salvare/Restaurare-v.implicita - implementează algoritmul implicit
(cazul bazelor de date vechi - arhive - în care fişierul "gcmd" nu
este prezent).
COP2- Salvare/Restaurare-parametrii-afişează doar parametrii de intrare
pentru scripturile de salvare/arhivare.
COP2- Salvare/Restaurare-var.cu ARJ -operaţia de salvare/restaurare
implementată prin utilitarul de arhivare ARJ.
În anumite situaţii de exploatare pot fi utilizate şi scripturile inactive, dar prezente în pachet la livrare, sau chiar se pot implementa scripturi noi. Pentru crearea/modificarea acestor scripturi studiaţi:
În hUTIL utilitarele pentru imprimare paralelă se implementează prin comenzi generale. Avantajul este că pot exista mai multe variante, prin urmare se pot rezolva o multitudine de probleme, cum ar fi:
Exemple:
Utilitarele de imprimare se implementează prin scripturile PRINTx din Comenzi generale unde x poate fi orice caracter.
Varianta activă la livrare:
PRINTA- Lansare imprimare
- lansează cu PRINT imprimarea paralelă a listei selectate;
- se va lansa PRINT.BAT, dacă în catalogul implicit este
pregătită o astfel de procedură, altfel se va lansa comanda
PRINT.EXE;
- Atenţie ! nu toate sistemele de operare au comanda PRINT.EXE
Variante inactive la livrare:
PRINT1- lansare imprimare - implementează varianta de lansare imprimare
paralelă din versiunile hUTIL V 1.x.
PRINT2- Anulare imprimări - implementează anulare imprimări
din versiunile hUTIL V 1.x.
PRINT3- Vizualizare coadă de imprimare - implementează vizualizare
coadă de imprimare din versiunile hUTIL V 1.x.
PRINTE- Exemplu lansare imprimare - implementează un exemplu de lansare
imprimare paralelă pentru diverse situaţii. Este doar un cadru
pregătit, nu poate fi folosit direct în forma livrată. La
implementare trebuie să fie revizuit.
PRINTV- Afişare parametri - afişează parametrii transmişi de utilitar
către scriptul de imprimare paralelă.
Scripturile inactive la livrare, dacă se doreşte folosirea lor, trebuie să fie verificate în mediul în care urmează să fie utilizate şi eventual adaptate, dacă este cazul.
În documentaţia utilitarului hWTools se găsesc şi alte exemple de scripturi de imprimare paralelă. Aceste scripturi implementează transmiterea listelor prin e-mail în format lst (aşa cum au fost listate din programele HAMOR Soft) şi în format pdf.
Scripturile pentru imprimare paralelă nu au o structură specială, nu există segmente cu nume consacrate ca la salvare/restaurare. Există o listă de parametri care înainte de apelare sunt încărcaţi şi se transmit către script. Detalii: scriptul de imprimare paralelă.
Reprezintă utilitare programate sub formă de script şi care se pot lansa din meniul principal din hUTIL. Ele pot implementa diverse servicii.
Utilitarele se implementează prin comenzi generice şi sunt considerate utilitare scripturile pentru care codul începe cu litera „U“, deci codul este de forma Uxxxxx, unde xxxxx reprezintă orice secvenţă de caractere.
La livrare sunt pregătite, dar nu sunt active următoarele scripturi:
U1_COP: salvare bază de date prin copiere cu XCOPY, U2_ZIP: salvare bază de date prin împachetare, U3_IND: reindexare totală, U4_REO: reorganizare totală.
Lansarea unui script din linie de comandă:
>hUTIL dbf Uxxxxx
unde dbf-baza de date pentru care se execută utilitarul, Uxxxxx-codul utilitarului.
Exemplu:
>hUTIL dbf U4_REO
execută reorganizarea bazei de date dbf.
Linia de comandă de mai sus poate fi lansată automat, printr-un serviciu de tip schedule, permiţând automatizarea unor probleme de întreţinere.
Posibilitatea lansării programate (scheduled tasks) prin:
Utilitarul: Testare reţea (U_LAN)
Cu acest utilitar se poate testa blocarea articolelor in retea pentru executarea corecta a operatiilor de adaugare, modificare, stergere. Utilitarul se lanseaza parallel de la mai statii. Se utilizeaza pentru a testa configurarea corecta a sistemului de operare.
Operatiile de baza pentru manipularea datelor in retea:
1. Creare fisier TEST 2. Deschide TEST - exclusiv 3. Deschide TEST - partajat 4. Blocare fisier 5. Blocare articol 6. Adaugare articol+blocare 7. Salt la urmatorul 8. Vizualizare articol 9. Modificare articol 10. Stergere articol 11. Deblocare 12. Inchide TEST 13. Stergere fisier TEST
Operatia: 1: Creare fisier TEST creeaza un fisier in TMP. Se executa la inceput, doar pe o statie.
Operatia: 13: Sterge fisier TEST se executa la sfarsit, doar pe o statie.
Operatia: 2. Deschide fisier exclusiv:
* dupa inchiderea fisierului, acesta poate fi redeschisa si de pe o alta statie de lucru,
Operatia: 3. Deschide fisier partajat:
Reteaua corect parametrizata trebuie sa permite rularea programului pentru aceasi baza de date de pe mai multe statii de lucru si sa asigure:
Observatii:
Exista 3 regimuri de blocare 1, 2A si 2B:
1. utilizare exclusiva:
2. utilizare partajata:
varianta 2A: blocare pentru modificare mai multe articole
varianta 2B: blocare pentru adaugare/modificare/stergere un singur articol
Modul de rulare al programelor HAMOR Soft este parametrizabil şi prin intermediul unor variabile de mediu (Environment Variables) în fişierul de configurare hMENUs.BAT în care sunt pregătite variabilele de mediu recunoscute de programe.
Fişierul hMENUs.BAT este comentat în detaliu, nemai fiind necesare descrieri suplimentare pentru utilizarea lui.
hMENUs.BAT se apelează automat din hMENU.BAT, înainte de lansarea programelor, stabilind setările pregătite în acest fişier.
Anexăm fişierul de configurare hMENUs.BAT în forma livrată: hMENUs.BAT
Dacă doriţi să găsiţi răspuns la întrebări de genul:
Utilizaţi componenta opţională Listă de evenimente, care va asigura să aveţi la îndemână acest gen de informaţii. Pe lângă informaţiile de pe ecran, puteţi obţine liste, ca de exemplu:
Opţiunea este utilizabilă în aplicaţiile hSALAR, hIMOB, hPROD, hUTIL.
Semnificaţia informaţiilor înregistrate în Lista evenimente
Nr.ord.eveniment: este un număr de ordine al evenimentului
Data eveniment si Ora:min:sec: momentul înregistrarii evenimentului
Cod aplicatie, Versiune program: identificarea aplicaţiei
Data aplicatiei: de ex. în hSALAR este prima zi a lunii curente
Cod statie: XX - valoarea variabilei de mediu: STATION
Utilizator: valoarea variabilei de mediu: USERNAME
Nume calculator: valoarea variabilei de mediu: COMPUTERNAME
Fisier: aliasul fişierului
Cod eveniment/op.: codul evenimentului sau al operaţiei
< - început program > - sfârşit program E - editare/modificare A - adăugare S - ştergere O - operaţie I - initializare ! - terminare cu eroare ? - necunoscut
Nr.fereastra/op.: numărul de ordine al ferestrei în cazul operaţiilor: E,A,S, numărul de ordine al operaţiei in cazul operaţiilor: O
Stare operatie:
< - operaţie începută, > - operaţie terminată.
Nr.actualizare: nnn - numărul de actualizare al articolului (numai la operaţiile E,A,S)
Cheie: cheia fişierului, valoarea cheii de index 1, în hSALAR de regulă Marca
Mesaj: mesaj sau denumire
dacă cod eveniment/op = ! - mesaj de eroare terminare program
O - denumire operaţie
E - denumire fereastra Modificare
A - denumire fereastra Adaugare
S - denumire fereastra Stergere
Lista evenimente poate fi consultata cu hUTIL/Utilitare/Lista evenimente.
Accesul este permis cu parola specială hUTIL, implicit HAMOR.
Ştergerea evenimentelor: evenimentele până la un anumit număr de ordine se pot şterge cu:
hutil dbf $ Stergere
În momentul lansării operaţiei de Stergere nu trebuie să fie filtre pe fereastra de fişier.
Din când în când trebuie şters fişierul Liste evenimente şi trebuie reorganizat pentru ca dimensiunea să nu fie exagerată (poate cauza şi încetinirea operaţiilor). Oricum, evenimentele anterioare vor fi salvate în arhive.
Implementare
Opţiunea care activează Lista de evenimente este: „l“
Stabiliţi o parolă specială pentru hUTIL, implicit: HAMOR
Fişierul este implementat în fişierul cu aliasul „hlog“.
De analizat modul de salvare, arhivare.
Implicit se salvează/arhivează cu celelalte fisiere sistem.
Opțiunea permite organizarea bazelor de date în mod structurat pe aplicații și arhive pe ani/luni în cataloage separate.
În mod standard, bazele de date se pot organiza în 2 variante:
În afară de aceste două variante, meniul se poate adapta și la alte moduri de organizare. Prin aceste variante se poate opera la nivelul unei firme, dar și la nivel de aplicație.
În ambele cazuri, bazele de date sunt organizate la nivel de aplicație, diferența constă numai în faptul, că organizarea arhivelor diferă.
Structura de organizare a bazelor de date în cazul variantei pe luni:
\HAMOR
\APLICATIE - CATALOG APLICAÅ¢IE
\aaaa - Arhive pe ani
\aaaa.ll - Arhive pe luni
DBF - baze de date arhive
...
...
...
DBF.DEM - baze de date demonstrative
DBF.0 - baze de date de referință
DBF - baze de date curente
...
DOC - documentații aplicație
TMP
INS
DECL_OBL - Catalog DUKIntegrator
*.exe,*.bat - executabile aplicație
...
Structura de organizare a bazelor de date în cazul variantei pe ani:
\HAMOR
\APLICATIE - CATALOG APLICATIE
\aaaa - Arhive pe ani
DBF_ll.aa- baze de date arhive
...
...
DBF.DEM - baze de date demonstrative
DBF.0 - baze de date de referință
DBF - baze de date curente
...
DOC - documentații aplicație
TMP
INS
DECL_OBL - Catalog DUKIntegrator
*.exe,*.bat - executabile aplicație
...
Structura meniului în cazul variantelor structurate:
MENIUL PRINCIPAL:
SOCIETATE - permite operarea aplicațiilor
la nivelul unei firme
Setare societate - permite selectarea unei firme
Aplicatii societate - afișează aplicațiile, și
pentru fiecare aplicație se
poate alege BD curentă
Setare societate an[,luna] - se setează firma și perioada
arhivei
Aplicatii societate an[,luna] - afișează aplicațiile, și pentru
fiecare aplicație se poate
alege BD arhivă din perioada
setată
MENIURI APLICAÅ¢II (pt HMARFA,HCONT,HSALAR,HIMOB,HPROD,HMISS)
Baze de date curente - Operare BD curente pt. aplicație
Intretinere baze de date - Întreținere BD curente pentru
aplicație
--------------------------------
Setare catalog arhive - Setare perioadă
Baze de date arhive aaaa[.ll] - Operare BD arhivă din aaaa[.ll]
Intretinere baze de date aaaa[.ll]- Întreținere BD arhivă din aaaa[.ll]
--------------------------------
Baze de date de referinta - Operare BD de referință
Baze de date demonstrative - Operare BD Demo