Bendrinti naudojant


Modulio Elektroninės ataskaitos formulių kalba

Modulyje Elektroninės ataskaitos (ER) suteikiama galingų duomenų transformavimo funkcijų. Kalba, naudojama norint išreikšti būtinas duomenų apdorojimo ER formulės konstruktoriuje kalbas, panaši į formulės kalbą Microsoft Excel.

Pagrindinė sintaksė

ER išraiškos gali turėti bet kurį arba visus iš šių elementų:

Konstantos

Kurdami išraiškas galite naudoti tekstines ir skaitines konstantas (t. y., reikšmes, kurios nėra apskaičiuojamos). Pavyzdžiui, išraiška naudoja VALUE ("100") + 20 skaitinę konstantą 20 , eilutės konstantą 100 ir skaitinę vertę120 .

ER formulių dizaino įrankis palaiko kaitos sekas. Todėl galite nurodyti, kurią išraiškos eilutę reikėtų tvarkyti kitaip. Pavyzdžiui, išraiška pateikia teksto "Leo Tolstoy ""War and Peace"" Volume 1" eilutę Leo Tolstoy "Grąžinimas ir jav" apimtis 1.

Operatoriai

Toliau pateikiamoje lentelėje parodyti aritmetiniai operatoriai, kuriais galite atlikti pagrindines matematikos operacijas, pvz., sudėtį, atimtį, daugybą ir dalybą.

Operatorius Reikšmė Pavyzdys
+ Priedas 1+2
- Atimtis, neigimas 5-2, -1
* Daugyba 7\*8
/ Padalinys 9/3

Toliau pateikiamoje lentelėje parodyti palyginimo operatoriai, kurie yra palaikomi. Juos naudodami galite palyginti dvi reikšmes.

Operatorius Reikšmė Pavyzdys
= Lygu X=Y
> Didesnis nei X>Y
< Mažiau nei X<Y
>= Didesnis nei arba lygus X>=Y
<= Mažiau nei arba lygu X<=Y
<> Nelygu X<>Y

Be to, galite naudoti ampersendą (&) kaip teksto sujungimo operatorių. Taip vieną ar kelias teksto eilutes galite sujungti ar susieti į vientisą tekstą.

Operatorius Reikšmė Pavyzdys
& Sujungti "Nothing to print:" & " " & "no records found"

Operatoriaus pirmenybė

Tvarka, kuria vertinamos sudėtinės išraiškos dalys, yra svarbi. Pavyzdžiui, išraiškos rezultatas skiriasi, atsižvelgiant 1 + 4 / 2 į tai, ar pirmiausia atliekama skyriaus operacija. Galite naudoti skliaustus, kad aiškiai apibrėžtumėte, kaip vertinti išraišką. Pavyzdžiui, norėdami nurodyti, kad pirmiau reikėtų atlikti papildymo operaciją, galite pakeisti prieš tai buvusią išraišką (1 + 4) / 2. Jei aiškiai nenurodote išraiškoje atliekamų operacijų tvarkos, ji nustatoma pagal numatytąją pirmenybę, kuri priskiriama palaikomiems operatoriams. Tolesnėje lentelėje parodyta pirmenybė, priskirta kiekvienam operatoriui. Aukštesnę pirmenybę (pvz., 7) turintys operatoriai vertinami prieš žemesnę pirmenybę (pvz., 1) turinčius operatorius.

Pirmumas Operatoriai Sintaksė
7 Grupavimas ( ... )
6 Nario prieiga … . …
5 Funkcijos iškvietimas … ( ... )
4 Dauginamasis … * ...
… / …
3 Priedas … + …
… - …
2 Palyginimas … < ...
… <= ...
… Ji turi būti neįeis> į
… > ...
… = …
… <> ...
1 Atskyrimas … , …

Jei išraiškoje iš eilės yra keli operatoriai, turintys tokią pačią pirmenybę, operacijos vertinamos iš kairės į dešinę. Pavyzdžiui, išraiška pateikia 1 + 6 / 2 \* 3 > 5 reikšmę Teisinga. Aiškiai nurodyti norimą išraiškų vertinimo tvarką rekomenduojame naudojant skliaustus, kad išraiškas būtų lengviau skaityti ir tvarkyti.

Nuorodos

