Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Instrucřiuni pentru dialog cu utilizatorul

Informatica


Instrucřiuni pentru dialog cu utilizatorul

a) Afisare de mesaje

Un mesaj se poate afisa într-o fereastră de dialog cu instrucřiunea sau funcřia MsgBox, folosind una din sintaxele:



MsgBox mesaj [, tip [, titlu]]

MsgBox(mesaj [, tip [, titlu]])

unde mesaj este mesajul care se afisează, tip este o expresie numerică care specifică butoanele afisate si iconul afisat în ferestră iar titlu este titlul ferestrei afisate (implicit "Microsoft Access").

tip se calculează ca o sumă de cel mult 4 numere, reprezentând:

butoanele afisate:

OK - valoarea 0

OK si Cancel - valoarea 1

Abort, Retry si Ignore - valoarea 2

Yes, No si Cancel - valoarea 3

Yes si No- valoarea 4

Retry si Cancel - valoarea 5

iconul atasat mesajului în ferestră:

iconul de tip STOP - valoarea 16

iconul de tip "?" - valoarea 32

iconul de tip "!" - valoarea 48

iconul de tip "informařie" ("i") - valoarea 64

butonul implicit:

primul buton - valoarea 0

al doilea buton - valoarea 256

al treilea buton - valoarea 512

continuarea în aplicařia curentă (valoarea 0) sau în altă aplicařie (valoarea 4096)

După afisarea mesajului, utilizatorul va alege un buton din fereastră (implicit, OK). Instrucřiunea MsgBox nu permite reřinerea butonului activat de utilizator. Dacă se doreste reřinerea butonului activat de utilizator, trebuie folosită funcřia MsgBox, care returnează tipul butonului ales, mulřimea tuturor valorilor posibile fiind: 1 - OK, 2 - Cancel (sau tasta ESC), 3 - Abort, 4 - Retry, 5 - Ignore, 6 - Yes, 7 - No.

Exemplu:

nr=Msgbox("Doriti sa continuati?", 4+32, "Continuare")

if nr=7 .

b) Citire de mesaje

Pentru ca utilizatorul să poată introduce de la tastatură anumite texte (prin MsgBox, informařiile introduse se reduc la tipul butonului ales) care să fie ulterior utilizate în aplicařie, se foloseste funcřia InputBox, cu sintaxa:

InputBox[$](mesaj [, titlu [, [text_implicit] [, x, y]]])

unde: mesaj este mesajul care se afisează, titlu este titlul ferestrei (implicit, fereastra creată de InputBox nu are titlu), text_implicit este textul care se afisează implicit în caseta în care utilizatorul va introduce textul (de exemplu, extensia unui fisier al cărui nume se cere de la tastatură) iar (x, y) - poziřia de afisare a ferestrei (implicit, poziřia se determină automat).

Rezultatul returnat de funcřia InputBox, după ce utilizatorul activează butonul OK, este textul introdus de utilizator, considerat de tip Variant pentru funcřia InputBox si de tip String pentru funcřia InputBox$. Dacă utilizatorul activează butonul Cancel sau tastează ESC, atunci funcřia returnează stringul vid.

Exemplu:

fis=Inputbox$("Numele fisierului de date:", "Citire", ".TXT")

6) Prelucrarea formularelor si rapoartelor

În cadrul acestui paragraf se vor prezenta funcřiile Access Basic care permit crearea de formulare, rapoarte si obiecte de control.

a) Crearea formularelor / rapoartelor

Un formular sau un raport se pot crea cu funcřiile:

CreateForm([baza_de_date [, format_formular]])

CreateReport([baza_de_date [, format_raport]])

unde format_formular sau format_raport reprezintă numele unui formular / raport (de tip sir de caractere) pe baza căruia se creează noul obiect (formular / raport); implicit, se optează pentru formatul specificat în meniul View - Option - Form & Report Design iar baza_de_date este numele bazei de date unde se găseste "modelul" descris anterior.

Funcřiile CreateForm CreateReport creează câte un obiect de tip Form sau Report.

b) Crearea obiectelor de control

Un obiect de control într-un formular / raport se poate crea folosind funcřiile:

CreateControl(nume_formular, tip_control [,sectiune

[,control_parinte [,nume_sursa [,oriz [,vert

[,latime [,inaltime]]]]]]])

CreateReportControl(nume_raport, tip_control [,sectiune

[,control_parinte [,nume_sursa [,oriz [,vert

[,latime [,inaltime]]]]]]])

unde:

nume_formular nume_raport (siruri de caractere) reprezintă numele obiectului de tip formular sau raport unde se creează obiectul de control

tip_control specifică tipul obiectului de control: 100 - etichetă, 101 - dreptunghi, 102 - linie, 104 - buton de comandă, 105 - buton radio, 106 - comutator Check Box, 107 - grup de opřiuni, 108 - Bound object frame, 109 - Text box, 110 - List box, 111 - Combo box, 112 - Subform / Subreport, 114 - Unbound object frame, 118 - Page break, 122 - Toggle button.

