Računalniki Windows Internet

1s SKD obračunan znesek polja za dokument. Primeri uporabe funkcije scd - izračun izraza. Pravila za primerjavo dveh vrednosti

Izračunaj izraz je precej težko razumljiva funkcija ACS in primeri uporabe v referenčnih informacijah so precej redki. Ta članek obravnava primere, ki bodo zagotovo koristni za vsakega razvijalca:

  1. kumulativni seštevek v združevanju;
  2. kumulativni seštevek v navzkrižni tabeli;
  3. pridobivanje prejšnje vrednosti;
  4. PM izpis v eni vrstici.

1. Pridobitev kazalnika na podlagi nastanka poslovnega dogodka

Dobimo količino blaga kot kumulativno vsoto na ravni združevanja. Če želite to narediti, ustvarite izračunano polje (glejte sliko 1).
Na zavihku "Viri" nastavite funkcijo za izračunano polje:
CalculateExpression("Sum(QuantityTurnover)", "First", "Current")
ki bo seštel število produktov od prvega zapisa do trenutnega (glej sliko 2).

Če je potrebno kumulativno skupno količino artikla pridobiti na ravni podrobne evidence, potem na zavihku »Izračunana polja« nastavimo funkcijo CalculateExpression za izračunano polje (glej sliko 3).
Glede na nivo pridobivanja kumulativne vsote izdelamo grupiranje (glej sliko 4): na nivoju vira - grupiranje po blagu, na nivoju daljinskega nadzora - grupiranje podrobnih zapisov.
Slika 4. Razvrščanja poročil s kumulativnimi vsotami

2. Pridobivanje vrednosti indikatorja iz prejšnje vrstice

Dobimo menjalni tečaj za datum in prejšnji datum. Če želite to narediti, ustvarite izračunano polje in vnesite naslednji izraz v polje izraza (glejte sliko 5):
CalculateExpression("Rate", "Prejšnji", "Prejšnji")
ki bo prevzela prejšnjo vrednost menjalnega tečaja za trenutno vrstico, zadnji parameter funkcije omejuje prejem podatkov.
Ker delamo na ravni podrobnih zapisov, gremo takoj na zavihek "Nastavitve" in ustvarimo skupino - podrobne zapise.

3. Pridobitev indikatorja kot kumulativne vsote v navzkrižni tabeli

Dobimo količino blaga na obračunski osnovi po obdobjih. Če želite to narediti, ustvarite izračunano polje (glejte sliko 1). Na zavihku "Viri" določimo naslednji izraz za izračunano polje (glej sliko 6):
CalculateExpression("Sum(QuantityTurnover)", "Period", "First", "Current")
ki bo na nivoju grupiranja izračunal količino blaga v intervalu od prve vrstice do trenutne v okviru obdobja za posamezno postavko.
Na zavihku »Nastavitve« ustvarite tabelo z združevanjem po elementih v vrstici in združevanjem po obdobjih v stolpcu (glej sliko 7).

4. Izpis tabelaričnih podatkov v eni vrstici

Metode za prikaz tabelarnih podatkov v eni vrstici, vključno z metodo s funkcijo CalculateExpression, so obravnavane v članku

Podrobneje smo preučili nastavitve poročil, izvedenih na podlagi sistema za nadzor dostopa. Zdaj pa si oglejmo bolj subtilne in podrobne nastavitve za možnosti poročil. Okno za “napredne” nastavitve možnosti poročila prikličemo z ukazom “Več” - “Drugo” - “Spremeni možnost poročila”.

Okno za spreminjanje različice poročila je razdeljeno na dva dela:

1. Struktura poročila.

2. Nastavitve poročila.


Odsek strukture možnosti poročila je podoben zavihku »Struktura« v standardnih nastavitvah poročila. Namen in konfiguracija skupin sta podrobno obravnavana v 1. delu članka.

Tabela strukture variant poročila poleg dejanskega stolpca z razvrščanjem v skupine vsebuje več dodatnih stolpcev:

Razdelek z nastavitvami možnosti poročila daje uporabniku veliko možnosti za konfiguracijo poročila, da bo ustrezalo njegovim potrebam. Skoraj popolnoma sovpada s standardnimi nastavitvami poročila, obravnavanimi v 1. delu. Oglejmo si vse zavihke razdelka in opazimo razlike.

Razdelek z nastavitvami je sestavljen iz naslednjih zavihkov:

