Exploration des requêtes et de l'API de requête

Objective

After completing this lesson, you will be able to créer des requêtes complexes sur la base de données Cloud SAP Field Service Management à l'aide de CoreSQL et exporter efficacement les résultats.

Introduction aux requêtes et aux API de requête

Chapitre 4 : Sujets clés

Plusieurs concepts clés sont essentiels pour vous permettre de comprendre dans ces leçons afin d'exploiter efficacement les fonctionnalités de SAP Field Service Management (FSM).

La leçon 1 porte sur les requêtes utilisant la base de données d'entreprise FSM. "CoreSQL" est le langage utilisé pour écrire ces requêtes et peut être utilisé pour générer des instructions SELECT complexes à partir de différentes tables de la base de données cloud FSM.

"Groupe de directives utilisateur" contrôle l'accès aux données dans le système. Les données de la base de données FSM Cloud sont organisées en "objets de transfert de données" (DTO), qui incluent "Activité", "Appel de service" et "WorkTimeTask". Il est essentiel de comprendre les relations entre les DTO et leur lien pour servir diverses fonctionnalités du système.

Le sujet 2 souligne le "Tableau de bord d'analyse", une fonctionnalité qui présente des indicateurs de performance clés pour faciliter le suivi.

Le tableau de bord utilise des requêtes prédéfinies qui peuvent représenter visuellement des données à l'aide de différents types de graphiques. Vous pouvez également définir vos propres requêtes pour des analyses plus personnalisées.

La leçon trois traite des rapports FSM, où les « modèles de rapport » sont essentiels pour concevoir, créer et utiliser des rapports.

Ces modèles, qui incluent les éléments de conception, le style, les fichiers de traduction et les images, ainsi que les données de la société ou de la base de données mobile, génèrent le rapport final. "Génération automatique d'états" et "Génération manuelle de rapport" sont deux méthodes de création de ces états.

Dans toutes les leçons, l'utilisation de "CoreSQL" pour l'extraction de données est importante. La structure et la disposition de la base de données des DTO contribuent de manière significative à la création de rapports et à l'analyse. Une compréhension des « requêtes », du « tableau de bord d'analyse », des « modèles de rapport » et des « DTO » est fondamentale pour maîtriser ces leçons.

Requêtes

SAP Field Service Management offre aux utilisateurs réguliers la possibilité d'interroger la base de données société FSM.

SAP Field Service Management offre aux utilisateurs réguliers la possibilité d'interroger la base de données société FSM (à condition que les utilisateurs aient obtenu l'accès). Cette fonctionnalité est disponible sous Analyses et reportingRequêtes. Les requêtes vous permettent d'effectuer les opérations suivantes :

  • Obtenir une liste de données en fonction d'une requête
  • Sauvegarder les requêtes pour une utilisation ultérieure
  • Partager des requêtes avec d'autres utilisateurs de la même entreprise

Lorsque vous définissez une requête comme favori (menu Ajouter à), un cœur apparaît dans la liste des requêtes.

Les requêtes sont écrites dans CoreSQL. Il permet des instructions SELECT complexes dans plusieurs tables de la base de données cloud FSM.

Les requêtes sont écrites dans CoreSQL. Il s'agit du même langage de requête que celui utilisé pour l'API de requête FSM. Il est dérivé de PostgreSQL et limité aux opérations READ. Il permet des instructions SELECT complexes dans plusieurs tables de la base de données cloud FSM. La sortie qui en résulte peut être exportée au format CSV ou JSON.

L’accès aux données est régi par les paramètres du groupe de politiques d’administration.

Les données de la base de données FSM Cloud sont structurées en tables, une pour chaque type d'objet. Ces tables sont appelées objets de transfert de données (DTO).

Les données de la base de données FSM Cloud sont structurées en tables, une pour chaque type d'objet. Les types d'objets ou les tables sont appelés objets de transfert de données ou DTO. L'activité, l'appel de service et WorkTimeTask sont des exemples de DTO. Chaque DTO se compose d'un certain nombre de zones de données différentes et chaque DTO peut avoir de nombreux enregistrements de données individuels. Au total, il y a des centaines de ces DTO.

Les DTO ne sont pas seulement désignés par leur nom, mais aussi par leur numéro de version. Les numéros de version augmentent progressivement au fil du temps, à mesure que la définition de chaque table change. Cela peut se produire, par exemple, lorsqu'une nouvelle zone est ajoutée à une table.

L'image ci-dessus est un diagramme simplifié de plusieurs objets de transfert de données importants. Le diagramme n'est pas complet, mais il montre plusieurs entités couramment utilisées et leurs relations.

Remarque

Ce diagramme peut également être utile pour les unités couvrant les règles de gestion et les données de base afin de rappeler des informations concernant les principaux objets de transfert de données.