sectiune - un număr întreg care precizează secřiunea unde se creează obiectul de control: 0 - secřiunea de detaliu (valoarea implicită), 1 - antet de formular / raport, 2 - subsol de formular / raport, 3 - antet de pagină, 4 - subsol de pagină, 5 - antet de grup de nivelul 1 (pentru rapoarte), 6 - subsol de grup de nivelul 1 (pentru rapoarte), 7 - antet de grup de nivelul 2 (pentru rapoarte), 8 - subsol de grup de nivelul 2 (pentru rapoarte) etc.

control_parinte - numele obiectului de control de care depinde obiectul curent (de exemplu, grupul în care este inclus un buton radio) sau strungul vid, dacă obiectul de control este independent

nume_sursa - numele câmpului care este sursa valorilor obiectului de control (dacă există o asemenea sursă de date)

oriz ,vert - poziřia colřului stânga sus al obiectului de control în cadrul formularului (raportului)

latime ,inaltime - dimensiunile obiectului de control

c) Stergerea obiectelor de control

Un obiect de control dintr-un formular / raport deschis în mod Design View se poate sterge folosind instrucřiunile:

DeleteControl nume_formular , nume_control

DeleteReportControl nume_raport , nume_control

2.7.3. SQL

Limbajul SQL (Structured Query Language) se foloseste pentru gestiunea bazelor de date relařionale. Pentru fiecare interogare creată, se generează automat o instrucřiune SELECT SQL . Această instrucřiune se poate utiliza si explicit, în formulare, rapoarte sau macro-uri. În plus, există instrucřiuni SQL care nu se pot obřine cu ajutorul asistenřilor.

a) Obřinerea de informařii din baze de date

Selectarea de informařii din baze de date se realizează cu instrucřiunea:

SELECT [tip_selectie] lista_câmpuri FROM sursa_de_date

[WHERE conditie] [GROUP BY lista_ câmpuri_grupare]

[HAVING conditie2] [ORDER BY câmp1 []

[,câmp2 [].] [WITH OWNERACCESS OPTIONS]

Numele de câmpuri pot să apară ca atare; ele trebuie incluse între paranteze drepte dacă conřin spařii; dacă există mai multe tabele în sursa de date, câmpurile vor fi prefixate cu numele tabelului (urmat de .). Clauzele si parametrii acestora au următoarele semnificařii:

sursa_de_date - numele tabelului sau interogării din care se selectează datele (poate fi eventual urmat de "AS alias"). Între tabele se pot stabili relařii de tipurile prezentate în paragraful destinat relařiilor: între valori egale - INNER JOIN, la legăturile pe valori se adaugă înregistrările din primul sau al doilea tabel care nu au corespondent - LEFT JOIN sau RIGHT JOIN. Convenim să notăm aceste denumiri cu tip_relatie. Astfel, formatul sursei de date poate fi, pentru două tabele relařionate: tabel1 tip_relatie tabel2 ON tabel1.câmp1=tabel2.câmp2, unde ultima expresie specifică legătura dintre câmpurile tabelelor. Dacă baza de date conřine mai multe tabele relařionate, atunci în locul unui tabel poate apărea o altă specificare de sursă de date de tipul anterior descris, clauza FROM având forma:

FROM (T1 tiprel1 T2 ON T1.c1=T2.c2) tiprel2 T3 ON =T3.c3 .        sau

FROM T1 tiprel1 (T2 tiprel2 T3 [.etc] ON T2.c2=T3.c3) ON T1.c1=

lista_câmpuri - specifică ce câmpuri care vor apărea în selecřie. Aceasta poate fi: "*" pentru toate câmpurile din sursele de date sau poate fi o listă care să conřină următoarele elemente: "sursai.*", care introduce toate câmpurile din sursai, nume de câmpuri (cu convenřiile descrise anterior) sau expresii care să conřină nume de câmpuri. Dacă apare o expresie, acesteia i se poate atasa un nume cu care să fie ulterior referită folosind sintaxa "expresie [AS nume]".

conditie - precizează condiřia de selecřie a înregistrărilor (criteriul după care se face selectarea). Ea conřine uzual (expresii cu) câmpuri ca si operanzi si poate fi formată cu următorii operatori: logici, relařionali, Like, IS [NOT] NULL, [NOT] BETWEEN v1 AND v2, [NOT] IN (v1, v2, .). conditie mai poate avea formele: "expresie [NOT] IN (selecřie)", unde selecřie este creată de o altă instrucřiune SELECT, "câmp op-rel (selecřie)" - dacă prin selecřie se generează o interogare (Join) cu o singură coloană, de acelasi tip cu câmp, condiřia este adevărată dacă toate (ALL) sau cel puřin o valoare (ANY | SOME) din "câmp" este în relařia specificată cu câmpul rezultat din selecřie; sau "[NOT] EXISTS (selecřie)" - EXISTS este adevărată dacă selecřia este nevidă (conřine cel puřin o înregistrare) si falsă altfel.

tip_selectie - defineste domeniul de înregistrări din baza de date pentru care se aplică selecřia: ALL (implicit), DISTINCT (se elimină duplicatele), DISTINCTROW (înregistrările din interogare vor proveni din surse diferite, adică nu se pot genera din aceleasi înregistrări ale tabelelor sursă) sau TOP n [PERCENT] (primele n sau primele n% înregistrări din sursă).

lista_ câmpuri_grupare - introduce câmpurile de grupare (după valori egale), cu semnificařia cunoscută de la interogările create cu ajutorul asistenului. Înregistrările vor fi sortate automat după câmpurile din listă si apoi grupate după valorile egale. În plus, se poate introduce o filtrare a înregistrărilor care să apară în rezultatul final folosind clauza HAVING. Relativ la un grup de înregistrări, se pot aplica funcřiile: Sum(expr), Avg(expr), Count(expr), Min(expr), Max(expr), sau câteva funcřii statistice (StDev, StDevP, Var, VarP).

clauza ORDER BY specifică câmpurile după care se face sortarea înregistrărilor în rezultat

clauza WITH OWNERACCESS OPTIONS atribuie drepturi de acces suplimentare "proprietarului" (Owner).

Pentru o sursă de date se pot obřine informařii de sinteză, similare rezultatelor din interogările "Crosstab", folosind instrucřiunea:

TRANSFORM functie_statistica instr-SELECT PIVOT expr_grup

[IN (val1 [, val2] .)]

unde instr-SELECT conřine gruparea dorită în clauza GROUP BY, expr_grup este expresia după care se face înpărřirea în subgrupuri iar clauza IN introduce lista de valori pentru expr_grup în care vor fi incluse înregistrările selectate (pentru care se generează informařiile de sinteză). Pentru înregistrările din fiecare subgrup, se calculează valoarea expresiei calculată cu functie_statistica

b) Crearea unui tabel

