Création d'une requête

La création d'une requête est la première étape de la création d'un rapport personnalisé. Il existe trois méthodes de création d'une requête :

  • Utilisez un rapport prédéfini comme point de départ et dupliquez la requête. Donnez ensuite un nouveau nom à la requête SQL, puis utilisez-la et modifiez-la en fonction de vos besoins
  • Utilisez Générer la requête et sélectionnez les attributs existants à interroger et/ou à filtrer. Utilisez ensuite les informations du guide Tables et vues Oracle Enterprise Performance Management Cloud pour Account Reconciliation pour sélectionner des colonnes supplémentaires à ajouter et/ou modifier les conditions de filtre. Reportez-vous à Présentation des tables et des vues
  • Créez la requête SQL vous-même si vous connaissez déjà les informations de la table. Reportez-vous à Présentation des tables et des vues.

Pour créer une requête, procédez comme suit :

  1. Sur la page d'accueil, sélectionnez Application, puis Configuration de rapport.
  2. Sélectionnez Requêtes, Actions, puis Nouveau.
  3. Dans Nouvelle requête, saisissez un nom et une description.
  4. Dans Type, sélectionnez l'un des types suivants :

    • Requête de paramètre

      Une requête de paramètre sert à présenter une liste d'options que vous pouvez définir pour la valeur du paramètre. Une requête de paramètre vous permet de présenter une liste d'options à utiliser pour indiquer la valeur d'un paramètre pour une requête de rapport. Elle sert dans les cas où la liste d'options n'est pas un simple attribut déjà défini mais une requête complexe que vous devez définir.

      Reportez-vous à Ajout d'une requête de paramètre à des rapports pour obtenir un exemple de sélection d'une requête de paramètre pour un rapport.

    • Requête de rapport

      Sélectionnez les enregistrements à inclure dans le rapport. Si le rapport que vous concevez doit contenir des paramètres, vous pouvez faire en sorte qu'il n'affiche aucun enregistrement ou qu'il les affiche tous.

      Pour le module Conformité de rapprochement, vous pouvez appliquer un filtre de sécurité afin que les utilisateurs ne puissent voir que les données qu'ils sont autorisés à voir d'après leurs rôles et les rapprochements auxquels ils sont affectés. Pour appliquer un filtre de sécurité à une requête de rapport, ajoutez la syntaxe suivante à la fin de l'instruction de la clause WHERE dans la requête :

      Conformité de rapprochement : $ARM_SECURITY_CLAUSE$

      WHERE $ARM_SECURITY_CLAUSE$ AND ReconciliationEO

      Lorsque $ARM_SECURITY_CLAUSE$ est utilisé dans la requête, ARM_RECONCILIATIONS doit disposer d'un alias pour ReconciliationEO.

      Remarque :

      De nombreuses requêtes prédéfinies avec un filtre de sécurité appliqué sont incluses avec Account Reconciliation. Vous pouvez donc les utiliser en tant qu'exemples lorsque vous créez les vôtres.

      Reportez-vous aux exemples de conformité de rapprochement ci-dessous pour obtenir des exemples de requête.

  5. Cliquez sur Générer la requête pour générer la requête de rapport. Pour plus de détails, reportez-vous à la section Génération d'une requête ci-dessous.

    Une fois que vous avez indiqué les détails requis et fermé la boîte de dialogue Générer la requête, la requête de rapport générée est affichée dans Requête.


    Capture d'écran de la requête Type de rapprochement avec une requête générée.

    Remarque :

    Si vous avez besoin de paramètres dans votre rapport, ajoutez-les à la requête SQL du rapport. Vous pouvez donner n'importe quel nom au paramètre, mais il doit être entre tildes (~). Reportez-vous aux exemples dans les sections ci-dessous.
  6. Effectuez l'une des actions suivantes :

    • Cliquez sur Valider pour vérifier que la requête ne comporte pas d'erreurs.

    • Cliquez sur Valider et générer un plan d'explication afin de vérifier que la requête ne comporte pas d'erreurs et de générer le plan qui sera utilisé pour exécuter cette requête. Le plan généré est stocké dans un fichier .txt qui utilise le même nom que la requête. Vous pouvez visualiser ou télécharger le plan généré.

      Le plan généré contient l'ensemble des étapes utilisées pour exécuter la requête. Utilisez le plan pour identifier les problèmes susceptibles d'entraîner des performances de requête non optimales. Ensuite, vous pouvez ajuster la requête afin d'améliorer ses performances.

    Remarque :

    Par défaut, la génération de plans d'exécution est uniquement disponible pour les environnements OCI (Gen 2). Afin de l'activer pour les environnements Classic, contactez Oracle via une demande de service.
  7. Vous pouvez enregistrer ou enregistrer et fermer cette requête.
  8. Pour générer un exemple de fichier XML à partir de la requête afin de l'utiliser comme modèle avec BI Publisher, cliquez sur Générer le fichier XML exemple.

