Metoder för distribuering av värden till konsoliderade cellvärden

Splasher-kommandon, som återskriver värden till konsoliderade celler, föregås av fyrkantssymbolen (#). Vid användning förkortas namnet på varje Splasher-kommando till en bokstav, t.ex. C (Copy) eller L (Like).

Om ett textvärde som skrivs till en cell börjar med en av dessa bokstäver, eller med symbolen #, eller innehåller det fullständiga namnet på ett Splasher-kommando, kan värdet felaktigt parsas som ett Splasher-kommando. Om detta inträffar visar cellen #REF!.

Om det värde som ska skrivas till en cell alltid är text och aldrig ett datum eller nummer, kan du undvika det här problemet genom att sätta två apostrofer före värdet. Den första apostrofen säkerställer att strängen inte tolkas som ett tal eller som ett datum eller en tidpunkt. Den andra apostrofen säkerställer att strängen inte tolkas som ett Splasher-kommando.

Problemet uppstår endast med cellvärden, inte med t.ex. cellanteckningar eller attribut. Det inträffar endast om splashing är aktiverat.

Exempel

Denna partiella CELLWRITE-formel är avsedd att skriva värdet C2019-20 till en cell.
=CELLWRITE("C2019-20","DEPM","BPCCONFIG_CYCLE","...

Men C tolkas som ett COPY-kommando och ett fel av typen #REF! returneras.

Om du lägger till två apostrofer efter inledande citattecken instruerar det parsern att värdet inte är ett Splasher-kommando och inte är ett tal eller datum:

=CELLWRITE("''C2019-20","DEPM","BPCCONFIG_CYCLE","...

Fördela och ändra

Du kan ange fördelnings- eller ändringsvärden för alla återskrivningsmetoder.

Alternativet Fördela ersätter befintliga värden. Exempelvis blir cellvärdet 2 om en cell innehåller 1 och du skriver 2 till den med hjälp av Fördela.

Alternativet Ändra ändrar befintliga värden med värdet du anger. Exempelvis blir cellvärdet 3 om en cell innehåller 1 och du anger 2 i den med hjälp av Ändra.

Ändringskommandon har ett och-tecken (&) som prefix.

Metoder och kommandon för återskrivning

Som förinställning är återskrivningsmetoder additiva – de ökar befintliga värden på olika sätt. Du kan ändra syntaxen för varje återskrivningsmetod om du vill subtrahera värden eller ange värden med en procentsats.

I detta avsnitt kan [value] i exemplen med syntaxerna Weighted, Equal, Base och Like allocation ha ett minustecken (-) som prefix om du vill skriva negativa värden. De kan även följas av ett procenttecken (%) om du vill ändra värden med en procentsats.

Exempel:
Syntax Förklaring
&W20 Lägger till 20 till cellvärdet
&W-20 Subtraherar 20 från cellvärdet
&W5% Ökar cellvärdet med 5 %

Plustecknet (+) är underförstått, men du kan skriva det uttryckligen (exempelvis &W+20). Alla återskrivningsmetoder stöder två eller tre syntaxer. Exempelvis motsvarar #W[value] och #@[value] varandra. Exempel som innehåller specifika dimensions- och elementnamn är baserade på exempelprogrammet.

Viktad

Proportionerna hos underordnade värden bibehålls i förhållande till varandra när värdet på deras överordnade element ökas eller minskas.

Viktad fördelning: #W[value]

Om du skriver ett värde med hjälp av viktad fördelning till en överordnad cell som exempelvis fördubblar det befintliga värdet, fördubblas även värdet på alla underordnade element.

Viktad ändring: &W[value]

Om du skriver ett värde med hjälp av viktad ändring till en överordnad cell som exempelvis fördubblar det befintliga värdet, fördubblas värdet på alla underordnade element och adderas till det befintliga värdet.

Exempel

Värdet på den överordnade cellen är 9, och värdet på var och en av dess tre underordnade celler är 3. Du skriver 18 till den överordnade cellen med hjälp av viktad ändring. Värdet på varje underordnad cell fördubblas och adderas till det befintliga värdet. Värdet i varje underordnad cell blir alltså 9. Den överordnade cellens värde blir 27.

Lika med

Värden du anger i överordnade celler fördelas lika till de underordnade elementen.

Lika fördelning: #E[value]

Ett värde som du anger i en överordnad cell ersätter det befintliga värdet och fördelas lika bland de underordnade cellerna.

Exempel

En överordnad cell har tre underordnade celler. Du skriver 12 till den överordnade cellen med hjälp av lika fördelning. Värdet i varje underordnad cell blir 4.

Likvärdig ändring: &E[value]

Ett värde som du anger i en överordnad cell fördelas lika bland underordnade celler och adderas till det befintliga värdet.

Exempel

Den överordnade cellens värde är 12. Det finns tre underordnade celler, som var och en har ett värde på 4. Du skriver 12 till den överordnade cellen med likvärdig ändring. 12 fördelas lika till alla underordnade celler och adderas till det befintliga värdet. Värdet på varje underordnad cell blir 8. Värdet i den överordnade cellen blir 24.

Bas

Ett värde som du skriver till en överordnad cell skrivs till varje underordnad cell. Den överordnade cellens värde uppdateras.

Basfördelning: #B[value]

Ett värde som du skriver till en överordnad cell skrivs till varje underordnad cell och ersätter det befintliga värdet.

Exempel

En överordnad cell har tre underordnade celler. Du skriver 2 till den överordnade cellen med hjälp av basfördelning. Värdet på varje underordnad cell blir 2. Värdet i den överordnade cellen blir 6.

Basändring: &B[value]

Ett värde som du skriver till en överordnad cell skrivs till varje underordnad cell och adderas till det befintliga värdet.

Exempel

En överordnad cell har tre underordnade celler. Värdet på varje underordnad cell är 2. Därför är värdet för den överordnade cellen 6. Du skriver 2 till den överordnade cellen med basändring. 2 skrivs till varje underordnad cell och adderas till det befintliga värdet. Värdet på varje underordnad cell blir 4. Värdet i den överordnade cellen blir 12.

COPY

Du kan kopiera värden från en del av en kub till en annan, exempelvis de faktiska siffrorna för ett år till budgeten för ett annat år. I detta exempel utgör de faktiska siffrorna källan och budgeten utgör målet.

Du skriver kopieringskommandot i målcellen. I kommandot anger du endast de dimensioner och element som skiljer källområdet i kuben från målområdet. Om elementen tveklöst tillhör en specifik dimension behöver du endast ange elementen.

Kopiera – fördelning: #C[Tuple]

Kopiera – ändra: &C[Tuple]

En tuppel är adressen till ett specifikt område i databasen. I detta fall är tuppeln adressen till de data du vill kopiera. Du rekommenderas att använda unika elementnamn när du anger tuppeln.

Värden som du kopierar från ett område i en kub till ett annat ersätter befintliga värden.
Obs!

COPY med fördelning använder extern viktad bas som OLAP-specifik återskrivningsmetod när elementen i både källa och mål är konsoliderade element (C) eller baselement (N). I händelse av C-element måste elementens struktur under vara liknande. Det innebär att käll- och målelementen måste ha samma antal underordnade element, två nivåer ned, osv. I övriga fall används den externt viktade metoden.

COPY med ändring använder externt viktad delta som återskrivningsmetod.

Exempel

Du vill kopiera faktiska siffror för fjärde kvartalet 2006 till budgeten för samma kvartal. Markera cellen som innehåller budgetsiffrorna för kvartalet och ange:

#COPY [VALTYPE].[Variance].[Actual];[PERIOD].[All Years].[2006].[2006_Q4]

Du vill kopiera de tyska faktiska siffrorna för tredje kvartalet 2006 till den franska budgeten för fjärde kvartalet 2006.

Markera cellen som innehåller den franska budgeten för fjärde kvartalet och ange följande:

#COPY [REGION].[All Regions].[Europe].[Germany];[VALTYPE].[Variance].[Actual];[PERIOD].[All Years].[2006].[2006_Q3]

COPYFULL

Kommandot COPYFULL fungerar på samma sätt som COPY, men kopierar även värden som beräknas med regler.
Obs!

COPYFULL med fördelning, använder externt viktad som OLAP-specifik återskrivningsmetod.

COPYFULL med ändring använder externt viktad delta.

Dataelement

Microsoft Analysis Services stöder dataelement. Ett dataelement är en kopia av ett överordnat element, men utan sådan status. Du kan återskriva till en datamedlem utan att påverka underordnade element.

Exempel

Du har en hierarki av anställda där chefen utgör det överordnade elementet. Om du planerar chefens lön kan du återskriva ett värde till dataelementet Chef istället för till elementet Chef. På så sätt påverkar övriga anställdas löner inte chefens lön och påverkas inte heller av den.

LIKE

Du kan splasha värden till underordnade element till en konsoliderad cell i samma proportioner som värdena för underordnade element till en annan konsoliderad cell.

Du skriver kommandot Like i målcellen. I kommandot anger du endast de dimensioner och element som skiljer källområdet i databasen från målområdet. Om elementen tveklöst hör till en specifik dimension måste du ange mer än bara elementen.

I återskrivningskommandon står L för Like.

LIKE – fördelning: #L[value][Tuple]

LIKE – ändra: &L[value][Tuple]

En tuppel är adressen till ett specifikt område i databasen. I detta fall är tuppeln adressen till källområdet i databasen.

Exempel

Försäljningssiffrorna för fjärde kvartalet i Spanien år 2005 är 60. Försäljningssiffrorna för de enskilda månaderna är 10 för oktober, 20 för november och 30 för december.

Om du vill se vilken effekt en försäljning på 600 skulle ha under första kvartalet 2006 i Italien (vid en fördelning med samma proportioner som försäljningen för fjärde kvartalet 2005 i Spanien) markerar du cellen som innehåller försäljningen för första kvartalet i Italien och anger följande:

#L 600 [REGION].[All Regions].[Europe].[Spain];[PERIOD].[All Years].[2005].[2005_Q4]

Försäljningen för första kvartalet i Italien blir 600. Siffrorna för de enskilda månaderna blir januari 100, februari 200 och mars 300.

#delete

Om du vill radera alla värden från en sektor i databasen anger du #delete i en cell som innehåller en återskrivningsformel (exempelvis WBC).

LIKEFULL

LIKEFULL är en kombination av LIKE och COPYFULL. Det innebär att du kan återskriva ett angivet värde, men använda External Weighted som återskrivningsläge. Syntaxen för allokering är följande:

#LIKEFULL [value] [tuple]

För ändring ser syntaxen ut så här:

&LIKEFULL [value] [tuple]. Externt viktad delta används som återskrivningsmetod.