Elektronisko atskaišu veidošanas formulas valoda
Elektroniskie pārskati (ER) nodrošina spēcīgu datu transformācijas pieredzi. Valoda, ko izmanto, lai izteiktu nepieciešamās datu manipulācijas ER formulas veidotājā , ir līdzīga formulas valodai Microsoft Excel.
Pamata sintakse
ER izteiksmes var saturēt jebkuru vai visus no šādiem elementiem:
Konstantes
Kad veidojat izteiksmes, varat lietot teksta un skaitļu konstantes (t.i., vērtības, kas netiek aprēķinātas). Piemēram, izteiksme izmanto skaitlisku VALUE ("100") + 20
konstanti 20 un virknes konstanti"100", un tā atgriež skaitlisko vērtību 120.
ER formulas veidotājs atbalsta atsoļa sekvences. Tādējādi varat norādīt, kura izteiksmes virkne ir jāapstrādā citādi. Piemēram, izteiksme atgriež teksta "Leo Tolstoy ""War and Peace"" Volume 1"
virkni Tolstoy "Sia un Literāle" 1. sējumu .
Operatori
Tālāk esošajā tabulā ir parādīti aritmētiskie operatori, ko varat izmantot, lai veiktu pamata matemātiskās darbības, piemēram, saskaitīšanu, atņemšanu, reizināšanu un dalīšanu.
Operators | Nozīme | Paraugs |
---|---|---|
+ | Papildinājums | 1+2 |
- | Atņemšana, negācija | 5-2 , -1 |
* | Reizināšana | 7\*8 |
/ | Nodaļa | 9/3 |
Tālāk esošajā tabulā parādīti atbalstītie salīdzināšanas operatori. Šos operatorus varat izmantot, lai salīdzinātu divas vērtības.
Operators | Nozīme | Paraugs |
---|---|---|
= | Vienādi | X=Y |
> | Greater than | X>Y |
< | Less than | X<Y |
>= | Lielāks vai vienāds ar | X>=Y |
<= | Mazāks vai vienāds ar | X<=Y |
<> | Nav vienāds ar | X<>Y |
Turklāt rakstzīmi & varat izmantot kā teksta savienošanas operatoru. Šādi vienu vai vairākas teksta virknes varat savirknēt jeb savienot vienā teksta daļā.
Operators | Nozīme | Paraugs |
---|---|---|
& | Savienot | "Nothing to print:" & " " & "no records found" |
Operatoru prioritātes
Ir svarīgi, kādā secībā tiek vērtētas saliktas izteiksmes daļas. Piemēram, izteiksmes rezultāts mainās atkarībā 1 + 4 / 2
no tā, vai pievienošanas vai dalīšanas operācija tiek veikta vispirms. Varat izmantot iekavas, lai skaidri definētu, kā izteiksme tiek novērtēta. Piemēram, lai norādītu, ka vispirms jāveic pievienošanas operācija, varat mainīt iepriekšējo izteiksmi (1 + 4) / 2
. Ja skaidri nenorādāt operāciju secību izteiksmē, secība ir atkarīga no atbalstītajiem operatoriem piešķirtās noklusējuma prioritātes. Tālāk esošajā tabulā ir parādīta katram operatoram piešķirtā prioritāte. Operatori, kuru prioritāte ir augstāka (piemēram, 7), tiek vērtēti pirms operatoriem, kuriem ir zemāka prioritāte (piemēram, 1).
Prioritāšu secība | Operatori | Sintakse |
---|---|---|
7 | Grupēšana | ( ... ) |
6. | Piekļuve elementam | … . … |
5. | Funkcijas izsaukums | … ( ... ) |
4 | Reizināšana un dalīšana | … * ... … / … |
3. | Saskaitīšana un atņemšana | … + … … - … |
2. | Salīdzinājums | … < ... … <= ... … … > ... … = … … <> ... |
1. | Atdalīšana | … , … |
Ja izteiksmē ir vairāki secīgi operatori ar vienādu prioritātes vērtību, šie operatori tiek vērtēti no kreisās uz labo pusi. Piemēram, izteiksme atgriež 1 + 6 / 2 \* 3 > 5
patiesu. Ieteicams izmantot iekavas, lai skaidri norādītu vēlamo operāciju secību izteiksmēs, lai izteiksmes būtu vieglāk lasāmas un uzturamas.
Atsauces
Visus pašreizējā ER komponenta datu avotus, kas ir pieejami izteiksmes veidošanas laikā, var izmantot kā nosauktas atsauces. Pašreizējais ER komponents var būt vai nu modeļa kartēšana, vai formāts. Piemēram, pašreizējā ER modeļa kartēšanā ir ReportingDate datu avots, kas atgriež DateTime datu tipa vērtību. Lai pareizi formatētu vērtību ģenerēšanas dokumentā, varat atsaucēs uz datu avotu izteiksmē kā DATETIMEFORMAT (ReportingDate, "dd-MM-yyyy")
.
Pirms visām ar atsauci norādītā datu avota nosaukumā esošajām rakstzīmēm, kas nav alfabēta burti, ir jāievieto vienpēdiņa ('). Ja ar atsauci norādītā datu avota nosaukumā ir vismaz viens simbols, kas nav alfabēta burts, nosaukums ir jāietver vienpēdiņās. Šie simboli, kas nav alfabēta burti, var būt, piemēram, pieturzīmes vai citi rakstveida simboli. Daži piemēri:
- Šodienas datuma un laika & datu avotam jābūt ER izteiksmē kā
'Today''s date & time'
. - Debitoru datu avota nosaukuma( ) metodei jābūt sauktai par ER izteiksmi
Customers.'name()'
.
Ja programmas datu avotu metodēm ir parametri, šo metožu izsaukšanai tiek izmantota tālāk norādītā sintakse.
- Ja sistēmas datu avota isLanguageRTLmetodei ir virknes datu tipa EN-USparametrs , uz šo metodi ir jāatsaukas uz ER izteiksmi.
System.isLanguageRTL("EN-US")
- Pēdiņas nav obligātas, ja metodes nosaukums ietver tikai burtu un ciparu simbolus. Taču tās ir obligātas tabulas metodei, ja nosaukums ietver iekavas.
Kad sistēmas datu avots ir pievienots ER kartēšanai, kas attiecas uz globālo programmas klasi, System.isLanguageRTL("EN-US ")
izteiksme atgriež Būla vērtībuFALSE. Modificētā izteiksme System.isLanguageRTL("AR")
atgriež Būla vērtību PATIESS .
Varat ierobežot veidu, kādā vērtības tiek nodotas šī tipa metodes parametriem.
- Šī tipa metodēm var nodot tikai konstantes. Konstanšu vērtības tiek definētas veidošanas laikā.
- Šī tipa parametriem tiek atbalstīti tikai primitīvi(pamata) datu veidi. Primitīvie datu tipi ietver Integer, Real, Boolean un String.
Ceļi
Ja izteiksme atsaucas uz kādu strukturētu datu avotu, ceļa definīciju varat izmantot, lai atlasītu konkrētu šī datu avota primitīvo elementu. Punkta rakstzīme (.) tiek lietota, lai atdalītu atsevišķus strukturēta datu avota elementus. Piemēram, pašreizējā ER modeļa kartēšanā ir iekļauts InvoiceTransactions datu avots, un šis datu avots atgriež ierakstu sarakstu. Ieraksta InvoiceTransactions struktūra ietver laukus AmountDebit un AmountCredit , un abi šie lauki atgriež skaitliskās vērtības. Tādējādi rēķinā iekļautās summas jāaprēķina šādi izteiksmes: InvoiceTransactions.AmountDebit - InvoiceTransactions.AmountCredit
Šī InvoiceTransactions.AmountDebit
izteiksmes izveide ir ceļš, kas tiek izmantots , lai piekļūtu InvoiceTransactions datu avota AmountDebitlaukam ierakstu saraksta tipam.
Relatīvais ceļš
Ja strukturētā datu avota ceļš sākas ar zīmi "at" (@), tas ir relatīvs ceļš. "At" zīme tiek rādīta atlikušās izmantotās hierarhiskā koka absolūtā ceļa daļas vietā. Tālāk redzamajā attēlā parādīts piemērs. Šeit absolūtais ceļš Ledger.'accountingCurrency()'
norāda, ka virsgrāmatas datu avota uzskaites valūtas vērtība ir ievadīta datu modeļa laukā AccountingCurrency .
Šajā ilustrācijā ir parādīts piemērs tam, kā tiek izmantots relatīvais ceļš. Relatīvais ceļš norāda, ka Intrastat @.AccountNum
datu avota lauks AccountNum ( kas parādās vienu līmeni virs lauka AccountNum datu modeļa hierarhijas kokā) tiek izmantots, lai ievadītu debitora vai kreditora konta numuru datu modeļa laukā AccountNum .
Absolūtā ceļa atlikusī daļa ir parādīta arī ER formulas redaktorā.
Plašāku informāciju skatiet relatīva ceļa lietošana ER modeļu un formātu datu saistījumos.
Funkcijas
ER iebūvētās funkcijas var izmantot ER izteiksmēs. Visus izteiksmes konteksta datu avotus (respektīvi, pašreizējo ER datu kartēšanu vai ER formātu) var izmantot kā parametrus funkciju izsaukšanai saskaņā ar funkciju izsaukšanas argumentu sarakstu. Kā funkciju izsaukšanas parametrus var izmantot arī konstantes. Piemēram, pašreizējā ER modeļa kartēšanā ir iekļauts InvoiceTransactions datu avots, un šis datu avots atgriež ierakstu sarakstu. Ieraksta InvoiceTransactions struktūra ietver laukus AmountDebit un AmountCredit , un abi šie lauki atgriež skaitliskās vērtības. Tādējādi, lai aprēķinātu rēķinā iekļautās summas, varat projektēt šādu izteiksmi, kas izmanto iebūvēto ER noapaļošanas funkciju: ROUND (InvoiceTransactions.AmountDebit - InvoiceTransactions.AmountCredit, 2)
.
Noformējot ER modeļu kartējumus un ER pārskatus, varat izmantot ER funkcijas no šādām kategorijām:
- Datuma un laika funkcijas
- Saraksta funkcijas
- Loģiskās funkcijas
- Matemātiskās funkcijas
- Ierakstu funkcijas
- Teksta funkcijas
- Datu apkopošanas funkcijas
- Citas (biznesa domēnam specifiskas) funkcijas
- Tipu pārveidošanas funkcijas
Funkciju saraksta paplašināšana
ER jums ļauj paplašināt funkciju sarakstu, kuras tiek lietotas ER izteiksmēs. Ir jāveic noteiktas tehniskas darbības. Plašāku informāciju skatiet Elektronisko pārskatu (ER) funkciju saraksta paplašināšana.
Saliktās izteiksmes
Var izveidot saliktas izteiksmes, kas izmanto dažādu kategoriju funkcijas, ar nosacījumu, ka datu tipi sakrīt. Ja izmantojat funkcijas kopā, saskaņojiet vienas funkcijas izvades datu veidu ar ievades datu veidu, kas ir nepieciešams citai funkcijai. Piemēram, lai izvairītos no kļūdas "list-ir-tukšs", saistot lauku ar ER formāta elementu,apvienojiet funkcijas no kategorijas Saraksts ar funkciju no loģiskās kategorijas, kā redzams šajā piemērā. Šeit formula izmanto IF funkciju, lai pārbaudītu, vai IntrastatTotals saraksts ir tukšs , pirms tas atgriež nepieciešamā apkopojuma vērtību no šī saraksta. Ja IntrastatTotals saraksts ir tukšs , formula atgriež 0 (nulli).
IF(ISEMPTY(IntrastatTotals), 0.0, IntrastatTotals.aggregated.'$AmountMSTRounded')
Vairāki risinājumi
Bieži vien jūs varat iegūt vienu un to pašu datu transformācijas rezultātu vairākos veidos, izmantojot dažādu kategoriju funkcijas vai dažādas funkcijas no tās pašas kategorijas. Piemēram, arī iepriekšējo izteiksmi var konfigurēt, izmantojot saraksta kategorijas funkciju COUNT.
IF(COUNT (IntrastatTotals)=0, 0.0, IntrastatTotals.aggregated.'$AmountMSTRounded')
Papildu resursi
Formulas veidotājs elektroniskajā pārskatā
Paplašināt elektronisko pārskatu veidošanas funkciju sarakstu