Remarque :

Vous pouvez facilement supprimer ou dupliquer une requête à l'aide du menu Action.

Génération d'une requête

La boîte de dialogue Générer la requête vous aide à créer une requête sur la base de données en vous permettant de sélectionner dans le produit un attribut existant pour lequel effectuer une recherche ou un filtrage. La boîte de dialogue génère alors le code SQL correspondant aux attributs et filtres indiqués, code que vous pouvez alors modifier et améliorer.

Pour générer la requête de rapport, procédez comme suit :

  1. Dans Module, sélectionnez Reconciliation Manager ou Correspondance de transactions.

  2. Dans Requête, sélectionnez le type de requête.

    • Si vous avez sélectionné Reconciliation Manager dans Module, sélectionnez l'une des options suivantes : Rapprochements, Profils ou Transactions.

    • Si vous avez sélectionné Correspondance de transactions dans Module, sélectionnez une requête parmi celles répertoriées dans la liste déroulante.

  3. Sélectionnez Appliquer la sécurité pour appliquer un filtre de sécurité afin que les utilisateurs ne puissent voir que les données qu'ils sont autorisés à voir d'après leurs rôles et les rapprochements auxquels ils sont affectés.

    Remarque :

    L'option Appliquer la sécurité n'est pas affichée lorsque vous sélectionnez Types de correspondance sous Requête
  4. Cliquez sur Suivant.
  5. Sélectionnez les colonnes à inclure dans votre requête et cliquez sur Suivant.
    capture d'écran des colonnes de génération de requête à sélectionner pour le rapport de type de rapprochement

    Remarque :

    La correspondance de transactions prend en charge la génération automatique de la requête pour les transactions.

    Remarque :

    Pour la correspondance de transactions, la colonne ID de compte est incluse dans la requête générée même si elle n'est pas sélectionnée dans la liste des colonnes Disponible. Pour exclure la colonne ID de compte du rapport, enlevez-la de la liste SELECT de la requête générée.
  6. Sélectionnez les filtres que vous voulez et cliquez sur OK.

Ajout d'une requête de paramètre à des rapports

Pour ajouter une requête de paramètre à un rapport, procédez comme suit :

  1. Sur la page d'accueil, sélectionnez Application, puis Configuration de rapport.
  2. Sélectionnez Requêtes, puis un type de requête de paramètre (par exemple, CurrencyList).


    SelectParameterQuery
  3. Dans la boîte de dialogue Modifier la requête, vérifiez et/ou modifiez la requête de paramètre, puis cliquez sur Enregistrer et fermer.

    Vous revenez à l'écran Configuration de rapport.

  4. Sélectionnez Rapports, puis le rapport souhaité (par exemple, Solde par rapprochement).


    SelectBalbyRec
  5. Dans la boîte de dialogue Modifier le rapport, sélectionnez Paramètres.


    EditReport
  6. Sélectionnez pour le code de paramètre souhaité Requête dans la liste déroulante Type de paramètre et CurrencyList dans la liste déroulante Attribut/requête.


    QueryType

    La liste déroulante Valeur de paramètre répertorie les devises.


    ParameterValueList

    Remarque :

    La liste déroulante Attribut/requête ne répertorie les requêtes de paramètre que si vous sélectionnez Requête dans la liste déroulante Type de paramètre.

    Remarque :

    La liste déroulante Type de paramètre permet de choisir un attribut de module (Reconciliation Manager ou Correspondance de transactions) pour chacun de ces modules Si un attribut de module est choisi pour le type de paramètre, la liste déroulante Attribut/requête affiche la liste des attributs de ce module.
  7. Cliquez sur Enregistrer et fermer.

Exemples de conformité de rapprochement

Ces exemples de conformité de rapprochement partent du principe que vous voulez exécuter un rapport qui affiche la liste des périodes qui contiennent la fréquence "Mensuel".

