Pogledaj uputstva za PANTHEON™

 Sadržaj
 Glavna strana- Dobrodošli u PANTHEON uputstva
[Collapse]PANTHEON
 [Collapse]PANTHEON priručnici
  [Collapse]Priručnik za PANTHEON
   [Expand]Pantheon Hosting
   [Expand]Pomoć
   [Collapse]Podešavanja
    [Expand]Subjekti
    [Expand]Identi
    [Expand]POS
    [Expand]Proizvodnja
    [Expand]Zaposleni
     Kalendar
    [Expand]Računovodstvo
    [Expand]Carina
    [Collapse]Program
     [Expand]Vrste dokumenata
     [Collapse]Ispisi u PANTHEON-u
       Podešavanja
       Vrste ispisa
       Grupisanje i numerisanje
      [Expand]Funkcije
       Radno okruženje
       Specifičnosti ispisa
       Sistemske promenljive
       Uvoz i izvoz ispisa
      [Expand]Skripta
       Tabele i upiti na ispisima
       Objekti
       Izrazi
     [Expand]Oblici ispisa
     [Expand]Šifarnik tekstova za vrste dokumenata
      Načini dostave
     [Expand]ARES
     [Expand]Administratorska konzola
     [Expand]Elementi kontrolne table
      Izveštaji na kontrolnoj tabli
      Ad-hoc analiza
     [Expand]Kartice poverenja
     [Expand]Izveštaji kontrolne table
     [Expand]Trenutni korisnik Ctrl - U
     [Expand]Ad-hoc analize
      SQL editor
     [Expand]Poštanska knjiga
      Klasifikacijski plan
    [Expand]Dokumentacija
   [Expand]Narudžbine
   [Expand]Roba
   [Expand]Proizvodnja
   [Expand]POS
   [Expand]Servis
   [Expand]Novac
   [Expand]Kadrovi
   [Expand]Radna površina
   [Expand]Analize
   [Expand]Korisničke strane
   [Expand]Poslovni saveti
    Dodatno
   [Expand]Plansko-analitički alat ZEUS
   [Expand]Dodatni programi
   [Expand]Obaveštenja programa
   [Expand]Zvanična mišljenja
   [Expand]Dodatni programi
   [Expand]Sistemska okolina
    Rečnik izraza
   [Expand]Zastareli produkti
  [Expand]Vodič po DataLab PANTHEON™ Farming
  [Expand]Vodič za mobilni POS
  [Expand]Vodič za PANTHEON Vet
 [Expand]PANTHEON korisnički priručnici
[Expand]PANTHEON Web
[Expand]PANTHEON Granule

Load Time: 1046,8899 ms
print   |
Label

Funkcije

Funkcije



U ovom poglavlju su objašnjene agregatne funkcije, funkcija GetForValue, SQLEXP i IIF. Funkcije, koje su napisane posebno za PANTHEON 5.5 i nema ih u standardnom FastReport-u smo obrazložili posebno u kategoriji Datalab Funkcije.
 


Pogledajte primere upotrebe funkcija u korisničkom priručniku




 

Agregatne funkcije


Agregatne funkcije su poznate iz SQL-a i to su:

SUM – suma
AVG – prosek
MAX – najveća vrednost
MIN – najmanja vrednost
COUNT – broj zapisa

Najlakše ih dobijamo tako, da sa alatnog reda sa objektima prenesemo na ispis objekat sa sistemskim tekstom .  Otvori se prozor kao na donjoj slici.



Slika 1 - Prozor za unos sistemske promenljive i agregatnih funkcija


