Sist oppdatert: 2025-03-31
Syntaks - HTML-reports
I denne artikkelen
Teksten i HTML-rapporter kan formateres ved hjelp av standard HTML-tagger, for eksempel <p>tekst</p> for avsnitt og <b>tekst</b> for fet skrift. Mer informasjon er tilgjengelig i https://www.w3schools.com/asp/razor_syntax.asp og https://learn.microsoft.com/en-us/aspnet/core/mvc/views/razor?view=aspnetcore-8.0.
Taggene i rapporter av type HTML tar utgangspunkt i klassen Delivery. Tagger fra andre klasser trenger prefikset
som står i kolonnen Klasse/prefiks i tabellene i Förteckning över taggar. Prefikset skilles fra taggen med et punktum, for eksempel Customer.CUS_Name.
Syntaks: @Model.prefix.tagg
I dette eksempelet, som henter ordrenummeret, trengs det ikke prefiks, siden DEL_Idligger i klassen Delivery.
I eksempelet nedenfor, som henter telefonnummeret til transportfirmaet fra kontorinnstillingene, ligger OFF_PhoneNo i klassen Office, som derfor må brukes som prefiks.
Hvis du legger til en tagg i en HTML-rapport med feil prefiks eller staver noe feil i taggen, vil ikke meldingen fungere, og det vises en feilmelding om at det ikke finnes en rapport, når meldingen genereres.
Lister
Noen objekter kan det finnes mange instanser av i en ordre, for eksempel kolli og oppdrag. For å kunne vise informasjon om slike objekter i rapporten må du kombinere taggen med en listetagg, slik at alle instanser av objektet blir tatt med. Resultatet blir en liste med én eller flere poster.
Listen i rapporten kan utformes på forskjellige måter. Du kan skrive en overskrift for hele listen eller en beskrivelse som gjentas på hver rad. Du kan også kombinere flere tagger som hører til samme liste, og slik opprette en liste med for eksempel kollinummer og vekt for hver kolli på en ordre.
Oppføringene i listen trenger ikke å være tall, men kan også være tekst, for eksempel PAC_Textsom returnerer fritekstfeltet for pakker på en bestilling.
Syntaks:
Valgfri tekst
@foreach(var item in Model.listekode.ActiveItems)
{
<text>Tekst etter eget valg: @item.merke</text><br/>
}
Eksempel 1
Liste over parsellnumre og en beskrivelse for hver linje.
Returnerer listen i følgende format.
Kollinr.: 123456
Kollinr.: 356789
Kollinr.: 986554
Eksempel 2
Liste over parsellnumre og en overskrift for hele listen.
<b>Kollin</b><br>
@foreach(var item in Model.Packages.ActiveItems)
{
<text>@item.PAC_PackageId</text><br/>
}
Returnerer listen i følgende format.
Kolli
123456
356789
986554
Eksempel 3
Liste over kolli-nummer, vekt og godsmerking.
<b>Kollin</b><br>
@foreach(var item in Model.Packages.ActiveItems)
{
<text>@item.PAC_PackageId: @item.PAC_Weight kg (@item.PAC_Text)</text><br/>
}
Returnerer listen i følgende format. Hvis et av kolliene ikke har godsmerking, vises en tom parentes.
Kolli
123456: 1,200000 kg (mappe med dokumenter)
356789: 3,400000 kg (skjørt)
986554: 5,600000 kg (tilbehør)
Bilder i lister
Se nedenfor.
Tall
Tall lagres med seks desimaler i Opter-databasen. Hvis du vil avrunde til færre enn seks desimaler, skriver du inn en formatkode og antall desimaler som skal vises i henhold til mønsteret 0.00 i taggen som returnerer tallet. Antall nuller etter desimaltegnet bestemmer antall desimaler.
Hvis du vil unngå unødvendige nuller i slutten av tallet (2,7 i stedet for 2,70), men skrive ut desimalen hvis det ikke er en null (2,73), skriver du et #-tegn for så mange desimaler som du vil vise.
Syntaks: @Model.prefix.tagg för numeriskt värde.ToString("0.######")
Eksempel 1
Alltid to desimaler, uansett om de har en verdi eller ikke.
<b>Vikt</b><br>
@foreach(var item in Model.Packages.ActiveItems)
{
<text>@item.PAC_Weight.ToString("0.00") kg </text><br/>
}
Returnerer en liste i følgende format.
Vekt
2,00 kg
2,70 kg
12,74 kg
Eksempel 2
Viser opptil tre desimaler hvis de har en verdi.
<i>Vikt</i><br>
@foreach(var item in Model.Packages.ActiveItems)
{
<text>@item.PAC_Weight.ToString("0.###") kg </text><br/>
}
Returnerer en liste i følgende format.
Vekt
2 kg
2,7 kg
12,738 kg
Eksempel 3
Alltid tosifrede hele tall og to desimaler.
<u>Vikt</u><br>
@foreach(var item in Model.Packages.ActiveItems)
{
<text>@item.PAC_Weight.ToString("00.00") kg</text><br/>
}
Returnerer en liste i følgende format.
Vekt
02,00 kg
02,70 kg
12,74 kg
Bilder
Du kan legge inn bilder i rapporter, for eksempel logotypene som er angitt i kontorinnstillingene.
Syntaks: <img src="data:image/png;base64,@(Convert.ToBase64String(Model.prefix.tagg))">
Følgende henter det store bildet fra kontorinnstillingene.
<p>Hej!</p>
<p>Din order från @Model.StartAddress.ADR_AddrLine1 är på väg.</p>
<p>Mvh</p>
<p>
@if (Model.Image != null)
{
<p>
<img src="data:image/png;base64,@(Convert.ToBase64String(Model.Office.OFF_LargeImage))" width="128" height="128"/>
</p>
}
</p>
</body>
</html>
Returnerer følgende.
Hei!
Din ordre fra Opter er på vei.
Mvh
Bilder i lister
Hvis du vil legge til bilder fra for eksempel avvik eller leveringsbevis, som det kan være flere forekomster av på en ordre (se avsnittet "Lister" ovenfor), må du først hente listen og deretter sjekke om det finnes et bilde for å kunne sende varselet selv om det ikke finnes noe bilde.
Syntaks:
Valgfri tekst
@foreach(var item in Model.listekode.ActiveItems)
{
<text>Tekst etter eget valg: @item.merke</text><br/>
@if (item.Bilde != null)
{
<p>
<img src="data:image/png;base64,@(Convert.ToBase64String(Model.Bilde))">
</p>
}
}
@if (item.Image != null) (linje 14) sjekker om det finnes et bilde av avviket (ikke lik "null") og setter det inn i e-posten hvis det finnes et.
<html>
<body>
<p>Hej @Model.CRE_Name!</p>
<p>Det har registrerats en avvikelse på order @Model.DEL_Id från @Model.ADR_AddrLine1From till @Model.ADR_AddrLine1To.</p>
<p>
Kommentar:<br/>
@foreach(var item in Model.Damages.ActiveItems)
{
<text>@item.DAM_Comment</text><br/>
@if (item.Image != null)
{
<p>
<img src="data:image/png;base64,@(Convert.ToBase64String(item.Image))" />
</p>
}
}
</p>
<p>Med vänlig hälsning</p>
<p>@Model.Office.OFF_Name</p>
</body>
</html>
Returnerer følgende.
Hei, Anton Larsson!
Det er registrert et avvik på ordre 159 fra Opter AB til H&M.
Kommentar:
Fall fra lasterampen..
Med vennlig hilsen
Opter
Se også
-
Förteckning över taggar
-
XML-specifikation för rapporter av typen