1. Parametri. Vsebuje parametre ACS, ki so na voljo uporabniku.

Parameter SKD je vrednost, ki se uporablja za pridobivanje podatkov poročila. To je lahko pogojna vrednost za izbiro ali preverjanje podatkov, pa tudi pomožna vrednost.


Tabela parametrov je predstavljena v obliki "Parameter" - "Vrednost". Po potrebi lahko spremenite vrednosti parametrov. S klikom na gumb »Lastnosti elementa nastavitev po meri« se odprejo nastavitve po meri elementa.


V tem oknu lahko izberete, ali bo element vključen v uporabniške nastavitve (torej viden uporabniku pri nastavitvi poročila), nastavite prikaz in način urejanja elementa (hiter dostop v glavi poročila, navaden v nastavitve poročila in nedostopno).

Lastnosti elementov nastavitev po meri imajo tudi polja, ki jih je mogoče združevati, robove, izbire in elemente pogojnega videza.

2. Polja po meri. Vsebuje polja, ki jih generira uporabnik sam na podlagi podatkov, ki jih izbere poročilo.


Uporabnik lahko doda dve vrsti polj:

  • Novo izbirno polje ...
  • Novo izrazno polje ...

Izbirna polja vam omogočajo izračun vrednosti na podlagi danega pogoja. Okno za urejanje izbirnega polja vsebuje naslov polja in tabelo, v kateri je podana izbira, vrednost in prikaz polja. Izbira je pogoj, od katerega bo želena vrednost zamenjana.


Na primer, izračunajmo oceno števila prodaj. Predpostavili bomo, da če je prodanih manj kot 10 enot izdelka, smo prodali malo, če pa več kot 10 enot, smo prodali veliko. Da bi to naredili, bomo za izračunano polje nastavili 2 vrednosti: prva bo z izbiro »Število blaga, manjše ali enako »10«, druga z izbiro »Število blaga, večje od »10«. ””.

Izrazna polja vam omogočajo izračun vrednosti z uporabo poljubnih algoritmov. Uporabljajo lahko funkcije poizvedovalnega jezika in vgrajenega programskega jezika 1C. Okno za urejanje polj izrazov vsebuje dve polji za izraze podrobnega in sumarnega zapisa. Skupni zapisi so skupine, konfigurirane v območju »Struktura poročila«; uporabljati morajo agregatne funkcije (»Vsota«, »Najmanj«, »Največ«, »Količina«).

Na primer, izračunajmo povprečni odstotek popusta. Povprečni odstotek popusta se izračuna po formuli: [Znesek prodaje brez popusta] - [Znesek prodaje s popustom] / [Znesek prodaje brez popusta]. Pomembno si je zapomniti, da je znesek prodaje brez popusta lahko nič, zato za preverjanje uporabimo operator SELECT. Dobimo naslednje izraze:

· Za podrobne vnose:

Izbira

Ko je [Znesek prodaje brez popusta] = 0

Potem 0

V nasprotnem primeru [Znesek prodaje brez popusta] - [Znesek prodaje s popustom] / [Znesek prodaje brez popusta]

Konec

· Za zbirno evidenco:

Izbira

Ko je znesek ([količina prodaje brez popusta]) = 0

Potem 0

V nasprotnem primeru Sum([Znesek prodaje brez popusta]) - Sum([Znesek prodaje s popustom]) / Sum([Znesek prodaje brez popusta])

Konec

Kot smo že omenili, pri izrazu skupnih zapisov uporabljamo agregatno funkcijo »Vsota«.

3. Polja, ki jih je mogoče združevati. Vsebuje polja, po katerih bodo razvrščeni rezultati različice poročila. Združena polja so konfigurirana ločeno za vsako skupino, vendar lahko nastavite splošna združena polja za možnost poročila, če izberete koren »Poročilo« v strukturnem drevesu. Dodate lahko polje iz rezultata poročila, polje po meri ali izberete samodejno polje, nato pa bo sistem samodejno izbral polja. Ta zavihek omogoča tudi spreminjanje vrstnega reda združenih polj.


4. Polja. Vsebuje polja, ki bodo izpisana kot rezultat različice poročila. Polja so konfigurirana ločeno za vsako skupino, vendar lahko nastavite skupna polja za možnost poročila, če izberete korensko »Poročilo« v strukturnem drevesu. Dodate lahko polje iz rezultata poročila, polje po meri ali izberete samodejno polje, nato pa bo sistem samodejno izbral polja. Ta zavihek omogoča tudi spreminjanje vrstnega reda polj.

