Afdrukken      PDF-versie openen van online-help


Vorig onderwerp

Volgend onderwerp

Expressies

Een expressie is een geldige combinatie van een of meer operatoren, functies, velden en letterlijke waarden die door Oracle CRM On Demand kunnen worden geëvalueerd. Dit onderwerp bevat informatie over de volgende functies voor expessies:

  • Velden en veldnaamindeling in expressies
  • Expressielengte
  • Lengte letterlijke waarde
  • Conditionele expressies
  • Validatie-expressies
  • Afhankelijke velden gebruiken in expressies

Velden en syntaxis van veldnamen in expressies

De meeste velden die beschikbaar zijn op de pagina 'Veldset-up' voor een type record, zijn ook beschikbaar in de lijst met velden voor dit type record in Expression Builder. De velden kunnen worden gebruikt in expressies.

OPMERKING: aangepaste velden van het veldtype 'Tekst (kort - masker mogelijk)' zijn hierop een uitzondering. U kunt deze velden niet gebruiken in een expressie in Expression Builder.

Als u een veld toevoegt aan een expressie door de veldnaam te selecteren in de lijst met velden in Expression Builder, wordt het veld met de volgende syntaxis ingevoerd in de expressie-editor:

[{FieldName}]

De veldnamen die worden weergegeven in de expressie-editor, zijn taalonafhankelijke veldnamen die worden gebruikt om de velden intern in Oracle CRM On Demand te identificeren. Hoewel u ook veldnamen direct in de expressie-editor kunt typen met de syntaxis [{FieldName}], wordt u aangeraden altijd de velden te selecteren uit de lijst met velden zodat de veldnamen in de expressie correct zijn.

Veldnamen en syntaxis van veldnamen in expressies in eerdere versies

Wanneer u in versies eerder dan Versie 29 Service Pack 1 van Oracle CRM On Demand een veld selecteerde uit de lijst met velden in Expression Builder, werd het veld ingevoerd in de expressie-editor met de volgende syntaxis:

[<FieldName>]

Daarnaast werden in versies eerder dan Versie 29 Service Pack 1 van Expression Builder taalonafhankelijke veldnamen gebruikt die verschillen van de taalonafhankelijke veldnamen die werden gebruikt in Expression Builder in Versie 29 Service Pack 1 en latere versies. Alle expressies waarvoor de syntaxis [<FieldName>] en de overeenkomende veldnamen worden gebruikt en die geldig waren in eerdere versies, zijn nog steeds geldig in Versie 29 Service Pack 1 en latere versies. Als u wilt, kunt u ook nog steeds de oude taalonafhankelijke veldnamen met de syntaxis [<FieldName>] direct in de expressie-editor blijven typen. U wordt echter aangeraden altijd de velden te selecteren in de lijst met velden in Expression Builder zodat de veldnamen en de syntaxis van de velden altijd correct zijn.

Een expressie mag een combinatie bevatten van de nieuwe veldnamen en de oude veldnamen, op voorwaarde dat de syntaxis [{FieldName}] wordt gebruikt voor de nieuwe veldnamen en de syntaxis [<FieldName>] wordt gebruikt voor de oude veldnamen.

Voorbeelden in online-help van Oracle CRM On Demand

Voor sommige voorbeelden van expressies die worden gebruikt in de online-help worden de taalonafhankelijke veldnamen en de syntaxis van de veldnaam gebruikt die werden gebruikt in versies vóór Versie 29 Service Pack 1. Deze voorbeelden zijn nog steeds geldig. Als u echter de overeenkomende velden selecteert in de lijst met velden in Expression Builder wanneer u een expressie maakt of bijwerkt in Versie 29 Service Pack 1 of later, zijn de veldnamen in de expressie anders dan de veldnamen die worden gebruikt in de voorbeelden in de online-help, en worden de velden weergegeven in de expressie-editor met de nieuwe veldsyntaxis.

Expressielengte

De maximaal ondersteunde lengte van een expressie voor de hoofdtekst van een e-mailbericht dat met de actie 'E-mail verzenden' in een workflowregel is gemaakt, is 2000 tekens, inclusief spaties. U kunt een regeleinde in het e-mailbericht invoegen door op 'Enter' te drukken. Een regeleinde telt in het tekstvak als twee tekens.

In alle andere gevallen waarin Expression Builder wordt gebruikt, is de maximaal ondersteunde lengte van een expressie 1024 tekens, inclusief spaties.

