Formelfeltet for nøgletal kan udregne almindelige algebraiske udtryk og benyttes forskellige funktioner, der bl.a. refererer til indholdsskemaet og ressourceskemaet. I det følgende vises hvilke funktioner og udtryk m.m. der kan bruges.
Projekt konstanter
Projektets konstanter kan skrives på samme vis som i indholdsskemaets numeriske felter.
eks. ARBEJDSMAND
Indsætter værdien af ARBEJDSMAND fra projektets konstanter.
Generelle funktioner
Følgende beskriver en række generelle nøgletalsfunktioner.
Funktion | Beskrivelse | Eksempel |
---|---|---|
IfNum(Value; Expression; TrueStmt; FalseStmt) |
If-konstruktion. Hvis udtrykket angivet ved Value of Expression er sandt, returneres TrueStmt, ellers returneres FalseStmt |
Returnerer 0 hvis værdien af række 3 er større end eller lig 100, ellers returneres 50:
|
Generelle forespørgselsfunktioner
Det findes to generelle funktioner som kan benyttes til at vise information fra kalkulationen. Den første Value benyttes til at hente værdien af et bestemt felt i en komponent ud. Den anden SumByFilter kan anvendes til at summere et bestemt felt udfra et angivet sæt af kriterier. Disse funktioner erstatter mange af de tidligere nøgletalsfunktioner, og bør så vidt muligt anvendes. De to funktioner er beskrevet herunder.
Funktion | Beskrivelse | Parametre | Eksempel |
---|---|---|---|
Value |
Anvendes til at vise værdien af et givent felt for en komponent i kalkulationen. Value(field;position) |
field Et feltnavn fra nedenstående liste: Position på komponent. Hvis denne udelades anvendes den aktuelt valgte komponent. Det er muligt at bruge funktionen Find til angivelse af position. |
Følgende eksempel returnerer mængden for komponenten i position 1.1.1:
Følgende eksempel returnerer salgsprisen for den valgte komponent:
Følgende eksempel returnerer kostpris med tillæg for hele projektet:
Følgende eksempel returnerer samlet dækningsbidrag for komponenten med teksten Lagerbygning:
|
SumByFilter |
Anvendes til at summere et bestemt felt udfra et givet sæt af kriterier. SumByFilter(sum;filter;position;valgmuligheder) |
sum Det feltnavn som ønskes summeret udfra nedenstående liste: Mængde, ureguleret: QuantityUnregulated filter De felter som ønskes benyttet som filter for funktionen angives som feltnavn="værdi" eksempelvis Category="løn". Det er tilladt at anvende * som angivelse af valgfrie tegn. Det er muligt at benytte flere kriterier. Disse skal angives i kantede paranteser som følger [feltnavn1="værdi1";feltnavn2="værdi2";feltnavn3="værdi3"] eksempelvis [Category="løn";Text="arbejdsmand*";Operation="murer"]. Det eller de feltnavn(e) som ønskes benyttet som filter vælges fra nedenstående liste: Nummer: Number Der ud over kan der filtres på ekstrafelter ved at skrive CF.feltnavn eksempelvis CF.Artskode. position Position på komponent. Hvis denne udelades anvendes den aktuelt valgte komponent. Det er muligt at bruge funktionen Find til angivelse af position. valgmuligheder Her angives hvorvidt komponenter af typen alternativ og udeladte komponenter skal medregnes. Valgmulighederne angives som [valgmulighed1;valgmulighed2]. Valgmulighederne er som følger: Inkluder alternativer: IncludeAlternative Denne parameter er ikke påkrævet. |
Følgende eksempel returnerer den samlede mængde af søm under den aktuelle position:
Følgende eksempel returnerer salgsprisen for materialer med aktiviteten støbning for hele projektet:
Følgende eksempel returnerer første omkostningstillæg for komponenter hvor nummerfeltet indeholder 1000 og ekstrafeltet Konto starter med 200, under position 1.1. Der inkluderes komponenter markeret som udeladt:
|
Indholdsskema og slutskema funktioner
Numeriske felter i slutskemaet og indholdsskemaet kan refereres til med følgende funktioner
Generelt for funktionerne gælder at ved position angives positionen for den pågældende komponent som ønskes. Bemærk at position 0 er øverst og angiver det totale projekt. Position 1 og 2 refererer til tilsvarende niveauer der gælder slutskemaet. Positioner under 2 refererer til indholdsskemaet. Hvis ingen position angives (tomme parenteser) hentes tallet relativt til, hvor i beregningstræet der er markeret.
Funktion | Beskrivelse | Parametre | Eksempel |
---|---|---|---|
QUANTITY (Alternativ: MÆNGDE) |
Anvendes til at vise mængden for en given komponent i kalkulationen. QUANTITY(position) |
position Position på komponent |
Følgende eksempel returnerer mængden for komponenten i position 1.1.1:
|
UNITPRICE (Alternativ: ENHEDSPRIS) |
Anvendes til at vise enhedsprisen for en given komponent i kalkulationen. UNITPRICE(position) |
position Position på komponent |
Følgende eksempel returnerer enhedsprisen for komponenten i position 1.1.1:
|
TOTAL_UNITPRICE (Alternativ: SAMLET_ENHEDSPRIS) |
Anvendes til at vise den samlede enhedspris for en given komponent i kalkulationen. TOTAL_UNITPRICE(position) |
position Position på komponent |
Følgende eksempel returnerer den samlede enhedspris for komponenten i position 1.1.1:
|
COSTPRICE (Alternativ: KOSTPRIS) |
Anvendes til at vise kostprisen uden tillæg for en given komponent i kalkulationen. COSTPRICE(position) |
position Position på komponent |
Følgende eksempel returnerer kostprisen uden tillæg for komponenten i position 1.1.1:
|
TOTAL_COSTPRICE (Alternativ: SAMLET_KOSTPRIS) |
Anvendes til at vise den samlede kostpris uden tillæg for en given komponent i kalkulationen. TOTAL_COSTPRICE(position) |
position Position på komponent |
Følgende eksempel returnerer den samlede kostpris uden tillæg for komponenten i position 1.1.1:
|
SALESUNITPRICE (Alternativ: SALGSENHEDSPRIS) |
Anvendes til at vise salgsenhedsprisen uden tillæg for en given komponent i kalkulationen. SALESUNITPRICE(position) |
position Position på komponent |
Følgende eksempel returnerer salgsprisen uden tillæg for komponenten i position 1.1.1:
|
SALESPRICE (Alternativ: SALGSPRIS) |
Anvendes til at vise salgsprisen inkl. evt. automatisk dækningsbidrag for en given komponent i kalkulationen. SALESPRICE(position) |
position Position på komponent |
Følgende eksempel returnerer salgsprisen for komponenten i position 1.1.1:
eks. salgspris(1.1) Salgspris ved position 1.1 i beregningstræet.
eks. salgspris() Salgspris relativt til position i beregningstræet. |
REG |
Anvendes til at vise reguleringen for en given komponent i kalkulationen. REG(position) |
position Position på komponent |
Følgende eksempel returnerer reguleringen for komponenten i position 1.1.1:
|
COMPARE_UNITPRICE (Alternativ: SAMMENLIGNING_ENHEDS_PRIS) |
Anvendes til at vise værdien af feltet sammenligning enhedspris for en given komponent i kalkulationen. COMPARE_UNITPRICE(position) |
position Position på komponent |
Følgende eksempel returnerer værdien for komponenten i position 1.1.1:
|
COMPARE_TOTALPRICE (Alternativ: SAMMENLIGNING_TOTAL_PRIS) |
Anvendes til at vise værdien af feltet sammenligning pris for en given komponent i kalkulationen. COMPARE_TOTALPRICE(position) |
position Position på komponent |
Følgende eksempel returnerer værdien for komponenten i position 1.1.1:
|
SERVICE_UNIT_PRICE |
Anvendes til at vise værdien af feltet service enhedspris for en given komponent i kalkulationen. SERVICE_UNIT_PRICE(position) |
position Position på komponent |
Følgende eksempel returnerer værdien for komponenten i position 1.1.1:
|
SERVICE_TOTAL_PRICE |
Anvendes til at vise værdien af feltet service pris for en given komponent i kalkulationen. SERVICE_TOTAL_PRICE(position) |
position Position på komponent |
Følgende eksempel returnerer værdien for komponenten i position 1.1.1:
|
TOTALPROFIT (Alternativ: TOTALDG) |
Anvendes til at vise værdien af feltet Samlet DG for en given komponent i kalkulationen. TOTALPROFIT(position) |
position Position på komponent |
Følgende eksempel returnerer værdien for komponenten i position 1.1.1:
|
TOTALGROSSMARGIN (Alternativ: TOTALDB) |
Anvendes til at vise værdien af feltet Samlet DB for en given komponent i kalkulationen. TOTALGROSSMARGIN(position) |
position Position på komponent |
Følgende eksempel returnerer værdien for komponenten i position 1.1.1:
|
UNREGULATED_COSTPRICE (Alternativ: UREGULERET_KOSTPRIS) |
Ureguleret kostpris bruges til at få værdien af kostpriser, uden brug af reguleringer. Dette kan bruges til at se hvilke rabatter el. lign der er brugt i kalkulationen. UNREGULATED_COSTPRICE(position) |
|
|
CURRENCY (Alternativ: VALUTA) |
CURRENCY(currency; position) |
currency Valuta betegnelse, f.eks DKK, EUR osv. position Position på komponent |
CURRENCY(EUR) Viser hvor mange Euro der indgår i en del af kalkulationen |
USEVAT |
Returnerer hvorvidt man i projektets egenskaber har angivet om der anvendes moms. Værdien 0 returneres hvis ingen moms, ellers værdien 1. |
|
USEVAT() |
VAT |
Returnerer momssats defineret for projektet. Hvis momsen er angivet til 25% returneres værdien 25 |
|
VAT() |
CALCULATION_INDEX | Returnerer projektets index værdi | CALCULATION_INDEX() | |
STD_DEV | Returnerer standard-afvigelsen for den angivne komponent, ved successiv kalkulation |
position Position på komponent |
STD_DEV(0) |
OperationCostPrice, (Alternativt kan "Activity" og "Operation" benyttes i stedet for OperationCostPrice) |
Returnerer hhv. kostpris, enhed og mængde for en given aktivitet OperationCostPrice(aktivitet, kategori, position) |
aktivitet Navn på aktivitet kategori Navn på kategori position Position på komponent |
Følgende eksempel returnerer kostprisen for aktivitet=Støbning og kategori=Materialer for aktuelle position:
|
APPROVED |
Returnerer hvorvidt projektet er godkendt af alle roller. Hvis der ingen roller er betragtes projektet som godkendt. Værdien 1 returneres hvis projektet er godkendt, ellers værdien 0. |
|
APPROVED() |
Omkostnings- og salgspristillæg funktioner
Funktion | Beskrivelse | Parametre | Eksempel |
---|---|---|---|
DBRESSALES1 - DBRESSALES5 (Alternativ: DBRES1 - DBRES5) |
Anvendes til at vise værdien af salgspris tillæg 1-5 for en given komponent i kalkulationen. DBRESSALES1(position) |
position Position på komponent |
Følgende eksempel returnerer værdien af 1. salgspristillæg for komponenten i position 1.1.1:
Så hvis kostprisen for komponent 1.1.1 er 100 DKK og der er angivet et salgspristillæg på 10%, vil DBRESSALES1(1.1.1) returnere 10
På samme måde kan funktionerne DBRESSALES2, DBRESSALES3, DBRESSALES4 og DBRESSALES5 anvendes til at hente værdien af de øvrige salgspristillæg for en enkelt linje. |
DBRESCOST1 - DBRESCOST5 |
Anvendes til at vise værdien af omkostningstillæg 1-5 for en given komponent i kalkulationen. DBRESCOST1(position) |
position Position på komponent |
Følgende eksempel returnerer værdien af 1. omkostningstillæg for komponenten i position 1.1.1:
Så hvis kostprisen for komponent 1.1.1 er 100 DKK og der er angivet et omkostningstillæg på 45%, vil DBRESCOST1(1.1.1) returnere 45
På samme måde kan funktionerne DBRESCOST2, DBRESCOST3, DBRESCOST4 og DBRESCOST5 anvendes til at hente værdien af de øvrige omkostningstillæg for en enkelt linje i kalkulationen. |
RESOURCE_CONTRIBUTION (Alternativ: RESSOURCE_TILLÆG) |
Bruges til at finde størrelsen af det omkostningstillæg der er beregnet for en bestemt position. Hvis der angives en kategori vil det kun blive beregnet for denne. Hvis der ikke angives kategori, vil det blive beregnet for alle kategorier. RESOURCE_CONTRIBUTION(tillæg nummer;position;kategori) (Kun for Scalepoint version af Sigma: Bemærk at denne funktion af hensyn til bagudkompatibilitet returnerer værdien af salgspristillæg, hvis der er tale om en Scalepoint kalkulation) |
tillæg nummer Hvilket tillæg ønskes beregnet position Position på komponent kategori Navnet på kategori. Bemærk at det ikke er muligt at anvende jokertegn (*), dvs. man skal angive det nøjagtige kategori navn. |
Følgende eksempel returnerer værdien af 1. omkostningstillæg for komponenten i position 1.1.1:
Så hvis kostprisen for komponent 1.1.1 er 100 DKK og der er angivet et omkostningstillæg på 45%, vil DBRESCOST1(1.1.1) returnere 45 På samme måde kan funktionerne DBRESCOST2, DBRESCOST3, DBRESCOST4 og DBRESCOST5 anvendes til at hente værdien af de øvrige omkostningstillæg for en enkelt linje i kalkulationen |
DBRESSUBTOTAL |
Returnerer kostpris med tillæg for den angivne komponent |
position Position på komponent |
DBRESSUBTOTAL(0) |
ALTERNATIVES (Alternativ: ALTERNATIVER) |
Alternativer giver værdien af de alternativer projektet indeholder. |
|
ALTERNATIVES() |
COST_PRICE_SUPPLEMENT SALES_PRICE_SUPPLEMENT |
Returnerer værdien af de angivne slutskema tillæg Det er dog ikke muligt at styre om det er kostpris eller salgspris, der regnes på. Dette styres af opsætningen i slutskemaet. |
position Position på tillæg. Hvis 0, returneres samlet sum af tillæg |
|
RESOURCE_SUBTOTAL (Alternativ: RESSOURCE_SUBTOTAL) |
Bruges til at finde kostpris med tillæg for en position. Hvis der angives en kategori vil det kun blive beregnet for denne. Hvis der ikke angives kategori, vil det blive beregnet for alle kategorier. RESOURCE_SUBTOTAL(position[;kategori]) |
position Position på komponent kategori Navnet på kategori. Bemærk at det ikke er muligt at anvende jokertegn (*), dvs. man skal angive det nøjagtige kategori navn. |
Følgende eksempel returnerer samlet kostpris inkl. omkostningstillæg for hele kalkulationen:
Vis værdien af kostpris med omkostningstillæg for kategorien løn i hele kalkulationen:
|
Funktioner relateret til Sigma Claims
Funktion | Beskrivelse | Parametre | Eksempel |
---|---|---|---|
CURRENTVALUE (Alternativ: DAGSVÆRDI) |
CURRENTVALUE(position) |
|
|
REMAINDERVALUE (Alternativ: RESTVÆRDI) |
REMAINDERVALUE(position) |
|
|
DAMAGEVALUE (Alternativ: SKADEVÆRDI) |
|
|
|
CURRENTVALUE_PERCENT (Alternativ: DAGSVÆRDIPROCENT) |
CURRENTVALUE_PERCENT(position) |
|
|
REMAINDERVALUE_PERCENT (Alternativ: RESTVÆRDIPROCENT) |
REMAINDERVALUE_PERCENT(position) |
|
|
DAMAGEVALUE_PERCENT (Alternativ: SKADEVÆRDIPROCENT) |
DAMAGEVALUE_PERCENT(position) |
|
|
DAMAGECURRENTVALUE (Alternativt navn: SKADEDAGSVÆRDI) |
DAMAGECURRENTVALUE(position) |
|
|
LEGALIZE (Alternativ: LOVLIGGØRELSE) |
LEGALIZE(position) |
|
|
CLAIMSINFO.THIRTYPERCENTRULEACTIVE |
|
|
|
CLAIMSINFO.INSPECTEDBYPHONE |
|
|
|
OWNRISK (Alternativ: SELVRISIKO) |
|
|
|
MAX_DEPRECIATIONS |
|
|
|
CASHCOMPENSATIONVALUE |
|
|
|
DAMAGE_BASIS_NEWVALUE |
|
|
|
DAMAGE_BASIS_MARKETVALUE |
|
|
|
DEPRECIATIONS (Alternativt funktionsnavn: AFSKRIVNINGER) |
|
|
|
DEPRECIATIONS_PERCENT (Alternativt funktionsnavn: AFSKRIVNINGSPROCENT) |
DepreciationsSalesPrice(position) |
|
|
Ressourceskema funktioner
Disse funktioner kan anvendes til at hente ressourcedata ud for kalkulationen, f.eks. den samlede kostpris for en kategori.
Funktion | Beskrivelse | Eksempel |
---|---|---|
CATEGORY (Alternativ: KATEGORI) CategoryIncludingDisabled |
Den samlede sum for en kategori, evt. kombineret med en tekst, i ressourceskemaet kan hentes ved: Funktionen CategoryIncludingDisabled() tager samme parametre som Category(), men inkluderer udelukkede komponenter i beregningen. CATEGORY(kategori[;tekst[;start position]])
|
CATEGORY(løn) Kostpris for kategorien løn, startene fra markeret position i træet.
CATEGORY(løn;arbejdsmand) Kostpris for kategorien løn og med tekst arbejdsmand, og fra markeret position i træet.
CATEGORY(løn;arbejd*) Kostpris for kategorien løn og med tekst begyndende med arbejd, og fra markeret position i træet.
CATEGORY(løn;*;1.1) Salgspris for kategorien løn, startene fra position 1.1 i træet. |
CATEGORY_M (Alternativ: KATEGORI_M) |
For at hente samlet mængde i stedet for pris (giver kun mening hvis enheder er ens): CATEGORY_M (kategori[;tekst[;start position]]) |
CATEGORY_M(løn;arbejdsmand) Antal enheder (f.eks. timer) for kategorien løn og med tekst arbejdsmand, og fra markeret position i træet. |
Ved kategori angives den ønskede kategori (skal altid angives),ved tekst angives evt. tekst og ved position angives evt. positionen for den ønskede komponent. Bemærk at position 0 er øverst og angiver alle ressourcer i projektet. Hvis ingen position angives, hentes tallet relativt til hvor i beregningstræet der er markeret. I både kategori og tekst angiver en * sidst i ordet en vilkårlig slutning.
BEMÆRK: Når man refererer til tekst og kategori felterne, er det vigtigt at huske, at stavefejl/trykfejl i nogle af komponenternes tekster kan give fejl. Hvis f.eks. arbejdsmand er stavet abrejdsmand vil denne IKKE blive medtaget i ovenstående eksempel.
Avancerede funktioner
Funktion | Beskrivelse | Eksempel |
---|---|---|
COSTPRICE_FROM_NUMBER |
COSTPRICE_FROM_NUMBER(nummer) Returnerer kostpris for komponenter med det angivne nummer. Det er muligt at anvende wildcard til søgningen |
COSTPRICE_FROM_NUMBER(100) COSTPRICE_FROM_NUMBER(2*) |
COSTPRICE_FROM_CUSTOMFIELD |
COSTPRICE_FROM_CUSTOMFIELD(felt, værdi) Returnerer kostpris for komponenter der opfylder det angivne kriterie. Det er muligt at anvende wildcard til søgningen. |
COSTPRICE_FROM_CUSTOMFIELD(Konto;100) COSTPRICE_FROM_CUSTOMFIELD(Konto;2*) |
FIND |
Find position i indholdsskemaet ud fra tekst feltet. Denne kan erstatte position-argumentet i f.eks. kategori. Hvis mere end en tekst passer, så vil den først fundne blive brugt.
position = FIND(tekst) Ved tekst angives en tekst fra indholdsskeamet. Funktionen returnerer en position på den først fundne tekst. Denne funktion bør kun anvendes af avancerede brugere. |
CATEGORY(løn;;FIND(Byggeplads)) Kostpris for kategorien løn, startende fra komponenten med teksten Byggeplads.
SALESPRICE(FIND(Byggeplads)) Salgspris ved første position med "Byggeplads" som tekst. |
TABLELOOKUP |
Beskrivelse Henter værdien af en celle fra en semikolon-separeret CSV fil. Kan anvendes hvis man har nøgletal placeret i f.eks. et regneark, som man ønsker at integrere med TABLELOOKUP(filnavn;kolonne overskrift;række overskrift)
Parametre filnavn Navn på filen. Kan anvende variable som f.eks. #SIGMA_DATAPATH# for at angive stien til data biblioteket kolonne overskrift Overskriften på den kolonne i filen, hvorfra værdien skal hentes række overskrift Overskriften på den række i filen, hvorfra værdien skal hentes |
Følgende eksempel slår afstanden fra Roskilde til Sorø op i filen Distances.csv TABLELOOKUP(#SIGMA_DATAPATH#\Distances.csv;Fra Roskilde;Til Sorø) |
Matematiske funktioner.
Funktion | Beskrivelse | Eksempel |
---|---|---|
Round(Value) |
Afrunding af tal |
Afrunder værdien af række 3 i nøgletalsarket:
Afrundet salgspris ved position 1.1 i træet:
|
Min(Value1; Value2) |
Returnerer det mindste af de 2 tal |
Min(#3; #4) |
Max(Value1; Value2) |
Returnerer det største af de 2 tal | Max(#3; #4) |
Modulo(Value1; Value2) | Returnerer rest ved heltalsdivision af de to tal. F.eks. er Modulo(19, 4)=3. | Modulo(#3; #4) |
Power(Value1; Value2) | Returnerer det først tal opløftet i det andet tal. F.eks. er Power(2, 10)=1024. | Power(#3; #4) |
Referencer til formel linier
Resultatet fra andre linier i nøgletalsskemaet kan genbruges i andre nøgletalsberegninger. Skriv:
# = linienummer
Hvor linienummer angiver nummeret på den linie hvor tallet skal hentes fra.
Eks: #3
Indsætter resultatet fra linie #3.