Polja lahko združite v skupine, da logično označite kateri koli del poročila ali da določite posebno razporeditev stolpcev. Ko dodate skupino, postane stolpec »Lokacija« aktiven in omogoča izbiro ene od možnosti lokacije:

  • Samodejno - sistem samodejno postavi polja;
  • Horizontalno - polja so postavljena vodoravno;
  • Navpično - polja so razporejena navpično;
  • V ločenem stolpcu - polja se nahajajo v različnih stolpcih;
  • Skupaj - polja se nahajajo v enem stolpcu.


5. Izbira. Vsebuje izbire, uporabljene v različici poročila. Nastavitev izbir je bila podrobno obravnavana v 1. delu tega članka. Filtri so konfigurirani ločeno za vsako skupino, vendar lahko nastavite splošne filtre za možnost poročila, če izberete korensko »Poročilo« v strukturnem drevesu.


6. Razvrščanje. Vsebuje polja za razvrščanje, uporabljena v različici poročila. Nastavitev polj za razvrščanje je bila podrobno obravnavana v 1. delu tega članka. Razvrščanje je konfigurirano ločeno za vsako skupino, vendar lahko nastavite splošna polja za razvrščanje za možnost poročila, če izberete korensko »Poročilo« v strukturnem drevesu.


7. Pogojna registracija. Vsebuje pogojne elemente oblikovanja, uporabljene v različici poročila. Nastavitev pogojnega videza je bila podrobno obravnavana v 1. delu tega članka. Pogojni videz je konfiguriran ločeno za vsako skupino, vendar lahko nastavite splošne elemente pogojnega videza za možnost poročila, če izberete korensko »Poročilo« v strukturnem drevesu.


8. Dodatne nastavitve. Vsebuje dodatne nastavitve oblikovanja poročila. Omogoča izbiro splošnega videza poročila, lokacije polj, skupin, podrobnosti, virov, vsot, nastavitev nastavitev grafikona, nadzor prikaza naslova, parametrov in izbire, določitev položaja virov ter popravljanje glave in skupin stolpce različice poročila.


Na koncu bi rad omenil, da nastavitev poročila ni mogoče shraniti samo kot možnost poročila, temveč tudi naložiti v datoteko (meni »Več« - »Shrani nastavitve«). Za prenos morate izbrati »Naloži nastavitve« in izbrati shranjeno datoteko. Tako lahko prenašamo nastavitve variant poročil med različnimi bazami podatkov, ki imajo enako konfiguracijo.


Na podlagi tega lahko povzamemo, da lahko uporabnik poročilo ne le samostojno prilagodi svojim potrebam, temveč tudi shrani svoje nastavitve in jih po potrebi uporabi v prihodnje.

Pravilna uporaba sheme sestavljanja podatkov (DCS) vam omogoča, da:

  • bistveno zmanjša čas, potreben za pripravo poročila;
  • odpravite potrebo po izdelavi upravljavca obrazca;
  • dobite lep rezultat z možnostjo dodatne prilagoditve s strani uporabnika.

Toda vsi razvijalci ne izkoristijo kar največ zmogljivosti sheme, saj vse njene nastavitve niso očitne in intuitivne. Še posebej veliko ljudi ve, da so v 1C SKD izračunana polja, vendar ne razumejo popolnoma obsega njihove uporabe in načinov dela z njimi.

Kaj je izračunano polje

V večini primerov je vir podatkov v diagramu postavitve poizvedba. Načeloma lahko že v sami poizvedbi uporabljate različne formule, konstrukcije in izraze. Postavlja se naravno vprašanje: zakaj potrebujemo podvojeno funkcionalnost?

Dejstvo je, da je sistem za nadzor dostopa nekaj več kot le prikaz rezultata poizvedbe, kar je jasno razvidno iz obrazca za izdelavo diagrama (slika 1).

Izračunana polja vam omogočajo izvajanje določenih dejanj z ustvarjenim naborom podatkov:

  • Izhod niza podatkov, prejetih z zahtevo, v določeno celico, z združevanjem več vrstic v eno;
  • Dostop do izvoznih funkcij splošnega modula;
  • Izvedite različne izraze, ki so na voljo za jezik postavitve, in uporabite posebne funkcije EvaluateExpression.

