Autorisations : mais où ça coince ?

Il vous est probablement déjà arrivé de vous retrouver bloqué du fait d’un problème d’autorisation :

Oui… Mais comment savoir de quoi il s’agit ?

ST01 – Trace System

Si vous pensez rencontrer un problème d’autorisation, vous pouvez alors lancer une trace système via la transaction ST01 sur tous les contrôles d’autorisations :

Il est conseillé de créer un filtre sur votre user :

Vous pouvez enfin activer la trace :

Refaites à nouveau l’action pour laquelle vous pensez rencontrer un problème d’autorisation :

Puis désactiver votre trace :

Enfin, afficher le compte-rendu de l’analyse :

Vous pourrez ainsi facilement repérer les contrôles d’autorisations pour lesquels un code retour eu erreur aura été obtenu :

Il est même possible de connaitre en détail la ligne de code ABAP ayant effectuée le contrôle :

Publicités

SE16N : La fin du &SAP_EDIT ? Oui… mais pas complètement !

Vous avez besoin de faire une petite modification rapidement dans une table, vous vous rendez donc en SE16N, vous faites votre petit « &SAP_EDIT » et là… rien ne se passe ! Mais… Qu’est-ce que…  Où sont passées les fonctions d’éditions o.O ?

Et oui, il se trouve que la transaction SE16N est une fonctionnalité du composant SAP_APPL (Logistique et gestion comptable) et non du composant SAP_BASIS (Composante de base SAP). Or, depuis les Support Package 17 et 18 du composant SAP_APPL (release 600), la fonction d’édition de la SE16N a été désactivée (note OSS 1420281).

Désactivée, mais pas complètement…

Il existe une technique permettant de réactiver la fonction d’édition. Pour cela, un coup de débug s’impose :

Initialisez les variables globales « gd-sapedit » et « gd-edit » à « X » :

La toolbar d’édition est de retour 😉

Note OSS 1420281 :

Gestion des clés de blocages

Lors d’un développement spécifique il est parfois demandé de manipuler en modification des objets standards (commande, facture, article…). Pour cela, il est impératif de poser une clé de blocage sur l’objet en question afin que celui-ci soit verrouillé et qu’il ne puisse pas être modifié par un autre programme au même moment.

Les objets de blocages

Dès lors que l’on entre en modification sur un objet standard, une clé de blocage est immédiatement posée :

On peut alors observer la clé de blocage ainsi que le nom de la table concernée en transaction SM12 :

Une fois le nom de la table bloquée déterminé, il nous faut désormais trouver l’objet de blocage correspondant. Pour cela, il faut aller interroger la table DD25L « En-tête d’agrégat (vues, objets matchcode, objets blocage) » :

Maintenant que l’on connait le nom de l’objet de blocage, on peut en voir le détail en SE11 :

On peut alors connaitre les noms des modules fonctions de blocages et déblocages de l’objet :

SAP Business Workplace : notifications de l’arrivée de nouveaux messages par e-mail

Le SAP Business Workplace est un environnement de travail fournit par SAP auquel chaque utilisateur a accès via la transaction SBWP et lui permettant de gérer son activité ainsi que sa communication au sein de l’organisation via l’échange de messages internes.

S’il va sans dire que l’échange de messages internes qu’offre cet environnement représente une fonctionnalité plus qu’intéressante au sein d’une organisation, les utilisateurs n’ont pas toujours le réflexe de consulter leur boite de réception…

SO13 : Retransmission automatique des messages

La transaction SO13 permet la gestion des suppléants SAPOffice. Ainsi, il est possible via celle-ci de paramétrer une règle de retransmission automatique afin d’envoyer une notification par e-mail dès lors que l’utilisateur reçoit un message dans sa boite de réception, comme par exemple pour l’arrivée de nouveaux Workflows.

On peut alors préciser l’adresse e-mail vers laquelle la notification doit être envoyée pour une période donnée :

Ainsi, dès lors que l’utilisateur reçoit un message dans sa Business Workplace, un mail lui est également envoyé :