Un tabel nou se poate crea în baza de date curentă sau în altă bază de date cu instrucřiunile:

SELECT lista_câmpuri INTO tabel_nou [IN baza_date]

[FROM sursa_date] [WHERE conditie]

[ORDER BY câmp1 [][, câmp2 [].]

unde tabel_nou este numele tabelului care se creează, lista_câmpuri - câmpurile care se depun, sursa_date - tabelul a cărui strutură se introduce în noul tabel, conditie - condiřia îndeplinită de înregistrările care se copiază în noul tabel iar ORDER BY - clauza de ordonare pentru înregistrările depuse.

c) Adăugare de înregistrări

Adăugarea de înregistrări la un tabel se poate realiza cu instrucřiunile:

INSERT INTO tabel [(câmp1 [,câmp2] . )] VALUES (val1 [,val2] .)

unde valorile val1 ,val2, . se atribuie câmpurilor câmp1 ,câmp2 .         sau

INSERT INTO tabel [IN baza_date] [(lista_câmpuri_1)]

SELECT lista_câmpuri_2 FROM sursa_date

unde în tabel se adaugă înregistrările rezultate în urma execuřiei interogării SELECT

d) Actualizarea

Modificarea datelor dintr-un tabel se poate realiza cu instrucřiunea:

UPDATE tabel SET lista_atribuiri [WHERE conditie]

e) Stergerea de înregistrări se face cu instrucřiunea:

DELETE [lista_câmpuri] FROM tabel [WHERE conditie]

Se vor sterge înregistrările din tabel care îndeplinesc conditie

Efectul următoarelor instrucřiuni SQL nu se poate realiza cu ajutorul asistenřilor.

f) Crearea de tabele indexate si modificarea indecsilor

CREATE TABLE nume_tabel (câmp1 tip1 [(dim1)] [index1]

[, câmp2 tip2 [(dim2)] [index2]].

[, lista_declaratii_index])

Se creează un tabelul nume_tabel, care are câmpurile câmp1, câmp2. cu tipurile tip1, tip2. . Pentru câmpurile de tip text se specifică si dimensiunea (numărul maxim de caractere).

O declarařie de index pentru un câmp poate cere formarea unui index cu valori unice, pentru cheia primară, sau stabilirea unei legături cu cheia primară a altui tabel (clauza REFERENCES), în forma:

CONSTRAINT nume_index

Modificarea descrierii unui tabel se poate realiza cu:

ALTER TABLE nume_tabel

DROP

unde ADD adaugă un câmp iar DROP sterge câmp.

Crearea unui index pentru un tabel se mai poate face cu:

CREATE [UNIQUE] INDEX nume_index ON tabel (lista_câmpuri)

[WITH ]

Stergerea unui tabel sau index  se poate face cu:

DROP

O reuniune de interogări se poate crea cu sintaxa:

interogare1 UNION [ALL] [interogare2 UNION [ALL]].


Document Info


Accesari: 1016
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )