Navodila za PANTHEON

 Kazalo
 Glavna stran - Dobrodošli v PANTHEON navodila
[Collapse]PANTHEON
 [Collapse]Vodiči za PANTHEON
  [Collapse]Vodič po PANTHEON-u
   [Expand]Pomoč
   [Collapse]Nastavitve
    [Expand]Subjekti
    [Expand]Identi
    [Expand]POS
    [Expand]Proizvodnja
    [Expand]Zaposleni
     Koledar
    [Expand]Računovodstvo
    [Expand]Carina
    [Expand]Dokumentacija
    [Collapse]Program
     [Expand]Vrste dokumentov
     [Collapse]Izpisi v PANTHEON-u
       Delovno okolje
       Izvozi ime datoteke
       Poročila Register
       Posebnosti izpisov
       Nastavitve
       Predogled tiskanja
       Zgradba izpisa
       Objekti
      [Expand]Oblikovalec poročil
       Izrazi
      [Expand]Ustvarjanje poročil
      [Expand]Skupine in agregati
       Grupiranje in številčenje
      [Collapse]Funkcije
        Datalab funkcije
        Funkcija EQLExp
      [Expand]Oblikovanje in označevanje
       Sistemske spremenljivke
       Vgrajena poročila (podporočila)
       Uvoz in izvoz
      [Expand]Skripta
       Tabele in poizvedbe
       Prenos izpisa v druge baze
       Izvoz oblike izpisa
       Uvoz oblike izpisa
       Bližnjica na izpis
       Podvajanje izpisov in spreminjanje tipa izpisa
      [Expand]Uporaba izraza SQLEXP v izpisih
      [Expand]Sporočila pri oblikovanju izpisov
      [Expand]Oblikovanje izpisov
     [Expand]Teksti za dokumente
      Načini dostave
     [Expand]Kartice zaupanja
     [Expand]Administratorska konzola
     [Expand]Gradniki nadzorne plošče
      Poročila nadzorne plošče
      Poročila nadzorne plošče
      Ad-hoc analize
     [Expand]ARES
      SQL urejevalnik
    [Expand]Zamenjaj uporabnika Ctrl - U
   [Expand]Naročila
   [Expand]Proizvodnja
   [Expand]Blago
   [Expand]Servis
   [Expand]Denar
   [Expand]Kadri
   [Expand]Namizje
   [Expand]Analitika
   [Expand]Sporočila programa
   [Expand]Uradna pojasnila
   [Expand]Sistemsko okolje
   [Expand]Dodatni programi
    Slovar izrazov
   [Expand]Zastareli produkti
  [Expand]Vodič po PANTHEON Farming
  [Expand]Vodič po PANTHEON Retail
  [Expand]Vodič po PANTHEON Vet
 [Expand]Uporabniški priročniki za PANTHEON
[Expand]PANTHEON Web
[Expand]PANTHEON Granule
  
  
  
  
  
  
  
  
 tt
 tt
 .
 .
 .
[Expand]Uporabniške strani

Load Time: 828,1229 ms
print   |
Label

SQL Exp

 

 

000001.gif  V večini primerov je bolje uporabiti poizvedbe na poročilu namesto SQLExp funkcije.

SQLExp je funkcija, ki vam omogoča dostop do podatkov, ki sicer niso na voljo v izvirnem naboru podatkov poročila. Na ta način lahko vključite podatke iz drugih tabel v uporabniško definirana poročila.

Glava

funkcija SQLExp(sql:String): String;

Enostavni primeri

Najprej si oglejmo dva enostavna primera, ki ju lahko uporabimo na vsakem poročilu. Prvi izraz vrne naslov subjekta z imenom 'Tovarna'

[SQLexp('select acAddress from tHE_SetSubj where acSubject = ''Factory''')]

Drugi primer vrne ime naše podjetja. Uporablja združitev dveh tabel

[SQLexp('select S.acSubject from tHE_SetSubj S, tPA_SysParam P where S.acSubject = P.acOurCompany')]

Primer uporabe na poročilu 103 - Poročilo o naročilu - podrobno

Zbirate naročila in enkrat na teden ta naročila dostavite prejemnikom. V poročilu o naročilu lahko ustvarite poročilo o nedostavljenih naročilih z vnesenim Dostava poljem (metoda dostave) Dostava - z lastnim tovornjakom.

V naboru podatkov poročila o naročilu niso navedeni naslov in pošta kupca. Vsi ti podatki so na voljo v registru subjektov, kar zadeva ID subjektov, je že prisoten v naboru podatkov103 - Poročilo o naročilu - podrobno poročila.

Vsi kriteriji so bili izpolnjeni za uporabo funkcije SQLExp na poročilu. Poglejmo!

Postavite objekt "Besedilo" na poročilo. Kliknite na objekt, da odprete urejevalnik besedila. Napišite izraz v urejevalniku. Izraz morate obkrožiti s kvadratnimi okviri, ker je napisan kot izraz v objektu "Besedilo".

