Dataverse Liquid-koder
Microsoft Dataverse Liquid-koder brukes til å laste inn og vise Dataverse-data, eller bruke andre rammeverktjenester for Power Pages. Disse kodene er Dataverse-spesifikke utvidelser for Liquid-språket.
diagram
Legge til et Power Apps-diagram for modelldrevet app på en webside. Koden chart kan legges til i Kopi-feltet på en nettside eller i Kilde-feltet i en webmal. Hvis du vil se trinn for tilføying av Power Apps-diagram på en nettside, kan du se Legge til et diagram på en nettside i Power Pages.
{% chart id:"EE3C733D-5693-DE11-97D4-00155DA3B01E" viewid:"00000000-0000-0000-00AA-000010001006" %}
Parametere
Koden chart har to parametere: chart id og viewid.
chart id
Visualiserings-ID for diagrammet. Du får ID-en ved å eksportere diagrammet.
viewid
ID for tabellen når den åpnes i visningsredigeringsprogrammet.
powerbi
Legger til Power BI-dashbord og -rapporter på sider. Koden kan legges til i Kopi-feltet på en nettside eller i Kilde-feltet i en webmal. Hvis du vil ha fremgangsmåten for å legge til en Power BI-rapport eller -dashbord på en nettside i Power Pages, kan du se Legge til Power BI-rapport eller -dashbord på en nettside i Power Pages.
Merk
For at koden skal fungere, må du aktivere Power BI-integrasjon fra Power Pages-huben i administrasjonssenteret for Power Platform. Hvis Power BI-integrasjon ikke er aktivert, vises ikke dashbord eller rapporter.
Parametere
powerbi-koden godtar parameterne nedenfor:
path
Bane til Power BI-rapporten eller -dashbordet. Hvis Power BI-rapporten eller -dashbordet er sikker, må du angi godkjenningstypen.
{% powerbi authentication_type:"powerbiembedded" path:"https://app.powerbi.com/groups/00000000-0000-0000-0000-000000000000/reports/00000000-0000-0000-0000-000000000001/ReportSection01" %}
authentication_type
Type godkjenning som kreves for Power BI-rapporten eller -dashbordet. Gyldige verdier for denne parameteren er:
Anonym: Lar deg publisere til Power BI-webrapporter. Standard godkjenningtype er anonym. Når du bruker godkjenningstypen som anonym, må du få Power BI-rapportens URL-adresse som beskrevet på: Publiser til Internett fra Power BI
AAD: Lar deg dele sikre Power BI-rapporter eller -instrumentbord til Power BI Microsoft Entra ID-autentiserte brukere.
powerbiembedded: Gjør det mulig å dele sikre Power BI-rapporter og -dashbord til eksterne brukere som ikke har Power BI-lisens eller Microsoft Entra-autentiseringsoppsett. Hvis du vil ha informasjon om Power BI Embedded-tjenesteoppsett, kan du se Aktivere Power BI Embedded-tjeneste.
Når du legger til sikker(t) Power BI-rapport eller -dashbord, må du sørge for at den/det deles med Power Pages Microsoft Entra- eller Power BI Embedded-tjenester.
Merk
Verdiene for authentication_type
-parameteren skiller mellom store og små bokstaver.
{% powerbi authentication_type:"AAD" path:"https://app.powerbi.com/groups/00000000-0000-0000-0000-000000000000/reports/00000000-0000-0000-0000-000000000001/ReportSection01" %}
Du kan også filtrere rapporten etter én eller flere verdier. Syntaksen for å filtrere en rapport er som følger:
URL?filter=Tabell/Felt eq 'verdi'
La oss for eksempel si at du vil filtrere rapporten for å se data for en kontakt kalt Bert Hair. Du må tilføye følgende data i nettadressen:
?filter=Ledere/Leder eq 'Bert Hair'
Den fullstendige koden er:
{% powerbi authentication_type:"AAD" path:"https://app.powerbi.com/groups/00000000-0000-0000-0000-000000000000/reports/00000000-0000-0000-0000-000000000001/ReportSection01?filter=Executives/Executive eq 'Bert Hair'" %}
Mer informasjon om filtrering av en rapport: Filtrere en rapport ved å bruke spørringsstrengparametere i URL-adressen
Merk
Anonym rapport støtter ikke filtrering.
Du kan også opprette en dynamisk bane ved hjelp av variabelen capture
Liquid:
{% capture pbi_path %}https://app.powerbi.com/groups/00000000-0000-0000-0000-000000000000/reports/00000000-0000-0000-0000-000000000001/ReportSection01?filter=Executives/Executive eq '{{user.id}}'{% endcapture %}
{% powerbi authentication_type:"AAD" path:pbi_path %}
Mer informasjon om Liquid-variabelen: Variabelkoder
tileid
Viser den angitte flisen på instrumentbordet. Du må angi ID-en for flisen.
{% powerbi authentication_type:"AAD" path:"https://app.powerbi.com/groups/00000000-0000-0000-0000-000000000000/dashboards/00000000-0000-0000-0000-000000000001" tileid:"00000000-0000-0000-0000-000000000002" %}
roller
Roller tildelt Power BI-rapporten. Denne parameteren fungerer bare når authentication_type-parameteren er satt til powerbiembedded.
Hvis du har definert roller i Power BI og tildelt dem til rapporter, må du spesifisere de aktuelle rollene i Liquid-taggen powerbi. Roller lar deg filtrere dataene som skal vises i en rapport. Du kan spesifisere flere roller atskilt med komma. Hvis du vil ha mer informasjon om definering av roller i Power BI, kan du se RLS (Row-level security) med Power BI.
{% powerbi authentication_type:"powerbiembedded" path:"https://app.powerbi.com/groups/00000000-0000-0000-0000-000000000000/reports/00000000-0000-0000-0000-000000000000/ReportSection2" roles:"Region_East,Region_West" %}
Hvis du har tildelt en rolle til en Power BI-rapport og ikke spesifiserte roller-parameteren i Liquid-taggen eller ikke spesifiserte en rolle i parameteren, vises en feil.
Tips
Hvis du vil bruke nettrollene som er definert på nettstedet, som Power BI-rollene, kan du definere en variabel og tilordne nettroller til den. Deretter kan du bruke den definerte variabelen i Liquid-taggen.
La oss si at du har definert to nettroller som Region_East and Region_West på nettstedet. Du kan bli med i disse ved å bruke koden: {% assign webroles = user.roles | join: ", " %}
I ovennevnte kodesnutt er webroles
en variabel, og Region_East and Region_West-nettrollene lagres i den.
Bruk webroles
-variabelen i Liquid-taggen på følgende måte:
{% powerbi authentication_type:"powerbiembedded" path:"https://app.powerbi.com/groups/00000000-0000-0000-0000-000000000000/reports/00000000-0000-0000-0000-000000000000/ReportSection2" roles:webroles%}
editable
Gjengir et gitt CMS-objekt for Power Pages som redigerbart på nettstedet, for brukere med tillatelse for innholdsredigering for dette objektet. Redigerbare objekter inkluderer side, kodesnutter og webkoblinger.
{% editable page 'adx_copy' type: 'html', title: 'Page Copy', escape: false, liquid: true %}
{% editable snippets Header type: 'html' %}
<!--
An editable web link set required a specific DOM structure, with
certain classes on the containing element, as demonstrated here.
-->
{% assign primary_nav = weblinks[Primary Navigation] %}
{% if primary_nav %}
<div {% if primary_nav.editable %}class=xrm-entity xrm-editable-adx_weblinkset{% endif %}>
<ul>
<!-- Render weblinks... -->
</ul>
{% editable primary_nav %}
</div>
{% endif %}
Parametere
Den første parameteren som kan redigeres, er det redigerbare objektet, for eksempel et nettkoblingssett, tekstutdrag eller nåværende side. Den andre valgfrie parameteren er å angi et attributtnavn eller nøkkel i objektet som skal gjengis og redigeres. Denne verdien kan for eksempel være navnet på et tabellattributt eller et snuttnavn.
Etter disse første parameterne støtter koden mange valgfrie parametere.
class
Angir en class-attributtverdi for rotelementet som gjengis av denne koden.
default
En standardverdi gjengis i tilfeller der det redigerbare elementet ikke har noen verdi.
escape
En boolsk verdi som angir om en verdi som gjengis av denne koden, er HTML-kodet. Denne verdien er usann som standard.
liquid
En boolsk verdi som angir om en hvilken som helst Liquid-malkode i tekstverdien som gjengis av denne koden, skal behandles. Denne verdien er sann som standard.
tag
Navnet på beholder-HTML-kodene gjengitt av denne koden. Denne koden gjengir div-elementer som standard. Det anbefales at du kan velge mellom div eller span som en verdi for denne parameteren.
title
Angir en etikett for dette redigerbare elementet i grensesnittet for innholdsredigering. Hvis ingen er angitt, genereres det automatisk en egendefinert etikett.
type
En strengverdi som angir typen redigeringsgrensesnitt som skal presenteres for redigerbare tekstverdier. Gyldige verdier for denne parameteren er html eller text. Standardinnstillingen er html.
entitylist
Laster inn en angitt liste etter navn eller ID. Det er deretter tilgang til egenskapene for listen ved hjelp av et entitylist-objekt tilgjengelig i kodeblokken. Hvis du vil gjengi de faktiske resultatpostene i listen, kan du bruke entityview-koden i blokken.
Hvis listen lastes inn, gjengis innholdet i blokken. Hvis listen ikke finnes, gjengis ikke innholdet i blokken.
{% entitylist name:My List %}
Loaded list {{ entitylist.adx_name }}.
{% endentitylist %}
Som standard får entitylist-objektet variabelnavnet entitylist. Du kan eventuelt angi et annet variabelnavn.
{% entitylist my_list = name:My List %}
Loaded list {{ my_list.adx_name }}.
{% endentitylist %}
Parametere
Angi bare én av id, name eller key for å velge listen som skal lastes inn.
id
Laster en listen etter GUID-ID. ID må være en streng som kan analyseres som en GUID.
{% entitylist id:936DA01F-9ABD-4d9d-80C7-02AF85C822A8 %}
Loaded list {{ entitylist.adx_name }}.
{% endentitylist %}
Litterale GUID-strenger brukes vanligvis ikke. I stedet er ID-en angitt med en GUID-egenskap for en annen variabel.
{% entitylist id:page.adx_entitylist.id %}
Loaded list {{ entitylist.adx_name }}.
{% endentitylist %}
name
Laster inn en liste etter navn.
{% entitylist name:My List %}
Loaded list {{ entitylist.adx_name }}.
{% endentitylist %}
key
Laster inn en liste etter ID eller navn. Hvis den angitte nøkkelverdien kan analyseres som en GUID, lastes listen inn etter ID. Ellers lastes den inn etter navn.
<!-- key_variable can hold an ID or name -->
{% entitylist key:key_variable %}
Loaded list {{ entitylist.adx_name }}.
{% endentitylist %}
language_code
En heltallspråkkode for Dataverse for å velge lokaliserte etiketter for listen som skal lastes inn. Hvis ingen language_code er angitt, brukes standardspråket for nettstedsprogrammets Dataverse-tilkobling.
{% entitylist name:"My List", language_code:1033 %}
Loaded list {{ entitylist.adx_name }}.
{% endentitylist %}
entityview
Laster inn en angitt Dataverse-visning etter navn eller ID. Du kan gå til egenskaper for visningen ߝ for visning av kolonnemetadata, paginerte resultatoppføringer og så videre, ved hjelp av et entityview-objekt som er tilgjengelig i kodeblokken.
Hvis visningen lastes inn, gjengis innholdet i blokken. Hvis visningen ikke finnes, gjengis ikke innholdet i blokken.
{% entityview logical_name:'contact', name:"Active Contacts" %}
Loaded entity view with {{ entityview.total_records }} total records.
{% endentityview %}
Som standard får entityview-objektet variabelnavnet entityview. Du kan eventuelt angi et annet variabelnavn.
{% entityview my_view = logical_name:'contact', name:"Active Contacts" %}
Loaded entity view with {{ my_view.total_records }} total records.
{% endentityview %}
Hvis entityview er nestet i en entitylist-blokk, arver den standardkonfigurasjonen (resultatsidestørrelse, filteralternativer og så videre) fra listen. Hvis ingen visnings-id- eller -name-parameter er angitt for entityview, lastes standardvisningen inn fra den omsluttende entitylist.
{% entitylist id:page.adx_entitylist.id %}
{% entityview %}
Loaded default view of the list associated with the current page, with {{ entityview.total_records }} total records.
{% endentityview %}
{% endentitylist %}
Parametere
Angi det logiske navnet enten id eller logisk navn for å velge Dataverse-visningen som skal lastes inn. Hvis ingen er angitt og entityview-koden er nestet inne i en entitylist-kode, lastes standardvisningen inn for den omsluttende entitylist.
id
id må være en streng som kan analyseres som en GUID.
{% entityview id:936DA01F-9ABD-4d9d-80C7-02AF85C822A8 %}
Loaded entity view {{ entityview.name }}.
{% endentityview %}
Litterale GUID-strenger brukes vanligvis ikke. I stedet er ID-en angitt med en GUID-egenskap for en annen variabel.
{% entityview id:request.params.view %}
Loaded entity view {{ entityview.name }} using view query string request parameter.
{% endentityview %}
logical_name
Det logiske navnet på Dataverse-enheten for visningen som skal lastes inn. Må brukes sammen med name.
{% entityview logical_name:'contact', name:"Active Contacts" %}
Loaded entity view with {{ entityview.total_records }} total records.
{% endentityview %}
name
Dataverse-navnet på visningen som skal lastes inn. Må brukes sammen med logical_name.
{% entityview logical_name:'contact', name:"Active Contacts" %}
Loaded entity view with {{ entityview.total_records }} total records.
{% endentityview %}
filter
Angir om du vil filtrere visningsresultatene etter brukeren eller forretningsforbindelse. Må ha strengverdien bruker eller forretningsforbindelse.
{% entityview id:request.params.view, filter:'user' %}
Loaded entity view with {{ entityview.total_records }} total records.
{% endentityview %}
Et vanlig brukstilfelle er å angi denne parameteren basert på en forespørsel.
{% entityview id:request.params.view, filter:request.params.filter %}
Loaded entity view with {{ entityview.total_records }} total records.
{% endentityview %}
metafilter
Angir filteruttrykket for metadata for listen som resultatene filtreres etter. Denne parameteren er bare gyldig når entityview brukes i kombinasjon med entitylist. I de fleste tilfeller angis denne parameteren basert på en forespørsel.
{% entitylist id:page.adx_entitylist.id %}
{% entityview id:request.params.view, metafilter:request.params.mf %}
Loaded entity view with {{ entityview.total_records }} total records.
{% endentityview %}
{% endentitylist %}
order
Angir et sorteringsuttrykk for sortering av visningsresultater. Sorteringsuttrykk kan inneholde ett eller flere logiske navn for enhetsattributt, etterfulgt av sorteringsretningen ASC eller DESC.
{% entityview id:request.params.view, order:'name ASC, createdon DESC' %}
Loaded entity view with {{ entityview.total_records }} total records.
{% endentityview %}
Et vanlig brukstilfelle er å angi denne parameteren basert på en forespørsel.
{% entityview id:request.params.view, order:request.params.order %}
Loaded entity view with {{ entityview.total_records }} total records.
{% endentityview %}
page
Angir visningssiden for resultater som skal lastes inn. Hvis denne parameteren ikke er angitt, lastes den første siden med resultater inn.
Denne parameteren må sendes en heltallsverdi eller en streng som kan analyseres som et heltall. Hvis det er angitt en verdi for denne parameteren men verdien er null eller ikke kan analyseres som et heltall, lastes den første siden med resultater inn.
{% entityview id:request.params.view, page:2 %}
Loaded page {{ entityview.page }} of entity view with {{ entityview.total_records }} total records.
{% endentityview %}
Et vanlig brukstilfelle er å angi denne parameteren basert på en forespørsel.
{% entityview id:request.params.view, page:request.params.page %}
Loaded page {{ entityview.page }} of entity view with {{ entityview.total_records }} total records.
{% endentityview %}
page_size
Angir hvor mange resultater som skal lastes inn for gjeldende resultatside. Hvis ingen verdi er angitt for denne parameteren og entityview brukes i en entitylist-blokk, brukes sidestørrelsen for listen. Hvis ikke i en entitylist-blokk, brukes standardverdien 10.
Denne parameteren må sendes en heltallsverdi eller en streng som kan analyseres som et heltall. Hvis det er angitt en verdi for denne parameteren men verdien er null eller ikke kan analyseres som et heltall, brukes standard sidestørrelse.
{% entityview id:request.params.view, page_size:20 %}
Loaded entity view with {{ entityview.total_records }} total records.
{% endentityview %}
Et vanlig brukstilfelle er å angi denne parameteren basert på en forespørsel.
{% entityview id:request.params.view, page_size:request.params.pagesize %}
Loaded entity view with {{ entityview.total_records }} total records.
{% endentityview %}
search
Angir et søkeuttrykk som visningsresultater filtreres etter. Enkle nøkkelordsøkeuttrykk filtreres etter om attributtene begynner med nøkkelordet. Jokertegn * kan også inkluderes i uttrykket.
{% entityview id:request.params.view, search:'John\*' %}
Loaded entity view with {{ entityview.total_records }} total matching records.
{% endentityview %}
Et vanlig brukstilfelle er å angi denne parameteren basert på en forespørsel, slik at søkefilteret kan angis basert på brukerinndata.
{% entityview id:request.params.view, search:request.params.search %}
Loaded entity view with {{ entityview.total_records }} total matching records.
{% endentityview %}
language_code
En heltallspråkkode for Dataverse for å velge lokaliserte etiketter (kolonneetiketter i toppteksten og så videre) som skal lastes inn. Hvis ingen language_code er angitt, brukes standardspråket for nettstedsprogrammets Dataverse-tilkobling.
Hvis entityview brukes i en entitylist-blokk, arver entityview språkkodekonfigurasjonen fra entitylist.
{% entityview logical_name:'contact', name:"Active Contacts", language_code:1033 %}
Loaded entity view {{ entityview.name }}.
{% endentitylist %}
searchindex
Utfører en spørring mot nettstedssøkeindeksen. Det er deretter tilgang til de samsvarende resultatene ved hjelp av en søkeindeks som er tilgjengelig i kodeblokken.
{% searchindex query: 'support', page: params.page, page_size: 10 %}
{% if searchindex.results.size > 0 %}
<p>Found about {{ searchindex.approximate_total_hits }} matches:</p>
<ul>
{% for result in searchindex.results %}
<li>
<h3><a href={{ result.url | escape }}>{{ result.title | escape }}</a></h3>
<p>{{ result.fragment }}</p>
</li>
{% endfor %}
</ul>
{% else %}
<p>Your query returned no results.</p>
{% endif %}
{% endsearchindex %}
<style>
.highlight {background-color: #FFFCAC;}
</style>
Som standard gis searchindex-objektet variabelnavnet searchindex. Du kan eventuelt angi et annet variabelnavn.
{% searchindex liquid_search = query: 'support', page: params.page, page_size: 10 %}
{% if liquid_search.results.size > 0 %}
...
{% endif %}
{% endsearchindex %}
Parametere
searchindex-koden godtar parameterne nedenfor.
query
Spørring som brukes til å samsvare resultatene. Denne parameteren er beregnet til å godta den brukerangitte delen av indeksspørringen (hvis aktuelt).
{% searchindex query: 'support' %}
...
{% endsearchindex %}
Et vanlig brukstilfelle er å angi denne parameteren basert på en forespørsel.
{% searchindex query: request.params.query %}
...
{% endsearchindex %}
Denne parameteren støtter syntaksen for Lucene-spørringsanalyse.
filter
En annen spørring brukes til å samsvare resultatene. Denne parameteren er beregnet på å godta utviklerangitte filtre for resultater, hvis du vil.
{% searchindex query: request.params.query, filter: '+statecode:0' %}
...
{% endsearchindex %}
Denne parameteren støtter syntaksen for Lucene-spørringsanalyse.
Merk
Forskjellen mellom filter og query er at begge godtar syntaks for Lucene-spørringsanalyse, men query er ment å være mer tilgivende med hensyn til hvordan denne syntaksen analyseres ߝ siden det er forventet at de fleste brukerne ikke kjenner til denne syntaksen. I tilfelle analyse av query i henhold til denne syntaksen mislykkes, brukes det escape for hele spørringen og den sendes som spørringstekst. filter analyseres derimot,strengt og returnerer en feil hvis det brukes ugyldig syntaks.
logical_names
De logiske navnene for Dataverse-enhet som samsvarende resultater begrenses til, som en kommadelt streng. Hvis ikke angitt, returneres alle samsvarende enheter.
{% searchindex query: request.params.query, logical_names: 'kbarticle,incident' %}
...
>
{% endsearchindex %}
page
Siden med søkeresultater som skal returneres. Hvis ikke angitt, returneres den første siden (1).
{% searchindex query: request.params.query, page: 2 %}
...
{% endsearchindex %}
Et vanlig brukstilfelle er å angi denne parameteren basert på en forespørsel.
{% searchindex query: request.params.query, page: request.params.page %}
...
{% endsearchindex %}
page_size
Størrelsen på siden med resultater som skal returneres. Hvis ikke angitt, brukes en standardstørrelsen 10.
{% searchindex query: request.params.query, page_size: 20 %}
...
{% endsearchindex %}
entityform
Gjengir fullstendig et skjema, etter navn eller ID.
Merk
entityform-koden er bare tilgjengelig for bruk i innhold som gjengis i en webmal-basert sidemal. Forsøk på bruke kode i en Skriv på nytt-basert sidemal vil ikke gjengi noe. Du kan bare gjengi én enkelt entityform- eller entityform-kode per side. entityform- eller webform-koder etter den først, vil ikke gjengis.
{% entityform name: 'My Basic Form' %}
Parametere
name
Navnet på standardskjemaet som du vil laste inn.
{% entityform name:My Basic Form %}
webform
Gjengir fullstendig et flertrinnsskjema etter navn eller ID. webform-koden er bare tilgjengelig for bruk i innhold som gjengis i en webmal-basert sidemal. Forsøk på bruke kode i en Skriv på nytt-basert sidemal vil ikke gjengi noe. Du kan bare gjengi én enkelt entityform- eller entityform-kode per side. entityform- eller webform-koder etter den først, vil ikke gjengis.
{% webform name: 'My Multistep Form' %}
Parametere
name
Navnet på flertrinnsskjemaet som du vil laste inn.
{% webform name:My Multistep Form %}
codecomponent
Gjør det mulig å bygge inn kodekomponenter ved hjelp av et Liquid-merke. Det kan for eksempel være å legge til egendefinert kontroll for kartvisning på en webside.
Parametere
name
ID-en eller navnet på kodekomponenten.
egenskap
Verdiene i egenskapene som kodekomponenten forventer, må sendes inn som et nøkkel/verdipar atskilt med ":" (kolontegn), der nøkkelen er egenskapsnavnet og verdien er JSON-strengverdien.
{% codecomponent name:abc\_SampleNamespace.MapControl controlValue:'Space Needle' controlApiKey:<API Key Value> %}
Merk
Egenskapene som kreves, kan variere avhengig av komponenten du velger.
Se Bruk kodekomponenter til Liquid-malkode.