Les points d'extension Web Intelligence : création de fonctions personnalisées Web Intelligence BO XI 3.1 SP2 windows and linux Copyright © 2009 SAP® BusinessObjects™. Tous droits réservés. SAP BusinessObjects et ses logos, BusinessObjects, Crystal Reports®, SAP BusinessObjects Rapid Mart™, SAP BusinessObjects Data Insight™, SAP BusinessObjects Desktop Intelligence™, SAP BusinessObjects Rapid Marts®, SAP BusinessObjects Watchlist Security™, SAP BusinessObjects Web Intelligence® et Xcelsius® sont des marques ou marques déposées de Business Objects, une société du groupe SAP, et/ou de ses sociétés affiliées aux Etats-Unis et/ou dans d'autres pays. SAP® est une marque déposée de SAP AG en Allemagne et/ou dans d'autres pays. Tous les autres noms mentionnés peuvent être des marques de leurs propriétaires respectifs. 2009-05-27 Table des matières Chapitre 1 Présentation des extensions de calcul 5 Fonctions externes......................................................................................6 Déploiement des fonctions personnalisées.................................................7 Déclaration de bibliothèque.........................................................................7 Utilisation des fichiers échantillons Web Intelligence..................................8 Chapitre 2 Définition d'un calcul personnalisé 11 objets de fonction XML..............................................................................12 Définition de la déclaration de la fonction XML.........................................15 Définition de la déclaration du catalogue XML..........................................17 Implémentation du fichier C++...................................................................18 Compilation du fichier source dans Microsoft Visual Studio 2005.............19 Copie de fichier dans WebiCalcPlugin.......................................................20 Chapitre 3 Exemples 21 Chapitre 4 Messages d'erreur 25 message d'erreur #EXTERNE...................................................................26 Messages d'erreur du journal de trace......................................................26 Annexe A Informations supplémentaires Index 29 33 Les points d'extension Web Intelligence : création de fonctions personnalisées 3 Table des matières 4 Les points d'extension Web Intelligence : création de fonctions personnalisées Présentation des extensions de calcul 1 1 Présentation des extensions de calcul Fonctions externes Les extensions de calcul sont des calculs de reporting personnalisés Web Intelligence qui viennent s'ajouter à la liste des fonctions Web Intelligence existantes. Pour utiliser la bibliothèque des extensions de calcul, vous devez créer une bibliothèque externe C++ conformément à une API (interface de programmation) spécifique. Pour obtenir des informations détaillées sur les capacités de calcul dans Web Intelligence et une référence de syntaxe pour les fonctions et opérateurs Web Intelligence, voir Utilisation de fonctions, de formules et de calculs dans Web Intelligence disponible sur le portail SAP Help. Fonctions externes Les fonctions externes sont visibles et utilisables au même titre que les autres fonctions standard Web Intelligence. Vous pouvez créer une formule avec des fonctions qui implémentent votre propre logique. Remarque : Vous pouvez définir autant de fonctions que vous le souhaitez. Seules les fonctions utilisant des paramètres à valeur unique sont prises en charge. Vous disposez d'un maximum de cinq paramètres à valeur unique. La définition d'une fonction consiste à : 1. Déclarez la description de la fonction externe dans un fichier XML en utilisant la structure XML donnée. 2. Implémentez la fonction dans une bibliothèque C++ en utilisant une API donnée. 3. Copiez le fichier XML et la bibliothèque dans le dossier approprié dans votre dossier répertoire d'installation de Business Objects Enterprise pour le serveur et le bureau client. 4. Redémarrez le système afin d'ajouter automatiquement la fonction externe à la liste des fonctions disponibles pour créer des formules. La fonction externe est basée sur un identifiant unique afin qu'il ne soit pas mal interprété lorsqu'il est utilisé dans un rapport avec une bibliothèque externe différente. 6 Les points d'extension Web Intelligence : création de fonctions personnalisées Présentation des extensions de calcul Déploiement des fonctions personnalisées Si le système ne peut charger une bibliothèque, s'il lui manque une information concernant une fonction externe, si la déclaration XML est incohérente, si la bibliothèque n'existe pas ou si la fonction est dupliquée, alors un message d'erreur apparaît. Le système inscrit également les erreurs dans le journal de trace. Rubriques associées • message d'erreur #EXTERNE page 26 Déploiement des fonctions personnalisées Le déploiement de fonctions personnalisées requiert quelques étapes manuelles. L'administrateur BusinessObjects doit placer le fichier XML et le fichier DLL de bibliothèque lié dans le dossier bibliothèque du serveur, ainsi que sur le bureau Rich Client. Attention : Le remplacement ou l'ajout d'une bibliothèque dans le dossier bibliothèque personnalisé peut représenter une menace pour le système. Etant donné que la bibliothèque se charge automatiquement, une bibliothèque externe peut accéder à des données ou à des processus critiques, compromettant ainsi le système. Assurez-vous que l'administrateur du site implémente l'accès de sécurité approprié pour le dossier associé afin que seules les personnes autorisées aient accès au dossier de bibliothèque personnalisé. Déclaration de bibliothèque Les extensions des fichiers bibliothèque diffèrent suivant le système d'exploitation : • DLL pour Windows • SO pour Linux ou UNIX Les types de fichiers sont les suivants : Les points d'extension Web Intelligence : création de fonctions personnalisées 7 1 1 Présentation des extensions de calcul Utilisation des fichiers échantillons Web Intelligence Type Description Il n'existe qu'un seul fichier de ce type et il doit être déclaration de cata- nommé externalcatalogs.xml. Ce fichier contient logues XML la liste de tous les fichiers de définition des fonctions XML. Ce fichier, répertorié dans le fichier de déclaration des catalogues XML, définit une liste de fonctions et déclaration de fonc- leurs bibliothèques associées . tions XML Remarque : Le fichier des catalogues peut contenir les bibliothèques de déclarations de fonctions ou y faire référence. Ce fichier contient le code en C++ pour les fonctions utilisateur. fichier bibliothèque Le fichier bibliothèque contient l'implémentation des fonctions utilisateur telle que définie dans la déclaration de fonctions XML. Utilisation des fichiers échantillons Web Intelligence Les applications suivantes doivent être installées : • Visual Studio C++ • Web Intelligence XI 3.1 SP2 Les exemples dans ce document utilisent les fichiers échantillons du fichier VS2005_Samples.zip qui se trouve dans [Répertoire d'installation]\userlibs\Webi\Echantillons\. Remarque : Les échantillons marchent également avec VS2008 bien que VS2008 migre les échantillons à l'ouverture. 8 Les points d'extension Web Intelligence : création de fonctions personnalisées Présentation des extensions de calcul Utilisation des fichiers échantillons Web Intelligence 1. Décompressez VS2005_Samples.zip. 2. Pour ouvrir les échantillons, lancez OpenSolution.bat. OpenSolution.bat définit l'environnement de variable temporaire WEBI CALCPLUGINAPI utilisé par la solution pour localiser des fichiers en-têtes Web Intelligence spécifiques. Attention : Si vous n'avez pas installé la version de Web Intelligence requise, vous ne pourrez pas utiliser OpenSolution.bat. Définissez manuellement l'environnement de variable WEBICALCPLUGINAPI avec le chemin du dossier qui contient les fichiers d'en-têtes Web Intelligence. Ouvrez VS2005_Samples\WebICalcPlugIn. Rubriques associées • Exemples page 21 Les points d'extension Web Intelligence : création de fonctions personnalisées 9 1 1 Présentation des extensions de calcul Utilisation des fichiers échantillons Web Intelligence 10 Les points d'extension Web Intelligence : création de fonctions personnalisées Définition d'un calcul personnalisé 2 2 Définition d'un calcul personnalisé objets de fonction XML Pour personnaliser une fonction dans Web Intelligence : 1. Définissez la déclaration de la fonction XML 2. Définissez la déclaration du catalogue XML. 3. Implémentez la bibliothèque dans C++ à l'aide de l'API spécifique aux fonctions externes. 4. Compilez le fichier source. 5. Copiez la définition XML et la bibliothèque dans le dossier WebiCalcPlu gin dédié (côté serveur et Rich Client). 6. Redémarrez le serveur (côté serveur et Rich Client). Remarque : Les exemples du chapitre utilisent des fichiers échantillons livrés avec Web Intelligence. Le système ajoute automatiquement la fonction à la liste de fonctions dans l'éditeur de formule et dans l'aide contextuelle de la barre de formule. Si une formule utilise une fonction pour laquelle aucune bibliothèque externe n'est disponible, le message d'erreur #EXTERNE apparaît. Remarque : Seules les fonctions utilisant des paramètres à valeur unique sont prises en charge. objets de fonction XML La définition XML contient des objets qui définissent la fonction personnalisée. Les fonctions personnalisées XML étendent la liste de fonctions du langage de la formule afin qu'une formule utilisant cette fonction puisse être analysée conformément à sa signature XML et convertie sous forme marquée. Vous affectez un ID global unique (GUID) à la fonction externe afin que celui-ci ne puisse être ni réutilisé ni confondu avec une autre bibliothèque personnalisée. La définition XML contient les objets suivants : 12 Les points d'extension Web Intelligence : création de fonctions personnalisées Définition d'un calcul personnalisé objets de fonction XML Balise attribut XML objet de définition XML La racine XML CATALOGUE Le nom du fichier bibliothèque qui contient le code d'implémentation C++ BIBLIO THEQUE fichier Le fichier bibliothèque peut contenir plusieurs fonctions. L'extension de bibliothèque ne doit pas être spécifiée. La fonction unique GUID guid Conseil : Définissez tous les GUID à l'avance et assurez-vous qu'ils sont tous uniques d'un point de vue global. Pour Windows, vous pouvez utiliser l'outil GUID fourni avec Visual Studio ou le télécharger depuis le site Web de Microsoft. Pour Linux, l'outil usr/bin/uuidgen se trouve dans le pack (Debian) libuuid1. Le nom de fonction qui apparaît dans l'éditeur de formule FUNCTION nom Le nom de fonction doit : • être un nom simple et unique pour la fonction • commencer par une lettre • utiliser des lettres majuscules et minuscules, des caractères numériques ou le caractère _ • ne pas déjà exister dans la bibliothèque Web Intelligence Remarque : Le nom ne sera pas traduit. Les points d'extension Web Intelligence : création de fonctions personnalisées 13 2 2 Définition d'un calcul personnalisé objets de fonction XML Balise attribut XML objet de définition XML La liste des paramètres LISTEPARAM Le nombre doit être inférieur à cinq. Les types de paramètres type PARAM Les types de paramètres possibles sont les suivants : • Numérique • booléen • Date • Chaîne Le nom de chaque paramètre tel qui doit apparaître dans l'éditeur de formule nom Le nom affiche le prototype de la méthode pour l'utilisateur . N'utilisez que des caractères alphanumériques. Le type de valeurs renvoyées RENVOI 14 type Les valeurs renvoyées peuvent être : • Numérique • booléen • Date • Chaîne Les points d'extension Web Intelligence : création de fonctions personnalisées Définition d'un calcul personnalisé Définition de la déclaration de la fonction XML Balise attribut XML objet de définition XML La catégorie dans laquelle la fonction va apparaître dans l'éditeur de formule CATEGORIE type Soyez cohérent ; placez les chaînes dans la catégorie caractères et les nombres dans la catégorie numérique. Les catégories disponibles sont : • Caractère • date • Document • DP • Divers • Logique • Numérique Un conseil qui apparaît dans l'éditeur de formule CONSEIL Valeur Le conseil explique l'utilisation de la fonction. Définition de la déclaration de la fonction XML Les XML pour la signature utilisent la structure suivante : Function_list Les XML pour la signature utilisent la structure suivante : Function_list := [Function*] Function := [name, GUID, data_type = Numeric|Boolean|Date| String, category = character|Date|Document|DP|Misc|Logical|Num, parameter_list, (online_help_signature?), (online_help_descrip tion?),library_name)] Les points d'extension Web Intelligence : création de fonctions personnalisées 15 2 2 Définition d'un calcul personnalisé Définition de la déclaration de la fonction XML parameter_list := [parameter*] parameter := [name, data_type =Numeric|Boolean|Date|String] 1. Définissez la balise racine sur CATALOGUE. 2. Ajoutez des balises BIBLIOTHEQUE à CATALOGUE. 3. Ajoutez le nom du fichier bibliothèque sans l'extension de fichier DLL ou SO à la BIBLIOTHEQUE. C'est l'attribut du fichier. 4. Ajoutez des balises FONCTIONà la BIBLIOTHEQUE. Une balise FONCTION doit posséder un GUID unique et un nom d'attribut supplémentaire unique qui définit le nom de la fonction. La balise FONCTION doit contenir : • une balise LISTEARG avec des balises ARG. Les balises ARG doivent posséder un premier type d'attribut qui définit le type de ce paramètre et un second type d'attribut qui définit le nom de ce paramètre. Le type d'ARG peut être Booléen, Numérique, Date ou Chaîne. Le nom de l'ARG ne contient que des caractères alphanumériques. Remarque : Vous êtes limités à cinq paramètres. • une balise RENVOI qui définit un attribut de type. Le type de RENVOI peut être Booléen, Numérique, Date ou Chaîne. • une balise CATEGORIE qui définit l'attribut d'un type. Le type de CATEGORIE peut être Caractère, Date, Document, DP, Divers, Logique ou Numérique. • une balise CONSEIL qui définit l'attribut d'un type. 5. Placez la définition XML dans le dossier dédié (côté serveur et Rich Client ) Exemple : SampleMath.xml <CATALOG> <LIBRARY file="SampleMath"> <FUNCTION guid="CC3E9742-67A7-4844-9DBF-2CCD4F6ECABE" name="MySquareFct"> <ARGLIST> <ARG type="Numeric" name="input_number"/> </ARGLIST> 16 Les points d'extension Web Intelligence : création de fonctions personnalisées Définition d'un calcul personnalisé Définition de la déclaration du catalogue XML <RETURN type="Numeric"/> <CATEGORY type="Num"/> <HINT value="My square function."/> </FUNCTION> </LIBRARY> </CATALOG> Rubriques associées • Utilisation des fichiers échantillons Web Intelligence page 8 Définition de la déclaration du catalogue XML Vous pouvez créer la déclaration du catalogue XML ou l'ajouter à une déclaration de catalogues existante. <CATALOGUE> fait référence à un fichier de déclaration de fonction XML ou définit directement le <CATALOGUE> comme le montre la section qui définit le format d'une déclaration de fonctions XML. Pour créer une déclaration de catalogue : 1. Nommez la déclaration externalcatalogs.xml. 2. Définissez la balise racine sur CATALOGUES. 3. Ajoutez des balises CATALOGUE aux CATALOGUES. Cette action permet de définir la valeur du nom de fichier des déclarations de fonctions XML. 4. Placez la bibliothèque XML dans le dossier dédié (côté serveur et Rich Client) Exemple : externalcatalogs.xml <CATALOGS> <CATALOG file="SampleMath.xml"/> </CATALOGS> Rubriques associées • Utilisation des fichiers échantillons Web Intelligence page 8 Les points d'extension Web Intelligence : création de fonctions personnalisées 17 2 2 Définition d'un calcul personnalisé Implémentation du fichier C++ Implémentation du fichier C++ 1. Dans le fichier, ajoutez l'en-tête ibovariant.h. 2. Pour chaque méthode, commencer la déclaration avec la macro BO_DE CLARE_USER_FCT. La macro comprend : • • • le nom de la fonction tel qu'il apparaît dans le fichier de déclarations de fonctions XML. le nom d'objet de la valeur renvoyée le nom d'objet du paramètre Remarque : La fonction renvoie ERREURBONO si tout est correct, sinon, le message d'erreur #EXTERNE apparaît dans le rapport. Exemple : Square.cpp // Headers file include of the WebI hearders #include <ibovariant.h> // To not repeat BOExtFunct:: using namespace BOExtFunct; BO_DECLARE_USER_FCT (// Name of function as it was defined in the XML. MySquareFct, // Name of the return value object. retVal, // Name of the parameters object. parameters ) { try // Always used a try{}catch(…) to be sure no // exception was thrown outside this Web // Intelligence user function. { // Get the first parameter. const iBOValue&param0 = parameters[0]; // Transform the parameter to the correct type. double valPar0(param0); // Assign value to the return value. retVal = valPar0 * valPar0; } catch(...) { 18 Les points d'extension Web Intelligence : création de fonctions personnalisées Définition d'un calcul personnalisé Compilation du fichier source dans Microsoft Visual Studio 2005 return BOERROR; // Unkonwn exception so notify WebI } return BONOERROR; // It's OK } Rubriques associées • Utilisation des fichiers échantillons Web Intelligence page 8 Compilation du fichier source dans Microsoft Visual Studio 2005 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Pour créer un projet, allez dans Fichier > Nouveau > Projet. Dans "Types de projets", sélectionnez Visual C++ > Général. Dans "Modèles", sélectionnez Projet vide. Spécifiez le nom du projet. Sépcifiez le dossier de destination du projet. Cliquez sur OK. Cliquez sur le projet avec le bouton droit de la souris puis sélectionnez Propriétés. Dans "Configuration", sélectionnez Toutes les configurations. Dans Propriétés de configuration > Général, définissez le "Type de configuration" sur Bibliothèque dynamique (.dll). Cliquez sur OK. Cliquez sur le projet avec le bouton droit de la souris puis sélectionnez Ajouter > Nouvel élément. Dans "Catégorie", sélectionnez Code. Dans "Modèle", sélectionnez Fichier C++ (.CPP) . Spécifier le nom du fichier CPP. Cliquez sur Ajouter. Cliquez sur le projet avec le bouton droit de la souris puis sélectionnez Propriétés. Dans "Configuration", sélectionnez Toutes les configurations. Dans Propriétés de configuration > C/C++, ajoutez le dossier contenant les en-têtes du fichier Business Objects. Cliquez sur Appliquer. Les points d'extension Web Intelligence : création de fonctions personnalisées 19 2 2 Définition d'un calcul personnalisé Copie de fichier dans WebiCalcPlugin 20. Dans "Configuration", sélectionnez Débogage. 21. Dans Propriétés de configuration > C/C++ > Génération du code, définissez-le sur Débogage multithreaded (/MTd). 22. Cliquez sur Appliquer. 23. Dans "Configuration", sélectionnez Libérer. 24. Dans Propriétés de configuration > C/C++ > Génération du code, définissez-le sur multithreaded (/MT). 25. Cliquez sur OK. 26. Ajoutez le code au fichier CPP. 27. Compilez. Copie de fichier dans WebiCalcPlugin • Copiez la déclaration des fonctions XML, les catalogues XML et le fichier DLL/SO dans la section WebiCalcPlugIn du fichier de catégorie. Le fichier est disponible dans un déploiement Windows dans : [Répertoire d'installation ]\[Version de BusinessObjects]\[système d'exploitation]_[PLATEFORME]\WebiCalcPlugIn où [Version de BusinessObjects] représente la version du produit, par exemple BusinessObjects Enterprise 12.0 et [système d'exploitation] représente le système d'exploitation, par exemple le système d'exploitation win32 for Windows ou Linux pour les systèmes d'exploitation Linux et [PLATEFORME] représente la plateforme, par exemple x86 pour un processeur Intel 32 bits. 20 Les points d'extension Web Intelligence : création de fonctions personnalisées Exemples 3 3 Exemples Les exemples utilisent les fichiers échantillons du fichier VS2005_Sa mples.zip qui se trouve dans [Répertoire d'installation]\userlibs\Webi\Echantillons\. Exemple : Déclaration de catalogue XML pour les externalcatalogs.xml <CATALOGS> <CATALOG file="SampleString.xml"/> </CATALOGS> Exemple : Déclaration de fonction XML dans SampleString.xml <CATALOG> <LIBRARY file="SampleString"> <FUNCTION guid="A91BD526-B8EB-4b09-90F2-FFCD350776A8" name="MyHelloWorld"> <RETURN type="String"/> <CATEGORY type="Num"/> <HINT value="My simple hello world function."/> </FUNCTION> </LIBRARY> </CATALOG> Exemple : Déclaration de fichier C++ dans HelloWorld.cpp // Headers file include of the Web Intelligence hearders #include <ibovariant.h> // To not repeat BOExtFunct:: using namespace BOExtFunct; BO_DECLARE_USER_FCT( // Name of function as it was defined in the XML. MyHelloWorld, // Name of the return value object. retVal // Don't use parameter. /*parameters*/ ) { try // Always used a try{}catch(…) to be sure no // exception was thrown outside this // Web Intelligence user function. { // Create an std::wstring with wide char Hello world. 22 Les points d'extension Web Intelligence : création de fonctions personnalisées Exemples std::wstring helloWorldStr = L"Hello world!!!"; // Initialyse the return value. retVal = helloWorldStr; } catch(...) { // Unkonwn exception so notify Web Intelligence return BOERROR; } return BONOERROR; // It’s OK } Rubriques associées • Utilisation des fichiers échantillons Web Intelligence page 8 Les points d'extension Web Intelligence : création de fonctions personnalisées 23 3 3 Exemples 24 Les points d'extension Web Intelligence : création de fonctions personnalisées Messages d'erreur 4 4 Messages d'erreur message d'erreur #EXTERNE message d'erreur #EXTERNE Le message d'erreur #EXTERNE est dû au problème suivant : • • • • • Une formule fait référence à une fonction externe qui ne se trouve pas dans le fichier bibliothèque. Un document contient une méthode externe et le système ne peut le charger. Le fichier bibliothèque est introuvable ou la déclaration n'est pas cohérente. Une méthode externe n'initialise pas la valeur renvoyée. Une méthode externe a initialisé le type de renvoi avec un type erroné. Par exemple, il y a un double dans une chaîne. Une méthode externe renvoie un code d'erreur. Demandez à l'administrateur BusinessObjects de déployer la bibliothèque appropriée qui permet d'implémenter cette fonction. Messages d'erreur du journal de trace Si une erreur se produit lors de l'analyse/la validation, un message destiné à l'utilisateur apparaît et les erreurs sont enregistrées dans les journaux de trace. Type de journal Messages d'erreur Fichier illisible ou manquant. Journaux XML Structure XML erronée pour les raisons suivantes : • Relation parent/enfants invalide. • Champ manquant (ID de fonction, nom de fonction). • Valeur du champ non valide. Fichier manquant. Journaux DLL Impossible de charger DLL. Fonction introuvable dans DLL. 26 Les points d'extension Web Intelligence : création de fonctions personnalisées Messages d'erreur Messages d'erreur du journal de trace Type de journal Messages d'erreur Nom de fonction déjà en cours d'utilisation. ID de fonction déjà utilisé. Journaux des fonc- Nom de fonction manquant. tions Type de renvoi non valide. ID non valide. Nombre de paramètres non valide. Journaux des para- Nom de paramètre manquant. mètres Type de paramètre non valide. La fonction utilisateur n'initialise pas la valeur renvoyée. Journaux des exécu- La fonction utilisateur initialise la valeur renvoyée avec tions un type erroné. La fonction utilisateur renvoie le code erreur ERREURBO. Les points d'extension Web Intelligence : création de fonctions personnalisées 27 4 4 Messages d'erreur Messages d'erreur du journal de trace 28 Les points d'extension Web Intelligence : création de fonctions personnalisées Informations supplémentaires A A Informations supplémentaires Ressources d'inforEmplacement mations Informations sur le produit SAP Busine- http://www.sap.com ssObjects Sélectionnez http://help.sap.com > SAP BusinessObjects. Vous pouvez accéder à la toute dernière documentation relative aux produits SAP BusinessObjects et à leur déploiement sur le portail SAP Help Portal. Il est également possible de télécharger des versions PDF ou des bibliothèques HTML installables. SAP Help Portal 30 Certains guides résident sur SAP Service Marketplace et ne sont, par conséquent, pas disponibles sur le portail SAP Help Portal. Le portail d'aide répertorie ces guides et propose un lien vers SAP Service Marketplace. Les clients qui bénéficient d'un contrat de maintenance disposent d'un ID utilisateur pour accéder à ce site. Pour obtenir un identifiant, contactez votre support technique. Les points d'extension Web Intelligence : création de fonctions personnalisées Informations supplémentaires Ressources d'inforEmplacement mations http://service.sap.com/bosap-support > Documentation • • Guides d'installation : https://service.sap.com/bosapinstguides Notes de version : http://service.sap.com/releasenotes SAP Service Marketplace comprend certains guides d'installation, guides de migration et de mise à niveau, guides de déploiement, notes de version et des docuSAP Service Marketments concernant les plates-formes prises en charge. place Les clients qui bénéficient d'un contrat de maintenance disposent d'un ID utilisateur pour accéder à ce site. Pour obtenir un identifiant, contactez votre support technique. Si vous êtes redirigé vers SAP Service Marketplace à partir du site SAP Help Portal, utilisez le menu situé dans le panneau de navigation à gauche pour sélectionner la catégorie contenant la documentation que vous souhaitez consulter. Ressources à l'atten- https://boc.sdn.sap.com/ tion des dévelophttps://www.sdn.sap.com/irj/sdn/businessobjects-sdk peurs library https://www.sdn.sap.com/irj/boc/businessobjects-ar Articles SAP Busine- ticles ssObjects sur SAP Community Network Ces articles étaient précédemment appelées notes techniques. https://service.sap.com/notes Remarques Ces remarques étaient précédemment appelées des articles de la base de connaissances. Forums sur SAP https://www.sdn.sap.com/irj/scn/forums Community Network Les points d'extension Web Intelligence : création de fonctions personnalisées 31 A A Informations supplémentaires Ressources d'inforEmplacement mations http://www.sap.com/services/education Formation Nous pouvons vous fournir un module de formation qui réponde à vos besoins et convienne à votre style d'apprentissage préféré, sous forme de stage traditionnel ou de séminaires plus ciblés. http://service.sap.com/bosap-support Support client en ligne Le site SAP Support Portal présente des informations sur les programmes et services de support technique. Il propose également des liens vers de nombreuses informations techniques ainsi que des téléchargements. Les clients qui bénéficient d'un contrat de maintenance disposent d'un ID utilisateur pour accéder à ce site. Pour obtenir un identifiant, contactez votre support technique. http://www.sap.com/services/bysubject/businessobje ctsconsulting Conseil 32 Les consultants peuvent vous accompagner dans votre démarche, depuis la phase initiale d'analyse jusqu'à la phase finale de livraison de votre projet de déploie ment. Ils peuvent vous faire bénéficier de leur expertise en matière de bases de données relationnelles et multidimensionnelles, de connectivité, d'outils de co nception de base de données et de technologie d'inté gration personnalisée. Les points d'extension Web Intelligence : création de fonctions personnalisées Index Symboles #EXTERNE 12, 26 B BO_DECLARE_USER_FCT 18 C fichiers, bibliothèque structure 7 fonctions déclaration du catalogue XML 17 déclaration XML 15 erreurs 26 structure 12 formule, éditeur 12 G C++, fichier implémenter 18 GUID 6, 12 E T erreurs dans les fonctions 26 journaux de trace 26 ExternalFunc.xml 6 trace, journaux messages d'erreur 26 F WebiCalcPlugin 7, 20 W fichiers source compilation 19 Les points d'extension Web Intelligence : création de fonctions personnalisées 33 Index 34 Les points d'extension Web Intelligence : création de fonctions personnalisées ">

Enlace público actualizado
El enlace público a tu chat ha sido actualizado.