Pojdimo skozi ta seznam.

Niz vrednosti v eni celici

Simulirajmo situacijo, ko je treba prejeti vse številke potrdil o prejemu za nasprotno stranko v ločeni celici:


Tako smo v naši shemi ustvarili dodatno računsko polje;


Kot lahko vidite iz zgornjega primera, pri dodajanju in obdelavi izračunanih polj ni težav. Uporabili smo dve funkciji: Array() in ConnectRows().

Nekaj ​​besed o slednjem. Poleg prvega parametra, ki označuje identifikator matrike, vrednosti ali vrednosti, lahko v njem nastavite še dva:

  1. Ločilo elementov – označuje, kateri znak bo ločil en element matrike ali eno vrstico tabele vrednosti od drugega (v našem primeru smo ta parameter izpustili in privzeto je bil dodeljen prelom vrstice);
  2. Ločilo stolpcev – znak, ki se uporablja za ločevanje stolpcev tabele vrednosti (podpičje se uporablja privzeto).

Dostop do izvoznih funkcij skupnega modula

Funkcije skupnega modula lahko delujejo kot vir podatkov za izpolnjevanje izračunanega polja.

Nekaj ​​pomembnih točk:

  • Funkcija mora biti izvozljiva;
  • Če se funkcija nahaja v skupnem modulu z nastavljenim atributom "Global", se kliče neposredno po imenu, sicer mora biti funkcija poklicana v skladu s shemo "Ime modula v skupni rabi". "Ime funkcije, ki jo želite poklicati."

Kot primer uporabe bomo vzeli isto zahtevo za potrdila o prejemu in jo prikazali v ločenem stolpcu. Same zahteve ne bomo opisovali, pojdimo neposredno na izračunana polja:


Tako vidimo, da je skoraj vsak procesor podatkov mogoče inicializirati iz sistema za nadzor dostopa, kar bistveno razširi možnosti uporabe sheme.

Izrazi v jeziku postavitve

Pri delu razvijalca se pogosto pojavi situacija, ko je treba prikazati rezultat delitve v polju ACS:

  1. Izračunajte povprečno ceno predmeta;
  2. Vse vrste obresti;
  3. Izračuni povprečnih plač itd.

Da bi se izognili težavam, je v teh primerih priporočljivo v polje za izračun vnesti test za deljenje z 0.

To je mogoče storiti z uporabo konstrukcije »Izbira Ko….Potem… Sicer… Konec«.

Za konec še nekaj besed o dokaj novi funkciji CalculateExpression(). Z njegovo pomočjo lahko izračunate zlasti odstopanja v stroških med trenutno in prejšnjo vrstico, kumulativno stanje itd.

Recimo, da lahko dobite vsoto dokumenta iz prejšnje vrstice naše zahteve tako, da navedete vrednost Izračunaj izraz (»Vsota dokumenta«, »Prejšnja vsota«) v polju »Izraz«.

Eno najbolj priročnih in edinstvenih razvojnih orodij v 1C je sistem za sestavljanje podatkov (DCS). Malo informacijskih sistemov razvijalcem omogoča ustvarjanje poročil brez pisanja kode. Ta mehanizem je bil razvit, da bi poenostavil in pospešil razvoj obrazcev za poročanje ter dal uporabnikom več možnosti pri delu z izhodnimi podatki. Slednje zelo cenijo napredni uporabniki, ki lahko zaradi tega samostojno prilagodijo poročilo svojim potrebam, ne da bi čakali na dejanja razvijalcev.

Izdelava poročila v 1C preko SKD

Postopek razvoja poročila z uporabo ACS lahko razdelimo na naslednje faze:

  1. Ustvarjanje zahteve. Zahtevo lahko napišete ročno ali brez kode s pomočjo priročnega vmesnika;
  2. Nastavitev poročila. Izberite polja, vsote, skupine, parametre, oblikovanje poročila;
  3. Po tem je vse, kar moramo storiti, povezati nastalo poročilo s konfiguracijo na kateri koli razpoložljiv način.

Kljub možnosti uporabnika, da prilagodi poročila o sistemu za nadzor dostopa, jih mora ustvariti preko konfiguratorja.

Oglejmo si primer ustvarjanja zunanjega poročila o sistemu za nadzor dostopa:


