Considérations sur les fichiers de données. SAP 2011
24.5.4 Considérations sur les fichiers de données
Lorsque vous travaillez avec des fichiers de données, des mises en relation de type un-à-plusieurs peuvent apparaître si vous reliez des tables au sein d'un même rapport ou si vous insérez un sous-rapport dans le rapport principal.
24.5.4.1 Mises en relation des fichiers de données
La procédure suivante permet d'extraire le contenu de fichiers de données reliés par une relation de type un-àplusieurs.
● S'il existe une formule de sélection, le logiciel l'analyse et transmet son contenu au fichier DLL de la base de données. Ces informations permettent généralement de délimiter la plage de données à traiter. Considérons la formule suivante :
{customer.REGION} in "CA" to "IL" AND
Remainder ({customer.CUSTOMER ID},2)=0
Dans cette formule, la partie avant l'opérateur "and" contient un critère de sélection de plages pour le champ
Région. Les premières lettres de la région doivent être comprises entre "CA" et "IL". Le logiciel transmet cette sorte de condition au fichier DLL de la base de données (pour les données PC) ou au serveur (pour les données SQL). Voir
[page 128].
La deuxième moitié de la formule de sélection, cependant, doit être traitée par le moteur de rapport. Il utilise une fonction intégrée pour manipuler et évaluer une valeur de champ. Cette opération ne peut pas être effectuée dans le fichier DLL de la base de données ni sur le serveur. Le logiciel ne transmet pas cette condition au fichier DLL de la base de données.
● Si la Table A contient un index et que la condition de sélection des limites de plage est basée sur le champ indexé ({client.REGION} dans cet exemple), le logiciel sélectionne directement l'enregistrement recherché dans la Table A (le premier enregistrement CA) et le lit.
○ Il repère dans la table B (à l'aide de l'index de cette dernière) l'enregistrement correspondant à celui qu'il vient de trouver.
○ Il retransmet l'enregistrement fusionné (A+B) au Report Designer, qui vérifie sa conformité avec toute la formule de sélection.
○ Il lit ensuite le second enregistrement correspondant et transmet l'enregistrement fusionné résultant, puis le troisième et ainsi de suite jusqu'à ce qu'il ait lu tous les enregistrements répondant aux critères de sélection.
○ Le programme revient ensuite à la table A et lit l'enregistrement suivant. Il est inutile de tester l'enregistrement pour s'assurer qu'il répond à la condition CA, car ce champ est indexé et les enregistrements sont classés par ordre alphabétique. Il vérifie en revanche la condition "IL" : si l'intervalle des valeurs indiqué n'est pas dépassé (par exemple, l'enregistrement suivant pourrait être le Mississippi ou le Tennessee). Si l'enregistrement figure toujours dans la plage spécifiée, le programme reprend la recherche des enregistrements concordants.
○ Il continue le processus jusqu'à ce qu'il ait localisé tous les enregistrements visés dans la table A et les enregistrements correspondants dans la table B.
Pour rechercher deux enregistrements dans la Table A et les 100 enregistrements dans la Table B correspondant aux enregistrements de la Table A, le logiciel lit 200 enregistrements.
● En l'absence d'index sur la table A, ou si la plage de valeurs servant de condition ne porte pas sur le champ indexé, le logiciel lira le tout premier enregistrement trouvé.
Guide de l'utilisateur de SAP Crystal Reports 2011
Bases de données
©
2013 SAP AG ou société affiliée SAP. Tous droits réservés.
531

Link público atualizado
O link público para o seu chat foi atualizado.