Aggregerte funksjoner til datasammensetningssystemet. Aggregerte funksjoner til datasammensetningssystemet Opprett en ny rapport

💖 Liker du det? Del lenken med vennene dine

Viktig! Hvis en funksjonsparameter er av typen String og den spesifiserer et feltnavn som inneholder mellomrom, må feltnavnet være omsluttet av hakeparenteser.
For eksempel: "[Antall omsetning]".

1. Beløp (totalt)- beregner summen av verdiene av uttrykk som er sendt til den som et argument for alle detaljerte poster. Du kan sende en Array som en parameter. I dette tilfellet vil funksjonen bli brukt på innholdet i matrisen.

Eksempel:
Beløp (Salg.Beløp Omsetning)

2. Tell - beregner antall andre verdier enn NULL. Du kan sende en Array som en parameter. I dette tilfellet vil funksjonen bli brukt på innholdet i matrisen.

Syntaks:
Antall ([Various] Parameter)

For å indikere mottak av forskjellige verdier, bør du spesifisere Distinct før Mengdemetodeparameteren.

Eksempel:
Antall (salg. motpart)
Mengde (Ulike salg. Motpart)

3. Maksimum - får maksimal verdi. Du kan sende en Array som en parameter. I dette tilfellet vil funksjonen bli brukt på innholdet i matrisen.

Eksempel:
Maksimum (gjenstående. mengde)

4. Minimum - får minimumsverdien. Du kan sende en Array som en parameter. I dette tilfellet vil funksjonen bli brukt på innholdet i matrisen.

Eksempel:
Minimum (gjenstående. mengde)

5. Gjennomsnittlig - Henter gjennomsnittet for ikke-NULL-verdier. Du kan sende en Array som en parameter. I dette tilfellet vil funksjonen bli brukt på innholdet i matrisen.

Eksempel:
Gjennomsnitt (gjenstående. mengde)

6. Array - danner en matrise som inneholder parameterverdien for hver detaljert post.

Syntaks:
Array([Ulike] uttrykk)

Du kan bruke en verditabell som parameter. I dette tilfellet vil resultatet av funksjonen være en matrise som inneholder verdiene i den første kolonnen i verditabellen, sendt som en parameter. Hvis uttrykket inneholder en Array-funksjon, antas det at dette uttrykket er samlet. Hvis nøkkelordet Various er spesifisert, vil den resulterende matrisen ikke inneholde dupliserte verdier.

Eksempel:
Array (motpart)

7. Verditabell - genererer en verditabell som inneholder like mange kolonner som det er parametere for funksjonen. Detaljposter hentes fra datasett som er nødvendige for å få tak i alle feltene som er involvert i funksjonsparameteruttrykk.

Syntaks:
Verditabell([Ulike] Uttrykk1 [AS ColumnName1][, Uttrykk2 [AS ColumnName2],...])

Hvis funksjonsparametrene er gjenværende felt, vil den resulterende verditabellen inneholde verdier for poster for unike kombinasjoner av dimensjoner fra andre perioder. I dette tilfellet oppnås verdier kun for saldofelt, dimensjoner, kontoer, periodefelt og deres detaljer. Verdiene til de gjenværende feltene i poster fra andre perioder anses som lik NULL. Hvis et uttrykk inneholder verditabell-funksjonen, anses dette uttrykket for å være et aggregert uttrykk. Hvis nøkkelordet Various er spesifisert, vil den resulterende verditabellen ikke inneholde rader som inneholder de samme dataene. Etter hver parameter kan det være et valgfritt nøkkelord AS og et navn som vil bli tildelt kolonnen i verditabellen.

Eksempel:
Verditabell (forskjellig nomenklatur, kjennetegn ved nomenklaturer AS kjennetegn)

8. Skjul (GroupBy) - designet for å fjerne duplikater fra en matrise.

Syntaks:
Skjul (Uttrykk, ColumnNumbers)

Alternativer:

  • Uttrykk- et uttrykk av typen Array eller ValueTable, verdiene til elementene må skjules;
  • Kolonnenumre- (hvis uttrykket er av typen ValueTable) type String. Tall eller navn (atskilt med komma) på kolonnene i verditabellen, blant hvilke du må se etter duplikater. Standard er alle kolonner.