Zdaj gremo v 1C, odpremo naše poročilo, da se prepričamo, ali so izvedeni ukrepi pravilni. Odražajo se vsi podatki, skupine je mogoče strniti in razširiti. Kot lahko vidite, vam sistem za nadzor dostopa omogoča prejemanje popolnih poročil brez pisanja kode, z izjemo nestandardnih zahtev. Glede na to, da ima večina poročil podobno strukturo, bo poznavanje sistema za nadzor dostopa bistveno skrajšalo čas razvoja teh objektov.

Ta mehanizem je postal zelo priljubljen zaradi svoje podpore za obsežne zmožnosti poročanja. Poleg tega jih lahko uporabljajo ne samo razvijalci, ampak tudi običajni uporabniki.

Zmogljivosti ACS

Obstajajo situacije, ko smo naredili poročilo, potem pa pride uporabnik in zahteva, da naredi majhno spremembo. Na primer, namesto imen izdelkov prikažite številke artiklov. SKD omogoča uporabnikom samostojno izvedbo takšnih sprememb z uporabo gumba “Več” - “Spremeni možnost...”.


Okno, ki se odpre, je podobno oknu z nastavitvami v poročilu v konfiguratorju in ima tudi podobne funkcije. Za rešitev naloge mora uporabnik iti na zavihek »Polja« in spremeniti polje »Nomenklatura«. To polje za urejanje se odpre z dvojnim klikom in na voljo postane gumb »Izberi ...«.


Okno, ki se odpre, nam daje možnost, da izberemo poljubno vrednost, ki se bo pojavila v polju “Nomenklatura”. Nekatera polja imajo znak plus na levi – razvijalec je v ta polja postavil povezave, kar pomeni, da lahko vidimo njihove podrobnosti. Odpremo "Nomenklaturo" in vidimo članek, ki ga potrebujemo. Izberite in izberite.


Okno za spreminjanje možnosti poročila vsebuje številne uporabne funkcije sistema za sestavljanje podatkov. Uporabnik lahko na primer samostojno spremeni vrstni red skupin, doda izbor ali uporabi pogojno oblikovanje. Končamo urejanje in izdelamo poročilo - kot vidite, je zdaj celoten asortiman prikazan v obliki artiklov.


Mehanizem SKD 1C:Enterprise 8.3 ima tudi razširjeno funkcionalnost za razvijalce. Pri razvoju poročila smo uporabili samo 2 zavihka - »Nabori podatkov« in »Nastavitve«, vendar jih je v ACS veliko več. Če želite uporabljati vse funkcije sistema za sestavljanje podatkov, morate razumeti, čemu je namenjen vsak zavihek:

  1. Nabori podatkov – tukaj so navedene vse poizvedbe, vključene v generiranje poročila;
  2. Povezave nabora podatkov – uporabljajo se za ustvarjanje povezav med različnimi poizvedbami s prvega zavihka;
  3. Izračunana polja – seznam dodanih polj, ki niso iz poizvedbe. Najpogosteje se uporablja v primerih, ko morate na podlagi vrednosti več polj pridobiti 1 vrednost iz zahteve;
  4. Viri. V 1C je to ime za polja, za katera morate poznati rezultate. Viri podpirajo različne aritmetične operacije - vsota, količina, maksimum in druge;
  5. Opcije. Uporabljajo se, če je za izdelavo poročila potrebno, da uporabnik vnese določene podatke - na primer datum, razdelke ali nomenklaturo;
  6. Postavitve. Zasnovan za primere, ko uporabniki želijo videti edinstveno oblikovano poročilo. Ustvarite lahko ločen prostor za podpise ali nov zgornji del poročila - vse to lahko storite tukaj;
  7. Ugnezdeni diagrami. Potrebni so, ko mora vaše poročilo vsebovati podatke iz drugih poročil;
  8. nastavitve. Razdelek deklarira polja, ki bodo prikazana, skupine in konfigurira videz poročila.


Število možnosti, ki so jih razvijalci vključili v mehanizem ACS, je veliko, vendar se mnoge od njih uporabljajo zelo redko. Tudi izkušeni programerji 1C po letih dela morda ne bodo uporabljali nekaterih funkcij. Za uspešen začetek dela v sistemu za nadzor dostopa je dovolj poznavanje osnovnih konceptov in pogosto uporabljenih nastavitev. V redkih primerih bo dokumentacija priskočila na pomoč.