XXL_FULL_API : Génération de tableaux croisés

Qui dit ALV dit bien souvent téléchargement de celle-ci sous Excel. S’il est assez simple de prendre en charge l’export tableur de façon quasi-automatique, le résultat n’est pas toujours à la hauteur de ce que peut attendre un utilisateur.

La bapi « XXL_FULL_API »

La bapi « XXL_FULL_API » est une bapi standard permettant l’export de tables internes sous la forme de tableaux Excel croisés ou plus classiques, celle-ci n’est cependant pas disponible par défaut lors de la mise en place d’une ALV et il est alors nécessaire de l’implémenter.

Génération de tableaux classiques

Lors de son exécution, la bapi affiche une popup à l’utilisateur demandant le nombre de colonnes clés de la table :

On peut alors préciser le type de tableau à générer ainsi que le tableur à utiliser :

Le fichier se charge alors directement à l’écran :

Génération de tableaux croisés

Il est également possible de construire des tableaux croisés :

Tout comme pour la génération de tableaux classiques, la table croisée apparaît automatiquement à l’écran :

Programme d’exemple :

par jrobaire Posté dans Tips Tagué

Abap2Xlsx : Génération de fichiers Excel avancés

Il existe de nombreux moyens de générer des fichiers Excel depuis des programmes ABAP, que ce soit de façon automatique via certaines fonctionnalités offertes par divers composants standards SAP tels que l’ALV ou de façon plus spécifique via des modules fonctions adaptés (comme par exemple « XXL_FULL_API »), l’utilisation de la technologie OLE… mais celles-ci ne permettent pas toujours de répondre aux différents besoins du client (mise en forme complexe (couleurs, polices différentes, multi onglets, mise en forme conditionnelle, images…), performance, génération en arrière-plan, indépendance vis-à-vis de la plateforme…).

Depuis Microsoft Office 2007, un nouveau format de document se présentant sous la forme de nouvelles extensions est pris en charge. Ainsi nous retrouvons les formats docx (Word), xlsx (Excel) et pptx (Powerpoint). Ceux-ci ont la particularité d’être en réalité des archives encapsulant un ensemble de fichiers xml.

« Mais alors… Si ces fichiers ne sont en fait qu’un ensemble de fichiers XML, ne pourrait-on pas développer un générateur de fichiers XLSX ??? » C’est précisément à partir de cette idée qu’un certain Ivan Fermia a fondé le projet Abap2Xlsx : http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/20046

Le projet Abap2Xlsx

Le projet Abap2Xlsx est un projet communautaire partagé sur SAP Code Exchange se présentant sous la forme d’un package à importer via SAPLink et pour lequel chacun peut contribuer et ainsi apporter sa pierre à l’édifice. Celui-ci comporte un ensemble de classes d’une très grande facilité d’utilisation ainsi qu’une large palette de programmes d’exemples présentant chacune des fonctionnalités.

« Et les fonctionnalités dans tout ça ? »

Abap2Xlsx vous permet de gérer les fonctionnalités suivantes :

Formatage des cellules

Formules

Multi-onglets

Mise en forme conditionnelle

Format des cellules (dates, nombres…)

Graphiques

Images

Etc.

Les fichiers peuvent être générés en avant comme en arrière plan, attachés à une pièce jointe, en téléchargement à la volée au sein d’application Web Dynpro ABAP…

« Oui mais concrètement ça donne quoi ? »

Avec Abap2Xlsx vous pourrez :

Manipuler les mises en forme des cellules :

Construire des tableaux à la fois design et riches :

Gérer toutes sortes de mises en formes conditionnelles :

Appliquer des formules :

Gérer la validation des données :

Créer des listes déroulantes :

Créer des groupes :

Fusionner des cellules :

Manipuler les polices :

Charger des images :

Manipuler les couleurs d’arrières plans :

Et plein d’autres fonctionnalités… à découvrir par vous-même 😉

Convaincu ? C’est par là que ça se passe: https://cw.sdn.sap.com/cw/groups/abap2xlsx

Have fun !!!