Eksempel:
Collapse(ValueTable(PhoneNumber, Address) ,"PhoneNumber");

9. GetPart - får en verditabell som inneholder visse kolonner fra den opprinnelige verditabellen.

Syntaks:
GetPart(Uttrykk, Kolonnetall)

Alternativer:

  • Uttrykk- type Verditabell. En tabell med verdier som du kan hente kolonner fra;
  • Kolonnenumre- skriv streng. Tall eller navn (atskilt med komma) på kolonnene i tabellen over verdier som må innhentes.
Returverdi: Verditabell, som bare inneholder kolonnene som er spesifisert i parameteren.

Eksempel:
GetPart(Collapse(ValueTable(Telefonnummer, Adresse) ,"Telefonnummer"),"Telefonnummer");

10. Bestill - designet for å organisere matriseelementer og verditabell.

Syntaks:
Ordne (Uttrykk, Kolonnetall)

Alternativer:

  • Uttrykk- Array eller ValueTable som du trenger for å hente kolonner fra;
  • Kolonnenumre- (hvis uttrykket er av typen Verditabell) tall eller navn (atskilt med komma) på kolonnene i verditabellen du vil sortere etter. Kan inneholde bestillingsretning og behov for autobestilling: Synkende/Stigende + Autobestilling.
Returverdi: Array eller ValueTable, med ordnede elementer.

Eksempel:
Arrange(ValueTable(Telefonnummer, Adresse, Samtaledato),"Samtaledato synkende");

11. JoinStrings - designet for å kombinere strenger i en linje.

Syntaks:
ConnectRows(Verdi, ElementSeparator, ColumnSeparator)

Alternativer:

  • Betydning- uttrykk som må kombineres til én linje. Hvis det er en matrise, vil elementene i matrisen bli kombinert til en streng. Hvis det er en verditabell, vil alle kolonner og rader i tabellen bli kombinert til en rad;
  • Elementseparator- en streng som inneholder tekst som skal brukes som skilletegn mellom array-elementer og verditabellrader. Standard – linjeskifttegn;
  • Kolonneskillere- en linje som inneholder tekst som skal brukes som skilletegn mellom kolonnene i verditabellen. Standard "; ".
Eksempel:
ConnectRows(ValueTable(Telefonnummer, Adresse));

12. Gruppebehandling - returnerer GroupProcessingDataCompositionData-objektet. I objektets Data-egenskap plasseres grupperingsverdiene i form av en verditabell for hvert uttrykk spesifisert i funksjonsparameteren Expressions. Når du bruker hierarkisk gruppering, behandles hvert nivå i hierarkiet separat. Verdier for hierarkiske poster er også plassert i dataene. CurrentItem-egenskapen til objektet inneholder verditabellraden som funksjonen for øyeblikket beregnes for.

Syntaks:
Gruppebehandling (Uttrykk, Hierarkiuttrykk, Gruppenavn)

Alternativer:

  • Uttrykkene. Uttrykk som skal vurderes. En linje som inneholder kommaseparerte uttrykk som må evalueres. Etter hvert uttrykk kan det være et valgfritt nøkkelord AS og navnet på kolonnen i den resulterende verditabellen. Hvert uttrykk danner en kolonne i verditabellen til Data-egenskapen til DataCompositionGroupProcessingData-objektet.
  • UttrykkHierarkier. Uttrykk som skal evalueres for hierarkiske poster. Ligner på Expressions-parameteren, med den forskjellen at Hierarchy Expressions-parameteren brukes for hierarkiske poster. Hvis parameteren ikke er spesifisert, brukes uttrykkene spesifisert i Expression-parameteren til å beregne verdier for hierarkiske poster.
  • Gruppenavn. Navnet på grupperingen som behandlingsgrupperingen skal beregnes i. Linje. Hvis det ikke er spesifisert, skjer beregningen i gjeldende gruppering. Hvis beregningen utføres i en tabell og parameteren inneholder en tom streng eller ikke er spesifisert, beregnes verdien for grupperingen - strengen. Layoutkomponisten, når den genererer et datalayoutoppsett, erstatter dette navnet med navnet på grupperingen i den resulterende layouten. Hvis gruppering ikke er tilgjengelig, vil funksjonen bli erstattet med en NULL-verdi.
