Deprecated feature

Création d'une requête

Les modèles de requête sont utilisés afin de définir des requêtes dans la couche service de données. Le fichier modèle mappe des requêtes du modèle logique (requêtes XPath) avec des instructions SQL du modèle. Ces modèles sont utilisés pour générer les requêtes SQL concrètes. Elles sont appelées par la couche service de données pour accéder à la base de données. Chaque requête est analogue à une méthode de localisation d'EJB.

Procédure

  1. Déterminez comment interroger vos données. Par exemple : recherche par clé unique, recherche par nom. Dans le cadre de ce processus, définissez la requête XPath sur votre modèle logique.
  2. Facultatif : Création d'un profil d'accès pour une expression XPath existante.
    Remarque : Les nouvelles requêtes ne requièrent pas toujours un nouveau profil d'accès dans la mesure où elles peuvent vouloir renvoyer le même volume d'informations qu'un profil d'accès existant mais en extrayant les données d'après une clé différente.
  3. Générez votre clé XPath.
  4. Définissez une ou plusieurs requêtes dans votre fichier de modèle de requête.
  5. Mappez la clé XPath avec une requête dans le fichier de modèle de requête en définissant un bloc XPATH_TO_SQL_STATEMENT. Dans l'exemple suivant, par exemple, /CatalogEntry[(PartNumber=)] constitue la clé XPath.
    BEGIN_XPATH_TO_SQL_STATEMENT
    
    name=/CatalogEntry[(PartNumber=)]
    base_table=CATENTRY
    sql=
     	SELECT
     		CATENTRY.$COLS:CATENTRY_ID$
     	FROM
     		CATENTRY, STORECENT
     	WHERE
     		CATENTRY.CATENTRY_ID = STORECENT.CATENTRY_ID AND
     			STORECENT.STOREENT_ID = $CTX:STORE_ID$ AND
     			CATENTRY.PARTNUMBER IN (?partNumber?)
    
    END_XPATH_TO_SQL_STATEMENT
    Remarque : Le fragment précédent contient des balises CTX qui représentent des contextes métier. La couche service de données aide à extraire de la base de données des informations dépendantes du contexte en permettant au développeur de spécifier une balise spéciale, $CTX:KEY$, dans le modèle SQL. Cette balise est remplacée en phase d'exécution par la valeur de la propriété du contexte (par exemple, l'ID de langue ou de magasin) correspondant à la variable 'KEY'.

    Si vous le souhaitez, vous pouvez créer des requêtes spécifiques d'espace de travail à l'aide de balises CM. Toutes les balises spécifiques d'espace de travail peuvent uniquement être utilisées dans des requêtes CM. Voir Balises dans le fichier de modèle de requête pour plus d'informations.