V luči prihajajoče izdaje 8.2.14 bom poskušal opisati nekaj novih funkcij sistema za sestavljanje podatkov.

Odprite diagram postavitve podatkov, po možnosti v zunanjem poročilu, da olajšate urejanje.

Dodamo nabor podatkov tipa poizvedbe in ročno ali z uporabo oblikovalca poizvedb napišemo preprosto poizvedbo:

1. Nastavite zahtevo v sistemu za nadzor dostopa.

2. Nastavitev izračunanih polj v sistemu kontrole dostopa

3. Konfigurirajte postavitev podatkov na zavihku z nastavitvami

4. Zaženite 1C Enterprise 8.2.14. Odprite poročilo. Oblikujemo, sprejemamo.

Opis samih novih funkcij:

1. Trenutni datum ()

Vrne sistemski datum. Pri sestavljanju postavitve postavitve se v vseh izrazih, ki so prisotni v postavitvi, funkcija CurrentDate() zamenja z vrednostjo trenutnega datuma.

2. RAČUNALNI IZRAZ()

Sintaksa:

Izračunajizraz(<Выражение>, <Группировка>, <ОбластьВычисления>, <Начало>, <Конец>, <Сортировка>, <ИерархическаяСортировка>, <ОбработкаОдинаковыхЗначенийПорядка>)

Opis:

Funkcija je zasnovana za ovrednotenje izraza v kontekstu nekega združevanja.

Funkcija upošteva izbor skupin, ne upošteva pa hierarhičnih izborov.

Funkcije ni mogoče uporabiti za skupino v izboru skupine te skupine. Na primer, pri izboru skupine Nomenklatura ne morete uporabiti izraza CalculateExpression("Sum(SumTurnover)", "TotalTotal") > 1000. Lahko pa se tak izraz uporabi pri hierarhičnem izboru.

Če je končni zapis pred začetnim zapisom, se šteje, da ni zapisov za izračun podrobnih podatkov in izračun agregatnih funkcij.

Pri izračunu intervalnih izrazov za skupno vsoto (parameter Grouping je nastavljen na GrandTotal) se predpostavlja, da ni zapisov za izračun podrobnih podatkov in izračun agregatnih funkcij.

Pri generiranju izraza za funkcijo CalculateExpression sestavljalec postavitve, če vrstni izraz vsebuje polja, ki jih ni mogoče uporabiti pri združevanju, nadomesti funkcijo CalculateExpression z NULL.

Opcije

<Выражение>

Tip: Vrvica. Izraz, ki ga je treba oceniti.

<Группировка>

Tip: Vrvica. Vsebuje ime združevanja, v kontekstu katerega je treba ovrednotiti izraz. Če je kot ime skupine uporabljen prazen niz, bo izračun izveden v kontekstu trenutne skupine. Če je kot ime skupine uporabljen niz GrandTotal, bo izračun izveden v kontekstu skupnega seštevka. V nasprotnem primeru bo izračun izveden v kontekstu nadrejene skupine z istim imenom.

Na primer:

Sum(Sales.SumTurnover)/Calculate(“Sum(Sales.SumTurnover)”, “Total”)

V tem primeru bo rezultat razmerje med zneskom za polje Sales.SumTurnover zapisa združevanja in zneskom istega polja v celotni postavitvi;

<ОбластьВычисления>

Tip: Vrvica. Parameter ima lahko naslednje vrednosti:

  • GeneralTotal – izraz bo izračunan za vse zapise združevanja.
  • Hierarhija – izraz bo ovrednoten za nadrejeni hierarhični zapis, če obstaja, in za celotno skupino, če nadrejenega hierarhičnega zapisa ni.
  • Združevanje v skupine – izraz bo ovrednoten za trenutni zapis združevanja v skupine.
  • Združevanje brez virov – pri izračunu funkcije za skupinski zapis glede na vir bo izraz ovrednoten za prvi skupinski zapis prvotne skupine.

Pri izračunu funkcije IzračunajIzraz() z vrednostjo Non-Resource Grouping za skupinske zapise, ki niso skupine virov, se funkcija izračuna na enak način, kot bi bila izračunana, če bi bila vrednost parametra enaka vrednosti Grouping.

