Viimeisin päivitys: 2025-03-31

Syntaksi - HTML-raportit

HTML-raporttien tekstiä voidaan muotoilla tavallisilla HTML-tunnisteilla, esimerkiksi <p>teksti</p> kappaleille ja <b>teksti</b> lihavoinnille. Lisätietoa: https://www.w3schools.com/asp/razor_syntax.asp ja https://learn.microsoft.com/en-us/aspnet/core/mvc/views/razor?view=aspnetcore-8.0.

Tyypin HTML raporttien tunnisteet perustuvat luokkaan Delivery. Muiden luokkien tunnisteet tarvitsevat etuliitteen

joka on taulukoiden Förteckning över taggar sarakkeessa Luokka/etuliite. Etuliite erotetaan tunnisteesta pisteellä, esimerkiksi Customer.CUS_Name.

Syntaksi: @Model.prefix.tagg

Tässä esimerkissä, jossa haetaan tilausnumero, etuliitettä ei tarvita, koska DEL_Id on luokassa Delivery.

@Model.DEL_Id

Alla olevassa esimerkissä, jossa haetaan operaattorin puhelinnumero toimistoasetuksista, OFF_PhoneNo on Office-luokassa, jota on siksi käytettävä etuliitteenä.

@Model.Office.OFF_PhoneNo

Jos lisäät tunnisteen HTML-raporttiin väärällä etuliitteellä tai kirjoitat tunnisteen väärin, ilmoitus ei toimi ja sitä luotaessa näytetään virheilmoitus, että raporttia ei ole.

Luettelot

Joillakin kohteilla voi olla tilauksessa useita esiintymiä, kuten kolleja ja toimeksiantoja. Jotta tällaisten kohteiden tiedot voidaan näyttää raportissa, tunniste on yhdistettävä luettelotunnisteeseen, jotta kaikki kohteen esiintymät näkyvät luettelossa. Tuloksena on luettelo yhdestä tai useammasta kohteesta.

Raportin luettelo voidaan laatia eri tavoin. Voit kirjoittaa koko luettelolle otsikon tai laatia kuvauksen, joka toistuu jokaisella rivillä. Voit myös yhdistää useita samaan listaan kuuluvia tunnisteita ja luoda siten luettelon, jossa on esimerkiksi kollinumero ja paino jokaiselle tilauksen kollille.

Luettelon merkintöjen ei tarvitse olla numeroita, vaan ne voivat olla myös tekstiä, esimerkiksi seuraavasti PAC_Text, joka palauttaa tilauksen pakettien vapaatekstikentän.

Syntaksi:

Valinnainen teksti

@foreach(var item in Model.listatunniste.ActiveItems)

{

<text>Valitsemasi teksti: @item.tag</text><br/>

}

Esimerkki 1

Luettelo palstojen numeroista ja kunkin rivin kuvaus.

@foreach(var item in Model.Packages.ActiveItems)
{
   <text>Kollinr: @item.PAC_PackageId</text><br/>
}

Palauttaa luettelon seuraavassa muodossa.

Kollinumero: 123456

Kollinumero: 356789

Kollinumero: 986554

Esimerkki 2

Luettelo palstojen numeroista ja koko luettelon otsikko.

<b>Kollin</b><br>
@foreach(var item in Model.Packages.ActiveItems)
{
   <text>@item.PAC_PackageId</text><br/>
}

Palauttaa luettelon seuraavassa muodossa.

Kollit

123456

356789

986554

Esimerkki 3

Luettelo pakettien numeroista, painosta ja tavaramerkinnöstä.

<b>Kollin</b><br>
@foreach(var item in Model.Packages.ActiveItems)
{
   <text>@item.PAC_PackageId: @item.PAC_Weight kg (@item.PAC_Text)</text><br/>
}

Palauttaa luettelon seuraavassa muodossa. Jos jossain kollissa ei ole tavaramerkintää, näytetään tyhjä sulkumerkki.