13. Alle - hvis minst én post har verdien False, er resultatet False, ellers True.

Syntaks:
Hver (uttrykk)

Parameter :

  • Uttrykk- Boolsk type.
Eksempel:
Hver()

14. Alle (alle)- hvis minst én post har verdien True, er resultatet True, ellers False

Syntaks:
Enhver (uttrykk)

Parameter :

  • Uttrykk- Boolsk type.
Eksempel:
Noen()

15. Standardavvik for den generelle populasjonen (Stddev_Pop) - beregner standardavviket til befolkningen. Beregnes ved hjelp av formelen: SQRT(Varians of the General Population (X)).

Syntaks:
Standardavvik for den generelle populasjonen (uttrykk)

Parameter :

  • Uttrykk- Nummertype.

Eksempel:

X1 2 3 4 5 6 7 8 9
Y7 1 2 5 7 34 32 43 87
VELG standardavvik for den generelle populasjonen (Y) FRA tabell
Resultat: 805.694444

16. Standardavvik for prøve (Stddev_Samp) - beregner det kumulative prøvestandardavviket. Beregnes ved hjelp av formelen: SQRT(Sample Variance(X)).

Syntaks:
StandardDeviationSample (Uttrykk)

Parameter :

  • Uttrykk- Nummertype.
Returtype Nummer.

Eksempel:

X1 2 3 4 5 6 7 8 9
Y7 1 2 5 7 34 32 43 87
VELG StandardDeviationSamples(Y) FROM Tabell
Resultat: 28.3847573

17. VarianceSamples (Var_Samp) - beregner den typiske forskjellen til en serie tall uten å ta hensyn til NULL-verdiene i dette settet. Beregnes ved hjelp av formelen: (Beløp(X^2) - Beløp(X)^2 / Antall(X)) / (Antall(X) - 1). Hvis Mengde(X) = 1, returneres NULL.

Syntaks:
Variansprøver (uttrykk)

Parameter :

  • Uttrykk- Nummertype.
Eksempel:
VELG varians av populasjonen (Y) FRA tabell
Resultat: 716.17284

19. Samvariasjon av den generelle befolkningen (Covar_Pop) - beregner kovariansen til et antall numeriske par. Beregnet ved hjelp av formelen: (Sum(Y * X) - Sum(X) * Sum(Y) / n) / n, hvor n er antall par (Y, X) der verken Y eller X er NULL.

Syntaks:
Samvariasjon av befolkning (Y, X)

Alternativer:

  • Y- typenummer;
  • X- Nummertype.
Eksempel:
X1 2 3 4 5 6 7 8 9
Y7 1 2 5 7 34 32 43 87
VELG KovariansBefolkning(Y, X) FRA tabell
Resultat: 59.4444444

20. CovarianceSample (Covar_Samp) - beregner den typiske forskjellen til en serie tall uten å ta hensyn til NULL-verdiene i dette settet. Beregnet ved hjelp av formelen: (Sum(Y * X) - Sum(Y) * Sum(X) / n) / (n-1), der n er antall par (Y, X) der verken Y eller X er NULL.

Syntaks:
Samvarianseprøver (Y, X)

Alternativer:

  • Y- typenummer;
  • X- Nummertype.
Eksempel:
X1 2 3 4 5 6 7 8 9
Y7 1 2 5 7 34 32 43 87
VELG kovariansprøver(Y, X) FRA tabell
Resultat: 66.875

21. Korrelasjon (Korr) - beregner korrelasjonskoeffisienten til et antall numeriske par. Det beregnes ved hjelp av formelen: Samvariasjon av populasjonen (Y, X) / (Standardavvik for populasjonen (Y) * Standardavvik for populasjonen (X)). Par der Y eller X er NULL, tas ikke i betraktning.

Syntaks:
Korrelasjon (Y, X)

Alternativer:

  • Y- typenummer;
  • X- Nummertype.
