Performance du système d'information 

La tâche du système d'information dans l'Analyse du compte de résultat consiste à afficher les données sous forme comprimée. Ceci implique la lecture d'un important volume de données depuis la base de données. Dans le système R/3, toutefois, l'appel des données est optimisé de telle sorte qu'un grand nombre de transactions traitent chaque fois un petit volume de données.

L'appel d'un important volume de données par une seule transaction représente dès lors une exception. Pour répondre aux exigences de cette exception, le système d'information propose deux approches différentes pour appeler les données.

Certains états n'affichent que quelques lignes lorsque vous les appelez (c'est la cas du résultat de la société), mais ils vous permettent de faire une recherche dans les caractéristiques Client et Article. Lorsque vous appelez ce genre d'état, toutes les données, c'est-à-dire toutes les combinaisons client-article possibles pour votre entreprise, sont chargées dans la mémoire principale. Autrement dit, vous devez charger une grande partie du niveau de l'objet dans la mémoire principale. Mais la capacité de la mémoire principale n'est généralement pas suffisante.

Lorsque vous exécutez l'état traité dans l'exemple ci-dessus, seules les données de la société s'affichent dans un premier temps. Les données des niveaux plus détaillés sont ensuite lues pendant la recherche.

Les rubriques suivantes contiennent une description de l'implémentation de ces deux approches dans le système ainsi que les considérations que vous devez garder à l'esprit.

Lecture de toutes les données lors de l'appel de l'état

Lorsque vous exécutez l'état à l'aide de cette option, les données sélectionnées sont chargées dans la mémoire principale avec le niveau de détail spécifié dans l'état. Pour les états très détaillés tels que ceux qui utilisent les caractéristiques Client et Article, la lecture des données prend beaucoup de temps si vous n'avez pas limité l'étendue de l'état au travers d'une sélection. Cette méthode de lecture des données ne permet d'appeler l'état rapidement.

Dès lors, tout état pour lequel toutes les données doivent être lues lorsque vous l'appelez doit présenter un niveau de détail minimum. La performance peut à présent être améliorée grâce à la pré-compression appropriée.

Il existe trois types de pré-compression :

Les données de sauvegarde spécifiques à un état sont créées automatiquement lors de la première exécution de l'état si l'option Gérer les données de compression a été retenue. Cette première exécution doit être effectuée en arrière-plan. Vous pouvez également créer des données sauvegardées en ligne. Pour ce faire, accédez à l'affichage de l'état sous État ® Sauvegarder données. Lorsque vous rappelez l'état à l'aide de la même sélection, vous avez la possibilité d'afficher ces données sauvegardées. Si vous préférez des données sauvegardées plus récentes, vous devez les recréer.

Les types de pré-compression suivants (données de compression et niveaux de compression) sont utilisés pour l'exécution de l'état si vous avez défini les options appropriées dans la page à onglet Options lors de la définition de l'état (voir aussi Définition des états de résultat).

Les données de compression spécifiques à l'état sont créées automatiquement la première fois que vous appelez un état à l'aide de l'option Utiliser données de compression. La première exécution de l'état doit s'effectuer en arrière-plan. La prochaine fois que vous exécutez l'état, les données de compression sont lues et, si nécessaire, accompagnées des données actuelles, c'est-à-dire, des postes individuels actuels (si l'option appropriée a été sélectionnée pour l'état). Ce statut actuel s'affiche dans l'état. En outre, les données de compression sont mises à jour en conséquence.

Contrairement aux données de compression spécifiques à l'état, les niveaux de compression sont valables dans l'ensemble de l'Analyse du compte de résultat. Tout comme pour les données de compression, les postes individuels actuels peuvent être lus automatiquement. Les niveaux de compression compriment toute la base de données et pas uniquement les données significatives à un état. Vous devez les créer manuellement.

Pour plus d'informations, voir Niveaux de compression.

Lecture des données à chaque étape de navigation

Avec la deuxième approche, seules les données à afficher pour la liste en cours sont chargées dans la mémoire principale lorsque l'état est exécuté. À chaque étape de navigation, le système lit les données dans la base de données et ne sélectionne que les données nécessaires.

La condition préalable pour naviguer dans l'état avec des temps de réponse courts consiste à avoir des niveaux de compression appropriés pour différents niveaux de navigation. De plus, lorsque vous définissez un état, vous devez appliquer les règles relatives au formulaire et à la sélection (reportez-vous à la rubrique Recommandations pour la définition d'un état ci-dessous). Si cette condition préalable est respectée, vous pouvez maximiser les performances de recherche des résultats depuis la société jusqu'au niveau des postes individuels de l'état, c'est-à-dire jusqu'au niveau d'éclatement le plus bas (client/article).

Activez cette fonction dans la page à onglet Options pendant la définition de l'état (à l'aide du code Lire à chaque étape de navigation).

Les niveaux de compression sont toujours choisis comme méthode de pré-compression pour les états utilisant l'option Lire à chaque étape de navigation. Lorsque vous utilisez cette option, vous ne pouvez pas créer de données de compression ou de données sauvegardées car cela nécessiterait toutes les données de l'état.

Les hiérarchies externes ne sont pas analysées tant que les données n'ont pas été lues à chaque étape de navigation. N'utilisez donc pas de hiérarchies externes (ou le moins possible) pour limiter les données sélectionnées.

L'exemple ci-dessous décrit la manière dont vous pouvez appeler, pour un grand nombre d'utilisateurs, un état détaillé avec les caractéristiques Client et Article, sans ralentir la performance.

    1. Définissez un état ad hoc avec les caractéristiques librement définies Organisation commerciale, Client et Article (dans cet ordre).
    2. Dans la page à onglet Options, sélectionnez l'option Lire à chaque étape de navigation pour l'état.
    3. Le système propose alors un niveau de compression pour l'état. Sélectionnez Outils ® Niveaux de compression ® Définir niveaux de compression dans le Customizing, puis Autres fonctions ® Proposition pour ® États dans le menu.
    4. Faites deux copies du niveau de compression proposé et ajoutez un astérisque (*) aux niveaux pour les caractéristiques suivantes :
    5. Niveau 1 : Organisation commerciale

      Niveau 2 : Organisation commerciale et Client

      Niveau 3 : Organisation commerciale, Client et Article

    6. Créez les niveaux de compression (voir Établissement des niveaux de compression).
    7. Exécutez l'état.

Si vous reproduisez l'exemple ci-dessus dans votre système, vous pouvez augmenter progressivement sa complexité. Vous pouvez ainsi déterminer à quel moment et dans quelle mesure la performance est réduite.

Recommandations pour la définition d'un état

Une définition appropriée de vos états permet de réduire le volume des enregistrements de données à lire et, par conséquent, d'améliorer les performances. Les facteurs suivants jouent un rôle important au niveau des performances :

La complexité du formulaire dépend de la quantité et du type des caractéristiques utilisées. Les caractéristiques contenant peu de valeurs de caractéristique ne posent pas de problème. Celles qui comptent un grand nombre de valeurs de caractéristiques, en revanche, sont plus délicates.

Dans le cas des états qui lisent toutes les données lors de leur exécution, le niveau de détail de la recherche dans l'état influence directement le volume des données lues. Plus le niveau de détail de la recherche est élevé, plus le volume des données à lire est important.

Cette restriction ne s'applique pas aux états pour lesquels les données sont lues à chaque étape de navigation.

Plus vous limitez la sélection dans l'écran initial de l'état, plus le volume des données à lire est petit.

Par conséquent, vous pouvez appliquer différentes règles lors de la définition d'un état en vue de réduire les besoins de capacité au niveau de la mémoire principale :