Värden & funktioner
&Värdedelen av frågan är den enda obligatoriska delen och identifierar den specifika informationen som söks. Det finns många typer av värden som kan hämtas och alla kan ha ett prefix eller ett suffix. Prefixtecken är applikationsspecifika och används för att plocka ut olika typer av data. Suffixtecken används för att dela på värden. START:§RELATION{FILTER}:[PREFIX]VÄRDE[SUFFIX]
Fält är individuella databasfält som kan hittas direkt i databasen. Fält är av standardvärdetypen så vad som än skrivs in som värde behandlas som ett enda värde om det inte finns något id-tecken före det. Fältnamn skiljer heller inte på gemener och versaler. För att ta reda på ett fältnamn, hovra med muspekaren över fältet för att visa information om fältet.
För en urvalslista är det Textfält som gäller, för övriga fält Datafält.
Konstanter används för att tvinga specifika värden till länkade detaljer i ritningar utan att informationen finns lagrad i någon tabell i databasen. Språk specifika värden kan hanteras på det här sättet så att mallarna inte måste ändras för varje projekt. Konstanter ska omgärdas av tecknen " " samt utelämna start och relation från länksyntaxen när konstanter används. Det är också möjligt att kombinera en konstant med innehållet i ett fält genom att sätta ihop en formel.
Parameter | Värde i SiteBase | Resultat | Kommentar |
"Kulventil" | | Kulventil | |
="Kulventil" & "[POSP]" | 402HV0412 | Kulventil 402HV0412 | Se avsnitt om formler |
| | | |
Egenskapsvärden inleds med ett prefix, utropstecken (!), det talar om för SiteBase att det är en egenskap som ska hittas. Efter tecknet anges egenskapsvärdet eller dess kod. Egenskapskoden hittas i egenskapsformuläret.
Parameter | Värde i SiteBase | Resultat | Kommentar |
!23 | 57 m | 57 m | Komplett egenskapsvärde |
!HEIGHT | 57 m | 57 m | Egenskapskod istället för värde |
Funktioner som kan används för att hämta värden efter ett speciellt regelverk. Några av dessa funktioner är även språkkänsliga och returnerar den korrekta informationen beroende på språkinställningarna (Rapport ändelse). En specialfunktion har prefixet #
Parameter | Beskrivning | Kommentar |
#Description | Beskrivning i följande ordning tills att något hittats. Objekt, Artikel, Klass, Sorteringsordning | |
#DescriptionP | Funktion som ovan Objekt, Logisk förälder, Artikel, Klass, Sorteringsordning | |
#Status | Statusbeskrivning (6-tecken) används främst på rapporter StatusDeleted, StatusExisting, StatusReserved, StatusOrder | |
#StatusOrder | Beskrivningen på StatusOrder | |
#StatusOrderSh | Kort beskrivning på StatusOrder | |
#Rev | Aktuell revisionsmarkering på dokument | |
#Manufactor | Tillverkare i följande ordning (tills att något hittats) Objekt, Artikel | |
#Model | Artikel modellnummer i följande ordning (tills att något hittats) Objekt, Artikel | |
#SCode | Leverantör i följande ordning (tills att något hittats) Objekt, Artikel | |
#DocPath | Komplett sökväg till dokument | |
#DocFileName | Komplett filnamn inklusive sökväg till dokument | |
#PubPath | | |
#PubFileName | | |
Ofta finns behov av att dela upp innehåll från ett fält, de kan exempelvis vara flerradiga textfält, sammansatta egenskaper osv.
Allmänna syntax för att dela upp uppgifter.
Parameter | Värde i SiteBase | Resultat | Kommentar |
DescriptionA@2| | Textrad 1 Textrad 2 | Textrad 2 | 2:a raden i ett textfält |
DescriptionA@!-| | Text 1 Text 2 | Text 1 Text 2 | Ersätter radbrytning med ett mellanslag |
| | | |
POSP@# | 12-AB-34 | 12 | Första numeriska värdet |
POSP@+? | 12-AB-34 | 12-AB | Alla tecken till och med sista alfanumeriska tecknet |
POSP@-? | 12-AB-34 | AB-34 | Alla tecken från och med första alfanumeriska tecknet |
Syntax för att dela upp egenskapsvärden och enheter
Parameter | Värde i SiteBase | Resultat | Kommentar |
!23 | 27 m | 27 m | Komplett värde |
!<23 | 27 m | 27 | Endast värde |
!>23 | 27 m | m | Endast enhet |
| | | |
!4013 | 165 / 170 / 185 m³/h | 165 / 170 / 185 m³/h | Komplett värde |
!4013#1 | 165 / 170 / 185 m³/h | 165 °C | 1:a värde + enhet |
!4013#2 | 165 / 170 / 185 m³/h | 170 °C | 2:a värde + enhet |
!<4013#3 | 165 / 170 / 185 m³/h | 185 | 3:e värde utan enhet |
| | | |
Egna funktioner som utnyttjar Visual Basic Script (VBS) kan utnyttjas. Formeln inleds med ett "=" tecken och värdereferensen omgärdas med tecknen [ ]. En värdereferens kan vara någon av dem som beskrivs i detta avsnitt.
Resultatet av utvärderingen av värdereferenser måste följa VBS syntax. Ska resultatet av en värdereferens behandlas som en text måste det också omgärdas av " " tecken.
Funktion | Beskrivning |
CHR(Värde) 0-255 | Returnerar ASCII tecknet för värdet Exempel 176=° |
CVDate(Värde) | Konverterar "Värde" till ett seriellt datum |
FORMAT(Värde, Format) | Formatera värde enligt format, se exempel |
GetParameter (Värde, Pos, Avgränsare) | Returnerar "Pos" delen av "Värdet", avgränsat av "Avgränsare" |
IIF(Villkor, Sant, Falskt) | Utvärdera villkor och returnerar resultat utifrån resultatet. Sant eller Falskt |
LCASE(Sträng) | Returnerar text som gemener |
LEFT(Sträng, Värde) | Returnerar ett givet antal tecken från vänster sida av en sträng. |
LEN(Sträng) | Returnerar stängens längd |
LTRIM(Sträng, Värde) | Returnerar strängens värde men utan ev. mellanslag |
MID(Sträng, Start, Längd) | Returnerar ett givet antal tecken från en given startposition i en sträng. |
Nzd(Värde, Standard) | Returnerar "Standard" om "Värde" är "Null" eller tomt, annars returneras värdet |
REPLACE(Sträng, Sök, Ersätt) | Byter ut "Sök" med "Ersätt" i "Sträng". |
RIGHT(Sträng, Värde) | Returnerar ett givet antal tecken från höger sida av en sträng. |
RTRIM(Sträng, Värde) | Returnerar strängens värde utan avslutande mellanslag |
TRIM(Sträng) | Returnerar strängens värde utan inledande och avslutande mellanslag. |
VAL(Värde) | Konvertera "Värde" till numeriskt värde |
UCASE(Värde) | Returnerar text som VERSALER |
Allmänna funktioner för att slå samman fält osv.
Fältvärde | Formel | Resultat | Kommentar |
TAG2 = 5 | =[TAG2]*10 | 50 | Multiplicera med 10 |
TAG2 = 5 | =[TAG2]+10 | 15 | Addera med 10 |
TAG2 = 5 | ="[TAG2]" & 10 | 510 | Infogar talet 10 efter |
TAG2 = 5 | =FORMAT("[TAG2]","000") | 005 | Alltid treställigt värde |
TAG2 = 5 | =RIGHT("000" & "[TAG2]",3) | 005 | En annan variant på treställigt värde |
TAG2 = 5 | ="DN " & "[TAG2]" & "0" | DN 50 | Infogar text DN före och lägger till 0 efter |
TAG0 =100 TAG1 = PC TAG2 = 12 | ="[TAG0]-[TAG1]-" & RIGHT("000" & "[TAG2]",3) | 100-PC-012 | Sammanslagning av tagfält till ett posnummer |
Formatering av värden är användbara vid länkning av exempelvis datumuppgifter i ritningshuvud.
Fältvärde | Formel | Resultat | Kommentar |
DocCreateDate= 2021-01-15 | ="[DocCreateDate]" | 01/15/2021 | |
DocCreateDate= 2021-01-15 | =Format("[DocCreateDate]","yyyy-MM-dd") | 2021-01-15 | OBS! Viktigt med versaler/gemener |
DocCreateDate= 2021-01-15 | =Format("[DocCreateDate]","yy-MM-dd") | 21-01-15 | OBS! Viktigt med versaler/gemener |
LocationLevel= +36,5 | =Format([LocationLevel],"+#0.00;-#0.00") | +36,5 | Formattering krävs för att erhålla ett '+' tecken då värdet är positivt |
Villkor är ofta användbara vid formler för pos och dokumentnumrering.
Formel | Resultat |
=IIF(LEN("[TAG3]")>0,"-[TAG3]","") | Är TAG3 tomt skrivs inget ut. Innehåller TAG3 något skrivs detta ut med ett inledande "-" |
| |
| |
| |
Systemparametrar är nyckelord omgärdade av $ tecken, dessa är fördefinierade i SiteBase.
Parameter | Exempel | Beskrivning |
$OPT$ | Description$OPT$ | En språkparameter som anges i SiteBase AppServer. Kan normalt vara A (Alternativt språk) eller S (Standard språk) Resultatet i exemplet blir DescriptionA eller DescriptionS beroende på språkinställning. |
$OPT$ | POS$OPT$ | Posnummer POSP eller POSS beroende på språkinställning. |