Eksempel:
X1 2 3 4 5 6 7 8 9
Y7 1 2 5 7 34 32 43 87
VELG Korrelasjon(X, Y) FRA tabell
Resultat: 0,860296149

22. RegressionSlope (Regr_Slope) - beregner helningen på linjen. Beregnet ved hjelp av formelen: Samvarians av den generelle populasjonen (Y, X) / Varians av den generelle populasjonen (X). Beregnet uten å ta hensyn til par som inneholder NULL.

Syntaks:
Regresjonshelling(Y, X)

Alternativer:

  • Y- typenummer;
  • X- Nummertype.
Eksempel:
X1 2 3 4 5 6 7 8 9
Y7 1 2 5 7 34 32 43 87
VELG Regresjonshelling(Y, X) FRA tabell
Resultat: 8,91666667

23. RegressionIntercept (Regr_Intercept) - beregner Y-skjæringspunktet for regresjonslinjen. Beregnet ved hjelp av formelen: Middel(Y) - Regresjonshelling(Y, X) * Gjennomsnitt(X). Beregnet uten å ta hensyn til par som inneholder NULL.

Syntaks:
Regresjonssegment(Y, X)

Alternativer:

  • Y- typenummer;
  • X- Nummertype.
Eksempel:
VELG regresjonstelling(Y, X) FRA tabell
Resultat: 9

25. RegresjonR2 (Regr_R2) - beregner bestemmelseskoeffisienten. Beregnet uten å ta hensyn til par som inneholder NULL.

Syntaks:
RegresjonR2(Y, X)

Alternativer:

  • Y- typenummer;
  • X- Nummertype.
Returverdi:
  • Null - hvis varians av den generelle populasjonen (X) = 0;
  • 1 - hvis varians av den generelle populasjonen (Y) = 0 OG variansen av den generelle populasjonen (X)<>0;
  • POW(Korrelasjon(Y,X),2) - hvis variansen til den generelle populasjonen(Y)>0 OG variansen til den generelle populasjonen(X)<>0.
Eksempel:
X1 2 3 4 5 6 7 8 9
Y7 1 2 5 7 34 32 43 87
VELG RegresjonR2(Y, X) FRA tabell
Resultat: 0,740109464

26. RegressionAverageX (Regr_AvgX) - beregner gjennomsnittet av X etter eliminering av X- og Y-par der enten X eller Y er tomme. Gjennomsnitt(X) beregnes uten å ta hensyn til par som inneholder NULL.

Syntaks:
RegresjonsgjennomsnittX(Y, X)

Alternativer:

  • Y- typenummer;
  • X- Nummertype.
Eksempel:
X1 2 3 4 5 6 7 8 9
Y7 1 2 5 7 34 32 43 87
VELG RegresjonsmeanX(Y, X) FRA tabell
Resultat: 5

27. RegressionAverageY (Regr_AvgY) - beregner gjennomsnittet av Y etter eliminering av X- og Y-par der enten X eller Y er tomme. Gjennomsnitt(Y) beregnes uten å ta hensyn til par som inneholder NULL.

Syntaks:
RegresjonsgjennomsnittY(Y, X)

Alternativer:

  • Y- typenummer;
  • X- Nummertype.
Eksempel:
X1 2 3 4 5 6 7 8 9
Y7 1 2 5 7 34 32 43 87
VELG RegresjonMeanY(Y, X) FRA tabell
Resultat: 24.2222222

28. RegresjonSXX (Regr_SXX) - beregnet ved hjelp av formelen: Regresjonsmengde(Y, X) * Spredning av den generelle populasjonen(X). Beregnet uten å ta hensyn til par som inneholder NULL.

Syntaks:
RegresjonSXX(Y, X)

Alternativer:

  • Y- typenummer;
  • X- Nummertype.
Returnerer summen av kvadrater av de uavhengige uttrykkene som brukes i en lineær regresjonsmodell. Funksjonen kan brukes til å evaluere den statistiske gyldigheten til en regresjonsmodell.

Eksempel:
VELG RegresjonSYY(Y, X) FRA tabell
Resultat: 6445.55556

30. RegressionSXY (Regr_SXY) - beregnet ved hjelp av formelen: Regresjonsmengde(Y, X) * Samvarians av den generelle populasjonen(Y, X). Beregnet uten å ta hensyn til par som inneholder NULL.

