IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SAP Discussion :

Exportation données vers Excel et Macro


Sujet :

SAP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 2
    Points
    2
    Par défaut Exportation données vers Excel et Macro
    Bonjour,

    Par le biais d'une variante, SAP sort des résultats directement dans une feuille Excel. Il suffit ensuite de faire "enregistrer sous" pour la mettre sur mon PC.

    Je me suis laisser dire que l'on pouvait rajouter des macros directement dans SAP et qui influerai sur le dit fichier Excel.

    Donc est ce possible, quel language (Vba ?), et comment l'insérer ? Est ce possible que la macro se lance après le chargement des données dans le but de formater les données du tableau ?

    Ou avez vous une autre solution (récupération des données directement depuis Excel ? ou autre) ??


    Merci à vous et @+

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    oui, ça passe par la techno OLE (microsoft). SAP peut ainsi dialoguer avec tout un tas d'applications Windows (lancer application, ouvrir fichier, lancer macro (si permis par config sur le PC of course), etc.)
    Pleins de démos dans programmes SAPRDEMO*.

    pour utiliser OLE:
    * soit par instructions ABAP directement
    * soit par framework DOI (Desktop Office Integration), c'est une couche par-dessus OLE qui simplifie la programmation.

    Comme on peut stocker des documents dans SAP (par exemple via la techno BDS (Business Document Services) mais il y en a d'autres), on peut éviter à gérer le déploiement de programmes VBA sur les postes, c'est SAP qui s'en chargera tout seul (on récupère le fichier binaire dans BDS et on l'exécute via DOI).


    Concernant l'appel de SAP depuis une application windows, on peut passer par les contrôles OCX fournis par SAP avec le SAPGUI pour se connecter à SAP par RFC (en utilisant le langage VBA par exemple). Evidemment ça veut dire saisie du user et du mot de passe dans un écran windows fourni aussi comme contrôle OCX. Pour voir comment programmer tout ça, tu peux chercher des exemples sur internet, en cherchant les termes CreateObject("SAP.Functions") et CreateObject("SAP.Logoncontrol.1"), ou sur les termes (une 2ème façon de faire) SAPLogonControl et SAPFunctions).

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 2
    Points
    2
    Par défaut
    Merci pour ses réponses. En parcourant d'autre forum j'ai bien vu la possibiblité avec les OCX. J'ai également trouvé une macro excel très complète qui gère la connexion et les requêtes.

    Cepedant j'ai un message qui dit que je n'ai pas l'autorisation d'effectuer un appel RFC. Donc je suis bloqué.

    Ce qui me chagrine le plus, c'est que notre technicien SAP me dit que la connexion Excel/SAP n'est pas possible techniquement.

    Enfin bref, encore merci.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    pas l'autorisation d'effectuer un appel RFC
    Les admins n'ont qu'à te donner l'autorisation. Tu n'essayes quand même pas de te connecter sur la prod, et tu as un user de type développeur? (si c'est sur la machine de développement, je trouve qu'interdire la connexion RFC est un peu fort de café)

    dit que la connexion Excel/SAP n'est pas possible techniquement
    pourquoi donc? Tu veux dire que la politique de ta société l'interdit?

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 2
    Points
    2
    Par défaut
    J'ai écrit un mail au tech. la nuit dernière. J'espère avoir une réponse dès Lundi.

    En fait moi je suis utilisateur. J'ai des droits assez restreint.

    A l'heure actuelle j'utilise la transaction IW29 pour afficher des résultat à l'aide d'une variante avec mise en forme de sortie vers Excel. J'obtiens un fichier "Feuille de calcul dans ALV.xls" que je dois ensuite exploiter à l'aide de formule & macro.

    Moi, ce que j'aimerais, c'est avoir un macro, je clique et tout arrive tout seul sans avoir à lancer SAP + choix transaction + choix variante + enregistrer fichier + mise en forme fichier. Voila mon projet dans les grandes lignes.

    Maintenant au niveau politique de sécurité, y a t-il des risques avec les connexion RFC ?

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    y a t-il des risques avec les connexion RFC ?
    oui, mais c'est relatif, les admins doivent pouvoir gérer ça assez facilement (mais je n'en sais pas plus).

    Pour moi, le problème est surtout de ne pas contrôler ce qui sort de SAP (si on te permet d'accéder à n'importe quelle table par exemple). Les utilisateurs métier risquent de développer leurs propres outils et on ne saura plus les fonctionnalités requises par les utilisateurs le jour où on remplace SAP par un autre système.

    Si c'est une fonctionnalité importante, il vaut mieux centraliser les développements à l'intérieur de SAP. Donc demander à un développeur de s'en charger. Il peut peut-être le développer hyper rapidement (création d'une transaction ZIW29 qui exécute un batch input d'automatisation et qui sauvegarde sur ton poste à un emplacement précis en annule et remplace, et toi tu peux te créer un sap shortcut sur ton bureau qui appelle cette transaction, et ensuite tu exécutes une macro)

    Si c'est une petite fonctionnalité qui n'apporte pas un grand gain, ne peux-tu pas tout simplement faire une macro VBA sur ton PC qui retraite le fichier Excel?

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 2
    Points
    2
    Par défaut
    J'ai déjà une macro qui retraite le fichier que j'extrait depuis SAP. Car à la base les données ne sont pas très compatibles. Du moins tout ce qui "texte" l'est.

    Pour moi c'est une question de facilité car je ne serais pas la seule personne à utiliser ce fichier Excel.

    Par contre tu dis appeler la transaction avec un shortcut; donc si je comprends bien:
    - je lance le raccourci, entre mes identifiants et là tout se fait tout seul (recherche données, extraction excel, enregistrement à l'endroit ou je veux ??)

    Le jour ou je veux changer des données, j'aurais juste ma variante à modifier ?

    Si le RFC n'est pas possible dans mon entreprise alors là se serait déjà une avancée.

    Sinon que dois je demander alors au tech. et comment créé un shortcut transaction sur le bureau ??

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    bouton droit (menu contextuel) sur le bureau, tu vois le menu "Nouveau", et "SAP GUI Shortcut". Tu indiques le chemin du serveur, ton user (pas le mot de passe pour raison de sécurité évidente ;-)), la transaction ZIW29.

    Et ça lance une connexion SAPGUI (popup de demande de mot de passe, SAP affiche éventuellement la popup pour informer si on est déjà connecté) et ça exécute la transaction ZIW29 (petit programme à développer pour automatiser les appuis de touches comme je disais). Il y a juste à se déconnecter manuellement (ou alors on force la déconnexion avec CALL 'SYST_LOGOFF')

    Je viens d'essayer sur mon PC, ça marche pour SE16 (je récupère directement un fichier c:\TOTOTOTO.xls sur mon poste). Attention, pour IW29, c'est pas garanti que ça marche. D'ailleurs pour mon cas, j'ai dû lancer la macro sur la transaction SE16 en mode 'E' au lieu du mode 'N' (info à donner au développeur ;-))

  9. #9
    Membre éprouvé Avatar de Celdrøn
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Juillet 2007
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant SAP

    Informations forums :
    Inscription : Juillet 2007
    Messages : 614
    Points : 1 008
    Points
    1 008
    Par défaut
    Salut,

    Pour le raccourci SAP, c'est plus facile de le créer depuis SAP à partir du bouton prévu à cet effet (à coté du bouton pour créer un nouveau mode).

    SAP pré-remplira les attributs, il y a juste à choisir le type de raccourci (Transaction) et la commande à executer (ZIW29).
    Si tu es déjà sur la transaction ZIW29, le type de raccourci et la commande seront également pré-remplis correctement.

    Nota : Bien penser à noter le chemin renvoyé par la pop-up pour retrouver le raccourci qui vient d'être créé.
    Boaf...signature <= ça suffira ça ??

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    wow, cool :-)

  11. #11
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 2
    Points
    2
    Par défaut
    Encore merci pour ses réponses. Je me lance dès demain.

  12. #12
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 2
    Points
    2
    Par défaut
    Ok, j'ai vu pour les shortcuts. Existe il un code VBA pour lancé un shortcut *.sap depuis Excel ??

  13. #13
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    tu veux le beurre, et l'argent du beurre ;-) Est-ce vraiment utile? (c'est peut-être un peu une perte de temps d'automatiser à outrance non?) Sinon il faudrait que tu regardes dans le forum VBA.

  14. #14
    Membre averti
    Inscrit en
    Octobre 2007
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 313
    Points : 375
    Points
    375
    Par défaut
    pourquoi tu n'utilises pas la Bapi standard BAPI_SERVICENOTIFICAT_GETLIST en appel RFC dans ta macro excel?
    c'est plus simple et plus propre comme solution

  15. #15
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 2
    Points
    2
    Par défaut
    Hello,

    Mon interlocuteur SAP à réussi à mettre des macros Excel directement dans SAP.

    Le résultat de mes requêtes s'affiche sous forme de tableau Excel dans SAP.

    La macro se lance automatiquement et met en forme mon tableau. Cependant, la fonction ActiveWorkbook.SaveAs de la macro elle ne se lance pas.

    En lançant manuellement la macro tout fonctionne donc on pense à un soucis de SAP.

    Qqun aurait il une idée ??

    Merci @++

  16. #16
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    pourrais-tu modifier le code pour récupérer le message d'erreur et nous l'indiquer? (on error goto ... et le texte se trouve dans l'objet err, err.description ou qqch comme ça)

  17. #17
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 2
    Points
    2
    Par défaut
    Merci,

    Il n'y a pas de message d'erreur. Quand je lance la macro manuellement depuis ALT+F8 il n'y a aucun soucis.

    On penche pour un soucis de SAP, mais le gars ne trouve pas et moi je n'ai pas accès à la configuration SAP, je suis utilisateur de base.

    J'essaye de trouver une solution pour le mettre sur la piste, car cette histoire dur et dur et .....

    ++

  18. #18
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    574
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 574
    Points : 764
    Points
    764
    Par défaut
    je parlais de mettre un bout de code pour le cas de l'exécution par ABAP. si ça ne marche pas l'automation doit générer une erreur.

    comment sait-il que c'est la dernière instruction qui fait une erreur? Est-ce qu'il fait du debug ABAP en pas à pas? Si ça se trouve tout est en erreur: est-ce qu'il lance le programme en arrière-plan? dans ce cas ça ne peut pas marcher (que interactif)

    Dans les options du SAPGUI (alt-f12), il peut activer la trace pour "automation" pour avoir + d'infos.

  19. #19
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 2
    Points
    2
    Par défaut
    Je vais lui demander jeudi matin.

    Merci, je te tiens au courant.

  20. #20
    Candidat au Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Mars 2015
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2015
    Messages : 1
    Points : 2
    Points
    2
    Par défaut Sap extraire vers excel
    Bonjour, je travail une bonne partie de ma journée sur SAP, mais je suis pas assez pro pour configurer de manière à me faciliter la vie!!!

    je sais ce dont j ai besoin mais apparemment j'ai besoin d'un petit coup de main pour cela,

    alors que je tente le coup et me joint a votre discussion,


    si qlq a le temps un jour, je pourrais exprimer mes besoins???

    Merci

Discussions similaires

  1. [AC-2010] Export données vers excel
    Par CmzxNene dans le forum Access
    Réponses: 5
    Dernier message: 01/06/2012, 05h54
  2. Methode pour exporter données vers excel
    Par ALEA001 dans le forum Débutez
    Réponses: 2
    Dernier message: 11/08/2011, 17h34
  3. Exportation données vers Excel 2003 et 2007
    Par cyclopsnet dans le forum Général Java
    Réponses: 3
    Dernier message: 07/08/2009, 14h53
  4. Macro excel pour exportation données vers Access
    Par jaromyr dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 13/12/2007, 23h50
  5. Export de données vers Excel
    Par psykot63 dans le forum Access
    Réponses: 2
    Dernier message: 03/01/2005, 12h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo