Designerul de rapoarte conține trei blocuri: Script, categorie — bloc în care se scrie interogarea SQL.
Descris în secțiunea Lucrul cu interogări ; Tabele — bloc în care coloanele raportului sunt adăugate și configurate.
Descris în secțiunea Lucrul cu coloane ; Parametri — bloc în care parametrii variabili sunt configurați pentru rularea raportului.
Descris în secțiunea Lucrul cu parametri ; În acest bloc, utilizatorul scrie o interogare SQL care va trebui să încarce date din tabelele bazei de date.
Interogările sunt scrise în SQL. Utilizatorul trebuie să aibă cunoștințe de bază de programare SQL pentru a scrie interogări.
SQL la nivel de bază poate fi învățat în cel mai scurt timp posibil (până la 1 zi).
Interogările de bază necesare pentru crearea rapoartelor elementare sunt descrise în secțiunea Interogări SQL de bază.
Acest bloc al documentației descrie acțiunile posibile cu un bloc de cod SQL deja scris; lucrul cu interogări de bază necesare pentru crearea rapoartelor elementare este descris în secțiunea Interogări SQL de bază.
Codul interogării SQL este introdus în blocul „Script, Categorie:": După ce codul scriptului este scris, sunt posibile următoarele operații cu acesta: Rulare pentru verificare — pentru a rula raportul, faceți clic pe buton.
După apăsarea butonului, scriptul va începe să se execute; poate dura de la câteva secunde la minute, în funcție de complexitatea și cantitatea datelor descărcate.
Dacă compilatorul de cod detectează o eroare în cod, aceasta va fi afișată în partea de jos, în blocul roșu: Dacă nu există erori, în partea de jos a ferestrei va apărea un mesaj că raportul se încarcă; la finalizarea încărcării, se va deschide o fereastră cu rezultatul interogării.
Dacă interogarea poate afișa teoretic mai mult de 10.000 de mii de rânduri, este recomandabil să folosiți limitele TOP 1000 sau TOP 10000 după comanda SELECT pentru verificare; Oprirea raportului — dacă raportul durează foarte mult să se încarce sau dacă pur și simplu ați decis să opriți execuția — acest lucru se poate face prin clic pe .
Acest buton devine roșu și activ când raportul rulează. Transferul câmpurilor selectate în SELECT în coloanele raportului.
Coloanele sunt întotdeauna adăugate în raport cu o cerere. Pentru a adăuga coloane, faceți clic pe buton.
După clic, sistemul va determina singur coloanele și numele acestora și le va adăuga în raport: Sistemul va afișa, de asemenea, aceste coloane în blocul „Tabele", unde utilizatorul le poate personaliza.
Setările coloanelor sunt descrise în secțiunea „Lucrul cu coloane". Sistemul adaugă automat toate coloanele.
Cele inutile sunt șterse prin clic pe . Ulterior pot fi adăugate din blocul „Tabelă".
Transferul parametrilor raportului în câmpul „Parametri" pentru personalizare. Pentru a transfera parametrii, faceți clic.
După clic, sistemul însuși va determina ce sunt parametrii și va transfera numele lor în câmpul „Parametri".
Parametrii care nu au fost transferați sunt afișați în editorul de interogări SQL în roșu, iar cei transferați în verde.
Fiecare parametru trebuie configurat; modul de configurare și formatele în care parametrii pot fi în codul interogării SQL sunt descrise în secțiunea „Lucrul cu parametri".
Toate câmpurile selectate prin SELECT în interogarea SQL sunt afișate în două locuri — deasupra constructorului și în blocul „Tabele": Sistemul va afișa, de asemenea, aceste coloane în blocul „Tabele", unde utilizatorul le poate personaliza.
Setările coloanelor sunt descrise în secțiunea „Lucrul cu coloane". Sistemul adaugă automat toate coloanele.
Cele inutile sunt șterse prin clic pe . Ulterior pot fi adăugate din blocul „Tabelă".
Transferul parametrilor raportului în câmpul „Parametri" pentru personalizare. Pentru a transfera parametrii, faceți clic.
După clic, sistemul însuși va determina ce sunt parametrii și va transfera numele lor în câmpul „Parametri".
Parametrii care nu au fost transferați sunt afișați în editorul de interogări SQL în roșu, iar cei transferați în verde.
Fiecare parametru trebuie configurat; modul de configurare și formatele în care parametrii pot fi în codul interogării SQL sunt descrise în secțiunea „Lucrul cu parametri".
Toate câmpurile selectate prin SELECT în interogarea SQL sunt afișate în două locuri — deasupra constructorului și în blocul „Tabele": Inițial, toate câmpurile sunt adăugate automat în raport după ce se face clic pe butonul din fereastra interogării SQL și sunt afișate atât deasupra constructorului, cât și în blocul „Tabele".
După ștergerea oricărui câmp, îl puteți adăuga înapoi făcând clic pe + de lângă numele său din blocul „Tabele".
Utilizatorul poate modifica ordinea în care sunt afișate câmpurile — pur și simplu prin glisare și plasare a numelor acestora în blocul superior.
Utilizatorul poate, de asemenea, modifica dimensiunea coloanelor prin întinderea lor.
Aspectul coloanelor din blocul superior corespunde exact modului în care vor fi afișate în raport.
Pentru a modifica parametrii unui câmp, faceți clic pe numele acestuia — după aceea se va deschide o fereastră cu următorii parametri: Style All — editarea stilului general al raportului.
Procesul este similar cu editarea în orice alt editor de text; Expand by — acest câmp este descris în detaliu în secțiunea Extend By și Group By ; Group by — acest câmp este descris în detaliu în secțiunea Extend By și Group By ; Name — utilizatorul setează numele acestei coloane în raport; Key — indică ce date să fie extrase în coloană.
De exemplu, există o cerere: SELECT SKU_ID SKU, STORE_ID STORE FROM SALES_SKU Dacă utilizatorul introduce codul câmpului STORE în setările coloanei SKU, atunci datele din coloana STORE vor fi afișate în coloana SKU din raport.
Dar acest lucru este posibil numai dacă o singură coloană SKU este afișată; dacă sunt afișate ambele coloane SKU și STORE — atunci adăugarea codului câmpului nu va funcționa.
Nu puteți adăuga un cod de câmp în același câmp. Tip de date — selecția tipului de date care trebuie afișat în câmp.
Sunt acceptate următoarele tipuri de date: Text — pentru câmpuri text — de exemplu „Numele articolului"; Număr — pentru câmpuri numerice — de exemplu „Volumul vânzărilor"; Dată — pentru câmpuri cu orice format de dată — de exemplu „Săptămâna vânzărilor" sau „Data vânzărilor"; Format — acest câmp apare dacă selectați tipul de date „Număr" sau „Dată".
Link — permite utilizatorului să adauge un link la o altă pagină, date sau altceva.
De exemplu, există o cerere: SELECT SKU_ID SKU, SITE_LINK LINK FROM MONITORING Coloana SKU afișează coduri de produs, iar coloana LINK afișează link-uri către site.
În acest caz, dacă utilizatorul selectează un link către LINK în câmpul „Link" din setările coloanei SKU, atunci în raport, când utilizatorul face clic pe numărul din coloana SKU, se va deschide un link din coloana LINK.
Link-ul poate fi adăugat numai la alte coloane; Lățime — utilizatorul poate limita lățimea posibilă a câmpului în raport.
Valoarea trebuie introdusă în pixeli. Dacă lățimea este auto, câmpul va fi extins pentru a se potrivi textului.
Style Cell — editarea unui stil separat pentru afișarea informațiilor în raport.
Procesul este similar cu editarea în orice alt editor de text; Aceste două câmpuri de setare a coloanelor sunt întotdeauna setate împreună.
Acești parametri permit implementarea coloanelor încrucișate — când mai multe date din alte coloane sunt afișate într-o singură coloană.
De exemplu, aceasta permite utilizatorului să afișeze datele privind vânzările de produse pentru mai multe săptămâni pe un singur rând, fără a adăuga manual o coloană separată pentru fiecare săptămână.
Această funcționalitate va fi explicată mai detaliat în exemplul de mai jos.
Utilizatorul a creat o cerere pentru a afișa vânzările din prima săptămână pentru ultimii 5 ani pentru articolul selectat 56 în toate magazinele (Magazinul 1 și Magazinul 2): Ca rezultat, a primit următorul raport: Se poate observa că raportul a afișat 10 rânduri, dar într-un format nu foarte convenabil.
Ar fi mult mai convenabil dacă toate săptămânile și vânzările ar fi afișate pe un singur rând cu produsul, astfel ar exista numai două rânduri pentru fiecare magazin.
În această formă: Pentru astfel de transformări, se utilizează Expand By.
Mai întâi, utilizatorul trebuie să elimine din afișare coloana ale cărei date vor trebui extinse și inserate în altă coloană.
În acest exemplu, aceasta este coloana cu săptămânile — WEEK WK.
Prin urmare, este necesar să faceți clic în partea de sus, în rândul de coloane, pe lângă coloana WEEK; Pasul următor este să faceți clic pe lângă coloana în care doriți să afișați o altă coloană.
În cazul nostru, acestea sunt coloanele Sales și Stock — prin urmare, faceți clic pe buton lângă ambele coloane — după clic, specificați ce coloană ar trebui afișată în interior — în cazul nostru este WK (Săptămâna); După aceea, WK este afișat și în câmpul Expand By din setările coloanelor corespunzătoare.
Pentru Expand by, utilizatorul poate folosi orice coloane care nu sunt afișate în raport, dar sunt prezente în interogare.
Apoi, utilizatorul trebuie să configureze în ce coloană vor fi grupate datele.
În acest exemplu, este necesar ca datele să fie grupate după magazine — adică în câmpul Group by, selectați STR (numele coloanei care extrage datele după magazine în interogarea SQL).
Group by poate fi selectat numai pentru o singură coloană; în celelalte coloane cu Expand by, această selecție va fi preluată automat.
După finalizarea tuturor setărilor, utilizatorul poate face clic pe și poate vedea cum sunt afișate datele: Parametrii sunt valori pe care utilizatorul le selectează la rularea unui raport.
Aceasta permite utilizatorului să selecteze numai datele care corespund criteriilor sale.
Parametrii sunt transferați automat din cod în editorul SQL în blocul „Parametri" după ce se face clic pe buton.
După ce parametrii au apărut în blocul „Parametri", aceștia pot fi configurați.
Există două tipuri de parametri: :parametru - astfel de parametri transmit o valoare specifică și trebuie specificați în cod ca: where variabilă = :parametru; [lista_parametri] - astfel de parametri transmit un set de valori și trebuie specificați în cod ca: where variabilă [lista_parametri]; De exemplu, dacă utilizatorul trebuie să transmită numărul „5" ca parametru, utilizatorul folosește formatul :parametru după semnul egal.
Ca rezultat, după pornirea raportului, parametrul va funcționa în cod ca: where valoare = 5.
Dacă utilizatorul trebuie să transmită un set — de exemplu (1,3,8), atunci utilizatorul folosește formatul [lista_parametri] fără semn egal.
Ca rezultat, după pornirea raportului, parametrul va funcționa în cod ca: where valoare in (1,3,8).
Utilizatorul poate folosi orice nume convenabile pentru parametri; cel mai important este să folosiți formatul corect.
Pentru a configura un parametru, faceți clic pe numele parametrului din blocul „Parametri".
După clic, se deschide o fereastră cu următoarele setări ale parametrului: ID — identificatorul parametrului — se completează automat conform câmpului căruia îi este aplicat; nu poate fi modificat; Name — numele parametrului — trebuie să fie egal cu numele parametrului din cod; Display — numele parametrului care va fi afișat la rularea raportului; Type — selecția tipului de parametru — este foarte important să specificați tipul corect pentru funcționarea corectă a parametrului și pentru a evita erorile.
Sunt acceptate următoarele tipuri de parametri: Text — parametrul va transmite o valoare text; poate fi utilizat numai cu formatul de parametru: parametru; Număr — parametrul va transmite o valoare numerică; poate fi utilizat numai cu formatul de parametru: parametru; Dată — parametrul va transmite data în formatul AAAA-LL-ZZ; poate fi utilizat numai cu formatul de parametru: parametru; Săptămână — parametrul va transmite data în formatul săptămânii ISO — AAAASS; poate fi utilizat numai cu formatul de parametru: parametru; Lună — parametrul va transmite data în formatul lunii ISO — AAAALL; poate fi utilizat numai cu formatul de parametru: parametru; Listă — parametrul va transmite un set de valori în orice format.
Este utilizat când este necesar să se transmită mai mult de o valoare.
De exemplu (1, 3, 8) sau (magazin, depozit) sau (202015, 202025).
Poate fi utilizat numai cu formatul de parametru [lista_parametri]; Selectare — parametrul va transmite un set de valori selectate printr-o cerere specială, care este indicată în câmpul „Query".
Poate fi utilizat numai cu formatul de parametru: parametru; Min — valoarea minimă a parametrului.
Poate fi utilizată pentru numere, date, săptămâni, luni; Max — valoarea maximă a parametrului.
Poate fi utilizată pentru numere, date, săptămâni, luni; Query — completat numai pentru formatul „Selectare".
Pentru a afișa interogările posibile, utilizatorul trebuie să introducă textul 'select' în câmp; interogările disponibile vor apărea automat într-o listă.
La rularea raportului, informațiile extrase din cerere vor fi afișate într-o listă derulantă la selectarea valorii parametrului.
Următoarele interogări sunt acum acceptate automat (dar puteți crea și altele suplimentare): report_select_stores — utilizat pentru a selecta un magazin din listă pentru valoarea parametrului; report_select_groups — utilizat pentru a selecta un grup din listă pentru valoarea parametrului; report_select_managers — utilizat pentru a selecta un manager din listă pentru valoarea parametrului; report_select_contracts — utilizat pentru a selecta un contract din listă pentru valoarea parametrului; report_select_suppliers — utilizat pentru a selecta un furnizor din listă pentru valoarea parametrului; report_select_whs — utilizat pentru a selecta un depozit din listă pentru valoarea parametrului; report_select_fcst — utilizat pentru a selecta un număr de prognoză din listă pentru valoarea parametrului; Index — poate fi introdus numai pentru parametri de tipul Dată, Săptămână, Lună.
Indexul permite utilizatorului să scadă sau să adauge automat o valoare la parametru.
Astfel, dacă utilizatorul setează parametrul Dată și Indexul la -10, atunci în mod implicit la rularea raportului, valoarea datei va fi afișată cu 10 zile mai puțin decât data implicită specificată în câmpul „Value".
Dacă câmpul de valoare este lăsat necompletat, data va fi scăzută din data curentă; Value — se introduce o valoare implicită care va fi afișată atunci când selectați opțiuni înainte de rularea raportului.
Mai jos sunt prezentate variantele de specificare a parametrilor în interogarea SQL pentru diferite tipuri de date: where sku_id = :sku_id - utilizat pentru a selecta un SKU specific prin codul MySales.
La rularea raportului, un număr de SKU este transmis parametrului.
Tipul parametrului trebuie să fie „Număr"; where sku_id [sku_id_list] - utilizat pentru a selecta mai multe SKU-uri prin codul MySales.
La rularea raportului, un set de numere de SKU separate prin virgulă este transmis parametrului.
Tipul parametrului trebuie să fie „Listă"; where item_code = :item_code - utilizat pentru a selecta un SKU specific folosind codul intern.
La rularea raportului, un cod text este transmis parametrului.
Tipul parametrului trebuie să fie „Text"; where item_code [item_code_list] - utilizat pentru a selecta mai multe SKU-uri prin codul intern.
La rularea raportului, un set de coduri text SKU separate prin virgulă este transmis parametrului.
Tipul parametrului trebuie să fie „Listă"; where ((sku_id = :sku_id) or (:sku_id = 0)) - parametru complex — utilizat pentru a putea afișa toate SKU-urile sau unul specific.
În acest caz, pentru a afișa toate SKU-urile, valoarea 0 este introdusă pentru parametru la pornirea raportului, sau numărul unui SKU specific pentru a afișa un singur SKU; Exemplele de mai sus de setare a parametrilor în cod sunt relevante pentru toate tipurile de parametri și câmpuri.
Pentru a lucra cu designerul de rapoarte, este foarte important să înțelegeți structura bazei de date pentru a ști ce date să extrageți din ce tabele, cum se numesc câmpurile și cum să legați datele din tabele diferite.
Utilizatorul poate apela structura bazei de date făcând clic pe și alegând „Show DB".
După selecție, se va deschide o fereastră în care vor fi afișate toate tabelele și toate câmpurile din acestea.
În fereastra bazei de date funcționează o căutare care permite utilizatorului să găsească tabelele și coloanele.