Syntaks:
RegresjonSXY(Y,X)

Alternativer:

  • Y- typenummer;
  • X- Nummertype.
Eksempel:
X1 2 3 4 5 6 7 8 9
Y7 1 2 5 7 34 32 43 87
VELG RegresjonSXY(Y, X) FRA tabell
Resultat: 535

31. Rangering

Syntaks:
PlaceInOrder(Order, HierarchyOrder, GroupName)

Alternativer:

  • Rekkefølge– skriv inn streng. Inneholder uttrykk i rekkefølgen du vil ordne gruppeposter av, atskilt med komma. Rekkefølgen styres ved hjelp av ordene stigende, synkende. Du kan også følge feltet med Autobestilling, som betyr at når du bestiller lenker, må du bruke rekkefølgefeltene som er definert for det refererte objektet. Hvis ingen sekvens er spesifisert, beregnes verdien i grupperingssekvensen;
  • Ordrehierarki– skriv inn streng. Inneholder ordensuttrykk for hierarkiske poster;
  • Gruppenavn– skriv inn streng. Navnet på grupperingen som behandlingsgrupperingen skal beregnes i. Hvis det ikke er spesifisert, skjer beregningen i gjeldende gruppering. Hvis beregningen utføres i en tabell og parameteren inneholder en tom streng eller ikke er spesifisert, beregnes verdien for grupperingen - strengen. Layoutkomponisten, når den genererer et datalayoutoppsett, erstatter dette navnet med navnet på grupperingen i den resulterende layouten. Hvis gruppering ikke er tilgjengelig, vil funksjonen bli erstattet med en NULL-verdi.
Hvis det er to eller flere poster i en sekvens med samme bestillingsfeltverdier, returnerer funksjonen de samme verdiene for alle poster.

Eksempel:
PlaceInOrder("[Antall omsetning]")

32. KlassifiseringABC

Syntaks:
KlassifikasjonABC(verdi, antall grupper, prosentandel for grupper, gruppenavn)

Alternativer:

  • Betydning– skriv inn streng. som klassifiseringen skal beregnes etter. En linje som inneholder uttrykket;
  • Antall grupper- Nummertype. Angir antall grupper som skal deles inn i;
  • Prosentandel for grupper- skriv streng. Så mange som minus 1 må deles inn i grupper. Atskilt med komma. Hvis ikke spesifisert, så automatisk;
  • Gruppenavn- skriv streng. Navnet på grupperingen som behandlingsgrupperingen skal beregnes i. Hvis det ikke er spesifisert, skjer beregningen i gjeldende gruppering. Hvis beregningen utføres i en tabell og parameteren inneholder en tom streng eller ikke er spesifisert, beregnes verdien for grupperingen - strengen. Layoutkomponisten, når den genererer et datalayoutoppsett, erstatter dette navnet med navnet på grupperingen i den resulterende layouten. Hvis gruppering ikke er tilgjengelig, vil funksjonen bli erstattet med en NULL-verdi.
Resultatet av funksjonen vil være klassenummeret, fra 1, som tilsvarer klasse A.

Eksempel:
KlassifikasjonABC("Beløp(Bruttofortjeneste)", 3, "60, 90")

Artikkelen beskriver et eksempel praktisk bruk vektet gjennomsnittsverdi i rapportresultatene. Noen teknikker for arbeid med adgangskontrollsystemer er vist. Artikkelen er ment for en utdannet leser med minst grunnleggende ferdigheter i arbeid med tilgangskontrollsystemer og spørringsbygger.

Beregningen av det vektede gjennomsnittet brukes aktivt i oppgaver knyttet til ledelsesregnskap og andre forretningskalkyler.

A-priory, - VEKTLAGT GJENNOMSNITT(vektet gjennomsnitt) er et aritmetisk gjennomsnitt som tar hensyn til vekten av hvert av leddene som dette gjennomsnittet er beregnet for.