il est important de comprendre comment les différents DTO sont liés les uns aux autres : quels DTO peuvent être liés en premier lieu et s'ils peuvent avoir un lien. Si des tables sont liées, il est important de comprendre la nature de ces relations, par exemple :

  • Chaque appel client individuel est affecté à un seul type d'ordre de service.
  • Un type d'ordre de service peut être référencé par de nombreux appels clients.
  • Toute activité individuelle est affectée à exactement un appel client, mais ne peut être liée qu'à 1 ou 0 affectation de service à la fois.

Bien qu'il ne soit pas possible de donner une vue d'ensemble complète de tous les DTO et de leurs relations ici, l'utilisation de requêtes FSM peut vous aider à explorer et à comprendre le modèle de données.

La plupart des données, mais pas toutes, font partie de la base de données d'entreprise FSM. Certaines données sont stockées dans des microservices, qui ne sont pas accessibles par l'API de requête/CoreSQL. Au lieu de cela, ces microservices ont leurs propres API dédiées.

Le noyau de la logique et des données dans Field Service Management est appelé "monolithe". Le monolithe inclut la base de données FSM Cloud de votre société FSM. Cependant, toutes les données ne font pas partie de la base de données de la société FSM : le développement de produits Field Service Management implémente de plus en plus de microservices car cela rend le développement logiciel plus agile. Ces microservices fonctionnent en dehors du monolithe et disposent généralement de leurs propres bases de données en dehors de la base de données principale de l'entreprise, ainsi que d'API dédiées spécifiques. Par conséquent, les données des microservices (par exemple, les détails du niveau organisationnel) doivent être récupérées par l'API dédiée correspondante, au lieu d'utiliser l'API de requête ou l'API de données.

À côté de la fonction Requêtes dans le module Analyses et reporting, une fonctionnalité similaire est disponible pour les administrateurs dans la console d'administration pour une société FSM. Elle y est disponible sous l'onglet API requête. Les clients en dehors de FSM peuvent également lire la date à l'aide de l'API de requête FSM.

Les requêtes CoreSQL sont également des composants importants des modèles de rapport et des règles de gestion. Comprendre l'API de requête est une compétence inestimable pour le débogage et lors de la configuration des intégrations.

CoreQL prend en charge un grand nombre d'instructions SQL, mais pas toutes, pour la lecture des données.

CoreQL prend en charge un grand nombre d'instructions SQL, mais pas toutes, pour la lecture des données. Pour obtenir un guide complet sur les instructions prises en charge, consultez la documentation d'aide.

Lorsque vous utilisez des requêtes sur l'IU de l'utilisateur final ou dans le module Admin, la version du DTO est par défaut la version la plus récente. Cependant, dans les règles de gestion, il est obligatoire d'indiquer la version de DTO souhaitée.

Lors de l'écriture d'une requête, il est obligatoire d'utiliser un alias lorsque vous faites référence à un DTO. Dans la requête suivante, par exemple, nous faisons référence à l'activité DTO avec l'alias "act" : SELECT act FROM Activity act

Voici quelques exemples de requêtes :

  • Obtention de toutes les zones de toutes les affectations de service :

    SELECT sa FROM ServiceAssignment sa

  • Obtention des zones de code et d'objet des 10 dernières activités :

    SELECT act.code, act.subject FROM Activity act ORDER BY act.createDateTime DESC LIMIT 10

  • sélection des données de partenaire et d'appel client pour les appels clients avec priorité élevée, en joignant les deux tables suivantes :

    SELECT bp.code, bp.name, sc.code, sc.subject FROM ServiceCall sc LEFT JOIN BusinessPartner bp ON bp.id = sc.businessPartner WHERE sc.priority = 'HIGH'

Dans la console d'administration, sous API de requête, vous pouvez exécuter des requêtes écrites dans CoreSQL et afficher les résultats à l'écran.

L'API Query du module Admin utilisera la dernière version du DTO par défaut. Si vous souhaitez utiliser une version de DTO spécifique, vous pouvez sélectionner l'option de paramètres qui vous permettra ensuite de déclarer une version spécifique d'un objet de données pris en charge. Vous pouvez également choisir d'afficher les horodatages sous forme de date/heure ou d'horodatage Unix. Pour simuler ce qu'un utilisateur spécifique verrait, vous pouvez en indiquer sous Exécuter comme.

Pour améliorer la convivialité, le système propose des commandes, des tables et des noms de zones pertinents au fur et à mesure de la saisie. Vous pouvez créer un signet pour vos requêtes afin de les sauvegarder pour une utilisation ultérieure. Les requêtes les plus récentes sont visibles sous le bouton Historique.