Qu'est-ce que la vue de calcul?
La vue de calcul SAP HANA est une vue d'informations puissante.
La mesure de vue analytique SAP HANA peut être sélectionnée à partir d'une seule table de faits. Lorsqu'il y a besoin de plus de table de faits dans la vue d'informations, la vue de calcul apparaît dans l'image. La vue de calcul prend en charge les calculs complexes.
La base de données de la vue de calcul peut inclure des tables, des vues de colonne, des vues analytiques et des vues de calcul.
Nous pouvons créer des jointures, des unions, des agrégations et des projections sur des sources de données.
La vue de calcul peut contenir plusieurs mesures et peut être utilisée pour les rapports multidimensionnels ou pour aucune mesure utilisée dans les rapports de type liste.
Caractéristique de la vue de calcul SAP HANA comme ci-dessous -
- Prise en charge du calcul complexe.
- Prend en charge les modèles OLTP et OLAP.
- Prise en charge de la gestion du client, de la langue, de la conversion de devises
- Union de soutien, projection, agrégation, rang, etc.
Les vues de calcul SAP HANA sont de deux types:
- Vue de calcul graphique SAP HANA (créée par l'éditeur graphique SAP HANA Studio).
- Vues de calculs basés sur des scripts SAP HANA (créées par des scripts SQL par SAP HANA Studio).
Vue de calcul graphique SAP HANA
Dans la vue analytique de SAP HANA, nous ne pouvons sélectionner une mesure que dans une seule table.
Ainsi, quand il y a une exigence pour une vue qui contient une mesure de la table différente, elle ne peut pas être réalisée par vue analytique mais par vue de calcul.
Donc, dans ce cas, nous pouvons utiliser deux vues analytiques différentes pour chaque table et les joindre dans la vue de calcul.
Nous allons créer une vue de calcul graphique "CA_FI_LEDGER" en joignant deux vues analytiques "AN_PURCHASE_ORDER" et "AN_FI_DOCUMENT".
CA_FI_LEDGER affichera le détail du document financier lié à un bon de commande.
ÉTAPE 1) Dans cette étape,
- Allez au package (Here Modeling) et faites un clic droit.
- Sélectionnez Nouvelle option.
- Sélectionnez Vue de calcul.
Un éditeur de vue de calcul s'affiche, dans lequel le panneau de scénario s'affiche comme ci-dessous -
Le détail du panneau Scénario est comme ci-dessous -
- Palette: Cette section contient ci-dessous les nœuds qui peuvent être utilisés comme source pour construire nos vues de calcul.
Nous avons 5 types de nœuds différents, ils sont
- Join: Ce nœud est utilisé pour joindre deux objets source et transmettre le résultat au nœud suivant. Les types de jointure peuvent être une jointure interne, externe gauche, externe droite et une jointure de texte. Remarque: nous ne pouvons ajouter que deux objets source à un nœud de jointure.
- Union: Ceci est utilisé pour effectuer l'union de toutes les opérations entre plusieurs sources. La source peut être n nombre d'objets.
- Projection: Ceci est utilisé pour sélectionner des colonnes, filtrer les données et créer des colonnes supplémentaires avant de les utiliser dans les nœuds suivants comme une union, une agrégation et un classement.
Remarque: nous ne pouvons ajouter qu'un seul objet source dans un nœud Projection.
- Agrégation: Ceci est utilisé pour effectuer une agrégation sur des colonnes spécifiques en fonction des attributs sélectionnés.
- Rank: C'est le remplacement exact de la fonction RANK dans SQL. Nous pouvons définir la partition et l'ordre par clause en fonction de l'exigence.
ÉTAPE 2)
- Cliquez sur le nœud Projection dans la palette et faites-le glisser dans la zone de scénario à partir de la vue analytique de la commande d'achat. Il l'a renommé "Projection_PO".
- Cliquez sur le nœud Projection dans la palette et faites-le glisser dans la zone de scénario pour la vue analytique du document FI. Il l'a renommé "Projection_FI".
- Faites glisser et déposez la vue analytique "AN_PUCHASE_ORDER" "AN_FI_DOCUMENT" et du dossier Contenu vers le nœud de projection et "Projection_FI" respectivement.
- Cliquez sur Rejoindre le nœud à partir de la palette et faites-le glisser dans la zone de scénario.
- Joindre le nœud Projection_PO au nœud Join_1.
- Joindre le nœud Projection_FI au nœud Join_1.
- Cliquez sur le nœud Agrégation dans la palette et faites-le glisser dans la zone de scénario.
- Joindre le nœud Join_1 au nœud d'agrégation.
Nous avons ajouté deux vues analytiques, pour créer une vue de calcul.
ÉTAPE 3) Cliquez sur le nœud Join_1 sous agrégation et vous pouvez voir que la section de détail s'affiche.
- Sélectionnez toutes les colonnes du nœud Projection_PO pour la sortie.
- Sélectionnez toutes les colonnes du noeud Projection_FI pour la sortie.
- Joindre le nœud Projection_PO au nœud Projection_FI sur la colonne
Projection_PO. PO_Number = Projection_FI.PO_NO.
ÉTAPE 4) Dans cette étape,
- Cliquez sur le nœud d'agrégation et le détail sera affiché sur le côté droit du volet.
- Sélectionnez Colonne pour la sortie du Join_1 affiché sur le côté droit dans la fenêtre de détail.
ÉTAPE 5) Maintenant, cliquez sur Semantics Node.
L'écran de détail sera affiché comme ci-dessous. Définissez l'attribut et le type de mesure pour la colonne et également, marquez la clé pour cette sortie.
- Définissez l'attribut et la mesure.
- Marquez PO_Number et COMPANY comme clé.
- Marquez ACC_DOC_NO comme clé.
ÉTAPE 6) Validez et activez la vue de calcul, à partir de la barre supérieure de la fenêtre.
- Cliquez sur l'icône Valider.
- Cliquez sur l'icône d'activation.
La vue de calcul sera activée et s'affichera sous Modélisation comme ci-dessous -
Sélectionnez la vue de calcul et faites un clic droit -> Aperçu des données
Nous avons ajouté deux vues analytiques et sélectionnons la mesure (TAX_AMOUNT, GROSS_AMOUNT) dans les deux vues analytiques.
L'écran d'aperçu des données s'affiche comme ci-dessous -
Les fonctions CE, également connues sous le nom d'opérateur de plan de moteur de calcul (opérateurs CE), sont des alternatives aux instructions SQL.
La fonction CE est de deux types -
Fonction d'accès à la source de données
Cette fonction lie une table de colonnes ou une vue de colonnes à une variable de table.
Vous trouverez ci-dessous une liste des fonctions d'accès aux sources de données -
- CE_COLUMN_TABLE
- CE_JOIN_VIEW
- CE_OLAP_VIEW
- CE_CALC_VIEW
Fonction d'opérateur relationnel
En utilisant l'Opérateur relationnel, l'utilisateur peut contourner le processeur SQL pendant l'évaluation et communiquer directement avec le moteur de calcul.
Vous trouverez ci-dessous une liste de fonctions d'opérateur relationnel -
- CE_JOIN (Il est utilisé pour effectuer une jointure interne entre deux sources et
Lisez les colonnes / données requises.)
- CE_RIGHT_OUTER_JOIN (Il est utilisé pour effectuer une jointure externe droite entre les deux sources
et affichez les colonnes interrogées dans la sortie.)
- CE_LEFT_OUTER_JOIN (Il est utilisé pour effectuer une jointure externe gauche entre les sources et
afficher les colonnes interrogées dans la sortie).
- CE_PROJECTION (Cette fonction affiche les colonnes spécifiques de la source et applique
filtres pour restreindre les données. Il fournit également des fonctionnalités d'aliase de nom de colonne.)
- CE_CALC (Il est utilisé pour calculer des colonnes supplémentaires en fonction des besoins de l'entreprise.
Ceci est identique à la colonne calculée dans les modèles graphiques.)
Vous trouverez ci-dessous une liste de SQL avec la fonction CE avec quelques exemples-
Nom de la requête | Requête SQL | Fonction intégrée CE |
---|---|---|
Sélectionnez la requête sur la table de colonnes | SELECT C, D à partir de "COLUMN_TABLE". | CE_COLUMN_TABLE ("COLONNE_TABLE", [C, D]) |
Sélectionnez la requête sur la vue des attributs | SELECT C, D à partir de "ATTRIBUTE_VIEW" | CE_JOIN_VIEW ("ATTRIBUTE_VIEW", [C, D]) |
Sélectionner une requête sur la vue analytique | SELECT C, D, SUM (E) à partir du groupe "ANALYTIC_VIEW" par C, D | CE_OLAP_VIEW ("ANALYTIC_VIEW", [C, D]) |
Sélectionner une requête sur la vue de calcul | SELECT C, D, SUM (E) à partir de "CALCULATION_VIEW" Group By C, D | CE_CALC_VIEW ("CALCULATION_VIEW", [C, D]) |
Où avoir | SELECT C, D, SUM (E) From "ANALYTIC_VIEW" Où C = 'value' | Var1 = CE_COLUMN_TABLE ("COLUMN_TABLE"); CE_PROJECTION (: var1, [C, D], "C" = "valeur" / |