I nesten alle lærebøker om ledelsesregnskap, for å illustrere det vektede gjennomsnittet, gir de et eksempel med kjøp av tre partier av samme produkt - hvert parti varer har en annen innkjøpspris og en annen mengde. Det er klart at dersom vi i en slik situasjon tar det aritmetiske gjennomsnittet av innkjøpsprisene, vil vi få gjennomsnittstemperaturen på sykehuset – et tall som ikke har noen praktisk betydning. I en slik situasjon er det det vektede gjennomsnittet som gir mening.

Det samme lærebokeksemplet: varer ble kjøpt i tre partier, hvorav ett var 100 tonn for 70 pund. Kunst. per tonn, den andre - 300 tonn ved 80 pund. Kunst. per tonn og tredjedel - 50 tonn ved 95 lbs. Kunst. per tonn, så kjøper han totalt 450 tonn varer; regelmessig Gjennomsnittspris kjøp vil være (70 + 80 + 95): 3 = 81,7 f. Kunst. Den veide gjennomsnittsprisen, tatt i betraktning volumene til hver batch, er lik (100 × 70) + (300 × 80) + (50 × 95): 450 = 79,4 pund. Kunst. per tonn.

Formel:

Hvor X er verdiene hvis vektede gjennomsnitt vi ønsker å oppnå, og W er vektene.

Det er her teorien slutter.

Jeg måtte forholde meg til dette da jeg viste data om salg av varer i en rapport, gruppert etter ledere, der det var nødvendig for å oppnå lønnsomhet som et resultat. Linjene i rapporten viste lønnsomheten for hvert solgte produkt i resultatene, det var nødvendig å se hvilken lønnsomhet lederen jobbet med. Følgelig er lønnsomhet en "verdi", og "vekten" av denne verdien er inntekter. En rekke avklaringer for å komplettere bildet. Inntekt (salgsvolum) er produktets salgspris og mengde multiplisert. Bruttofortjeneste er inntekt minus kostnad (hvordan kostnaden ble beregnet nøyaktig i forbindelse med denne artikkelen er ikke viktig). Og til slutt, vår lønnsomhet er forholdet mellom bruttofortjeneste og omsetning uttrykt i prosent.

Spørsmålet oppstår: hvilken lønnsomhet utførte forvalteren i rapporteringsperioden? For å svare riktig på dette spørsmålet, må du beregne den vektede gjennomsnittlige lønnsomhetsverdien.

For å få det lønnsomhetsvektede gjennomsnittet i SKD oppretter vi et hjelpefelt i skjemaet i spørringskonstruktørenvilkårlig uttrykk, hvor vi registrerer produktet av lønnsomhet og inntekt. Vi tildeler et alias til dette feltet -Hjelpefelt. Se bildet nedenfor.

Vi vil ikke vise dette feltet i rapporten, vi trenger dataene for å beregne resultatene. Vi vil beregne resultatene i ACS-fanenRessurser.

En annen teknikk for å jobbe med ACS på fanen "Ressurser", der beregningen av totaler er indikert, er muligheten til å bruke uttrykk i "Uttrykk"-feltet med data fra "Tilgjengelige felt". Se bildet nedenfor.

For rapportkolonnen «Prosentandel av lønnsomhet» skriver vi uttrykket Beløp(Hjelpefelt)/Beløp(inntekt).

For å oppsummere, først av alt, er det viktig å forstå hva et vektet gjennomsnitt er, og hvor du trenger å bruke bare det aritmetiske gjennomsnittet, og hvor du må bruke det vektede gjennomsnittet. Fra et teknisk synspunkt kan to punkter by på noen vanskeligheter - opprettelsen av et hjelpefelt i rapporten, og muligheten til å bruke et vilkårlig uttrykk i ACS-ressursene for å beregne resultatene vi trenger.

Jeg håper at denne artikkelen vil være nyttig for noen.

La oss se på et eksempel:

Flere vareenheter sendes til kunden med forskjellige rabatter. Du må vise rabattverdiene for hvert produkt i en rapport og beregne gjennomsnittlig rabatt. La oss lage en rapport om tilgangskontrollsystemet.
For alle feltene vi trenger å vise totaler for, vil vi sette et uttrykk (metode) for deres beregning på fanen "Ressurser". For "Rabatt"-feltet angir du beregningsmetoden som "Gjennomsnitt".