Izaberemo Aggregate value i u padajućim menijima i potvrđenim poljima izaberemo željene vrednosti:
 

  • Agregatnu funkciju (Function).

  • Bend (Data band), na kojeg se odnsoi funkcija.

  • Dataset, koji je obično isti kao osobina DataSet izabranog benda.

  • Polje u tabeli ili upitu (DataField), kojeg želimo imati za argument funkcije. Kod funkcije COUNT je ta osobina bez značaja.

  • Da li uvažava podatke i ako je bend pas sakriven (Count invisible bands). Ova mogućnost se može uvažavati npr. kod ispisa zalihe, ako nas zanimaju samo grupne količine. Predstavlja vrednost 1 zadnjeg argumenta agregatnih funkcij.

  • Kumulativna suma (Running total). Ova osobina određuje, da li se količine (sume) prenose u sledeću grupu. Predstavlja vrednost 2 zadnjeg argumenta agregatnih funkcija.

  • U polje Izraz (Expression) možemo uneti željeni izraz bez srednje zagrade na početku i kraju izraza. MOžemo se pomagati tatserom fx, koji nam otvori ExpressionEditor, koji je zapravo DataTree.


Ukoliko u jednom objektu želimo ispisati izraz i spreman tekst ili više izraza, izaberemo Text i u unosno polje upišemo željeni tekst. U ovom primeru sa posebnim objektom nismo dobili ništa, jer je to potpuno isto kao ako bi pisali u običnom tekstualnom objektu.
U ovom prozoru možemo izabrati i sistemske promenljive, iako nisu na raspolaganju sve. Jednostavnije je da ih povlačemo preko DataTree (drvo sa podacima).




Kod svih funkcija je obavezan samo prvi argument
 

Funkcija IIF


Funkcija IIF  je slična uslovnom upitu if - then – else.

Zaglavlje funkcije:

function IIF(Expr: Boolean; TrueValue, FalseValue: Variant): Variant;


 

Funkcija GetFormValue

Funkcija GetFormValue vrati vrednost u objektu u prozoru programa. Njen argument je ime objekta u prozoru zajedno sa imenom prozora. Ako objekat ne postoji ili forma nije kreirana, funkcija vrati prazan niz.

Zaglavlje funkcije:

function GetFormValue(FormComponentName: String): Variant;
 

 

Funkcija SQLExp 



Jedini parametar funkcije SQLExp je SQL upit SELECT, koji se izvode na bazi podataka.

Zaglavlje funkcije:

function SQLExp(sql: String): String;

Funkcija vrati ceo resultset upita SELECT. Ako je u rezultatu više zapisa, zapiše svaki u svoj red. Ako sintaksa upita SELECT nije pravilna ili sadrži netačna imena tabele tj. polja u njima, funkcija ne javi greške, ali vrati prazan niz.

 

Razlika između funkcija SQLExp na MS-SQL i Oracle



Sintaksa upita SELECT na Oraclu se malo razlikuje od one na MS-SQL, pa želimo koristiti iste izpise na oba servera. Zato moramo pisati izraze SQLExp, koji su istovremeno pravilni za oba. Pri tom nam malo pomaže i sam PANTHEON, koji ima veoma jednostavan konvertor za pretvaranje upita SELECT između oba servera i pravilno prevodi samo neke jednostavne upite.
 
Najznačajnija razlika u sintaksi  je operator za sastavljanje nizova, koji je na MS-SQL-u '+' i na Oraclu '||'. 

 

Donji upit na MS-SQL vrati prefix države i identifikacioni broj za PDV našeg preduzeća

[SQLexp('select ltrim(acVATCodePrefix+ltrim(acCode)) from tHE_SetSubj where acSubject = ''' + <tbParameter."acOurCompany"> + '''')]

Odgovarajući upit na Oraclu je

[SQLexp('select ltrim(acVATCodePrefix||ltrim(acCode)) from tHE_SetSubj where acSubject = ''' + <tbParameter."acOurCompany"> + '''')]

Zbog pretvaranja će se upit pravilno izvesti na servera ako ga zapišemo u jednom ili drugom obliku.

Kao što smo napomenuli, konvertor ne zna pravilno da prevede sve. Najznačajniji primer je ispis samo prvih zapisa, za kojeg MS-SQL koristi upit TOP, Oracle i upit ROWNUM, razlika samo je u sintaksi.
 



Oceni ovu temu
Da li je ova tema korisna?
Komentari
Komentari će biti vidljivi i na forumu!