En opskrift til en intelligent bygningsdel programmeres i SigmaScript, et kodesprog baseret på Pascal, som er let at lære og forstå, og har været brugt siden 1969.
Med SigmaScript er det muligt at læse og behandle data i kalkulationen, samt at opsætte en brugerflade for en bygningsdel, så brugeren (beregneren) let kan interagere med bygningsdelen.
Sigma Enterprise
begynder | ØVET | avanceret
Denne guide gennemgår
- Grundbegreber og -elementer
- Tilføj / rediger opskrift (SigmaScript) på bygningsdel
- Dialog opskrift – input
- Dialog opskrift – hvis-så-ellers (kontrolstrukturer)
- Dialog opskrift – gem og hent data
- Dialog opskrift – layout
- Udførelses opskrift
Grundbegreber og -elementer
Det er godt at kende og forstå nogle grundbegreber og -elementer, når du skriver SigmaScript-kode.
Variabler (variables)
Variabler er navngivne, reserverede hukommelsespladser, hvor programmet kan gemme og manipulere data. En variabel kan indeholde forskellige typer af data, f.eks. tal, tekst eller sand/falsk-værdier. Man kan tænke på en variabel som en beholder, der kan indeholde og ændre værdier, efter behov.
Funktioner (functions)
Funktioner i SigmaScript er blokke af kode, der udfører en bestemt opgave. Man kan tænke på dem som små underprogrammer, der kan kaldes fra hovedprogrammet. Funktioner kan modtage input, udføre beregninger og returnere et resultat. De hjælper med at organisere og strukturere koden i mindre og mere overskuelige dele.
Operatorer (operators)
Operatorer i SigmaScript er symboler eller nøgleord, der bruges til at udføre beregninger eller evaluere udtryk. Der er forskellige typer af operatorer:
- aritmetiske operatorer (f.eks. +, -, *, /)
- sammenligningsoperatorer (f.eks. =, >, <)
- logiske operatorer (f.eks. AND, OR, NOT).
Operatorerne hjælper med at manipulere værdier og tage beslutninger baseret på forskellige betingelser.
Typer (types)
I SigmaScript er der forskellige typer af data, som variabler kan indeholde. Nogle af de mest almindelige typer er integer (heltal), float (decimaltal), string (tekststreng), boolean (sand/falsk). Typer hjælper med at definere, hvilken slags data variabler kan indeholde, og sikrer, at de bruges korrekt.
Kontrolstrukturer (control structures)
Kontrolstrukturer i SigmaScript er konstruktioner, der styrer, hvordan koden udføres og kontrollerer flowet af programmet.
I Sigma Script er de mest almindelige kontrolstrukturer if-sætninger, som bruges til at tage beslutninger baseret på betingelser.
Andre kontrolstrukturer er loops (f.eks. for-loops og while-loops, der gentager kodeblokke) og case-sætninger (bruges til at håndtere flere mulige betingelser).
Syntaks (syntax)
Syntaks i SigmaScript henviser til reglerne for, hvordan kode skal struktureres og skrives i sproget. Det inkluderer brug af korrekte nøgleord, symboler og sætningsopbygning. Overholdelse af den korrekte syntaks er afgørende for, at koden kan forstås og udføres korrekt af computeren. Hvis der er fejl i syntaksen, vil programmet ikke kunne køre, og der vil blive genereret fejlmeddelelser. Så at have en korrekt syntax er vigtigt for at have et fungerende program.
Eksempel
Grundbegreber og -elementer
Det er godt at kende og forstå nogle grundbegreber og -elementer, når du skriver SigmaScript-kode.
Variabler (variables)
Variabler er navngivne, reserverede hukommelsespladser, hvor programmet kan gemme og manipulere data. En variabel kan indeholde forskellige typer af data, f.eks. tal, tekst eller sand/falsk-værdier. Man kan tænke på en variabel som en beholder, der kan indeholde og ændre værdier, efter behov.
Funktioner (functions)
Funktioner i SigmaScript er blokke af kode, der udfører en bestemt opgave. Man kan tænke på dem som små underprogrammer, der kan kaldes fra hovedprogrammet. Funktioner kan modtage input, udføre beregninger og returnere et resultat. De hjælper med at organisere og strukturere koden i mindre og mere overskuelige dele.
Operatorer (operators)
Operatorer i SigmaScript er symboler eller nøgleord, der bruges til at udføre beregninger eller evaluere udtryk. Der er forskellige typer af operatorer:
- aritmetiske operatorer (f.eks. +, -, *, /)
- sammenligningsoperatorer (f.eks. =, >, <)
- logiske operatorer (f.eks. AND, OR, NOT).
Operatorerne hjælper med at manipulere værdier og tage beslutninger baseret på forskellige betingelser.
Typer (types)
I SigmaScript er der forskellige typer af data, som variabler kan indeholde. Nogle af de mest almindelige typer er integer (heltal), float (decimaltal), string (tekststreng), boolean (sand/falsk). Typer hjælper med at definere, hvilken slags data variabler kan indeholde, og sikrer, at de bruges korrekt.
Kontrolstrukturer (control structures)
Kontrolstrukturer i SigmaScript er konstruktioner, der styrer, hvordan koden udføres og kontrollerer flowet af programmet.
I Sigma Script er de mest almindelige kontrolstrukturer if-sætninger, som bruges til at tage beslutninger baseret på betingelser.
Andre kontrolstrukturer er loops (f.eks. for-loops og while-loops, der gentager kodeblokke) og case-sætninger (bruges til at håndtere flere mulige betingelser).
Syntaks (syntax)
Syntaks i SigmaScript henviser til reglerne for, hvordan kode skal struktureres og skrives i sproget. Det inkluderer brug af korrekte nøgleord, symboler og sætningsopbygning. Overholdelse af den korrekte syntaks er afgørende for, at koden kan forstås og udføres korrekt af computeren. Hvis der er fejl i syntaksen, vil programmet ikke kunne køre, og der vil blive genereret fejlmeddelelser. Så at have en korrekt syntax er vigtigt for at have et fungerende program.
Eksempel
Tilføj / rediger opskrift (SigmaScript) på bygningsdel
Overordnet består tilføjelse / redigering af SigmaScript på en bygningsdel af følgende 5 trin
1. | Find og vælg (i Beregningstræet) den bygningsdel du vil tilføje opskrift (SigmaScript) på | |
2. | Gå til Data-båndet og vælg Rediger opskrift (i gruppen “SigmaScript”) | |
Du får får vist dialogboksen “SigmaScript editor” med fanerne “Initialiserings opskrift”, “Dialog opskrift”, “Udførelses opskrift” og “Avancerede egenskaber”. klik for større billede |
||
NOTE | “Initialiserings opskrift” bruges sjældent, men kan f.eks. bruges til at initialisere variabler (eksempelvis indlæsning af data fra felter for bygningsdelen) inden databehandlingen på “Dialog opskrift”-fanen. | |
3. | Vælg fanen Dialog opskrift, indtast SigmaScript for data-input og data-behandling og vælg Gem og valider | |
NOTE | Find forklaringer til SigmaScript-funktioner og -kontrolstrukturer længere nede | |
NOTE | Hvis bygningsdelen består af flere niveauer, kan du indtaste SigmaScript på hvert niveau | |
4. | Vælg fanen Udførelses opskrift, indtast SigmaScript for data-output og vælg Gem og valider | |
NOTE | Find forklaringer til SigmaScript-funktioner (Udførelses opskrift) længere nede | |
NOTE | Hvis bygningsdelen består af flere niveauer, skal du ofte bruge Udførelses opskrift på flere underkomponenter. Du skal vælge Gem opskrift eller Gem og valider og derefter vælge underkomponent i Beregningstræet. | |
5. | Vælg fanen Avancerede egenskaber og marker afkrydsningfelterne Indeholder opskrift der kan afvikles og Kør automatisk opskrift når komponenten vælges i afsnittet “SigmaScript egenskaber for komponenten” | |
klik for større billede |
||
NOTE | Afhængigt af, hvordan opskriften skal køre kan du markere flere/andre af afkrydsningsfelterne under “SigmaScript egenskaber for komponenten” | |
NOTE | Du kan redigere opskriften ved igen at vælge bygningsdelen i Beregningstræet og derefter gå til Data-båndet og vælge Rediger opskrift |
Dialog opskrift - Input
En stor del af det at opbygge en intelligent bygningsdel består i, at brugeren skal indtaste data til parametrering af bygningsdelen.
generelt TIP
TIP
Du kan finde SigmaScript-funktioner via tastaturgenvejen Ctrl+Space - og du kan begrænse antallet af mulige funktioner ved at taste noget af funktionen.
Eksempel: hvis du taster "getch" og derefter trykker Ctrl+Space, får du vist funktioner der indeholder de bogstaver, f.eks. funktionen GetChoice
klik for større billede
Hel-tal
Funktionen modtager (sv.t. at brugeren indtaster) et hel-tal (eks. -1, 0, 1, 2 etc.) i den intelligente bygningsdels dialogboks.
funktion
GetInteger(label: string, default value: float)
parametre
label: string (krævet): ledetekst til indlæsningen
default value: float (valgfri): forvalgt værdi
eksempel
Antal := GetInteger("Indtast antal", 1);
screenshots
klik for større billeder - ESC for afslut
Decimal-tal
Funktionen modtager (sv.t. at brugeren indtaster) et decimal-tal (komma-tal) i den intelligente bygningsdels dialogboks.
funktion
GetFloat(label: string, default value: float)
parametre
label (krævet): ledetekst til indlæsningen
default value (valgfri): forvalgt værdi
eksempel
Længde := GetFloat("Indtast længde [m]", 1.5);
screenshots
klik for større billeder - ESC for afslut
Tekst, en linje
Funktionen modtager (sv.t. at brugeren indtaster) en tekst i den intelligente bygningsdels dialogboks. Indtastningsfeltet i dialogboksen er på 1 linje
funktion
GetText(label: string, default value: string)
parametre
label: string (krævet): ledetekst til indtastningen
default value: string (valgfri): forvalgt tekst
eksempel
Navn := GetText("Indtast bygningsdel", "bygningsdels navn");
screenshots
klik for større billeder - ESC for afslut
Tekst, flere linjer
Funktionen modtager (sv.t. at brugeren indtaster) en tekst i den intelligente bygningsdels dialogboks. Indtastningsfeltet i dialogboksen er på flere linjer.
funktion
GetMemo(label: string, line count: float, default value: string, path to AutoText: string)
parametre
label: string (krævet): ledetekst til indtastningen
line count: float (krævet): antal linjer i memo-feltet
default value: string (valgfri): forvalgt tekst
path to AutoText: string (valgfri): sti til fil med auto-tekster
eksempel
Navn := GetText("Indtast bygningsdel", "bygningsdels navn");
Beskrivelse := GetMemo("Beskrivelse", 5, "Her indtastes beskrivelsen", "Autotekster\Autotekster_01");
screenshots
klik for større billeder - ESC for afslut
Valg, rullemenu
Funktionen modtager (sv.t. at brugeren vælger) et valg blandt valgmuligheder i en rulle-menu (alias drop down-menu) i den intelligente bygningsdels dialogboks. Principielt kan der være uendeligt mange valgmuligheder.
OBS første valgmulighed har nummer 0, anden valgmulighed har nummer 1 osv.
funktion
GetChoice(label: string, default choice: float, "choice 0", "choice 1", ..., "choice X")
parametre
label: string (krævet): ledetekst til valg
default value: float (valgfri): forvalgt valg
choice 0: string (krævet): første valgmulighed
choice 1: string (krævet): anden valgmulighed
choice X: string (krævet): X+1'ende og sidste valgmulighed
eksempel
ValgHøjde := GetChoice("Vælg højde", 0, "2,10 m", "2,20 m", "2,30 m", "2,40 m", "2,50 m");
screenshots
klik for større billeder - ESC for afslut
Valg, knapper
Funktionen modtager (sv.t. at brugeren vælger) et valg blandt viste valgmuligheder, såkaldte "radio-knapper", i den intelligente bygningsdels dialogboks. Principielt kan der være uendeligt mange valgmuligheder.
OBS første valgmulighed har nummer 0, anden valgmulighed har nummer 1 osv.
funktion
GetRadioChoice(label: string, default choice: float, "choice 0", "choice 1", ..., "choice X")
parametre
label: string (krævet): ledetekst til valg
default choice: float (valgfri): forvalgt valg
choice 0: string (krævet): første valgmulighed
choice 1: string (krævet): anden valgmulighed
choice X: string (krævet): X+1'ende og sidste valgmulighed
eksempel
ValgOverflade := GetRadioChoice("Vælg overflade", 1, "Ubehandlet", "Grundet", "Grundet og malet");
screenshots
klik for større billeder - ESC for afslut
Valg, checkboks
Funktionen modtager (sv.t. at brugeren indtaster) et til eller fravalg i form af markering i en checkboks i den intelligente bygningsdels dialogboks.
OBS fravalg svarer til 0 (false), tilvalg svarer til 1 (true).
funktion
GetBoolean(label: string, default choice: float)
parametre
label: string (krævet): ledetekst til indtastningen
default value: float (valgfri): forvalgt til- eller fravalg
eksempel
ValgStillads := GetBoolean("Medregn stillads", 0);
screenshots
klik for større billeder - ESC for afslut
Hent data fra kolonne
Funktionen læser/henter data fra en specificeret kolonne.
Funktionen håndterer 2 data typer, tekst (String) eller tal (Float).
Det er således muligt at hente tal fra tal-kolonner, som enten tal tekst, afhængigt af hvad du skal bruge data til.
Data type: String (tekst)
funktion
Self.Get[kolonne]AsString()
[kolonne] = kolonnens ID, eks. Number for Nr-kolonnen og Text for Tekst-kolonnen
parametre
<No parameters required>
eksempler
HentNummer := Self.GetNumberAsString();
HentTekst := Self.GetTextAsString();
HentEnhed := Self.GetUnitsAsString();
HentMængde := Self.GetQuantityAsString();
screenshots
klik for større billeder - ESC for afslut
andre kolonner
Self.GetTextAsString();
Self.GetCategoryAsString();
Self.GetUnitAsString();
Self.GetQuantityAsString();
Self.GetQuantityMinAsString();
Self.GetQuantityTypAsString();
Self.GetQuantityMaxAsString();
Self.GetUnitPriceAsFloat();
Self.GetCostPriceAsString();
Data type: Float (decimaltal)
funktion
Self.Get[kolonne]AsFloat()
[kolonne] = kolonnens ID, eks. Number for Nr-kolonnen og Text for Tekst-kolonnen
parametre
<No parameters required>
eksempler
HentMængde := Self.GetQuantityAsFloat();
HentEnhedspris := Self.GetTextAsString();
HentKostpris := Self.GetUnitsAsFloat();
screenshots
klik for større billeder - ESC for afslut
andre kolonner
Self.GetQuantityAsFloat();
Self.GetQuantityMinAsFloat();
Self.GetQuantityTypAsFloat();
Self.GetQuantityMaxAsFloat();
Self.GetUnitPriceAsFloat();
Self.GetCostPriceAsFloat();
Hent data fra ekstrafelt-kolonne
Funktionen læser/henter data fra en ekstrafelt-kolonne.
Funktionen håndterer både tekst- og tal-data.
funktion
Self.GetCustomFieldValue(id: string);
parametre
id: string (krævet): ekstrafeltets ID, som findes i ekstrafeltets egenskaber (se Ekstra felter i båndet Data)
eksempler
HentLeverandør := Self.GetCustomFieldValue("SUPPLIER");
HentMængde := Self.GetQuantityAsString();
screen shots
klik for større billeder
Dialog opskrift - Input
En stor del af det at opbygge en intelligent bygningsdel består i, at brugeren skal indtaste data til parametrering af bygningsdelen.
generelt TIP
TIP | Du kan finde SigmaScript-funktioner via tastaturgenvejen Ctrl+Space - og du kan begrænse antallet af mulige funktioner ved at taste noget af funktionen.
Eksempel: hvis du taster "getch" og derefter trykker Ctrl+Space, får du vist funktioner der indeholder de bogstaver, f.eks. funktionen GetChoice klik for større billede |
Hel-tal
Funktionen modtager (sv.t. at brugeren indtaster) et hel-tal (eks. -1, 0, 1, 2 etc.) i den intelligente bygningsdels dialogboks.
funktion | GetInteger(label: string, default value: float) | |
parametre | label: string (krævet): ledetekst til indlæsningen
default value: float (valgfri): forvalgt værdi |
|
eksempel | Antal := GetInteger("Indtast antal", 1); | |
screenshots | klik for større billeder - ESC for afslut |
Decimal-tal
Funktionen modtager (sv.t. at brugeren indtaster) et decimal-tal (komma-tal) i den intelligente bygningsdels dialogboks.
funktion | GetFloat(label: string, default value: float) | |
parametre | label (krævet): ledetekst til indlæsningen
default value (valgfri): forvalgt værdi |
|
eksempel | Længde := GetFloat("Indtast længde [m]", 1.5); | |
screenshots | klik for større billeder - ESC for afslut |
Tekst, en linje
Funktionen modtager (sv.t. at brugeren indtaster) en tekst i den intelligente bygningsdels dialogboks. Indtastningsfeltet i dialogboksen er på 1 linje
funktion | GetText(label: string, default value: string) | |
parametre | label: string (krævet): ledetekst til indtastningen
default value: string (valgfri): forvalgt tekst |
|
eksempel | Navn := GetText("Indtast bygningsdel", "bygningsdels navn"); | |
screenshots | klik for større billeder - ESC for afslut |
Tekst, flere linjer
Funktionen modtager (sv.t. at brugeren indtaster) en tekst i den intelligente bygningsdels dialogboks. Indtastningsfeltet i dialogboksen er på flere linjer.
funktion | GetMemo(label: string, line count: float, default value: string, path to AutoText: string) | |
parametre | label: string (krævet): ledetekst til indtastningen
line count: float (krævet): antal linjer i memo-feltet default value: string (valgfri): forvalgt tekst path to AutoText: string (valgfri): sti til fil med auto-tekster |
|
eksempel | Navn := GetText("Indtast bygningsdel", "bygningsdels navn");
Beskrivelse := GetMemo("Beskrivelse", 5, "Her indtastes beskrivelsen", "Autotekster\Autotekster_01"); |
|
screenshots | klik for større billeder - ESC for afslut |
Valg, rullemenu
Funktionen modtager (sv.t. at brugeren vælger) et valg blandt valgmuligheder i en rulle-menu (alias drop down-menu) i den intelligente bygningsdels dialogboks. Principielt kan der være uendeligt mange valgmuligheder.
OBS første valgmulighed har nummer 0, anden valgmulighed har nummer 1 osv.
funktion | GetChoice(label: string, default choice: float, "choice 0", "choice 1", ..., "choice X") | |
parametre | label: string (krævet): ledetekst til valg
default value: float (valgfri): forvalgt valg choice 0: string (krævet): første valgmulighed choice 1: string (krævet): anden valgmulighed choice X: string (krævet): X+1'ende og sidste valgmulighed |
|
eksempel | ValgHøjde := GetChoice("Vælg højde", 0, "2,10 m", "2,20 m", "2,30 m", "2,40 m", "2,50 m"); | |
screenshots | klik for større billeder - ESC for afslut |
Valg, knapper
Funktionen modtager (sv.t. at brugeren vælger) et valg blandt viste valgmuligheder, såkaldte "radio-knapper", i den intelligente bygningsdels dialogboks. Principielt kan der være uendeligt mange valgmuligheder.
OBS første valgmulighed har nummer 0, anden valgmulighed har nummer 1 osv.
funktion | GetRadioChoice(label: string, default choice: float, "choice 0", "choice 1", ..., "choice X") | |
parametre | label: string (krævet): ledetekst til valg
default choice: float (valgfri): forvalgt valg choice 0: string (krævet): første valgmulighed choice 1: string (krævet): anden valgmulighed choice X: string (krævet): X+1'ende og sidste valgmulighed |
|
eksempel | ValgOverflade := GetRadioChoice("Vælg overflade", 1, "Ubehandlet", "Grundet", "Grundet og malet"); | |
screenshots | klik for større billeder - ESC for afslut |
Valg, checkboks
Funktionen modtager (sv.t. at brugeren indtaster) et til eller fravalg i form af markering i en checkboks i den intelligente bygningsdels dialogboks.
OBS fravalg svarer til 0 (false), tilvalg svarer til 1 (true).
funktion | GetBoolean(label: string, default choice: float) | |
parametre | label: string (krævet): ledetekst til indtastningen
default value: float (valgfri): forvalgt til- eller fravalg |
|
eksempel | ValgStillads := GetBoolean("Medregn stillads", 0); | |
screenshots | klik for større billeder - ESC for afslut |
Hent data fra kolonne
Funktionen læser/henter data fra en specificeret kolonne.
Funktionen håndterer 2 data typer, tekst (String) eller tal (Float).
Det er således muligt at hente tal fra tal-kolonner, som enten tal tekst, afhængigt af hvad du skal bruge data til.
Data type: String (tekst) | ||
---|---|---|
funktion | Self.Get[kolonne]AsString()
[kolonne] = kolonnens ID, eks. Number for Nr-kolonnen og Text for Tekst-kolonnen |
|
parametre | <No parameters required> | |
eksempler | HentNummer := Self.GetNumberAsString();
HentTekst := Self.GetTextAsString(); HentEnhed := Self.GetUnitsAsString(); HentMængde := Self.GetQuantityAsString(); |
|
screenshots | klik for større billeder - ESC for afslut |
|
andre kolonner | Self.GetTextAsString(); Self.GetCategoryAsString(); Self.GetUnitAsString(); Self.GetQuantityAsString(); Self.GetQuantityMinAsString(); Self.GetQuantityTypAsString(); Self.GetQuantityMaxAsString(); Self.GetUnitPriceAsFloat(); Self.GetCostPriceAsString(); |
Data type: Float (decimaltal) | ||
---|---|---|
funktion | Self.Get[kolonne]AsFloat()
[kolonne] = kolonnens ID, eks. Number for Nr-kolonnen og Text for Tekst-kolonnen |
|
parametre | <No parameters required> | |
eksempler | HentMængde := Self.GetQuantityAsFloat();
HentEnhedspris := Self.GetTextAsString(); HentKostpris := Self.GetUnitsAsFloat(); |
|
screenshots | klik for større billeder - ESC for afslut |
|
andre kolonner | Self.GetQuantityAsFloat(); Self.GetQuantityMinAsFloat(); Self.GetQuantityTypAsFloat(); Self.GetQuantityMaxAsFloat(); Self.GetUnitPriceAsFloat(); Self.GetCostPriceAsFloat(); |
Hent data fra ekstrafelt-kolonne
Funktionen læser/henter data fra en ekstrafelt-kolonne.
Funktionen håndterer både tekst- og tal-data.
funktion | Self.GetCustomFieldValue(id: string); | |
parametre | id: string (krævet): ekstrafeltets ID, som findes i ekstrafeltets egenskaber (se Ekstra felter i båndet Data) | |
eksempler | HentLeverandør := Self.GetCustomFieldValue("SUPPLIER");
HentMængde := Self.GetQuantityAsString(); |
|
screen shots | klik for større billeder |
Dialog opskrift - hvis-så-ellers (kontrolstrukturer)
Ud fra input kan der træffes valg / foretages handlinger. Dette styres ved brug af kontrolstrukturer:
hvis betingelse er opfyldt så
udfør handling 1
ellers
udfør handling 2
generelt TIP
TIP
Du kan finde SigmaScript-funktioner via tastaturgenvejen Ctrl+Space - og du kan begrænse antallet af mulige funktioner ved at taste noget af funktionen.
Eksempel: hvis du taster "getch" og derefter trykker Ctrl+Space, får du vist funktioner der indeholder de bogstaver, f.eks. funktionen GetChoice
klik for større billede
Hvis-så-ellers
Kontrolstrukturen foretager en eller flere handliger, hvis en betingelse er opfyldt.
kontrolstruktur
if [betingelse] then
[handling 1]
else
[handling 2]
variant
if [betingelse] then
begin
[handling 1a]
[handling 1b]
...
[handling 1x]
end
else
begin
[handling 2a]
[handling 2b]
...
[handling 2x]
end;
eksempel 1
if Højre then
Sving := "til højre";
else
Sving := "til venstre";
screenshots
klik for større billeder - ESC for afslut
eksempel 2
if (Stillads) then
begin
DageStillads := GetInteger("Indtast antal dage", 1);
DagsprisStillads := GetFloat("Indtast dagspris", 0.00);
end
else
begin
DageStillads := 0;
DagsprisStillads := 0.00;
end;
screenshots
klik for større billeder - ESC for afslut
Hvis-så-ellers kaskade (nested if-then-else)
Kontrolstrukturen foretager en eller flere handliger, hvis en betingelse er opfyldt.
kontrolstruktur
if [betingelse 1] then
[handling 1]
else
if [betingelse 2] then
[handling 2]
else
if [betingelse 3] then
[handling 3]
else
if [betingelse X] then
[handling X]
variant
if [betingelse 1] then
begin
[handling 1a]
[handling 1b]
...
[handling 1x]
end
else
if [betingelse 2] then
begin
[handling 2a]
[handling 2b]
...
[handling 2x]
end
else
if [betingelse 3] then
begin
[handling 3a]
[handling 3b]
...
[handling 3x]
end
else
if [betingelse X] then
begin
[handling Xa]
[handling Xb]
...
[handling Xx]
end;
eksempel 1
if (ValgOverflade = 0) then
Overflade := "ubehandlet";
else
if (ValgOverflade = 1) then
Overflade := "grundet";
else
if (ValgOverflade = 2) then
Overflade := "grundet og malet";
screenshots
klik for større billeder - ESC for afslut
eksempel 2
if (ValgHøjde = 0) then
begin
Højde := 2.10;
Væghøjde := "2100 mm";
else
if (ValgHøjde = 1) then
begin
Højde := 2.20;
Væghøjde := "2200 mm";
end
else
if (ValgHøjde = 2) then
begin
Højde := 2.30;
Væghøjde := "2200 mm";
end
else
if (ValgHøjde = 3) then
begin
Højde := 2.40;
Væghøjde := "2400 mm";
end
else
if (ValgHøjde = 4) then
begin
Højde := 2.40;
Væghøjde := "2400 mm";
end
else
if [betingelse 3] then
begin
Højde := 2.50;
Væghøjde := "2500 mm";
end;
screenshots
klik for større billeder - ESC for afslut
Dialog opskrift - hvis-så-ellers (kontrolstrukturer)
Ud fra input kan der træffes valg / foretages handlinger. Dette styres ved brug af kontrolstrukturer:
hvis betingelse er opfyldt så
udfør handling 1
ellers
udfør handling 2
generelt TIP
TIP | Du kan finde SigmaScript-funktioner via tastaturgenvejen Ctrl+Space - og du kan begrænse antallet af mulige funktioner ved at taste noget af funktionen.
Eksempel: hvis du taster "getch" og derefter trykker Ctrl+Space, får du vist funktioner der indeholder de bogstaver, f.eks. funktionen GetChoice klik for større billede |
Hvis-så-ellers
Kontrolstrukturen foretager en eller flere handliger, hvis en betingelse er opfyldt.
kontrolstruktur | if [betingelse] then
[handling 1] else [handling 2] |
|
variant | if [betingelse] then begin [handling 1a] end [handling 2a] end; |
|
eksempel 1 | if Højre then
Sving := "til højre"; else Sving := "til venstre"; |
|
screenshots | klik for større billeder - ESC for afslut |
|
eksempel 2 | if (Stillads) then begin DageStillads := GetInteger("Indtast antal dage", 1); end DageStillads := 0; end; |
|
screenshots | klik for større billeder - ESC for afslut |
Hvis-så-ellers kaskade (nested if-then-else)
Kontrolstrukturen foretager en eller flere handliger, hvis en betingelse er opfyldt.
kontrolstruktur | if [betingelse 1] then
[handling 1] else if [betingelse 2] then [handling 2] else if [betingelse 3] then [handling 3] else if [betingelse X] then [handling X] |
|
variant | if [betingelse 1] then begin [handling 1a] end if [betingelse 2] then [handling 2a] end if [betingelse 3] then [handling 3a] end if [betingelse X] then [handling Xa] end; |
|
eksempel 1 | if (ValgOverflade = 0) then
Overflade := "ubehandlet"; else if (ValgOverflade = 1) then Overflade := "grundet"; else if (ValgOverflade = 2) then Overflade := "grundet og malet"; |
|
screenshots | klik for større billeder - ESC for afslut |
|
eksempel 2 | if (ValgHøjde = 0) then begin Højde := 2.10; else if (ValgHøjde = 1) then Højde := 2.20; end if (ValgHøjde = 2) then Højde := 2.30; end if (ValgHøjde = 3) then Højde := 2.40; end if (ValgHøjde = 4) then Højde := 2.40; end if [betingelse 3] then Højde := 2.50; end; |
|
screenshots | klik for større billeder - ESC for afslut |
Dialog opskrift - gem og hent data
Hvis data (tekst eller tal) skal gemmes, f.eks. fordi bygningsdelen skal kunne genberegnes, kan data gemmes i rapportvariable eller i konstanter.
I rapportvariabler gemmes data som tekst. Derfor skal tal fra en rapportvariabel konverteres fra tekst til tal, og muligvis også formateres, hvis tallet f.eks. skal vises med et bestemt antal decimaler.
I konstanter gemmes data som tal (og kan derfor ikke bruges til at gemme tekster!)
Gem i rapportvariabel
Funktionen gemmer tekst (eller tal i form af tekst - se variant) i en rapportvariabel
Tal (som tekst)
variant
Projekt.SetReportVariable(name: string, text: string)
parametre
name: string (krævet): fast tekst angivet i anførselstegn (rapportvariablens navn)
text: string (krævet): tekst-streng som indeholder både formatering (FormatFloat) og navnet på den variabel, som indholder tallet, der skal gemmes (tekst angivet i anførselstegn)
eksempel
Projekt.SetReportVariable("Længde", FormatFloat("#,##0.00", Længde));
screenshot
klik for større billeder - ESC for afslut
Hent fra rapportvariabel
Funktionen henter tekst i en rapportvariabel.
Hvis rapportvariablen indholder et tal i form af en tekst, skal teksten konverteres til et tal, vha. funktionen StrToFloat.
Tekst
funktion
Projekt.GetReportVariable(name: string)
parametre
name: string (krævet): fast tekst angivet i anførselstegn (rapportvariablens navn)
eksempel 1
Bygningsdel := Projekt.GetReportVariable("Bygningsdelsnavn");
eksempel 2
Bygningsdel := GetText("Indtast navn på bygningsdel", Project.GetReportVariable("Bygningsdel"));
screenshot
klik for større billeder - ESC for afslut
Tal, konverteret fra en tekst
funktion
StrToFloat(text: string)
parametre
text: string (krævet): i denne kontekst teksten gemt i rapportvariablen
eksempel 1
Længde := StrToFloat(Projekt.GetReportVariable("Længde");
eksempel 2
Højde := GetFloat("Indtast højde [m]", StrToFloat(Project.GetReportVariable("Højde")));
screenshot
klik for større billeder - ESC for afslut
Gem i konstant
Funktionen gemmer data (i form af tal) i en konstant
funktion
Projekt.SetConstant(name: string, value: float)
parametre
name: string (krævet): fast tekst angivet i anførselstegn (rapportvariablens navn)
value: float (krævet): værdi (eller variabel-navn)
eksempel 1
Projekt.SetConstant("Antal", 2);
eksempel 2
Projekt.SetConstant("Højde", Højde);
screenshots
klik for større billeder - ESC for afslut
Konverter tekst til tal
Funktionen konverterer data fra tekst til tal
funktion
StrToFloat(text: string)
parametre
text: string (krævet): fast tekst angivet i anførselstegn (eller en hentet rapportvariabel)
eksempel 1
StrToFloat("100");
eksempel 2
StrToFloat(Projekt.SetReportVariable("Længde");
screenshots
klik for større billeder - ESC for afslut
funktion
StrToFloat(text: string)
parametre
text: string (krævet): i denne kontekst teksten gemt i rapportvariablen
eksempel 1
Længde := StrToFloat(Projekt.GetReportVariable("Længde");
eksempel 2
Højde := GetFloat("Indtast højde [m]", StrToFloat(Project.GetReportVariable("Højde")));
screenshot
klik for større billeder - ESC for afslut
Formater tekst som tal
Funktionen formaterer en talværdi
funktion
Format(format: string, value: float)
parametre
format: string (krævet): formattering i form af en tekst angivet i anførselstegn.
- 0 er en cifferpladsholder. Hvis der er et tilsvarende ciffer i værdien, erstattes 0 med det ciffer. Hvis ikke, efterlades 0 som det er.
- # er også en cifferpladsholder. Hvis der er et tilsvarende ciffer i værdien, erstattes # med det ciffer. Hvis ikke, fjernes det.
- . (punktum) bestemmer placeringen af decimaltegnet (decimalkommaet)
- , (komma) bestemmer brugen af tusindtalsseparator i outputstrengen. Hvis formatstrengen indeholder et eller flere ',' tegn, bruges tusindtalsseparatorer.value: float (krævet): værdi (eller varialbel-navn - eller hentet og konverteret rapport-variabel)
eksempel 1
Format("#,##0.00", 10000)
eksempel 2
Format("0.000", "Længde")
eksempel 3
Format("#,###,##0.00", StrToFloat(Projekt.GetReportVariable("Højde"));
screenshots
klik for større billeder - ESC for afslut
Dialog opskrift - gem og hent data
Hvis data (tekst eller tal) skal gemmes, f.eks. fordi bygningsdelen skal kunne genberegnes, kan data gemmes i rapportvariable eller i konstanter.
I rapportvariabler gemmes data som tekst. Derfor skal tal fra en rapportvariabel konverteres fra tekst til tal, og muligvis også formateres, hvis tallet f.eks. skal vises med et bestemt antal decimaler.
I konstanter gemmes data som tal (og kan derfor ikke bruges til at gemme tekster!)
Gem i rapportvariabel
Funktionen gemmer tekst (eller tal i form af tekst - se variant) i en rapportvariabel
Tal (som tekst) | ||
---|---|---|
variant | Projekt.SetReportVariable(name: string, text: string) | |
parametre | name: string (krævet): fast tekst angivet i anførselstegn (rapportvariablens navn)
text: string (krævet): tekst-streng som indeholder både formatering (FormatFloat) og navnet på den variabel, som indholder tallet, der skal gemmes (tekst angivet i anførselstegn) |
|
eksempel | Projekt.SetReportVariable("Længde", FormatFloat("#,##0.00", Længde)); | |
screenshot | klik for større billeder - ESC for afslut |
Hent fra rapportvariabel
Funktionen henter tekst i en rapportvariabel.
Hvis rapportvariablen indholder et tal i form af en tekst, skal teksten konverteres til et tal, vha. funktionen StrToFloat.
Tekst | ||
---|---|---|
funktion | Projekt.GetReportVariable(name: string) | |
parametre | name: string (krævet): fast tekst angivet i anførselstegn (rapportvariablens navn) | |
eksempel 1 | Bygningsdel := Projekt.GetReportVariable("Bygningsdelsnavn"); | |
eksempel 2 | Bygningsdel := GetText("Indtast navn på bygningsdel", Project.GetReportVariable("Bygningsdel")); | |
screenshot | klik for større billeder - ESC for afslut |
Tal, konverteret fra en tekst | ||
---|---|---|
funktion | StrToFloat(text: string) | |
parametre | text: string (krævet): i denne kontekst teksten gemt i rapportvariablen | |
eksempel 1 | Længde := StrToFloat(Projekt.GetReportVariable("Længde"); | |
eksempel 2 | Højde := GetFloat("Indtast højde [m]", StrToFloat(Project.GetReportVariable("Højde"))); | |
screenshot | klik for større billeder - ESC for afslut |
Gem i konstant
Funktionen gemmer data (i form af tal) i en konstant
funktion | Projekt.SetConstant(name: string, value: float) | |
parametre | name: string (krævet): fast tekst angivet i anførselstegn (rapportvariablens navn)
value: float (krævet): værdi (eller variabel-navn) |
|
eksempel 1 | Projekt.SetConstant("Antal", 2); | |
eksempel 2 | Projekt.SetConstant("Højde", Højde); | |
screenshots | klik for større billeder - ESC for afslut |
Konverter tekst til tal
Funktionen konverterer data fra tekst til tal
funktion | StrToFloat(text: string) | |
parametre | text: string (krævet): fast tekst angivet i anførselstegn (eller en hentet rapportvariabel) | |
eksempel 1 | StrToFloat("100"); | |
eksempel 2 | StrToFloat(Projekt.SetReportVariable("Længde"); | |
screenshots | klik for større billeder - ESC for afslut |
funktion | StrToFloat(text: string) | |
parametre | text: string (krævet): i denne kontekst teksten gemt i rapportvariablen | |
eksempel 1 | Længde := StrToFloat(Projekt.GetReportVariable("Længde"); | |
eksempel 2 | Højde := GetFloat("Indtast højde [m]", StrToFloat(Project.GetReportVariable("Højde"))); | |
screenshot | klik for større billeder - ESC for afslut |
Formater tekst som tal
Funktionen formaterer en talværdi
funktion | Format(format: string, value: float) | |
parametre | format: string (krævet): formattering i form af en tekst angivet i anførselstegn. - 0 er en cifferpladsholder. Hvis der er et tilsvarende ciffer i værdien, erstattes 0 med det ciffer. Hvis ikke, efterlades 0 som det er. - # er også en cifferpladsholder. Hvis der er et tilsvarende ciffer i værdien, erstattes # med det ciffer. Hvis ikke, fjernes det. - . (punktum) bestemmer placeringen af decimaltegnet (decimalkommaet) - , (komma) bestemmer brugen af tusindtalsseparator i outputstrengen. Hvis formatstrengen indeholder et eller flere ',' tegn, bruges tusindtalsseparatorer.value: float (krævet): værdi (eller varialbel-navn - eller hentet og konverteret rapport-variabel) |
|
eksempel 1 | Format("#,##0.00", 10000) | |
eksempel 2 | Format("0.000", "Længde") | |
eksempel 3 | Format("#,###,##0.00", StrToFloat(Projekt.GetReportVariable("Højde")); | |
screenshots | klik for større billeder - ESC for afslut |
Dialog opskrift - layout
En dialogboks med et godt layout gør den intelligente bygningsdel nemmere at forstå og bruge.
En linje i den intelligente bygningsdels dialogboks deles op i "Label" og "Control".
- "Label" er den venstre del og bruges til ledetekst, eksempelvis "Indtast længde [m]" fra eksemplet på et decimal-tal.
- "Control" er den højre del og bruges til indtastningsfelterne.
klik for større billede
Størrelse på intelligent bygningsdels dialogboks
Funktionen styrer højde og bredde på den intelligente bygningsdels dialogboks.
funktion
SetWindowSize(height: float, width: float)
NB der er byttet rundt på height og width:
- 1. parameter er bredde
- 2. parameter er højde
parametre
height: float (krævet): "højde" (bredde) i pixels
width: float (krævet): "bredde" (højde) i pixels
eksempel
SetWindowSize(1000, 400);
screenshots
klik for større billeder - ESC for afslut
Control justering
Funktionen styrer placering af tekst, tal, input i control-kolonne, om det skal står centreret, venstre- eller højrejusteret.
Højre-justeret bruges typisk, hvis der står tal i control-kolonnen.
Venstre-justeret bruges typisk, hvis der står tekst i control-kolonnen.
funktion
SetControAlignment(value: string)
parametre
value: string (krævet): "Right", "Center" eller "Left"
eksempel
SetControlAlignment("Left");
SetControlAlignment("Right");
SetControlAlignment("Center");
screenshots
klik for større billeder - ESC for afslut
Vis tekst
Der er 2 funktioner til at vise tekst:
- AddText, indsætter tekst i label-kolonnen,
- ShowText, benytter både label- og control-kolonnen.
funktion
AddText(value: string)
parametre
value: string (krævet): teksten der skal vises
eksempel
AddText(“Væggens areal er ” + Areal + ” kvadratmeter”);
screenshots
klik for større billeder - ESC for afslut
funktion
ShowText(value: string, value: string)
parametre
value: string (krævet): teksten der skal vises
eksempel
ShowText(“Væggens areal er “, “” + Areal + ” m2″);
screenshots
klik for større billeder - ESC for afslut
Vis billede
Der er 2 funktioner til at vise et billede:
- AddImage, indsætter billede i control-kolonnen (og beskrivelse i label-kolonnen)
- UseImage, benytter en kolonne til ventre for label-kolonnen
funktion
AddImage(image: string, width: float, height: float)
parametre
image: string (krævet): teksten der skal vises
width: float (valgfri): bredde i pixels
height: float (valgfri): højde i pixels
eksempel
AddImage("Kontorbygning", "Office Building", 200, 100);
screenshots
klik for større billeder - ESC for afslut
funktion
UseImage(image: string, width: float, height: float)
parametre
image: string (krævet): teksten der skal vises
width: float (valgfri): bredde i pixels
height: float (valgfri): højde i pixels
eksempel
UseImage("Kontorbygning", 300, 200);
screenshots
klik for større billeder - ESC for afslut
Dialog opskrift - layout
En dialogboks med et godt layout gør den intelligente bygningsdel nemmere at forstå og bruge.
En linje i den intelligente bygningsdels dialogboks deles op i "Label" og "Control".
- "Label" er den venstre del og bruges til ledetekst, eksempelvis "Indtast længde [m]" fra eksemplet på et decimal-tal.
- "Control" er den højre del og bruges til indtastningsfelterne.
klik for større billede
Størrelse på intelligent bygningsdels dialogboks
Funktionen styrer højde og bredde på den intelligente bygningsdels dialogboks.
funktion | SetWindowSize(height: float, width: float)
NB der er byttet rundt på height og width: |
|
parametre | height: float (krævet): "højde" (bredde) i pixels
width: float (krævet): "bredde" (højde) i pixels |
|
eksempel | SetWindowSize(1000, 400); | |
screenshots | klik for større billeder - ESC for afslut |
Control justering
Funktionen styrer placering af tekst, tal, input i control-kolonne, om det skal står centreret, venstre- eller højrejusteret.
Højre-justeret bruges typisk, hvis der står tal i control-kolonnen.
Venstre-justeret bruges typisk, hvis der står tekst i control-kolonnen.
funktion | SetControAlignment(value: string) | |
parametre | value: string (krævet): "Right", "Center" eller "Left" | |
eksempel | SetControlAlignment("Left"); SetControlAlignment("Right"); SetControlAlignment("Center"); |
|
screenshots | klik for større billeder - ESC for afslut |
Vis tekst
Der er 2 funktioner til at vise tekst:
- AddText, indsætter tekst i label-kolonnen,
- ShowText, benytter både label- og control-kolonnen.
funktion | AddText(value: string) | |
parametre | value: string (krævet): teksten der skal vises | |
eksempel | AddText(“Væggens areal er ” + Areal + ” kvadratmeter”); | |
screenshots | klik for større billeder - ESC for afslut |
funktion | ShowText(value: string, value: string) | |
parametre | value: string (krævet): teksten der skal vises | |
eksempel | ShowText(“Væggens areal er “, “” + Areal + ” m2″); | |
screenshots | klik for større billeder - ESC for afslut |
Vis billede
Der er 2 funktioner til at vise et billede:
- AddImage, indsætter billede i control-kolonnen (og beskrivelse i label-kolonnen)
- UseImage, benytter en kolonne til ventre for label-kolonnen
funktion | AddImage(image: string, width: float, height: float) | |
parametre | image: string (krævet): teksten der skal vises
width: float (valgfri): bredde i pixels height: float (valgfri): højde i pixels |
|
eksempel | AddImage("Kontorbygning", "Office Building", 200, 100); | |
screenshots | klik for større billeder - ESC for afslut |
funktion | UseImage(image: string, width: float, height: float) | |
parametre | image: string (krævet): teksten der skal vises
width: float (valgfri): bredde i pixels height: float (valgfri): højde i pixels |
|
eksempel | UseImage("Kontorbygning", 300, 200); | |
screenshots | klik for større billeder - ESC for afslut |
Udførelses opskrift
Alle bygningsdelens felter (kolonner) kan styres ved hjælp af Self-funktioner og navnet på den variabel, som indholder værdien / teksten.
skriv i Tekst-feltet
Funktionen skriver i Tekst-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion
Self.SetText(value: string)
parametre
value: string (krævet): variabel-navn (eller en fast tekst angivet i anførselstegn)
variant
Self.SetText(value: float)
parametre
value: float (krævet): variabel-navn (eller en fast værdi)
eksempel 1 - variabelnavn
Self.SetNumber(Bygningsdel);
eksempel 2 - fast tekst
Self.SetNumber("Navn");
eksempel 3 - fast værdi
Self.SetNumber(10);
screenshots
klik for større billeder - ESC for afslut
skriv i Nummer-feltet
Funktionen skriver i Nummer-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion
Self.SetNumber(value: string)
parametre
value: string (krævet): variabel-navn (eller en fast tekst angivet i anførselstegn)
variant
Self.SetNumber(value: float)
parametre
value: float (krævet): variabel-navn (eller en fast værdi)
eksempel 1 - variabelnavn
Self.SetNumber(varenummer);
eksempel 2 - fast tekst
Self.SetNumber("3610000039");
eksempel 3 - fast værdi
Self.SetNumber(10);
screenshots
klik for større billeder - ESC for afslut
skriv i Kategori-feltet
Funktionen skriver i Kategori-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion
Self.SetCategori(value: string)
parametre
value: string (krævet): variabel-navn (eller en fast tekst angivet i anførselstegn)
variant
Self.SetCategori(value: float)
parametre
value: float (krævet): variabel-navn (eller en fast værdi)
eksempel 1 - variabelnavn
Self.SetCategori(Kategori);
eksempel 2 - fast tekst
Self.SetCategori("Materialer");
eksempel 3 - fast værdi
Self.SetCategori(10);
screenshots
klik for større billeder - ESC for afslut
skriv i Enhed-feltet
Funktionen skriver i Enhed-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion
Self.SetUnits(value: string)
parametre
value: string (krævet): variabel-navn (eller en fast tekst angivet i anførselstegn)
variant
Self.SetUnits(value: float)
parametre
value: float (krævet): variabel-navn (eller en fast værdi)
eksempel 1 - variabelnavn
Self.SetUnits(Enhed);
eksempel 2 - fast tekst
Self.SetUnits("liter");
eksempel 3 - fast værdi
Self.SetUnits(10);
screenshots
klik for større billeder - ESC for afslut
skriv i Mængde-feltet
Funktionen skriver i Mængde-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion
Self.SetQuantity(value: float)
parametre
value: float (krævet): variabel-navn (eller en fast værdi)
eksempel 1 - variabelnavn
Self.SetQuantity(Areal);
eksempel 2 - fast tekst
Self.SetQuantity(25);
screenshots
klik for større billeder - ESC for afslut
skriv i Enhedspris-feltet
Funktionen skriver i Mængde-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion
Self.SetUnitPrice(value: float)
parametre
value: float (krævet): variabel-navn (eller en fast værdi)
eksempel 1 - variabelnavn
Self.SetUnitPrice(Enhedspris);
eksempel 2 - fast tekst
Self.SetUnitPrice(25);
screenshots
klik for større billeder - ESC for afslut
skriv i Prisregulering-feltet
Funktionen skriver i Mængde-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion
Self.SetRegulation(value: float)
parametre
value: float (krævet): variabel-navn (eller en fast værdi)
eksempel 1 - variabelnavn
Self.SetRegulation(Prisregulering);
eksempel 2 - fast tekst
Self.SetCostPrice(0.8);
screenshots
klik for større billeder - ESC for afslut
skriv i ektrafelt
Funktionen skriver i et ekstrafelt for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion
Self.SetCustomFieldValue(id: string, text: string)
parametre
value: string (krævet): variabel-navn (eller en fast tekst angivet i anførselstegn)
eksempel
Self.SetCustomFieldValue("SUPPLIER", Leverandør);
screenshots
klik for større billeder - ESC for afslut
funktion
Self.SetCustomFieldValue(id: string, value: float)
parametre
value: float (krævet): variabel-navn (eller en fast værdi)
eksempel
Self.SetCustomFieldValue("Vgtprenhed", Vægt);
screenshots
klik for større billeder - ESC for afslut
Udførelses opskrift
Alle bygningsdelens felter (kolonner) kan styres ved hjælp af Self-funktioner og navnet på den variabel, som indholder værdien / teksten.
skriv i Tekst-feltet
Funktionen skriver i Tekst-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion | Self.SetText(value: string) | |
parametre | value: string (krævet): variabel-navn (eller en fast tekst angivet i anførselstegn) | |
variant | Self.SetText(value: float) | |
parametre | value: float (krævet): variabel-navn (eller en fast værdi) | |
eksempel 1 - variabelnavn | Self.SetNumber(Bygningsdel); | |
eksempel 2 - fast tekst | Self.SetNumber("Navn"); | |
eksempel 3 - fast værdi | Self.SetNumber(10); | |
screenshots | klik for større billeder - ESC for afslut |
skriv i Nummer-feltet
Funktionen skriver i Nummer-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion | Self.SetNumber(value: string) | |
parametre | value: string (krævet): variabel-navn (eller en fast tekst angivet i anførselstegn) | |
variant | Self.SetNumber(value: float) | |
parametre | value: float (krævet): variabel-navn (eller en fast værdi) | |
eksempel 1 - variabelnavn | Self.SetNumber(varenummer); | |
eksempel 2 - fast tekst | Self.SetNumber("3610000039"); | |
eksempel 3 - fast værdi | Self.SetNumber(10); | |
screenshots | klik for større billeder - ESC for afslut |
skriv i Kategori-feltet
Funktionen skriver i Kategori-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion | Self.SetCategori(value: string) | |
parametre | value: string (krævet): variabel-navn (eller en fast tekst angivet i anførselstegn) | |
variant | Self.SetCategori(value: float) | |
parametre | value: float (krævet): variabel-navn (eller en fast værdi) | |
eksempel 1 - variabelnavn | Self.SetCategori(Kategori); | |
eksempel 2 - fast tekst | Self.SetCategori("Materialer"); | |
eksempel 3 - fast værdi | Self.SetCategori(10); | |
screenshots | klik for større billeder - ESC for afslut |
skriv i Enhed-feltet
Funktionen skriver i Enhed-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion | Self.SetUnits(value: string) | |
parametre | value: string (krævet): variabel-navn (eller en fast tekst angivet i anførselstegn) | |
variant | Self.SetUnits(value: float) | |
parametre | value: float (krævet): variabel-navn (eller en fast værdi) | |
eksempel 1 - variabelnavn | Self.SetUnits(Enhed); | |
eksempel 2 - fast tekst | Self.SetUnits("liter"); | |
eksempel 3 - fast værdi | Self.SetUnits(10); | |
screenshots | klik for større billeder - ESC for afslut |
skriv i Mængde-feltet
Funktionen skriver i Mængde-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion | Self.SetQuantity(value: float) | |
parametre | value: float (krævet): variabel-navn (eller en fast værdi) | |
eksempel 1 - variabelnavn | Self.SetQuantity(Areal); | |
eksempel 2 - fast tekst | Self.SetQuantity(25); | |
screenshots | klik for større billeder - ESC for afslut |
skriv i Enhedspris-feltet
Funktionen skriver i Mængde-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion | Self.SetUnitPrice(value: float) | |
parametre | value: float (krævet): variabel-navn (eller en fast værdi) | |
eksempel 1 - variabelnavn | Self.SetUnitPrice(Enhedspris); | |
eksempel 2 - fast tekst | Self.SetUnitPrice(25); | |
screenshots | klik for større billeder - ESC for afslut |
skriv i Prisregulering-feltet
Funktionen skriver i Mængde-feltet for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion | Self.SetRegulation(value: float) | |
parametre | value: float (krævet): variabel-navn (eller en fast værdi) | |
eksempel 1 - variabelnavn | Self.SetRegulation(Prisregulering); | |
eksempel 2 - fast tekst | Self.SetCostPrice(0.8); | |
screenshots | klik for større billeder - ESC for afslut |
skriv i ektrafelt
Funktionen skriver i et ekstrafelt for den valgte komponent.
Hvis den intelligente bygningsdel har flere niveauer, kan funktionen bruges uafhængigt på hoved- og underkomponenter.
funktion | Self.SetCustomFieldValue(id: string, text: string) | |
parametre | value: string (krævet): variabel-navn (eller en fast tekst angivet i anførselstegn) | |
eksempel | Self.SetCustomFieldValue("SUPPLIER", Leverandør); | |
screenshots | klik for større billeder - ESC for afslut |
funktion | Self.SetCustomFieldValue(id: string, value: float) | |
parametre | value: float (krævet): variabel-navn (eller en fast værdi) | |
eksempel | Self.SetCustomFieldValue("Vgtprenhed", Vægt); | |
screenshots | klik for større billeder - ESC for afslut |