Vi legger ut rapporten:

Som du kan se, beregnes totalen for «Rabatt»-feltet som det aritmetiske gjennomsnittet av feltverdiene, dvs. summen av alle verdier delt på antall verdier. Men fordi Siden varevolumene som sendes med ulike rabatter er forskjellige, kan den gjennomsnittlige rabatten beregnes på en annen måte: for eksempel som forholdet mellom den totale varemengden som sendes, tatt i betraktning rabatten, og den totale varemengden som sendes. Men her oppstår et spørsmål: hvis du kan skrive en formel for å beregne verdiene til feltene med detaljerte poster i ACS, beregnes totalsummene automatisk i henhold til uttrykket spesifisert på fanen "Ressurser", og der, som vi så tidligere, "Gjennomsnitt" beregnes som det aritmetiske gjennomsnittet av de viste verdiene, som i dette tilfellet, bør jeg beregne totalen i denne kolonnen ved å bruke min egen formel?
Det er faktisk ikke vanskelig. For å gjøre dette vil vi justere rapporten vår ved å legge til de nødvendige feltene som vil delta i beregningen, i vårt tilfelle er disse "AmountWithDiscount" og "AmountAtPrice".

For å "lære" ACS å vise resultatene våre, tar vi følgende trinn:
1. på "Innstillinger"-fanen, gi grupperingen "" et navn, for eksempel "TotalSKD", for dette kaller vi kontekstmenyen for gruppering og klikk "tildel et navn";

2. på "Layouts"-fanen, legg til et "grouping header layout", der vi velger det tidligere tildelte navnet "TotalSKD";

3. vi tegner en linje av oppsettet, der vi lar alle resultatene, hvis beregningen passer oss, som den er, og for å beregne den gjennomsnittlige rabattprosenten skriver vi en formel for beregning;

Hvis alt er riktig, vil det vises to totale linjer under den når rapporten vises, først den som genereres automatisk, deretter den som er opprettet av deg.

For å la utgangen bare være den totale linjen din, må du på "Innstillinger"-fanen i "Andre innstillinger"-delen av layoututgangen deaktivere utgangen for "Horisontal totaloppsett" og "Vertikal totaloppsett"

I datasammensetning sette opp totaler ser litt annerledes ut enn i forespørsler. La oss definere «Query»-datasettet i datasammensetningssystemet.

I selve forespørselen konfigurerer vi ikke totalsummene, men går til fanen "Ressurser" i datasammensetningen. På datasammensetningsskjemanivå har vi bestemme ressurser. Dette er feltene som må telles på grupperingsnivå. Klikk på ">>"-knappen og systemet vil overføre alle de numeriske feltene og definere dem som ressurser.

Du kan også angi ikke-numeriske felt i ressurser. Hvis du for eksempel velger «Link»-attributtet, vil systemet telle antall dokumenter i gruppene våre. Denne informasjonen kan også være nyttig. Så, i layoutdiagrammet definerer vi kun ressurser, og selve grupperingene er konfigurert på rapportvariantnivå. Brukeren kan også opprette grupperingene han vil se i innstillingene for rapportalternativer.

La oss skape standardinnstilling datasammensetning.
Klikk på "Åpne innstillingsdesigner"-knappen.

La oss velge rapporttype - liste. Klikk på "Neste"-knappen.

La oss velge alle feltene og flytte motpartsfeltet til toppposisjonen. Klikk på "Neste"-knappen.

La oss velge alle feltene og flytte motpartsfeltet til toppposisjonen. Klikk på "OK"-knappen.

Den resulterende innstillingen var:

Som du kan se, når du konfigurerer et rapportalternativ, er ressurser uthevet med et grønt ikon slik at de raskt kan skilles fra andre felt.

Hvis vi åpner rapporten vår i 1C:Enterprise-modus og genererer den, vil vi se at endelige data genereres på grupperingsnivå. Resultater etter post og motparter.

Sette opp ressurser i 1C-datasammensetningsskjemaet

La oss nå rette oppmerksomheten mot innstillinger som finnes for ressurser. I «Uttrykk»-feltet kan vi spesifisere en aggregert funksjon som kan brukes for å få verdien av ressursen. I nedtrekkslisten kan du se en rekke standardfunksjoner, men ikke alle. For eksempel er det ingen funksjoner.