Kollit

123456: 1,200000 kg (Kansio ja asiakirjoja)

356789: 3,400000 kg (Särkyvää)

986554: 5,600000 kg (Tarvikkeita)

Kuvat luetteloissa

Katso alla.

Numerot

Luku tallennetaan Opter-tietokantaan kuuden desimaalin tarkkuudella. Jos haluat pyöristää alle kuuteen desimaaliin, kirjoita muotoilutunniste ja näytettävien desimaalien määrä mallin mukaisesti. 0.00 tagissa, joka palauttaa numeron. Nollien määrä desimaalipisteen jälkeen määrittää desimaalien määrän.

Jos haluat jättää pois merkityksettömät nollat luvun lopusta (2,70:n sijaan 2,7), mutta tulostaa desimaaliluvun, joka ei ole nolla (2,73), kirjoita niin monta #-merkkiä kuin haluat näyttää desimaaleja.

Syntaksi: @Model.prefix.tagg för numeriskt värde.ToString("0.######")

Esimerkki 1

Aina kaksi desimaalia riippumatta siitä, onko niillä arvo vai ei.

<b>Vikt</b><br>
@foreach(var item in Model.Packages.ActiveItems)
{
   <text>@item.PAC_Weight.ToString("0.00") kg </text><br/>
}

Palauttaa luettelon seuraavassa muodossa.

Paino

2,00 kg

2,70 kg

12,74 kg

Esimerkki 2

Näyttää enintään kolme desimaalia, jos niillä on arvo.

<i>Vikt</i><br>
@foreach(var item in Model.Packages.ActiveItems)
{
   <text>@item.PAC_Weight.ToString("0.###") kg </text><br/>
}

Palauttaa luettelon seuraavassa muodossa.

Paino

2 kg

2,7 kg

12,738 kg

Esimerkki 3

Aina kaksinumeroiset kokonaisluvut ja kaksi desimaalia.

<u>Vikt</u><br>
@foreach(var item in Model.Packages.ActiveItems)
{
   <text>@item.PAC_Weight.ToString("00.00") kg</text><br/>
}

Palauttaa luettelon seuraavassa muodossa.

Paino

02,00 kg

02,70 kg

12,74 kg

Kuvat

Voit lisätä raportteihin kuvia, kuten toimistoasetuksissa määritettyjä logoja.

Syntaksi: <img src="data:image/png;base64,@(Convert.ToBase64String(Model.prefix.tagg))">

Seuraavassa haetaan kokonaiskuva toimiston asetuksista.

<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>

Palauttaa seuraavat tiedot.

Hei!

Tilaukseksi Opterilta on matkalla.

Ystävällisin terveisin

 

Kuvat luetteloissa

Jos haluat lisätä kuvia esimerkiksi poikkeamaa tai toimitusvahvistusta, joita voi olla useita tilauksessa (ks. edellä kohta "Luettelot"), sinun on ensin haettava luettelo ja sen jälkeen tarkistettava, onko siinä kuvaa, jotta voit lähettää ilmoituksen, vaikka kuvaa ei olisikaan.

Syntaksi:

Valinnainen teksti

@foreach(var item in Model.listatunniste.ActiveItems)

{

<text>Valitsemasi teksti: @item.tag</text><br/>

@if (item.Kuva != null)

{

<p>

<img src="data:image/png;base64,@(Convert.ToBase64String(Model.Kuva))">

</p>

}

}

@if (item.Image != null) (rivi 14) tarkistaa, onko poikkeamasta olemassa kuva (joka ei ole yhtä suuri kuin "null"), ja lisää sen sähköpostiin, jos sellainen on olemassa.

<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>

Palauttaa seuraavat tiedot.

Hei Antti Laakso!

Tilaukseen 159 Opter AB:ltä H&M:lle on rekisteröity poikkeama.

Kommentti:

Putosi lastauslaiturilta.

Ystävällisin terveisin

Opter

Katso myös