Visi dabartinio ER komponento duomenų šaltiniai, kurie yra pasiekiami kuriant išraišką, gali būti naudojami kaip įvardytosios nuorodos. Dabartinis ER komponentas gali būti modelio susiejimas arba formatas. Pavyzdžiui, dabartiniame ER modelio susiejime yra ReportingDate duomenų šaltinis, kuris grąžina DateTime duomenų tipo vertę. Norėdami tinkamai formatuoti šią vertę generavimo dokumente, galite nurodyti duomenų šaltinį išraiškoje kaip DATETIMEFORMAT (ReportingDate, "dd-MM-yyyy").

Prieš visus nuorodos duomenų šaltinio pavadinime esančius simbolius, kurie nėra abėcėlės raidė, turi būti padėtas viengubos kabutės ženklas ('). Jei nuorodos duomenų šaltinio pavadinime yra bent vienas simbolis, kuris nėra abėcėlės raidė, pavadinimas turi būti išskiriamas viengubomis kabutėmis. Pavyzdžiui, šie neabėcėliniai simboliai gali būti skyrybos ženklai arba kiti rašytiniai simboliai. Štai keletas pavyzdžių:

  • Šiandienos datos laiko duomenų & šaltinis turi būti nurodytas ER išraiškoje kaip 'Today''s date & time'.
  • Klientų duomenų šaltinio name () metodas turi būti nurodytas ER išraiškoje kaip Customers.'name()'.

Jei programos duomenų šaltinių metodai turi parametrų, šie metodai iškviečiami naudojant toliau pateiktą sintaksę.

  • Jei sistemos duomenų šaltinio isLanguageRTLmetode yra eilutės duomenų tipo EN-US parametras, šis metodas turi būti nurodytas ER išraiškoje kaip. System.isLanguageRTL("EN-US")
  • Kai metodo pavadinimą sudaro tik raidiniai ir skaitiniai simboliai, kabutės neprivalomos. Tačiau jos būtinos lentelės metodo atveju, jei pavadinime yra skliaustai.

Kai sistemos duomenų šaltinis pridedamas prie ER susiejimo, kuris nurodo visuotinės programos klasę, System.isLanguageRTL("EN-US ")išraiška pateikia Boolean vertę FALSE. Modifikuota išraiška System.isLanguageRTL("AR") pateikia Būlio logikos vertę TEISINGA.

Galite riboti tai, kaip reikšmės perduodamos šio tipo metodo parametrams.

  • Šio tipo metodams galima perduoti tik konstantas. Konstantų reikšmės apibrėžiamos kūrimo metu.
  • Šio tipo parametrai palaiko tik paprastus (pagrindinius) duomenų tipus. Nesutūstūs duomenų tipai yra Integer, Real, Boolean ir String.

Keliai

Kai išraiška nurodo susistemintų duomenų šaltinį, galite naudoti kelio aprašą, kad pasirinktumėte konkretų nesudėtingą duomenų šaltinio elementą. Taško simbolis (.) naudojamas atskiriant atskirus susistemintų duomenų šaltinio elementus. Pavyzdžiui, dabartiniame ER modelio susiejime yra InvoiceTransactions duomenų šaltinis, o šis duomenų šaltinis pateikia įrašų sąrašą. SfTransactions įrašo struktūroje yra laukai AmountDebitir AmountCredit , ir abiejų laukų grąžinamos skaitinės vertės. Todėl, norėdami apskaičiuoti sumą, kurios SF išrašyta, galite sukurti šią išraišką: InvoiceTransactions.AmountDebit - InvoiceTransactions.AmountCredit. Šioje InvoiceTransactions.AmountDebit išraiškoje esanti konstrukcija yra maršrutas, naudojamas įrašų sąrašo tipo InvoiceTransactionsduomenų šaltinio AmountDebitlaukui pasiekti.

Santykinis kelias

Jei susistemintų duomenų šaltinio kelias prasideda ženklu „@“, šis kelias yra santykinis. Ženklas „@“ rodomas vietoj likusios naudojamos hierarchinės medžio struktūros absoliučiojo kelio dalies. Toliau pateikiamoje iliustracijoje vaizduojamas pavyzdys. Čia absoliutusis Ledger.'accountingCurrency()' maršrutas nurodo , kad duomenų modelio lauke AccountingCurrency įvedama apskaitos valiutos vertė iš DK duomenų šaltinio.

Absoliučiojo kelio pavyzdys ER modelio susiejimo kūrimo įrankio puslapyje.

Tolesnėje iliustracijoje pateiktame pavyzdyje parodyta, kaip naudojamas santykinis kelias. Susijęs maršrutas @.AccountNumnurodo, kad Intrastat duomenų šaltinio laukas AccountNum ( kuris rodomas vienu lygiu virš duomenų modelio hierarchinio medžio lauko AccountNum ) naudojamas kliento arba tiekėjo sąskaitos numeriui įvesti į duomenų modelio AccountNum lauką.

Santykinio kelio pavyzdys ER modelio susiejimo kūrimo įrankio puslapyje.

Likusi absoliučiojo maršruto dalis taip pat rodoma ER formulės rengyklėje.

Likusi absoliučiojo kelio dalis ER formulių kūrimo įrankio puslapyje.

Daugiau informacijos ieškokite susijusiam maršrutui naudojant ER modelių ir formatų duomenų susiejimus.

Funkcijos

ER reiškiniuose galima naudoti integruotąsias ER funkcijas. Visi reiškinio konteksto (tai yra, esamo ER modelio susiejimo arba ER formato) duomenų šaltiniai pagal iškvietimo funkcijų argumentų sąrašą gali būti naudojami kaip iškvietimo funkcijų parametrai. Kaip iškvietimo funkcijos parametrus taip pat galima naudoti konstantas. Pavyzdžiui, dabartiniame ER modelio susiejime yra InvoiceTransactions duomenų šaltinis, o šis duomenų šaltinis pateikia įrašų sąrašą. SfTransactions įrašo struktūroje yra laukai AmountDebitir AmountCredit , ir abiejų laukų grąžinamos skaitinės vertės. Todėl, norėdami apskaičiuoti sumą, kurios SF išrašyta, galite sukurti šią išraišką, kuri naudoja integruotą ER apvalinimo funkciją: ROUND (InvoiceTransactions.AmountDebit - InvoiceTransactions.AmountCredit, 2).

Kurdami ER modelių susiejimus ir ER ataskaitas, galite naudoti tolesnių kategorijų ER funkcijas.

Funkcijų sąrašo papildymas

ER leidžia papildyti ER išraiškose naudojamų funkcijų sąrašą. Tam reikės atitinkamų inžinerinių pastangų. Išsamios informacijos ieškokite Elektroninių ataskaitų (ER) funkcijų sąrašo išplėtimas.

Sudėtiniai reiškiniai

Jei sutampa duomenų tipai, galite kurti sudėtinius reiškinius, kuriuose naudojamos skirtingų kategorijų funkcijos. Kai kartu naudojate kelias funkcijas, užtikrinkite, kad vienos funkcijos išvesties duomenų tipas sutaptų su įvesties duomenų tipu, kurio reikia kitai funkcijai. Pavyzdžiui, norėdami išvengti galimos klaidos "sąrašas yra tuščias" susiedami lauką su ER formato elementu,sąrašo kategorijoje su funkcija junkite funkcijas iš loginės kategorijos, kaip parodyta toliau pateiktame pavyzdyje. Čia formulė naudoja IF funkciją, kad būtų galima patikrinti , ar IntrastatTotals sąrašas tuščias prieš grąžinant reikiamo telkimo vertę iš to sąrašo. Jei IntrastatTotals sąrašas tuščias, formulė grąžina 0 (nulį).

IF(ISEMPTY(IntrastatTotals), 0.0, IntrastatTotals.aggregated.'$AmountMSTRounded') 

Keli sprendimai

Dažnai tą pačią duomenų transformaciją galite pasiekti keliais būdais, naudodami skirtingų kategorijų funkcijas arba skirtingas tos pačios kategorijos funkcijas. Pavyzdžiui, ankstesnę išraišką galima konfigūruoti sąrašo kategorijoje naudojantfunkciją COUNT .

IF(COUNT (IntrastatTotals)=0, 0.0, IntrastatTotals.aggregated.'$AmountMSTRounded') 

Papildomi ištekliai

Elektroninių ataskaitų peržiūra

Formulės konstruktorius elektroninėse ataskaitose

Išplėsti elektroninių ataskaitų funkcijų sąrašą

Palaikomi nesusiųsti duomenų tipai

Palaikomi sudėtiniai duomenų tipai