Graditelj postavitve sestave podatkov pri ustvarjanju postavitve sestave podatkov pri izpisu polja vira, po katerem se izvede združevanje v postavitev, postavi izraz v postavitev, ki je izračunan s funkcijo IzračunajIzraz(), ki označuje parameter združevanja brez virov. Za druge vire so običajni izrazi virov postavljeni v skupino virov.

<Начало>

Tip: Vrvica. Označuje, iz katerega zapisa se mora začeti fragment, v katerem je treba izračunati funkcije agregatnega izraza in iz katerega zapisa pridobiti vrednosti polja zunaj agregatnih funkcij. Vrednost je lahko ena od naslednjih:

<Конец>

Tip: Vrvica. Označuje, na kateri zapis naj se nadaljuje fragment, v katerem naj se izračunajo agregatne funkcije izraza. Vrednost je lahko ena od naslednjih:

  • najprej Pridobiti je treba prvi zbirni zapis. Za besedo v oklepaju lahko podate izraz, katerega rezultat bo uporabljen kot odmik od začetka združevanja. Dobljena vrednost mora biti celo število, večje od nič. Na primer First(3) – sprejem tretjega zapisa od začetka združevanja.

Če je prvi zapis izven združevanja, se šteje, da zapisov ni. Na primer, če obstajajo 3 zapisi in želite dobiti First(4), se šteje, da ni nobenega zapisa.

  • Zadnji. Pridobiti morate zadnji zapis združevanja. Za besedo v oklepaju lahko podate izraz, katerega rezultat bo uporabljen kot odmik od konca združevanja. Dobljena vrednost mora biti celo število, večje od nič. Na primer Last(3) – sprejem tretjega zapisa s konca skupine.

Če je zadnji zapis izven združevanja, se šteje, da zapisov ni. Na primer, če so 3 zapisi in želite dobiti Zadnji(4), se šteje, da ni nobenega zapisa.

  • Prejšnja. Pridobiti morate prejšnji zapis združevanja. Za besedo v oklepaju lahko podate izraz, katerega rezultat bo uporabljen kot odmik nazaj od trenutnega zapisa združevanja. Na primer Previous(2) – pridobivanje prejšnjega iz prejšnjega zapisa.

Če prejšnji zapis presega združevanje (na primer, za drugi zapis združevanja morate pridobiti Prejšnji(3), se pridobi prvi zapis združevanja.

Pri pridobivanju prejšnjega zapisa za seštevek združevanja se šteje, da je pridobljen prvi zapis.

  • Naslednji. Dobiti morate naslednji zapis združevanja. Za besedo v oklepaju lahko podate izraz, katerega rezultat bo uporabljen kot odmik naprej od trenutnega vnosa združevanja. Na primer, Next(2) – pridobivanje naslednjega iz naslednjega zapisa.

Če naslednji zapis preseže skupino, se šteje, da zapisov ni. Če so na primer 3 zapisi in je Next() prejet za tretji zapis, se šteje, da zapisov ni.

Ko je prejet naslednji zapis za skupni seštevek, se šteje, da zapisa ni.

  • Trenutno. Dobiti morate trenutni zapis.

Pri pridobivanju skupne vsote se pridobi prvi zapis.

  • Mejna vrednost. Potreba po pridobitvi zapisa z določeno vrednostjo. Po besedi LimitingValues ​​​​v oklepajih morate navesti izraz, s katerega vrednostjo želite začeti fragment, prvo polje za naročanje.

Prvi zapis, katerega vrednost vrstnega polja je večja ali enaka podani vrednosti, bo vrnjen kot zapis. Na primer, če je polje Period uporabljeno kot polje za naročanje in ima vrednosti 01/01/2010, 02/01/2010, 03/01/2010 in želite pridobiti LimitingValue(DateTime(2010) , 1, 15)), potem bo pridobljen zapis z datumom 02/01. 2010.

<Сортировка>

Tip: Vrvica. Navaja izraze, ločene z vejicami, ki opisujejo pravila razvrščanja. Če ni podano, se vrstni red izvede na enak način kot za skupino, za katero je izraz ovrednoten. Za vsakim izrazom lahko podate ključne besede Ascending (za razvrščanje v naraščajočem vrstnem redu), Descending (za razvrščanje v padajočem vrstnem redu) in AutoOrder (za razvrščanje referenčnih polj po poljih, po katerih želite razvrstiti referenčni predmet). Besedo Samodejni vrstni red lahko uporabite tako z besedo Naraščajoče kot z besedo Padajoče.