[SQLExp('select acAddress from tHE_SetSubj where acSubject = ' + dlQuotedStr(<qReportIzpis."acConsignee">) + '')]

Razlaga

acConsignee je polje v naboru podatkov qReportIzpis ki se uporablja za generiranje poročila.

Funkcija dlQuotedStr (registrirana za poročilo pri Datalab) pretvori niz v citirano različico.

Po zamenjavi dlQuotedStr(<qReportIzpis."acConsignee">), je SQL ukaz:

'select acAddress from tHE_SetSubj where acSubject = '''Customer&Co.''' '

in tako je poizvedba, ki se izvede:

select acAddress from tHE_SetSubj where acSubject = 'Customer&Co.''

000001.gif Ker se imena naborov podatkov in polj lahko razlikujejo v vsakem poročilu, morate preveriti ime naborov podatkov in polj za vsako konkretno poročilo.

Poročilo o mestu kupca iz naročila

SQL stavek je v tem primeru združitev dveh tabel

[SQLExp('select P.acName from tHE_SetSubj S left join tHE_SetPostCode P on S.acPost = P.acPost where acSubject = ' + dlQuotedStr(<qReportIzpis."acConsignee">) + '')]

Primer kolektivnega računa

Oglejmo si primer, kjer je bil kolektivni račun (prejemnica ali izdan račun) ustvarjen iz notranjih dokumentov (prejemnic ali izdanih računov), v katerih ste prejeli ali izdali blago, ki ga spremljajo serijske številke.

Poročilo o kolektivnem računu ali pregled serijskih številk ne bo dalo informacij o prejetih ali izdanih serijskih številkah predmetov iz kolektivnega računa, ker so bile te serijske številke prejete ali izdane preko notranjih dokumentov.

Vendar lahko poročate o seznamu prejetih ali izdanih serijskih številk! Za to uporabite funkcijo SQLExp. Serijske številke bodo neposredno poročane z uporabo povezovalne tabele, kjer je tip povezave med notranjim dokumentom in kolektivnim računom 4.

Poročila te vrste se uporabljajo za poročanje serijskih številk v kolektivnem računu, ki je bil ustvarjen neposredno iz notranjih dokumentov.

Ustvarite novo kloniranje že obstoječega poročila za račun. Dodajte nov objekt besedila in napišite naslednji SQL stavek:

[SQLExp('select S.acSerialNo + '' ('' + LTrim(Str(Sum(S.anQty), 10, 2)) + '')'' as SN from tHE_MoveItemSerialNo S, tHE_LinkMoveItemMoveItem V where V.acLnkKey = S.acKey and V.anLnkNo = S.anNo and V.acType = ''4'' and V.acKey = ''' + <tbIzpisPrometPoz."acKey"> + ''' and V.anNo = ' + VarToStr(<tbIzpisPrometPoz."anNo">) + ' group by S.acSerialNo')]

Primer kolektivnega dokumenta, ustvarjenega z notranjimi dokumenti

Oglejmo si primer, kjer je bil kolektivni račun (prejemnica ali izdan račun) ustvarjen iz notranjih izdanih dokumentov, v katerih ste izdali blago, ki ga spremljajo serijske številke.

Poročilo o kolektivnem računu ali pregled serijskih številk ne bo dalo informacij o izdanih serijskih številkah predmetov iz kolektivnega računa, ker so bile te serijske številke izdane preko dokumenta za kupca.

Vendar lahko poročate o seznamu izdanih serijskih številk! Za to uporabite funkcijo SQLExp. Serijske številke bodo neposredno poročane z uporabo povezovalne tabele, kjer je povezava med notranjim dokumentom in kolektivnim računom vnesena s tipom V.

1. Ustvarite novo kopijo iz poročila že obstoječega poročila za račun. Dodajte nov objekt besedila in napišite naslednji SQL stavek:

[SQLExp('select S.acSerialNo + '' ('' + LTrim(Str(Sum(S.anQty), 10, 2)) + '')'' as SN from tHE_MoveItemSerialNo S, tHE_LinkMoveItemMoveItem V where V.acLnkKey = S.acKey and V.anLnkNo = S.anNo and V.acType = ''V'' and V.acKey = ''' + <tbIzpisPrometPoz."acKey"> + ''' and V.anNo = ' + VarToStr(<tbIzpisPrometPoz."anNo">) + ' group by S.acSerialNo')]

Razlika od prejšnjega primera je le ta, da je tip povezave v tem primeru "V" namesto 4.

Primer klicanja shranjene procedure

Parametr funkcije je lahko tudi shranjena procedura. Naslednji primer vrne mesto našega podjetja s klicem shranjene procedure "fHE_GetOurCompanyCity"

[SQLExp('select dbo.fHE_GetOurCompanyCity()]



Ali so bila ta navodila uporabna?
Vaše povratne informacije bodo prispevale k boljši pomoči.
Komentarji
Komentarji so izpostavljeni tudi na forumu.