Si le rapport que vous concevez doit contenir des paramètres, vous pouvez faire en sorte qu'il n'affiche aucun enregistrement ou qu'il les affiche tous.

  • Requête de paramètre : sélectionnez frequency_id, frequency_name from arm_frequencies

  • Requête de rapport, option 1 : (aucune période n'est renvoyée si l'utilisateur n'indique pas la fréquence) :

    Select p.period_name from arm_periods p, arm_period_frequencies pf where p.period_id = pf.period_id and pf.frequency_id = ~FREQUENCY~

  • Requête de rapport, option 2 : (toutes les périodes sont renvoyées si l'utilisateur n'indique pas la fréquence) :

    Select p.period_name from arm_periods p, arm_period_frequencies pf where p.period_id = pf.period_id and pf.frequency_id = coalesce(~FREQUENCY~,pf.frequency_id)

    Remarque :

    Vous pouvez donner n'importe quel nom au paramètre, mais il doit être entre tildes (~).

    Dans la deuxième option, la fonction coalesce() renvoie la première valeur non NULL de la liste. Par conséquent, si la fréquence était NULL, elle renverrait pf.frequency_id et, dans ce cas, cette condition serait toujours vérifiée (pf.frequency_id = pf.frequency_id), entraînant ainsi l'affichage de tous les enregistrements.

Exemples de correspondance de transactions

Ces exemples partent du principe que vous voulez afficher la liste des rapprochements pour tout type de rapprochement donné.

  • Requête de paramètre : SELECT TM_RECON_TYPE.TEXT_ID AS RECONCILIATION_TYPE_ID , (TM_RECON_TYPE.NAME || ' (' || TM_RECON_TYPE.TEXT_ID || ')') AS RECONCILIATION_TYPE_NAME FROM TM_RECON_TYPE TM_RECON_TYPE

  • Requête de rapport, option 1 : (ne renvoie aucun rapprochement si l'utilisateur n'a sélectionné aucun type de rapprochement) :

    SELECT TM_RECON.TEXT_ID AS RECONCILIATION_ID,TM_RECON.NAME AS RECONCILIATION_NAME, TM_RECON_TYPE.TEXT_ID AS RECONCILIATION_TYPE_ID, TM_RECON_TYPE.NAME AS RECONCILIATION_TYPE_NAME, NVL ((SELECT P_FCM_USERS.USER_NAME FROM FCM_USERS_V P_FCM_USERS WHERE TM_RECON.PREPARER = P_FCM_USERS.USER_ID ), TM_RECON.PREPARER ) AS PREPARER, TM_RECON.DESCRIPTION DESCRIPTION FROM TM_RECON TM_RECON, TM_RECON_TYPE TM_RECON_TYPE WHERE TM_RECON.RECON_TYPE_ID = TM_RECON_TYPE.RECON_TYPE_ID AND (TM_RECON_TYPE.TEXT_ID = '~RECONCILIATION_TYPE_ID~')

  • Requête de rapport, option 2 : (renvoie tous les rapprochements si l'utilisateur n'a sélectionné aucun type de rapprochement) :

    SELECT TM_RECON.TEXT_ID AS RECONCILIATION_ID,TM_RECON.NAME AS RECONCILIATION_NAME, TM_RECON_TYPE.TEXT_ID AS RECONCILIATION_TYPE_ID, TM_RECON_TYPE.NAME AS RECONCILIATION_TYPE_NAME, NVL ((SELECT P_FCM_USERS.USER_NAME FROM FCM_USERS_V P_FCM_USERS WHERE TM_RECON.PREPARER = P_FCM_USERS.USER_ID ), TM_RECON.PREPARER ) AS PREPARER, TM_RECON.DESCRIPTION DESCRIPTION FROM TM_RECON TM_RECON, TM_RECON_TYPE TM_RECON_TYPE WHERE TM_RECON.RECON_TYPE_ID = TM_RECON_TYPE.RECON_TYPE_ID AND COALESCE('~RECONCILIATION_TYPE_ID~',TM_RECON_TYPE.TEXT_ID)

    Remarque :

    Vous pouvez donner n'importe quel nom au paramètre, mais il doit être entre tildes (~).

    Dans la deuxième option, la fonction coalesce() renvoie la première valeur non NULL de la liste. Par conséquent, si RECONCILIATION_TYPE_ID était NULL, elle renverrait TM_RECON_TYPE.TEXT_ID et, dans ce cas, cette condition serait toujours vérifiée (TM_RECON_TYPE.TEXT_ID = TM_RECON_TYPE.TEXT_ID), entraînant ainsi l'affichage de tous les enregistrements.

  • Requête de rapport, option 3 (renvoyer tous les rapprochements si l'utilisateur y a accès) : SELECT TM_RECON.TEXT_ID AS RECONCILIATION_ID, TM_RECON.NAME AS RECONCILIATION_NAME, TM_RECON_TYPE.TEXT_ID AS RECONCILIATION_TYPE_ID, TM_RECON_TYPE.NAME AS RECONCILIATION_TYPE_NAME, TM_RECON.DESCRIPTION DESCRIPTION FROM TM_RECON TM_RECON, TM_RECON_TYPE TM_RECON_TYPE, ARM_RECONCILIATIONS ProfileEO WHERE TM_RECON.RECON_TYPE_ID = TM_RECON_TYPE.RECON_TYPE_ID AND TM_RECON.TEXT_ID = ProfileEO.RECONCILIATION_ACCOUNT_ID AND $ARM_SECURITY_CLAUSE$ AND ProfileEO.PERIOD_ID = -2