<ИерархическаяСортировка>

Tip: Vrvica. Enako kot možnost Razvrsti. Uporablja se za organiziranje hierarhičnih zapisov. Če ni podano, sestavljalec postavitve ustvari vrstni red v skladu z vrstnim redom, podanim v parametru Razvrsti.

<ОбработкаОдинаковыхЗначенийПорядка>

Tip: Vrvica. Podaja pravilo za določanje prejšnjega ali naslednjega zapisa v primeru, da obstaja več zapisov z isto vrstno vrednostjo:

  • Ločeno pomeni, da se za določitev prejšnjega in naslednjega zapisa uporablja zaporedje urejenih zapisov. Privzeta vrednost.
  • Skupaj pomeni, da sta prejšnji in naslednji zapis določena na podlagi vrednosti vrstnih izrazov.

Na primer, če je nastalo zaporedje urejeno po datumu:

datum Polno ime Pomen
1 1. januar 2001 Ivanov M. 10
2 2. januar 2001 Petrov S. 20
3 3. januar 2001 Sidorov R. 30
4 4. januar 2001 Petrov S. 40

Če je vrednost parametra Ločeno, potem:

§ prejšnji vnos do vnosa 3 bo vnos 2.

§ če je fragment izračuna definiran kot Current, Current (oziroma parametra Start in End), bo za zapis 2 ta fragment sestavljen iz enega zapisa 2. Izraz CalculateExpression(“Sum (Value)”, Current, Current) bo biti enak 20.

Če je vrednost parametra Skupaj, potem:

§ prejšnji vnos do vnosa 3 bo vnos 1.

§ če je fragment izračuna definiran kot Trenutni, Trenutni (oziroma parametra Začetek in Konec), potem bo za zapis 2 ta fragment sestavljen iz zapisov 2 in 3. Izraz CalculateExpression(“Vsota (vrednost)”, Trenutni, Trenutni) bo enako 50.

Ko podate vrednost parametra, ki je enaka Skupaj, v parametrih Start in End ne morete podati odmika za položaje First, Last, Previous, Next.

CalculateExpression(“Sum(SumTurnover)”, “First”, “Current”)

Če želite pridobiti vrednost združevanja v prejšnji vrstici, lahko uporabite naslednji izraz:

CalculateExpression(“Rate”, “Prejšnji”)

Seznam novo funkcije:

CalculateExpressionWithGroupArray(<Выражение>, <ВыражениеПолейГруппировки>, <ОтборЗаписей>, <ОтборГруппировок>) –

Funkcija vrne matriko, katere vsak element vsebuje rezultat vrednotenja izraza za združevanje po podanem polju.

CalculateExpressionWithGroupValueTable(<Выражения>, <ВыражениеПолейГруппировки>, <ОтборЗаписей>, <ОтборГруппировок>) –

Funkcija vrne tabelo vrednosti, katere vsaka vrstica vsebuje rezultat vrednotenja izrazov za združevanje po podanem polju

ValueFilled(<Выражение>) – Vrne True, če vrednost ni privzeta vrednost tega tipa, ni NULL, ni prazen sklic, ni Undefined. Logične vrednosti so preverjene za NULL. V nizih se preveri odsotnost znakov, ki niso presledki

Oblika(<Выражение>, <Форматная строка>) – Prejemanje oblikovanega niza posredovane vrednosti. Formatni niz je nastavljen v skladu s formatnim nizom sistema 1C:Enterprise.

Podniz(<Выражение>, <Начальные символ>, <ДлинаПодстроки>) – Ta funkcija je zasnovana za ekstrahiranje podniza iz niza.

Dolžina vrstice(<Выражение>) – Funkcija je zasnovana za določanje dolžine niza. Parameter - izraz niza

Linija(<Выражение>) – Če je matrika podana kot parameter, funkcija vrne niz, ki vsebuje nizovne predstavitve vseh elementov matrike, ločene z znaki "; “. Če je kot parameter posredovana tabela vrednosti, funkcija vrne niz, ki vsebuje nizovne predstavitve vseh vrstic tabele vrednosti, pri čemer so celične predstavitve vsake vrstice ločene z znaki “; «, vrstice pa so simbol za pomik vrstice. Če ima katerikoli element prazno predstavitev niza, se namesto njegove predstavitve prikaže niz<Пустое значение>.