Imprimer      Ouvrir la version PDF de l'aide en ligne


Rubrique précédente

Rubrique suivante

JoinFieldValue

Un type d'enregistrement peut faire référence à un autre à l'aide d'une clé étrangère. Un champ joint est un champ d'un type d'enregistrement qui utilise une clé étrangère pour faire référence à un champ d'un autre type d'enregistrement. Par exemple, pour la plupart des types d'enregistrement, le champ OwnerId est une clé étrangère qui fait référence au type d'enregistrement Utilisateur. Dans de nombreux enregistrements, le champ Titulaire est un champ joint qui utilise la clé étrangère OwnerId pour faire référence au champ Pseudonyme sur le type d'enregistrement Utilisateur.

La fonction JoinFieldValue d'Expression Builder renvoie la valeur d'un champ joint lorsque le type d'enregistrement référencé et les clés étrangères correspondantes sont spécifiés dans la fonction. Cette fonction permet également de récupérer d'autres champs du type d'enregistrement référencé qui ne sont pas directement liés à l'objet référenceur, ce qui vous permet de rechercher des champs de types d'enregistrement liés.

Si le champ ID d'un type d'enregistrement référencé est utilisé en tant que clé étrangère dans le type d'enregistrement dans lequel vous configurez une règle de workflow, vous pouvez utiliser la fonction JoinFieldValue pour extraire les valeurs de champ du type d'enregistrement référencé.

Vous pouvez également utiliser les champs de clé étrangère suivants, disponibles dans tous les types d'enregistrement, pour extraire les valeurs de champ du type d'enregistrement Utilisateur.

  • CreatedById
  • ModifiedById

REMARQUE : La fonction JoinFieldValue ne peut pas renvoyer les valeurs des champs suivants dans le type d'enregistrement Activité : Nombre de transactions de remise d'échantillon, Nombre détaillé de produits, Nombre d'articles promotionnels offerts et Nombre d'échantillons remis. Cette limite s'explique par la façon dont Oracle CRM On Demand calcule les valeurs de ces champs.

Syntaxe

JoinFieldValue (ref_record_type, foreign_key, field_name)

Type du résultat

Chaîne.

Si une erreur se produit ou si le champ sur lequel la requête est effectuée est vide, la requête renvoie une chaîne de longueur zéro.

Arguments

Le tableau suivant décrit les arguments de la fonction.

Argument

Description

ref_record_type

Nom indépendant de la langue du type d'enregistrement référencé. (Un nom indépendant de la langue est un nom qui reste identique quelle que soit la langue choisie par l'utilisateur.)

L'argument doit apparaître entre identificateurs de nom de champ. Par exemple :

'<Account>'

foreign_key

Littéral ou expression qui renvoie un ID de ligne valide du type d'enregistrement référencé (spécifié dans l'argument ref_record_type). Si l'ID de ligne n'est pas valide, la fonction renvoie une chaîne de longueur zéro. Les références de champ directes doivent apparaître entre identificateurs de champ. Par exemple :

[<AccountId>]

field_name

Nom indépendant de la langue d'un champ du type d'enregistrement référencé (spécifié par l'argument ref_record_type). Si le champ n'existe pas dans le type d'enregistrement référencé, une erreur est générée. Le nom de champ doit apparaître entre identificateurs de champ. Par exemple :

'<Type>'

Remarque : Les noms de champ indépendants de la langue et la syntaxe de nom de champ utilisés dans les exemples d'expressions de cette rubrique sont ceux utilisés dans Expression Builder, dans les versions antérieures à la version 29 Service Pack 1. Ces exemples restent valides. Toutefois, si vous sélectionnez les champs correspondants pour une expression de la liste Champs d'Expression Builder dans la version 29 Service Pack 1 ou version ultérieure, les noms de champ et leur syntaxe seront différents de ceux utilisés dans les exemples. Il est recommandé de toujours sélectionner les champs de vos expressions dans la liste Champs d'Expression Builder afin que les noms de champ et leur syntaxe soient toujours corrects. Pour plus d'informations sur les noms de champ et leur syntaxe dans les expressions, reportez-vous à la rubrique A propos des expressions.

Exemples

Exemple 1 : Un processus nécessite une règle de workflow pour rechercher le nom du nouveau titulaire d'un enregistrement modifié. Lors du changement de titulaire, seule la clé étrangère OwnerId de l'enregistrement est mise à jour. Ainsi, la condition suivante d'une règle de workflow ne recherche pas le nouveau titulaire de l'enregistrement :

PRE('<Owner>') <> [<Owner>]

Vous pouvez utiliser la condition suivante pour rechercher le nouveau titulaire de l'enregistrement :

PRE('<Owner>') <> JoinFieldValue('<User>',[<OwnerId>],'<Alias>')

Exemple 2 : Pour obtenir l'adresse e-mail de l'ancien titulaire d'un enregistrement, utilisez l'expression suivante :

JoinFieldValue('<User>',PRE('<OwnerId>'),'<EMailAddr>')

Exemple 3 : Pour obtenir l'adresse e-mail du titulaire actuel d'un enregistrement, utilisez l'expression suivante :

JoinFieldValue('<User>',[<OwnerId>],'<EMailAddr>')

Exemple 4 : Un processus nécessite l'envoi d'un e-mail de demande d'assistance à un contact. Avant l'envoi de cet e-mail, la règle de workflow vérifie que le contact a accepté de recevoir des e-mails. La règle de workflow (basée sur le type d'enregistrement de la demande d'assistance) comporte la condition suivante :

JoinFieldValue('<Contact>',[<ContactId>],'<NeverEmail>')<> 'Y'

Exemple 5 : Pour connaître le territoire du compte principal d'une demande d'assistance, utilisez l'expression suivante :

JoinFieldValue('<Territory>', JoinFieldValue('<Account>', [<AccountId>], '<TerritoryId>'),'<TerritoryName>')

Rubriques connexes

Pour obtenir des informations sur Expression Builder, reportez-vous aux rubriques suivantes :


Publié en septembre 2017 Copyright © 2005, 2017, Oracle. Tous droits réservés. Legal Notices.