Her i «Uttrykk»-feltet kan vi skrive vårt eget uttrykk.

I feltet "Uttrykk" kan vi også få tilgang til funksjonene til vanlige moduler.

I tillegg kan du spesifisere i feltet "Beregn etter..." hvilke grupperinger ressursen skal beregnes etter. Hvis feltet "Beregn etter..." ikke er fylt ut, vil den endelige verdien av ressursen bli beregnet på alle grupperingsnivåer som er definert i innstillingene for rapportalternativet. I vårt tilfelle må vi fylle ut feltet "Beregn etter..." i ressursen "Antall", siden vi kan selge produktet med ulike enheter målinger. For eksempel: olje i liter og hjul i stykker. Er det ikke sant at det ville være ulogisk å legge sammen mengdene av disse varene? Derfor må vi la summeringen av kvantum ligge på varenivå, og på motpartsnivå
La oss fjerne summeringen.

Hvis vi genererer en rapport, vil vi se at kvantumssummene beregnes kun per vare, og kvantumssummene for entreprenører er tomme.

Muligheter ved beskrivelse av ressurser i 1C datasammensetningsskjema

la oss vurdere en rekke ikke-opplagte trekk knyttet til beskrivelsen av ressurser.

  • Hver ressurs kan definere flere ganger. Men dette gir bare mening hvis
    ressursen vil bli beregnet på ulike nivåer av grupperinger. For eksempel hvis mengden, i ett tilfelle
    er summert for varen, og for motparter får vi minimumsverdien.

Hvis vi genererer en rapport, vil vi se at for motparten "Deriya" er minimumskjøpet fem enheter av produktutvalget "Selvklebende papir".

  • I «Uttrykk»-feltet, i tillegg til å skrive en formel, kan du bruke en spesiell datasammensetningsfunksjon kalt "Calculate". Denne funksjonen lar deg beregne en endelig verdi basert på en bestemt formel. For hver motpart er det for eksempel nødvendig å vite prosentandelen av kjøp i naturlige enheter i forhold til det totale volumet. Men hvordan få det totale volumet av kjøp etter kvantitet? For å gjøre dette, bruk "Beregn"-funksjonen og skriv følgende uttrykk i "Uttrykk"-feltet:
Sum(Antall)/Beregn("Sum(Antall)", "TotalTotal")*100

Som sett, alle parametere til "Calculate"-funksjonen er strenger. For at mengdefeltet skal vises vakkert i rapporten, konfigurerer vi det på fanen "Datasett". I mengdelinjen finner vi feltet "Redigeringsalternativer". La oss åpne dialogen, finne "Format" -linjen og redigere formatlinjen i den, og sette verdien "Nøyaktighet" til to på "Nummer" -fanen.

La oss kjøre rapporten og se resultatet av å beregne prosentandel av kjøp for motparten "AUPP KOS TOO" ift.
totalt volum:


På slutten av artikkelen vil jeg anbefale deg en gratis fra Anatoly Sotnikov. Dette er et kurs fra en erfaren programmerer. Den vil vise deg på eget grunnlag hvordan du bygger rapporter i tilgangskontrollsystemet. Du trenger bare å lytte nøye og huske! Du vil få svar på følgende spørsmål:
  • Hvordan lage en enkel listerapport?
  • Hva er felt-, bane- og tittelkolonnene på "Felt"-fanen for?
  • Hva er begrensningene for layoutfelt?
  • Hvordan konfigurere roller riktig?
  • Hva er rollene for layoutfelt?
  • Hvor finner jeg fanen for datasammensetning i en spørring?
  • Hvordan konfigurere parametere i tilgangskontrollsystemet?
  • Det blir enda mer interessant...
Kanskje du ikke burde prøve å surfe på Internett selv på jakt etter nødvendig informasjon? Dessuten er alt klart til bruk. Bare sett i gang! Alle detaljer om hva som er i de gratis videoleksjonene

Her er en av leksjonene om å bokmerke datasammensetningen i en spørring:

fortelle venner