Met formules kunt u meer halen uit de regels die u maakt dan het gebruik van eenvoudige, vooraf gedefinieerde regels. Formules worden bijvoorbeeld gebruikt voor zaken zoals het berekenen van de huidige of toekomstige datum of zelfs het samenvoegen van tekst.
In dit artikel
Overzicht
Een formule is een XPath-expressie (XML Path Language) die bestaat uit waarden, velden of groepen, functies en operatoren die worden gebruikt om andere waarden te berekenen en weer te geven. U kunt een formule gebruiken om een nieuwe waarde voor een veld te maken en die waarde weer te geven in een besturingselement dat aan dat veld is gebonden. Formules kunnen als volgt worden gebruikt:
Een wiskundige waarde berekenen op basis van waarden die u hebt opgegeven bij het ontwerpen van de sjabloon of op basis van waarden die een gebruiker invoert bij het invullen van de formuliersjabloon.
Voer een regel uit op basis van een waarde die wordt berekend met behulp van een formule.
Alleen-lezen tekst weergeven die wordt berekend op basis van andere besturingselementen of de waarde van een ander besturingselement weergeven.
Een functie is een expressie die een waarde retourneert op basis van de resultaten van een berekening. De waarden die in de functies worden gebruikt, worden argumenten genoemd. U kunt de standaard XPath 1.0-functies gebruiken die zijn opgenomen in InfoPath, naast enkele InfoPath-specifieke functies. Functies bestaan uit de volgende drie onderdelen:
- Naam De naam van de functie geeft meestal een hint voor de actie die de functie gaat uitvoeren.
- Retourwaarde Het resultaat van de functie.
- Argumenten De waarden die door de functie worden gebruikt om de berekening uit te voeren.
Voor een functie zijn mogelijk argumenten vereist om een waarde te retourneren. Als voor de functie argumenten zijn vereist, moet u weten hoeveel argumenten vereist zijn en wat het gegevenstype van elk argument is. De functie werkt niet als u het verkeerde aantal of type vereiste argumenten opgeeft.
In de volgende afbeelding ziet u de relatie tussen functies, expressies en formules.
Een besturingselement voor een berekende waarde toevoegen
U kunt een besturingselement voor berekende waarden gebruiken om alleen-lezen tekst weer te geven, de waarde van een ander besturingselement in het formulier weer te geven en formules te maken die zijn gebaseerd op XPath-expressies. Als u bijvoorbeeld een formuliersjabloon voor het bijhouden van onkosten ontwikkelt, kunt u een besturingselement voor berekende waarden toevoegen om het totaal weer te geven van de ingevoerde onkosten.
Opmerking
Een besturingselement voor berekende waarden geeft alleen gegevens weer en slaat deze niet op, dus u moet een besturingselement voor berekende waarden alleen gebruiken als u de waarde ervan niet wilt opslaan of ernaar wilt verwijzen in een andere formule.
Plaats de cursor op de locatie in de formuliersjabloon waar u het besturingselement wilt invoegen.
Klik op het tabblad Start in de groep Besturingselementen op het besturingselement berekende waarde .
Voer in het dialoogvenster Berekende waarde invoegen een van de volgende handelingen uit:
Als u tekst of een XPath-expressie rechtstreeks in het besturingselement voor berekende waarden wilt typen, typt u in het vak XPath .
Als u een formule wilt invoegen, klikt u op Formule
en voert u de gewenste formule in het tekstvak Formule in, waarbij u zo nodig het volgende gebruikt:- Als u een veld of groep in de formule wilt invoegen, klikt u op Veld of groep invoegen, klikt u op het veld of de groep in het dialoogvenster Een veld of groep selecteren en klikt u vervolgens op OK.
- Als u een functie in de formule wilt invoegen, klikt u op Functie invoegen, selecteert u de functie in het dialoogvenster Functie invoegen en klikt u vervolgens op OK.
Als voor de functie parameters zijn vereist, selecteert u de functie in het dialoogvenster Functie invoegen , klikt u op OK en dubbelklikt u vervolgens in de formuletekst op de aangegeven locatie en selecteert u de gewenste parameter voordat u op OK klikt. - Als u een waarde of wiskundige operator in de formule wilt invoegen, typt u de waarde of het symbool voor de wiskundige bewerking in het vak Formule .
Wiskundige operatoren omvatten optellen (+), aftrekken (-), vermenigvuldigen (*) en delen (/).
Wiskundige formules zijn meestal afhankelijk van gehele of decimale waarden als argumenten. Als u lege waarden in uw formule wilt voorkomen, klikt u op het tabblad Bestand op Formulieropties en selecteert u vervolgens Geavanceerd en controleert u of Lege waarden als nul behandelen is geselecteerd.
Een formule toevoegen aan een besturingselement
Hoewel u een besturingselement voor berekende waarden kunt gebruiken om de resultaten van een formule weer te geven, bent u niet beperkt tot het gebruik van een besturingselement voor berekende waarden. U kunt ook een formule gebruiken om de standaardwaarde van andere besturingselementen, zoals tekstvakken, in te stellen. Er zijn twee manieren waarop u de standaardwaarde van een besturingselement kunt instellen. U kunt een statische standaardwaarde gebruiken door de gewenste waarde in te voeren in het veld Waarde van het dialoogvenster Veld- of Groepseigenschappen , of u kunt een formule gebruiken om de standaardwaarde van een veld in te stellen op basis van andere waarden in het formulier. Ga als volgt te werk om de standaardwaarde van een veld in te stellen op basis van een formule:
Selecteer het besturingselement waaraan u de formule wilt toevoegen en klik onder Hulpmiddelen voor besturingselementen op het tabblad Eigenschappen in de groep Eigenschappen op Standaardwaarde.
Klik op Formule
naast het vak Waarde .Voer de gewenste formule in het tekstvak Formule in en gebruik indien nodig het volgende:
Als u een veld of groep in de formule wilt invoegen, klikt u op Veld of groep invoegen, klikt u op het veld of de groep in het dialoogvenster Een veld of groep selecteren en klikt u vervolgens op OK.
Als u een functie in de formule wilt invoegen, klikt u op Functie invoegen, selecteert u de functie in het dialoogvenster Functie invoegen en klikt u vervolgens op OK.
Als voor de functie parameters zijn vereist, selecteert u de functie in het dialoogvenster Functie invoegen , klikt u op OK en dubbelklikt u vervolgens in de formuletekst op de aangegeven locatie en selecteert u de gewenste parameter voordat u op OK klikt.Als u een waarde of wiskundige operator in de formule wilt invoegen, typt u de waarde of het symbool voor de wiskundige bewerking in het vak Formule .
Wiskundige operatoren omvatten optellen (+), aftrekken (-), vermenigvuldigen (*) en delen (/).Tip
Wiskundige formules zijn meestal afhankelijk van gehele of decimale waarden als argumenten. Als u lege waarden in uw formule wilt voorkomen, klikt u op het tabblad Bestand op Formulieropties en selecteert u vervolgens Geavanceerd. Zorg ervoor dat Lege waarden als nul behandelen is geselecteerd.
Als u de formule wilt bewerken als een XPath-formule, schakelt u het selectievakje XPath bewerken (geavanceerd) in, waardoor de formule wordt gewijzigd in de XPath-expressieversie van de formule.
Als u de formule wilt controleren op de juiste syntaxis, klikt u op de knop Formule controleren . Als uw formule fouten bevat:
Klik op Details weergeven in het dialoogvenster Microsoft InfoPath om de fouten in de formule weer te geven. Hier volgen enkele suggesties voor het oplossen van deze fouten:
- Als u een functie in uw formule gebruikt, controleert u of u de juiste argumenten voor de functie gebruikt. Voor sommige functies zijn velden of groepen vereist, terwijl voor andere functies opgegeven waarden als argumenten zijn vereist.
- Verwijder en typ de formule zo nodig opnieuw om ervoor te zorgen dat deze correct is getypt.
- Klik op OK.
- Als u de standaardwaarde van het veld wilt bijwerken wanneer de waarden waarop het veld is gebaseerd, wijzigt, schakelt u het selectievakje Waarde vernieuwen wanneer formule opnieuw wordt berekend in. Als u dit doet, klikt u op OK en klikt u onder Hulpmiddelen voor besturingselementen op het tabblad Eigenschappen in de groep Eigenschappen op Eigenschappen. Klik op het tabblad Weergave en schakel het selectievakje Alleen-lezen in.
Een formule in een regel gebruiken
Het is mogelijk om bij het opgeven van voorwaarden in validatie-, opmaak- of actieregels een formule te gebruiken om de voorwaarde te beheren. U kunt dit doen door Een formule gebruiken te selecteren in de derde vervolgkeuzelijst in het dialoogvenster Voorwaarde wanneer u een regel toewijst aan een besturingselement of de formuliersjabloon.
Datum- en tijdfuncties
addDays
Voegt dagen toe aan een datum of datum en tijd.
Syntaxis
addDays(datum, dagen)
| Argument | Beschrijving |
|---|---|
| datum | Het aantal dagen in het tweede argument wordt opgeteld bij de datum in dit argument. Dit argument kan een gegevenstype Datum (datum) of datum en tijd (datum/tijd) zijn. |
| dagen | Het aantal dagen dat u wilt toevoegen aan de datum in het eerste argument. Deze parameter moet een gegevenstype Geheel getal (geheel getal) zijn. Als u in dit argument een negatief getal gebruikt, is de retourwaarde een eerdere datum. |
Voorbeeld
U wilt dat een veld in uw formuliersjabloon een datum bevat die 60 dagen na de datum van vandaag is. Uw formuliersjabloon bevat een veld met de naam fldToday, met de datum van vandaag als standaardwaarde. Als u de nieuwe datum wilt berekenen met behulp van deze functie, gebruikt u de volgende formule in het nieuwe datumveld:
addDays(fldToday, 60)
addSeconds
Voegt seconden toe aan een tijd of datum en tijd.
Syntaxis
addSeconds(tijd, seconden)
| Argument | Beschrijving |
|---|---|
| tijd | Een datum- en tijdwaarde of een tijdwaarde die een verwijzing is naar een ander veld in de formuliersjabloon of het resultaat van een datum- of tijdfunctie, zoals now() of today(). Het aantal seconden in het tweede argument wordt opgeteld bij de tijd in dit argument. Dit argument kan een gegevenstype Datum (datum) of datum en tijd (datum/tijd) zijn. Als het een gegevenstype Tijd is, wordt een gegevenstype Tijd geretourneerd. Als het een gegevenstype Datum is, wordt het gegevenstype Datum en Tijd geretourneerd. |
| Seconden | Het aantal seconden dat u wilt toevoegen aan de datum- en tijdwaarde of tijdwaarde in het eerste argument. Het veld in deze parameter moet een gegevenstype Geheel getal (geheel getal) zijn. Als u in dit argument een negatief getal gebruikt, is de retourwaarde een eerdere datum en tijd of een eerdere tijd. |
Voorbeeld
Uw formuliersjabloon bevat een veld met de naam fldCurrentTime dat de huidige tijd als standaardwaarde gebruikt en een tweede veld dat de functie addSeconds gebruikt in een formule om de tijd weer te geven die 120 seconden van de huidige tijd is. Als u de nieuwe tijdwaarde wilt berekenen met behulp van deze functie, voert u de volgende formule in het tweede veld in:
addSeconds(fldCurrentTime, 120)
Nwo
Retourneert de huidige systeemdatum en -tijd.
Als u alleen de huidige datum wilt retourneren, gebruikt u de functie vandaag.
Syntaxis
now()
Deze functie gebruikt geen argumenten.
Voorbeeld
Gebruik de volgende formule in een veld om de datum en tijd op te halen waarop een formulier is gemaakt dat is gebaseerd op de formuliersjabloon:
now()
vandaag
Retourneert de huidige systeemdatum. Gebruik de functie now() voor datumvelden in de SharePoint-lijst.
Als u zowel de datum als de tijd wilt retourneren, gebruikt u de functie nu.
Syntaxis
today()
Deze functie gebruikt geen argumenten.
Voorbeeld
Gebruik de volgende formule in een veld om de datum op te halen waarop een formulier is gemaakt dat is gebaseerd op de formuliersjabloon:
today()
Veldfuncties
aantal
Telt het aantal exemplaren van een veld of groep.
Syntaxis
count(veld)
| Argument | Beschrijving |
|---|---|
| veld | De naam van het herhalende veld of de herhalende groep die in het formulier moet worden geteld. |
Voorbeeld
U ontwerpt een formuliersjabloon waarvan de formulieren door leveranciers worden gebruikt om hun producten en voorraad te rapporteren. De formuliersjabloon bevat een herhalende groep met de naam grpProduct voor de producten die door de leverancier worden ingediend. Elke groep bevat informatie over het product en het voorraadniveau. Wanneer een leverancier een product toevoegt in een formulier dat is gebaseerd op deze formuliersjabloon, maakt InfoPath een nieuw exemplaar van de herhalende groep.
De formuliersjabloon bevat een veld in de gegevensbron met het aantal producten dat door de leverancier is ingediend. Als u automatisch het aantal producten wilt tellen dat door de leverancier is ingediend, het aantal exemplaren van de herhalende groep grpProduct, gebruikt u de volgende formule in het veld aantal producten:
count(grpProduct)
Laatste
Retourneert het laatste exemplaar van een herhalend veld of groep.
Opmerking
Als u een browsercompatibele formuliersjabloon ontwerpt, wordt deze functie niet weergegeven in de lijst Functies in het dialoogvenster Functie invoegen.
Syntaxis
field_name[last()]
Hoewel de functie zelf geen vereiste parameters heeft, kunt u deze functie gebruiken als een predicaat voor een opgegeven veldnaam.
Voorbeeld
U ontwerpt een formuliersjabloon die leveranciers invullen om hun productinventarisaties te rapporteren. De formuliersjabloon heeft een gegevensverbinding met een webservice die een methode heeft waarmee wordt gecontroleerd of de productinformatie voor alle producten van een leverancier is voltooid. De methode heeft het laatste product in de lijst met producten nodig dat door de leverancier is ingediend.
De productgegevens worden opgeslagen in verschillende velden van een herhalende groep met de naam grpProduct. Wanneer een leverancier een product aan het formulier toevoegt, wordt in InfoPath een nieuwe herhalende groep met de naam grpProduct toegevoegd. Als de leverancier over meerdere producten rapporteert, bevat de gegevensbron van het formulier meerdere exemplaren van de groep grpProduct herhalen.
Om ervoor te zorgen dat u de juiste informatie naar de webservice verzendt, voegt u een veld toe dat informatie bevat over het laatste product in de groep producten van de leverancier. Als u dat veld wilt configureren om het laatste product automatisch op te halen, gebruikt u de volgende formule als standaardwaarde voor het laatste productveld:
grpProduct[last()]
local-name
Retourneert de lokale naam van een veld of groep.
Opmerking
- Als het argument een herhalend veld of een herhalende groep is, retourneert de functie de waarde van het eerste herhalende veld of de eerste herhalende groep.
- Wanneer een gebruiker een webbrowserformulier invult, verzendt een formule die gebruikmaakt van deze functie formuliergegevens naar de server om de retourwaarde voor deze functie op te halen.
Syntaxis
local-name(veld)
| Argument | Beschrijving |
|---|---|
| veld | De naam van het veld waarvan u het lokale naamkenmerk wilt retourneren. |
Voorbeeld
U ontwerpt een formuliersjabloon die wordt gebruikt voor vergunningsaanvragen. De formuliersjabloon heeft een gegevensverbinding met een methode in een webservice. Deze methode vereist de waarde van het kenmerk local-name van het veld voor het licentienummer van de contractant. De naam van het licentienummerveld is fldLicenseNumber.
U hebt een veld dat de waarde van het kenmerk lokale naam bevat. Als u automatisch de waarde van het kenmerk lokale naam van het licentienummerveld wilt ophalen, gebruikt u de volgende formule als standaardwaarde voor het veld dat de waarde van het kenmerk lokale naam bevat:
local-name(fldLicenseNumber)
naam
Retourneert de naam en het naamruimtevoorvoegsel van een veld of groep.
Opmerking
- Als het argument een herhalend veld of een herhalende groep is, retourneert de functie de naam en het voorvoegsel van het eerste herhalende veld of de eerste herhalende groep in het formulier.
- Wanneer een gebruiker een formulier invult op basis van een formuliersjabloon met browserfuncties, verzendt een formule die gebruikmaakt van deze functie formuliergegevens naar de server om de retourwaarde voor deze functie op te halen.
Syntaxis
name(field)
| Argument | Beschrijving |
|---|---|
| veld | De naam van het veld waarvan u het naamruimtevoorvoegsel en de naam wilt retourneren. |
Voorbeeld
U ontwerpt een formuliersjabloon die wordt gebruikt voor vergunningsaanvragen. De formuliersjabloon heeft een gegevensverbinding met een methode in een webservice. Voor deze methode is het naamkenmerk van het veld vereist voor het licentienummer van de contractant. De naam van het licentienummerveld is fldLicenseNumber.
U hebt een veld dat de waarde van het naamkenmerk bevat. Als u automatisch de waarde van het naamkenmerk wilt ophalen, gebruikt u de volgende formule als standaardwaarde voor het veld:
name(fldLicenseNumber)
naamruimte-uri
Retourneert de volledige naamruimte van een veld of groep.
Opmerking
- Als het argument een set velden of groepen is, retourneert de functie de naamruimte van het eerste veld of de eerste groep in het formulier.
- Wanneer een gebruiker een webbrowserformulier invult, verzendt een formule die gebruikmaakt van deze functie formuliergegevens naar de server om de retourwaarde voor deze functie op te halen.
Syntaxis
namespace-uri(field)
| Argument | Beschrijving |
|---|---|
| veld | De naam van het veld waarvan u de naamruimte-URI wilt ophalen. |
Voorbeeld
U ontwerpt een formuliersjabloon die wordt gebruikt voor vergunningsaanvragen. De formuliersjabloon verzendt gegevens naar een webservice. Voor het verwerken van de gegevens uit een formulier op basis van uw formuliersjabloon, vereist de webservice de naamruimte-URI van een specifiek elementveld in de gegevensbron. Het veld in de formuliersjabloon dat de URI-gegevens van de naamruimte bevat, heeft de naam fldComplete.
U hebt een veld dat de naamruimte-URI van het elementveld bevat. Als u de naamruimte-URI automatisch wilt ophalen, gebruikt u de volgende formule als standaardwaarde voor het veld dat de URI van de naamruimte bevat:
namespace-uri(fldComplete)
Positie
Retourneert de index (of positie) van een veld of groep ten opzichte van de andere velden of groepen in dezelfde bovenliggende groep.
Opmerking
Deze functie is niet beschikbaar in formuliersjablonen voor webbrowsers.
Syntaxis
position()
Voorbeeld
U ontwerpt een formuliersjabloon die leveranciers invullen om hun productinventarisaties te rapporteren. De productgegevens worden opgeslagen in velden in een herhalende groep. De herhalende groep is gebonden aan een herhalende tabel, waarmee een leverancier nieuwe productinformatie kan toevoegen of bestaande productgegevens kan herzien.
In de eerste kolom van de herhalende tabel wilt u het rijnummer in een tekstvak weergeven. Als u het rijnummer automatisch wilt weergeven wanneer de leverancier een nieuw product toevoegt aan de herhalende tabel, gebruikt u de volgende formule als standaardwaarde voor het tekstvak:
position()
Wiskundige functies
Formules die wiskundige functies bevatten, vereisen meestal argumenten die gehele getallen of decimale waarden zijn. Als u ervoor wilt zorgen dat argumenten een geheel getal of decimaal zijn in plaats van null-waarden, klikt u op Optiesvoor bestandsformulier>>geavanceerd en controleert u of het selectievakje Lege waarden als nul behandelen is ingeschakeld.
Avg
Berekent het gemiddelde van de numerieke waarden in een veld dat zich in een herhalende groep bevindt.
Opmerking
Het herhalende veld moet een numeriek gegevenstype zijn en moeten worden opgenomen in een groep.
Syntaxis
avg(veld)
| Argument | Beschrijving |
|---|---|
| veld | De namen van het herhalende veld in de groep waarvoor u de gemiddelde waarde wilt berekenen. |
Voorbeeld
U ontwerpt een formuliersjabloon waarvan de formulieren door leveranciers worden gebruikt om hun producten en voorraden te rapporteren. De formuliersjabloon bevat een herhalend veld met de naam fldPrice, dat zich in een herhalende groep bevindt die de gegevens bevat over elk product dat door de leverancier wordt verkocht. De groep is gebonden aan een herhalend tabelbeheer.
U hebt een veld in de formuliersjabloon dat de gemiddelde prijs bevat van alle producten die door die leverancier worden verkocht. Als u de gemiddelde prijs wilt berekenen, gebruikt u de volgende formule in het veld voor de gemiddelde prijs:
avg(fldPrice)
Booleaanse
Retourneert waar als er een veld of groep bestaat. Anders retourneert onwaar.
Dit retourneert true, zelfs als een besturingselement dat aan het veld is gekoppeld, is verwijderd, maar het veld nog bestaat.
Syntaxis
booleaanse waarde(veld)
| Argument | Beschrijving |
|---|---|
| veld | Een herhalend veld of herhalende groep die door deze functie moet worden gecontroleerd. |
Voorbeeld
U ontwerpt een formuliersjabloon die leveranciers gebruiken om hun productinventarisaties te rapporteren. De productgegevens worden opgeslagen in verschillende velden in een herhalende groep met de naam grpProduct. Elke herhalende groep bevat velden met informatie over elk product. Als de leverancier informatie verstrekt over zeven producten, bevat het formulier zeven herhalende groepen.
De herhalende groep is gebonden aan een herhalend tabelbeheer, waardoor de leverancier nieuwe productinformatie kan toevoegen of bestaande productgegevens kan herzien. De leverancier kan rijen toevoegen aan of verwijderen uit de herhalende tabel.
U wilt een dialoogvenster weergeven als de gebruiker alle rijen in de herhalende tabel verwijdert. U voegt een veld toe aan de gegevensbron met het woord 'true' als het herhalende tabelbesturingselement ten minste één rij heeft en het woord 'onwaar' als het herhalende tabelbesturingselement geen rijen heeft.
U configureert een regel in het herhalende tabelbeheer om een dialoogvenster weer te geven als de waarde in het veld onwaar is. Als u automatisch wilt bepalen of de herhalende tabel ten minste één rij bevat, gebruikt u de volgende formule omdat de standaardwaarde voor het veld het woord 'true' of 'false' bevat:
booleaanse waarde(grpProduct)
Plafond
Hiermee wordt een getal naar boven afgerond op het dichtstbijzijnde gehele getal.
Syntaxis
plafond(getal)
| Argument | Beschrijving |
|---|---|
| getal | De naam van het veld, dat een numerieke waarde heeft. |
Voorbeeld
U ontwerpt een formuliersjabloon voor onkostendeclaratie voor uw bedrijf. De onkosten worden verzonden naar een webservice met een parameter die alleen gehele getallen accepteert. Het onkostenbedrag dat naar deze parameter wordt verzonden, moet worden afgerond op het hogere gehele getal. Het onkostenbedrag wordt opgeslagen in een veld met de naam fldExpenseAmount en de waarde van het gehele getal wordt opgeslagen in een ander veld. Als u de hogere waarde voor een geheel getal wilt berekenen, gebruikt u de volgende formule als standaardwaarde voor het andere veld:
ceiling(fldExpenseAmount)
Als een gebruiker een formulier maakt op basis van uw formuliersjabloon en 145,87 invoert in het veld fldExpenseAmount, is de waarde in het veld dat de formule bevat 146.
Eval
Retourneert de waarden van een veld of groep. Het tweede argument definieert de expressie die moet worden berekend voor het veld of de groep. Meestal is de waardefunctie genest in een functie die werkt op een veld of groep, zoals de som of gem.
Syntaxis
eval(veld, expressie)
| Argument | Beschrijving |
|---|---|
| veld | De naam van het veld of de groep waarvan de waarden worden geëvalueerd door de expressie in het tweede argument. |
| expressie | De expressie die wordt toegepast op het eerste argument. De expressie kan een XPath-functie zijn of een expressie die tussen dubbele aanhalingstekens staat (" "). |
Voorbeeld
U ontwerpt een formuliersjabloon voor onkostendeclaratie voor uw bedrijf. De formuliersjabloon bevat een veld met de naam fldTotal dat een onkostenbedrag bevat. Het veld fldTotal maakt deel uit van een herhalende groep met de naam grpExpenses. Een ander veld is gebonden aan een tekstvak dat de som van alle onkosten bevat. Als u de som van alle onkosten wilt weergeven terwijl de gebruiker een onkostenbedrag invoert, gebruikt u de volgende formule in het veld totale onkosten:
eval(grpExpenses,sum(fldTotal))
false
Retourneert onwaar.
Syntaxis
false()
Deze functie gebruikt geen argumenten.
Voorbeeld
U ontwerpt een formuliersjabloon waarvan de formulieren door aannemers worden gebruikt om bouwvergunningen aan te vragen. De formuliersjabloon bestaat uit twee secties: een sectie voor contactgegevens en een andere sectie voor informatie met betrekking tot de bouwvergunning. Bij het invullen van dit formulier moeten aannemers de sectie contactgegevens volledig invullen voordat ze de bouwvergunning kunnen invullen.
Hiervoor maakt u een regel om de waarde van een Booleaans veld in te stellen op onwaar als een van de velden in de sectie contactgegevens leeg is. Een Booleaanse waardeveld kan een Booleaanse waarde waar of een Booleaanse onwaar waarde hebben. U configureert ook de voorwaardelijke opmaak om het sectie-besturingselement met de informatie over de bouwvergunning te verbergen als de booleaanse veldwaarde onwaar is.
Als u het sectie-besturingselement met de velden voor de informatie over de bouwvergunning wilt verbergen, configureert u een regel om deze functie uit te voeren in het booleaanse veld als een van de velden in de sectie contactgegevens leeg is.
Verdieping
Rondt een getal naar beneden af op het dichtstbijzijnde gehele getal.
Syntaxis
floor(number)
| Argument | Beschrijving |
|---|---|
| getal | De naam van het veld, dat een numerieke waarde heeft. |
Voorbeeld
U ontwerpt een formuliersjabloon voor onkostendeclaratie voor uw bedrijf. De onkosten worden verzonden naar een webservice die een parameter gebruikt die alleen gehele getallen accepteert. Het onkostenbedrag dat naar deze parameter wordt verzonden, moet worden afgerond op het lagere gehele getal. Het onkostenbedrag wordt opgeslagen in een veld met de naam fldExpenseAmount en de waarde van het gehele getal wordt opgeslagen in een ander veld. Als u het lagere gehele getal wilt berekenen, gebruikt u de volgende formule als standaardwaarde voor het andere veld:
floor(fldExpenseAmount)
Max
Retourneert het grootste getal in een veld of groep.
Syntaxis
max(veld)
| Argument | Beschrijving |
|---|---|
| veld | Een herhalend veld in een groep of een veld in een herhalende groep waarvoor u de hoogste waarde wilt vinden. |
Voorbeeld
U ontwerpt een formuliersjabloon waarvan de formulieren door leveranciers worden gebruikt om hun productinventarisaties te rapporteren. De formuliersjabloon bevat een herhalende groep met verschillende velden met gegevens over de producten van de leverancier. Een veld met de naam fldPrice in de herhalende groep bevat de prijs van een product.
Een ander veld in de gegevensbron van de formuliersjabloon bevat de hoogste prijs van alle producten die door die leverancier worden verkocht. Als u de hoogste prijs wilt retourneren, gebruikt u de volgende formule in het veld Hoogste prijs:
max(fldPrice)
Min
Retourneert het kleinste getal in een veld of groep.
Syntaxis
min(veld)
| Argument | Beschrijving |
|---|---|
| veld | Een herhalend veld in een groep of een veld in een herhalende groep waarvoor u de hoogste waarde wilt vinden. |
Voorbeeld
U ontwerpt een formuliersjabloon waarvan de formulieren door leveranciers worden gebruikt om hun productinventarisaties te rapporteren. De formuliersjabloon bevat een herhalende groep die verschillende velden bevat die gegevens bevatten over de producten van de leverancier. Een veld met de naam fldPrice in de herhalende groep bevat de prijs van een product.
Een ander veld in de gegevensbron van de formuliersjabloon bevat de laagste prijs van alle producten die door die leverancier worden verkocht. Als u de laagste prijs wilt retourneren, gebruikt u de volgende formule in het veld Laagste prijs:
min(fldPrice)
doen
Retourneert true als een Booleaanse waarde onwaar of null is. Retourneert onwaar als de Booleaanse waarde waar of niet null is.
Syntaxis
not(boolean_value)
| Argument | Beschrijving |
|---|---|
| boolean_value | Een veld met een Booleaanse gegevenstype. |
Voorbeeld
U ontwerpt een formuliersjabloon waarvan de formulieren door aannemers worden gebruikt om bouwvergunningen aan te vragen. De formuliersjabloon bevat een sectie voor contactgegevens en een andere sectie voor informatie met betrekking tot de bouwvergunning. Bij het invullen van dit formulier moeten aannemers de sectie contactgegevens volledig invullen voordat ze de bouwvergunning kunnen invullen.
Hiervoor maakt u een regel waarmee de waarde van een Boole-veld wordt ingesteld op onwaar als een van de velden in de sectie Contactgegevens leeg blijft. Een Booleaanse waardeveld kan de Booleaanse waarde true of de Booleaanse waarde onwaar hebben. Vervolgens gebruikt u dezelfde formule om het sectie-besturingselement te verbergen dat de informatie over de bouwvergunning bevat als de booleaanse veldwaarde onwaar is. Als u deze regel wilt instellen, gebruikt u de volgende formule om het booleaanse veld in te stellen op onwaar:
not(true())
getal
Converteert een waarde naar een getal.
De functie retourneert NaN als de waarde in het argument niet kan worden geconverteerd naar een getal.
Syntaxis
getal(waarde)
ArgumentDescription
valueHet veld met een waarde die moet worden omgezet in een getal.
Voorbeeld
U ontwerpt een formuliersjabloon waarvan de formulieren door aannemers worden gebruikt om bouwvergunningen aan te vragen. De formuliersjabloon bevat een sectie waarin de contractant zijn bedrijfsadres kan invoeren. Om te controleren of de contractant een geldig adres invoert, gebruikt u een gegevensverbinding met een webservice die het adres kan verifiëren. Als het adres is geverifieerd, kan de contractant het formulier indienen bij een SQL-database. De SQL-database gebruikt een tekstveld voor zowel het adresnummer als de straatnaam. De webservice vereist dat het adresnummer een numeriek gegevenstype is en dat de straatnaam een tekstgegevenstype is.
Als u gegevens wilt verzenden naar zowel de webservice als de SQL-database, moet het adres worden opgeslagen als twee verschillende gegevenstypen:
- Als u het adres naar de webservice wilt verzenden, moet het adresnummer een numeriek gegevenstype zijn en moet de straatnaam een gegevenstype tekst zijn.
- Als u het adres naar de SQL-database wilt verzenden, moeten zowel het adresnummer als de straatnaam een tekstgegevenstype zijn.
U wilt ook dat de aannemer zijn adres slechts één keer invoert. Om het adres te converteren naar de juiste gegevenstypen en ervoor te zorgen dat de aannemer zijn adres slechts eenmaal invoert, bevat de formuliersjabloon een veld met de naam fldAddressNumber voor het invoeren van het adresnummer en een ander veld voor het invoeren van de straatnaam. Beide velden zijn geconfigureerd als tekstgegevenstypen.
Als u het adresnummer wilt verzenden naar de webservice, moet u de gegevens in het veld fldAddressNumber (opgeslagen als een gegevenstype tekst) converteren naar een numeriek gegevenstype. De waarde van het adresnummer dat is geconverteerd naar een numeriek gegevenstype, wordt opgeslagen in een ander veld dat is geconfigureerd voor het opslaan van numerieke gegevenstypen.
Als u het adresnummer wilt converteren van een tekstgegevenstype naar een numeriek gegevenstype, gebruikt u de volgende formule als standaardwaarde voor het veld fldAddressNumber:
number(fldAddressNumber)
nz
Retourneert een veld of groep met alle lege velden die zijn vervangen door nul (0).
Syntaxis
nz(veld)
| Argument | Beschrijving |
|---|---|
| veld | Het veld dat u wilt controleren op een waarde. |
Voorbeeld
U ontwerpt een formuliersjabloon die leveranciers invullen om hun productinventarisaties te rapporteren. De leverancier verzendt zijn productinventarisaties naar een webservice via een formulier op basis van uw formuliersjabloon. De methode van de webservice vereist dat alle elementen die numerieke gegevens bevatten een numerieke waarde hebben. De webservice weigert een formulier dat een leeg numeriek element bevat.
Uw formuliersjabloon bevat een veld met de naam fldAvailability dat een getal bevat dat overeenkomt met de mogelijkheid van de leverancier om dit product te leveren. De leverancier kan een getal invoeren in dit veld. Gebruik de volgende formule als standaardwaarde voor dit veld om ervoor te zorgen dat de leverancier zijn formulier op basis van uw formuliersjabloon naar de webservice kan verzenden en de waarde van het veld automatisch kan instellen op nul als de leverancier geen getal invoert:
nz(fldAvailability)
Ronde
Hiermee wordt een getal afgerond op het dichtstbijzijnde gehele getal.
Als de niet-geheel getalwaarde precies halverwege twee afgeronde gehele getallen ligt, is de retourwaarde het op één na grootste gehele getal.
Syntaxis
round(number)
| Argument | Beschrijving |
|---|---|
| getal | Het veld met het getal dat wordt afgerond met behulp van deze formule. |
Voorbeeld
U ontwerpt een formuliersjabloon waarvan de formulieren door leveranciers worden gebruikt om hun productinventarisaties te rapporteren. De formuliersjabloon bevat een herhalende groep met verschillende velden met gegevens over de producten van de leverancier. Een van de velden fldPrice in de herhalende groep bevat de prijs van een product.
De formuliersjabloon heeft een gegevensverbinding voor verzenden naar een webservice. Voor de webservicemethode moet elke prijs worden afgerond op een geheel getal. Als u de juiste waarde naar de webservicemethode wilt verzenden, voegt u een herhalend veld toe aan de gegevensbron. In dit veld wordt de volgende formule gebruikt om de prijs in het veld fldPrice af te ronden op een geheel getal:
round(fldPrice)
Som
Retourneert de som van alle velden in een veld of groep. Elk veld wordt eerst geconverteerd naar een getalwaarde.
Syntaxis
sum(veld)
| Argument | Beschrijving |
|---|---|
| veld | De naam van een veld in een herhalende groep of een herhalend veld in een groep waarvan de waarden worden toegevoegd. Als u velden uit twee verschillende groepen wilt toevoegen, gebruikt u de samenvoegoperator (|) om de argumenten te scheiden. Bijvoorbeeld: som( veldnaam 1 | veldnaam 2). |
Voorbeeld
U ontwerpt een formuliersjabloon voor onkostendeclaratie. De formuliersjabloon heeft een groep die onkostenitems bevat. De hoeveelheid van elk item wordt opgeslagen in een veld met de naam fldExpenseAmount. De groep is gebonden aan een herhalende tabel waarin elk onkostenitem als een rij wordt weergegeven. De formuliersjabloon bevat een tekstvakbesturingselement waarin de totale kosten worden weergegeven. Het besturingselement tekstvak bevat de volgende formule om het totale aantal onkosten weer te geven:
sum(fldExpenseAmount)
waar
Retourneert waar.
Syntaxis
true()
Deze functie gebruikt geen argumenten.
Voorbeeld
U ontwerpt een formuliersjabloon waarvan de formulieren door aannemers worden gebruikt om bouwvergunningen aan te vragen. De formuliersjabloon bevat een sectie voor contactgegevens en een andere sectie voor informatie met betrekking tot de bouwvergunning. Bij het invullen van dit formulier moeten aannemers de sectie contactgegevens volledig invullen voordat ze de bouwvergunning kunnen invullen.
Hiervoor maakt u een regel waarmee de waarde van een Booleaanse veld wordt ingesteld op true als alle velden in de sectie contactgegevens gegevens bevatten. Een booleaanse waardeveld kan de Booleaanse waarde waar of onwaar hebben. Als de booleaanse veldwaarde true is, wordt het sectie-besturingselement met de bouwvergunningsgegevens weergegeven.
Als u het sectiebesturingselement wilt weergeven dat de informatie over de bouwvergunning bevat, configureert u een regel om deze functie uit te voeren in het booleaanse veld als alle velden in de sectie contactgegevens gegevens bevatten.
Tekstfuncties
Concat
Combineert twee of meer velden met teksttekenreeksen in één tekenreeks.
Syntaxis
concat(tekst1, tekst2, ...)
| Argument | Beschrijving |
|---|---|
| tekst1 | Een veld dat tekst bevat die moet worden gecombineerd tot één regel tekst met de tekst in argument2. |
| text2, ... | Erts of meer aanvullende velden die tekst bevatten die moet worden gecombineerd met het vorige veld. Tekstvelden scheiden met een komma. |
Voorbeeld
U ontwerpt een formuliersjabloon die een veld met de naam fldFirstName en een veld met de naam fldLastName bevat. Voeg de volgende formule toe aan een derde veld om ervoor te zorgen dat het de tekst 'Dit formulier is ingevuld met <voornaam><achternaam>':
concat("Dit formulier is ingevuld door ", fldFirstName, " ", fldLastName, ".")
Opmerking
Alle werkelijke tekst die als tekstargument wordt ingevoerd, inclusief spaties of interpunctie, moet tussen aanhalingstekens (").
Bevat
Retourneert true als het eerste veld of de eerste tekenreeks het tweede bevat. Anders retourneert onwaar.
Syntaxis
contains(within_text, find_text)
| Argument | Beschrijving |
|---|---|
| in_tekst | Het veld met de tekst die moet worden doorzocht. |
| zoeken_tekst | Het veld met de tekst of tekst tussen dubbele aanhalingstekens (" ") waarnaar in het eerste argument moet worden gezocht. |
Voorbeeld
U ontwerpt een formuliersjabloon met drie tekstvelden. Met de eerste kan een gebruiker een lange hoeveelheid tekst invoeren in het eerste tekstbeheer, met de naam fldText. Met de tweede kan een gebruiker een kort tekstsegment invoeren en heeft de naam fldFindText. Het derde tekstvak vergelijkt het tweede tekstvak met het eerste en geeft aan of de waarde in het tweede veld wordt gevonden in het eerste veld en het resultaat wordt weergegeven. Deze zou de volgende formule als standaardwaarde hebben:
contains(fldText,fldFindText)
normalize-spatie
Hiermee verwijdert u witruimte uit een tekenreeks.
Opmerking
Hiermee worden alle voorloop-, volg- en herhalende spaties uit een veld met een tekstgegevenstype verwijderd.
Syntaxis
normalize-spatie(tekst)
| Argument | Beschrijving |
|---|---|
| text | De tekst met de voorloop-, volg- of herhalende lege spaties die u wilt verwijderen. Plaats de tekst tussen dubbele aanhalingstekens (" "). |
Voorbeeld
U ontwerpt een formuliersjabloon met een veld met de naam fldText (dat is gebonden aan een tekstvakbesturingselement). Als u tekst in het eerste veld wilt normaliseren en wilt weergeven wat de waarde in het eerste veld is zonder overtollige witruimte, voegt u een tweede veld met de volgende formule als standaardwaarde toe:
normalize-space(fldText)
starts-with
Retourneert true als het eerste veld of de eerste tekenreeks begint met het tweede. Anders wordt onwaar geretourneerd.
Syntaxis
starts-with(tekst, start_text)
| Argument | Beschrijving |
|---|---|
| text | De naam van het veld met de tekst die moet worden doorzocht. Argumenten scheiden door een komma. |
| start_text | De tekst die moet worden doorzocht aan het begin van het veld dat in het eerste argument is opgegeven. Dit argument kan een veld of tekst zijn die tussen dubbele aanhalingstekens (" ") is geplaatst. |
Voorbeeld
U ontwerpt een formuliersjabloon met drie tekstvelden. Met de eerste kan een gebruiker een lange hoeveelheid tekst invoeren in het eerste tekstbeheer, met de naam fldText. Met de tweede kan een gebruiker een kort tekstsegment invoeren en heeft de naam fldFindText. Het derde tekstvak vergelijkt het tweede tekstvak met het eerste en geeft aan of de waarde in het eerste veld begint met de waarde in het tweede veld en het resultaat wordt weergegeven. Deze zou de volgende formule als standaardwaarde hebben:
starts-with(fldText, fldFindText)
reeks
Converteert een waarde naar een tekenreeks.
Syntaxis
tekenreeks(waarde)
| Argument | Beschrijving |
|---|---|
| waarde | Het veld met de waarde die moet worden geconverteerd naar tekst. |
Voorbeeld
U ontwerpt een formuliersjabloon waarvan de formulieren door aannemers worden gebruikt om bouwvergunningen aan te vragen. De formuliersjabloon bevat een sectie waarin de aannemer zijn bedrijfsadres kan invoeren. Om te controleren of de contractant een geldig adres invoert, heeft de formuliersjabloon een gegevensverbinding met een webservice die het adres kan verifiëren. Als het adres is geverifieerd, kan de contractant het formulier indienen bij een SQL-database. De SQL-database gebruikt een tekstveld voor het adres. De webservice vereist dat het adresnummer een numeriek gegevenstype is en dat de straatnaam een tekstgegevenstype is.
Als u gegevens wilt verzenden naar zowel de webservice als de SQL-database, moet het adres worden opgeslagen in twee verschillende gegevenstypen:
- Als u het adres wilt verzenden naar de webservice, moet het adresnummer een numeriek gegevenstype zijn.
- Als u het adres naar de SQL-database wilt verzenden, moeten zowel het adresnummer als de straatnaam een tekstgegevenstype zijn.
U wilt ook dat de aannemer zijn adres slechts één keer invoert. Om het adres te converteren naar de juiste gegevenstypen en ervoor te zorgen dat de aannemer zijn adres slechts eenmaal invoert, bevat het formulier een veld voor het invoeren van het adresnummer met de naam fldAddressNumber en een ander veld voor het invoeren van de straatnaam. Het veld fldAddressNumber is een numeriek gegevenstype en het veld straatnaam is een tekstgegevenstype.
Als u het volledige adres (zowel het adresnummer als de straatnaam) naar de SQL-database wilt verzenden, moet u de waarden in het veld fldAddressNumber en het veld straatnaam combineren in één waarde die een tekstgegevenstype is. Eerst moet u de numerieke gegevens in het veld fldAddressNumber, waarin de gegevens als een numeriek gegevenstype worden opgeslagen, converteren naar een tekstgegevenstype. U voegt een veld toe aan de gegevensbron dat het volledige adres als een tekstgegevenstype bevat.
Als u de tekstgegevens in het veld fldAddressNumber wilt converteren naar een tekstgegevenstype, zodat u de webservice kunt gebruiken, configureert u een ander veld dat het adresnummer als een tekstgegevenstype bevat. Als u het adresnummer wilt converteren van een numeriek gegevenstype naar een gegevenstype tekst, gebruikt u de volgende formule als standaardwaarde voor dit veld:
string(fldAddressNumber)
tekenreekslengte
Retourneert het aantal tekens in een tekenreeks.
Syntaxis
tekenreekslengte(tekst)
| Argument | Beschrijving |
|---|---|
| text | Het veld waarvan de waarde de tekst is die u wilt tellen. |
Voorbeeld
U ontwerpt een formuliersjabloon met een veld met de naam fldText, dat is gebonden aan een tekstvakbesturingselement. De formuliersjabloon bevat een tweede veld dat wordt gebruikt om het aantal tekens te tellen dat in het eerste formulier is ingevoerd. Hiervoor bevat het tweede veld de volgende formule als standaardwaarde:
tekenreekslengte(fldText)
Subtekenreeks
Retourneert een specifiek deel van een tekenreeks. Het tweede argument geeft de beginpositie op en het derde argument geeft aan hoeveel tekens moeten worden opgenomen.
Syntaxis
subtekenreeks(tekst, start_position; char_count)
| Argument | Beschrijving |
|---|---|
| text | Een veld met een gegevenstype of tekst tussen dubbele aanhalingstekens (""). De functie doorzoekt deze tekst en retourneert alle tekens vanaf de positie die is opgegeven in het tweede argument tot het aantal tekens dat is opgegeven in het derde argument of tot het einde van de tekst, afhankelijk van wat het eerst gebeurt. |
| start_position | De beginpositie van de tekst die moet worden opgehaald uit het eerste argument. Dit argument moet een geheel getal zijn of een verwijzing naar een veld dat is geconfigureerd voor het opslaan van gegevenstypen voor geheel getal (geheel getal). |
| char_count | Het aantal tekens dat u wilt ophalen, beginnend bij de beginpositie die is opgegeven in het tweede argument. Dit argument moet een geheel getal zijn of een verwijzing naar een veld dat is geconfigureerd voor het opslaan van gegevenstypen voor geheel getal (geheel getal). |
Voorbeeld
U ontwerpt een formuliersjabloon die de volgende velden en besturingselementen bevat:
- Een veld met de naam fldText dat is gebonden aan een tekstvak besturingselement. Dit veld bevat de tekst die door de functie wordt gezocht.
- Een veld met de naam fldStartingPosition dat is gebonden aan een tekstvak besturingselement. Dit veld is geconfigureerd als een gegevenstype geheel getal. Het veld bevat de beginpositie voor de functie.
- Een veld met de naam fldNumberOfCharacters dat is gebonden aan een tekstvak besturingselement. Dit veld is geconfigureerd als een gegevenstype geheel getal. Het veld bevat het aantal tekens dat de functie retourneert.
- Een besturingselement voor een tekstvak waarin de resultaten van de functie worden weergegeven. Het besturingselement tekstvak bevat de volgende formule:
substring(fldText, fldStartingPosition, fldNumberOfCharacters)
Als een gebruiker 'Dit formulier is gemaakt op basis van een InfoPath-formuliersjabloon' invoert. in het eerste tekstvak, gevolgd door 4 in het tweede en 16 in het derde tekstvak, zou het vierde tekstvak 's form was creat' bevatten.
subtekenreeks na
Retourneert de tekst in de eerste tekenreeks die volgt op het eerste exemplaar van de tweede tekenreeks.
Syntaxis
subtekenreeks na(tekst, find_text)
| Argument | Beschrijving |
|---|---|
| text | Een veld met een gegevenstype of tekst tussen dubbele aanhalingstekens (""). De functie doorzoekt de tekst in dit argument en retourneert vervolgens alle tekens die volgen op de tekst in het tweede argument. |
| zoeken_tekst | De tekst die moet worden gezocht in de tekst van het eerste argument. De tekst kan de waarde in het veld zijn met een gegevenstype tekst of tekst tussen dubbele aanhalingstekens (""). De functie doorzoekt de tekst in het eerste argument voor deze tekst en retourneert vervolgens alle tekens die volgen op de tekst in dit argument. |
Voorbeeld
U ontwerpt een formuliersjabloon die de volgende velden en besturingselementen bevat:
- Een veld met de naam fldText dat is gebonden aan een tekstvak besturingselement. Dit veld bevat de tekst die door de functie wordt gezocht.
- Een veld met de naam fldSubstringText dat is gebonden aan een tekstvak besturingselement. Dit veld bevat de tekst die het tweede argument van de functie is.
- Een besturingselement voor een tekstvak waarin de resultaten van de functie worden weergegeven. Het besturingselement tekstvak bevat de volgende formule:
substring-after(fldText, fldSubstringText)
Als een gebruiker 'Dit formulier is gemaakt op basis van een InfoPath-formuliersjabloon' invoert. in het veld fldText en 'InfoPath' in het tweede, zou het derde tekstvak 'formuliersjabloon' bevatten.
subtekenreeks voor
Retourneert de tekst in de eerste tekenreeks die voorafgaat aan het eerste exemplaar van de tweede tekenreeks.
Syntaxis
substring-before(tekst, find_text)
| Argument | Beschrijving |
|---|---|
| text | Een veld met een gegevenstype of tekst tussen dubbele aanhalingstekens (""). De functie doorzoekt de tekst in dit argument en retourneert vervolgens alle tekens vóór de tekst in het tweede argument, find_text. |
| zoeken_tekst | De waarde die moet worden gezocht in het tekstargument. Deze waarde kan de waarde zijn in een veld met een gegevenstype tekst of tekst tussen dubbele aanhalingstekens (""). De functie doorzoekt de tekst in het eerste argument (tekst) voor deze tekst en retourneert vervolgens alle tekens vóór de tekst in dit argument. |
Voorbeeld
U ontwerpt een formuliersjabloon met de volgende velden en besturingselementen:
- Een veld met de naam fldText dat is gebonden aan een tekstvak besturingselement. Dit veld bevat de tekst die door de functie wordt gezocht.
- Een veld met de naam fldSubstringText dat is gebonden aan een tekstvak besturingselement. Dit veld bevat de tekst die het tweede argument van de functie is.
- Een besturingselement voor een tekstvak waarin de resultaten van de functie worden weergegeven. Het besturingselement tekstvak bevat de volgende formule:
substring-before(fldText, fldSubstringText)
Als een gebruiker 'Dit formulier is gemaakt op basis van een InfoPath-formuliersjabloon' invoert. in het veld fldText en 'gemaakt' in het tweede, zou het derde tekstvak 'Dit formulier was' bevatten.
vertalen
Retourneert de eerste tekenreeks waarbij elk teken in de tweede tekenreeks wordt vervangen door het teken op de bijbehorende positie in de derde tekenreeks.
Syntaxis
translate(text, find_chars, replace_chars)
| Argument | Beschrijving |
|---|---|
| text | De naam van het veld met de tekst waarvan de tekens worden vervangen. Argumenten scheiden met een komma. |
| find_chars | Een teken of de waarde van een veld met een gegevenstype tekst dat wordt vervangen door de tekens in het derde argument. Argumenten scheiden met een komma. |
| replace_chars | Een teken of de waarde van een veld met een tekstgegevenstype dat elk exemplaar van het teken in het tweede argument vervangt. |
Voorbeeld
U ontwerpt een formuliersjabloon waarvan de formulieren door aannemers worden gebruikt om bouwvergunningen aan te vragen. De formuliersjabloon bevat een sectie waarin de aannemer zijn bedrijfsadres kan invoeren. De sectie bevat een veld met de naam fldStreetAddress dat is gebonden aan een tekstvak besturingselement waarin de aannemer zijn adres kan invoeren.
Om te controleren of de contractant een geldig adres invoert, hebt u een gegevensverbinding met een webservice die het adres kan verifiëren. De webservice vereist kleine letters in het adres.
Als u een hoofdletter in het adres wilt converteren naar kleine letters, voegt u een ander veld toe aan de gegevensbron om het adres te bevatten dat wordt geconverteerd naar kleine letters. De standaardwaarde van dit veld bevat de volgende formule:
translate(fldStreetAddress, ABCDEFGHIJKLMNOPQRSTUVWXYZ, abcdefghijklmnopqrstuvwxyz)
URL-functies
SharePointListUrl
Retourneert het adres van de SharePoint-lijst of formulierbibliotheek waar het formulier wordt gehost (alleen InfoPath 2010).
Syntaxis
SharePointListUrl()
Deze functie gebruikt geen argumenten.
Voorbeeld
U ontwerpt een formuliersjabloon voor een SharePoint-lijst en wilt een koppeling toevoegen naar de locatie waar de lijst wordt gehost, zoals 'http://sharepointserver/site/list/'. Hiervoor voegt u een hyperlinkbesturingselement toe en stelt u dit in op Alleen-lezen en stelt u de standaardwaarde van het veld waaraan het besturingselement is gekoppeld als volgt in:
SharePointListUrl()
Opmerking
Als de formuliersjabloon niet wordt gehost op een SharePoint-server, retourneert de functie SharePointListUrl() alleen 'http://sharepointserver/site/list/'.
SharePointServerRootUrl
Retourneert het adres van de SharePoint-server waarop het formulier wordt gehost (alleen InfoPath 2010).
Syntaxis
SharePointServerRootUrl()
Deze functie gebruikt geen argumenten.
Voorbeeld
U ontwerpt een formuliersjabloon voor een SharePoint-lijst en wilt een koppeling toevoegen naar de hoofdmap van de SharePoint-server waarop de lijst wordt gehost, zoals 'http://sharepointserver/site/list/'. Hiervoor voegt u een hyperlinkbesturingselement toe en stelt u dit in op Alleen-lezen en stelt u de standaardwaarde van het veld waaraan het besturingselement is gekoppeld als volgt in:
SharePointServerRootUrl()
Opmerking
Als de formuliersjabloon niet wordt gehost op een SharePoint-server, retourneert de functie SharePointListUrl() alleen 'http://sharepointserver/site/list/'.
SharePointCollectionUrl
Retourneert het adres van de SharePoint-siteverzameling waar het formulier wordt gehost (alleen InfoPath 2010).
Syntaxis
SharePointCollectionUrl()
Deze functie gebruikt geen argumenten.
Voorbeeld
U ontwerpt een formuliersjabloon voor een SharePoint-lijst en u wilt een koppeling toevoegen naar de siteverzameling van de SharePoint-server waarop de lijst wordt gehost, zoals 'http://sharepointserver/sitecollection/'. Hiervoor voegt u een hyperlinkbesturingselement toe en stelt u dit in op Alleen-lezen en stelt u de standaardwaarde van het veld waaraan het besturingselement is gekoppeld als volgt in:
SharePointCollectionUrl()
Opmerking
Als de formuliersjabloon niet wordt gehost op een SharePoint-server, retourneert de functie SharePointListUrl() alleen 'http://sharepointserver/sitecollection/'.
SharePointSiteUrl
Retourneert het adres van de SharePoint-site waar het formulier wordt gehost (alleen InfoPath 2010).
Syntaxis
SharePointSiteUrl()
Deze functie gebruikt geen argumenten.
Voorbeeld
U ontwerpt een formuliersjabloon voor een SharePoint-lijst en u wilt een koppeling toevoegen naar de SharePoint-site waarop de lijst wordt gehost, zoals 'http://sharepointserver/site/'. Hiervoor voegt u een hyperlinkbesturingselement toe en stelt u dit in op Alleen-lezen en stelt u de standaardwaarde van het veld waaraan het besturingselement is gekoppeld als volgt in:
SharePointSiteUrl()
Opmerking
Als de formuliersjabloon niet wordt gehost op een SharePoint-server, retourneert de functie SharePointListUrl() alleen 'http://sharepointserver/site/'.
De functie userName
Gebruikersnaam
Retourneert de gebruikersnaam van de persoon die het formulier invult (Microsoft InfoPath 2007 en hoger).
Opmerking
Als de gebruiker een formulier invult in een webbrowser, wordt de gebruikersnaam opgehaald uit Microsoft Windows SharePoint Services 3.0 of hoger.
Syntaxis
userName()
Deze functie gebruikt geen argumenten.
Voorbeeld
U ontwerpt een formuliersjabloon voor onkostendeclaratie voor uw bedrijf. Uw creditcardmaatschappij verzendt de administratie van de onkosten van uw werknemers elektronisch naar een database die uw bedrijf bijhoudt. Om de onkostenrecords voor een werknemer op te halen, heeft de database de gebruikersnaam nodig van de werknemer die een formulier invult dat is gebaseerd op uw formuliersjabloon.
U voegt een veld toe aan de gegevensbron van de formuliersjabloon om de gebruikersnaam van de werknemer op te slaan. U maakt ook een querygegevensverbinding die de waarde van dit veld in een query gebruikt om de onkosten op te halen.
Om ervoor te zorgen dat de werknemer die de onkostendeclaratie invult, de juiste gebruikersnaam gebruikt, verbindt u het veld aan een tekstvakbesturingselement. Als u de gebruikersnaam wilt weergeven van de gebruiker die een formulier maakt op basis van deze formuliersjabloon, gebruikt u de volgende formule als de standaardwaarde van een veld dat is gebonden aan het tekstvakbesturingselement:
userName()
Naar boven