U moet er ook voor zorgen dat het totale aantal tekens in het veld waarin u de expressie opslaat, de limiet van dat veld niet overschrijdt. In de volgende workflowvelden worden er drie procenttekens (%%%) voor en na functies en veldnamen geplaatst:

  • De velden 'Onderwerp' en 'Berichttekst' van een e-mailbericht, ingesteld via de actie 'E-mail verzenden'
  • De velden 'Onderwerp' en 'Omschrijving' van een taak, ingesteld via de actie 'Taak maken'

De procenttekens geven aan dat de functie of de veldnaam in een tekstwaarde moet worden geconverteerd. Elk procentteken telt als één teken in het veld waarin de expressie wordt opgeslagen.

Als u een functie of veldnaam rechtstreeks in het veld typt, moet u drie procenttekens ervoor en erachter plaatsen. Als u voor het insluiten van een functie of veldnaam gebruikmaakt van Expression Builder, worden de procenttekens automatisch toegevoegd.

Bijvoorbeeld: u gebruikt Expression Builder om de volgende veldnaam in de berichttekst van een e-mailbericht van een workflowactie in te voegen:

[{Name}]

Met Expression Builder worden de volgende tekens (in totaal 14) ingevoegd in de berichttekst van het e-mailbericht van de workflowactie:

%%%[{Name}]%%%

Lengte letterlijke waarde

Wanneer een tekenreeks of een numerieke letterlijke waarde in Expression Builder wordt doorgegeven aan een functie, mag de letterlijke waarde niet meer dan 75 tekens bevatten, inclusief spaties. Als een letterlijke waarde meer dan 75 tekens bevat, wordt de letterlijke waarde in Expression Builder opgevat als syntaxisfout. Wanneer u een tekenreeks doorgeeft aan een functie door te verwijzen naar een veldnaam, is de limiet van 75 tekens niet van toepassing op de lengte van de waarde in het veld dat aan de letterlijke waarde wordt doorgegeven.

Wanneer u een expressie maakt om een standaardwaarde voor een veld in te stellen, is de limiet van 75 tekens van toepassing op elke tekenreeks of op elke numerieke letterlijke waarde die aan elke willekeurige functie in de expressie wordt doorgegeven. Bovendien mag het aantal tekens in het resultaat van de expressie het maximum aantal tekens dat is toegestaan in het veld niet overschrijden.

Conditionele expressies

Een conditionele expressie is een expressie die, wanneer deze door een toepassing wordt geëvalueerd, altijd een Booleaanse waarde retourneert, bijvoorbeeld 'True' of 'False'.

OPMERKING: 'Yes', 'No', 'Y' en 'N' zijn geen Booleaanse waarden. Als u 'True' of 'False' opgeeft als retourwaarden voor functies zoals de functie IIf, worden 'True' en 'False' als tekenreeks geretourneerd en niet als Booleaanse waarden. Het gebruik van onjuiste Booleaanse waarden in conditionele expressies kan leiden tot onvoorspelbaar gedrag.

Een expressie die in een van de volgende contexten wordt gebruikt, moet een conditionele expressie zijn:

  • Opgeven van een regel voor veldvalidering
  • Opgeven van een conditie in een workflowregel
  • Als de eerste parameter in de functie IIf

Validatie-expressies

Validatie-expressies worden gebruikt om te controleren of er geldige gegevens in velden worden ingevoerd. Een validatie-expressie moet een conditionele expressie zijn.

Een validatie-expressie voor een veld wordt geëvalueerd wanneer de record wordt gemaakt en telkens wanneer het veld door een gebruiker wordt bijgewerkt, behalve in de volgende omstandigheden:

  • Wanneer de record wordt gemaakt, blijft een veld leeg. Bij veldvalidatie wordt geen waarde afgedwongen.
  • Een veld heeft een bestaande, ongeldige waarde. Deze waarde wordt niet gewijzigd wanneer het veld wordt bijgewerkt.

Als een validatie-expressie niet wordt geëvalueerd of als een validatie-expressie evalueert naar een lege waarde, wordt geen foutbericht gegenereerd. Dat gebeurt alleen als de validatie-expressie mislukt (ofwel als de validatie-expressie wordt geëvalueerd naar 'FOUT'.)

Een validatie-expressie verschilt in dit opzicht van andere expressietypen dat dit expressietype met een conditionele operator kan beginnen. Als bijvoorbeeld het veld 'Naam account' wordt gevalideerd door de expressie, kan de expressie beginnen met:

= 'Acme Ziekenhuis'.

Deze expressie, die niet erg goed is geformuleerd, komt wel door de syntaxiscontrole, omdat Oracle CRM On Demand de naam van het veld dat wordt gevalideerd voor de expressie invoegt als er aan het begin van de expressie geen veldnaam staat. U kunt de validatie-expressie ook als volgt invoeren:

[<AccountName>]= 'Acme Hospital'

waarbij [<AccountName>] het veld is dat wordt gevalideerd.

Als er voor de expressie behalve het veld dat wordt gevalideerd, ook andere velden moeten worden geëvalueerd, wordt als standaardprocedure de eerste vergelijking in de expressie uitgevoerd op het veld dat wordt geëvalueerd.

Validatie-expressies worden alleen gebruikt in het veld 'Veldvalidering' in geavanceerd veldbeheer in Oracle CRM On Demand.

Voorbeelden van validatie-expressies

Voorbeeld 1: voor een bedrijfsproces mag de datum gerealiseerd van een verkoopkans niet later vallen dan de aanmaakdatum van de verkoopkans.

Om dit proces te kunnen implementeren moet er als volgt een validatie-expressie voor het veld 'Datum gerealiseerd' (op de pagina 'Veldset-up' voor verkoopkansen) worden gemaakt:

> [<CreatedDate>]

U kunt ook het volgende voorbeeld gebruiken, maar houd er wel rekening mee dat het veld dat wordt geëvalueerd (datum gerealiseerd), het eerste veld in de expressie moet zijn:

[<CloseDate>] > [<CreatedDate>]

Zie Velden maken en bewerken voor meer informatie over het maken en bewerken van velden.

Voorbeeld 2: voor een bedrijfsproces mag de omzet van een verkoopkans niet nul zijn wanneer de waarschijnlijkheid van de verkoopkans 40% of meer is.

De bedrijfsregel geeft aan dat de afhankelijkheid is gebaseerd op beide velden en als volgt opnieuw kan worden geformuleerd:

Voor een verkoopkans mag de omzet niet nul zijn wanneer de waarschijnlijkheid groter is dan of gelijk is aan 40. Omgekeerd mag de waarschijnlijkheid niet groter zijn dan of gelijk zijn aan 40 als de omzet nul is.

Een validatie-expressie voor een veld wordt geëvalueerd wanneer de record wordt gemaakt en elke keer als het veld door een gebruiker wordt bijgewerkt. Omdat een update voor het veld 'Waarschijnlijkheid' of het veld 'Omzet' van invloed op beide velden kan zijn, moeten er validatieregels voor zowel het veld 'Waarschijnlijkheid' als het veld 'Omzet' zijn om de bedrijfsregel correct te implementeren. (Zie Velden maken en bewerken voor informatie over het maken en bewerken van velden.)

U kunt dit voorbeeld implementeren door de volgende stappen uit te voeren:

  1. Configureer de volgende validatieregel voor het veld 'Waarschijnlijkheid':

    < 40 OR ([<Probability>]>= 40 AND [<Revenue>]> 0)

    Let erop dat u het procentteken (%) niet gebruikt.

  2. Voeg aan het veld 'Waarschijnlijkheid' een validatiefoutbericht met de volgende strekking toe:

    De omzet moet groter zijn dan 0 wanneer de waarschijnlijkheid groter is dan of gelijk is aan 40%.

  3. Configureer de volgende validatieregel voor het veld 'Omzet':

    (> 0 AND [<Probability>]>= 40) OR [<Probability>]< 40

  4. Voeg aan het veld 'Omzet' een validatiefoutbericht met de volgende strekking toe:

    De omzet moet groter zijn dan 0 wanneer de waarschijnlijkheid groter is dan of gelijk is aan 40%.

Afhankelijke velden gebruiken in expressies

Een afhankelijk veld is een samengevoegd veld waarvan de waarden afhankelijk zijn van een externe sleutel. Een samengevoegd veld is een veld van een recordtype waarin een externe sleutel wordt gebruikt om naar een veld van een ander recordtype te verwijzen. Een voorbeeld van een afhankelijk veld is het veld 'AccountName' voor het type record 'Opportunity'. Het veld 'AccountName' voor het type record 'Opportunity' is een samengevoegd veld waarvan de waarden afhankelijk zijn van het externe sleutelveld 'AccountId', dat verwijst naar het type record 'Account'

Als met de expressie de waarde van een afhankelijk veld moet worden bepaald, wordt aanbevolen dat u de functie 'JoinFieldValue' gebruikt en de meest recente waarde van het veld ophaalt via het veld 'ID' (het veld met de externe sleutel). Anders zijn de resultaten van de expressie mogelijk onjuist en is het resultaat van de expressiewaarde mogelijk ongeldig. Zie JoinFieldValue voor meer informatie over samengevoegde velden en de functie 'JoinFieldValue'.

Verwante onderwerpen

Zie de volgende onderwerpen voor meer informatie over Expression Builder:


Gepubliceerd op september 2017 Copyright © 2005, 2017, Oracle. Alle rechten voorbehouden. Legal Notices.