SAP et VB

Fred - 22 sept. 2000 à 01:00
 sanaa - 10 mars 2015 à 12:45
Je recherche de la doc et des exemples de codes sur l'utilisation de VB pour interfacer le logiciel SAP.
Merci
A voir également:

19 réponses

BERPA2 Messages postés 1 Date d'inscription jeudi 14 février 2002 Statut Membre Dernière intervention 14 février 2002 1
14 févr. 2002 à 10:40
Moi aussi, je cherche à piloter SAP par VB, ou plus exactement par Visual Basic Application.

Je suis débutant la-dedans mais je compte bien y arriver.
J'ai commandé un bouquin mais ne l'ai pas encore reçu.

Je suis interressé par correspondre avec qui a les mêmes objectifs afin de mettre nos ressources ou résultats en commun.

Bien évidemment si quelqu'un a déjà développé du code, je suis interessé de le voir ..

cyber adresse : remi.patron@shell.com
1
Merci de m'avertir aussi si vous avez ce
genre de renseignement...
Sinceres salutations :)
0
Maruhoga Messages postés 4 Date d'inscription mercredi 9 octobre 2002 Statut Membre Dernière intervention 9 octobre 2002
9 oct. 2002 à 16:21
-------------------------------
Réponse au message :
-------------------------------

Je recherche de la doc et des exemples de codes sur l'utilisation de VB pour interfacer le logiciel SAP.
Merci

J'ai les memes objectifs.
Mon but est d'automatiser des extractions de tables SAP en format text pour les traitert ensuite dans access.......
je pense qu'une solution qui permetrait de toucher le moins possible a SAP serait pas Mal,
J'ai donc pensé à un petit exe en vb qui simulerait l'utilisateur par la fonction SendKeys, en chopant les "poigné" des fenetres et les numero "TABorder" des cases qui nous intéressent.......
Qu'en pensez vous ?

je vais passer mon weekend dessus......
A+
0
totomayor Messages postés 1 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 21 février 2003
21 févr. 2003 à 10:35
Bonjour,
je recherche egalement des infos par rapport a SAP de maniere a pouvoir l'utiliser avec Access ou Excel en lien dynamique, ou en code VB.
Merci de me dire si vous avez pu avoir des resultats.
Christophe
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
faf7 Messages postés 5 Date d'inscription mercredi 26 mars 2003 Statut Membre Dernière intervention 8 février 2005
12 nov. 2003 à 10:22
Bonjour,
pour avoir de la doc il suffit d'aller dans la doc SAP (sur 1 CD livré avec SAP) . Il faut aller dans "Composantes du système de base" -> "Frontend Services (BC-FES)" -> "SAP Automation (BC-FES-AIT)". Ensuite vous toutes les docs pour les différents langages. Pour VB ou VBA il faut regarder "SAP Automation RFC and BAPI Interfaces (BC-FES-AIT)".

Et si vous voulez voir des exemples de codes, installer "SAP interactive Excel" qui est généralement avec le CD du SAP Gui pour Windows. Et regarder le code il y a vraiment tout ce qui est possible.

@+
0
banouzet Messages postés 6 Date d'inscription lundi 1 mars 2004 Statut Membre Dernière intervention 2 mars 2004
2 mars 2004 à 12:13
bonjour, j aimerai savoir si qq un a reussi. je possede ces cd en allemand seuleùent malheureusement.
si qq un accpepte de m aider pour piloter sap via vba, il peut me contacter a banouzet@yahoo.fr

merci d avance
0
faf7 Messages postés 5 Date d'inscription mercredi 26 mars 2003 Statut Membre Dernière intervention 8 février 2005
2 mars 2004 à 13:52
Je veux bien t'aider, mais je pense que tu peux demander à SAP de te livrer gratuitement les CD en version française.
0
banouzet Messages postés 6 Date d'inscription lundi 1 mars 2004 Statut Membre Dernière intervention 2 mars 2004
2 mars 2004 à 13:54
peux tu m envoyer ton email a banouzet@yahoo.fr si ca ne te derange pas.

pour sap, oui, j ai deja demandé a l informaticien de le faire, mais les connaissant, je suis sur qu il va falloir payer...

merci de la reponse
0
squirrel_hammer Messages postés 1 Date d'inscription dimanche 11 avril 2004 Statut Membre Dernière intervention 3 juin 2004
3 juin 2004 à 09:33
Salut,
je travaille actuellement sur le meme sujet mais je ne dispose pas des docs du CD SAP. Si quelqu'ujn peut m'envoyer la doc ou meme une source, ce serai bien car la je patauge un peu dans la semoule ....

Merci ++
0
cs_chapata Messages postés 214 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 9 avril 2010 5
8 févr. 2005 à 16:41
Salut à tous !!

j'ai le meme pb, mais je ne possede pas ce CD,

J'ai réussi a lancer SAPGui, mais je n'arrive pas a utiliser les fonctions:
connection.user et autres fonctions elle ne sont pas reconnu.

voici un bout de code que j'ai effectué :

Dim R3 as Object
Set R3 = createobject("SAPGUI.application")
R3.Connection.client = "160"
R3.Connection.user = "Test"
R3.Connection.password = ""
R3.Connection.language = "EN"
If R3.Connection.logon(0, False) <> True Then Exit Sub

Mais mon code Bug à la 3e ligne,
J'ai référencé SAP dans mon projet, mais ya rien a faire.

Avez vous une soluce, ou une aide quelqu'onque a m'apporter ???

merci pour votre lecture ...

Chapat'
0
faf7 Messages postés 5 Date d'inscription mercredi 26 mars 2003 Statut Membre Dernière intervention 8 février 2005
8 févr. 2005 à 16:46
Voici un bout de code qui devrait t'aider :



Dim functionCtrl As
Object
'Function Control (Collective object)



Dim sapConnection As Object 'Connection object



Dim theFunc As
Object
'Function object





Set functionCtrl = CreateObject("SAP.Functions")



Set sapConnection = functionCtrl.Connection



'Logon with initial values



sapConnection.autologon = True

sapConnection.RfcWithDialog = False

sapConnection.Client = "200"

sapConnection.User = "******"

sapConnection.Password = "******"

sapConnection.ApplicationServer = "__.__.__.__"



If sapConnection.logon(0, True) <> True Then



MsgBox "Pas de connection à SAP !"



Exit
Sub
'End program



End If



Set theFunc = functionCtrl.Add("Z_EXPORT_PALMARES")
0
cs_chapata Messages postés 214 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 9 avril 2010 5
8 févr. 2005 à 17:20
Cool !! merci pour le bout de code, je vais essayer ca et je te dis ...
Mais une question me trotte dans la tete :

qu'elle est la différence entre SAPGui et SAP

car dans mon code initiale je crée l'objet SAPGui.application
et dans ton code, c'est SAP.function ...

je capte pas tout ...

merci encore pour le bout de code.
0
faf7 Messages postés 5 Date d'inscription mercredi 26 mars 2003 Statut Membre Dernière intervention 8 février 2005
8 févr. 2005 à 17:24
je sais pas à quoi sert le sapgui.application. Je sais juste que le sap.function te permet d'appeler un module fonction.
0
rodrigue62 Messages postés 190 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 10 janvier 2011
2 mai 2006 à 09:59
Je suis en stage dans une entreprise faisant partie d'un grand groupe europeen. Or ce grand groupe utilise SAP comme ERP. Mais pour un service de l'entreprise SAP n'est pas assez complet pour leur gestion, j'ai donc du developper un systeme d'info sous Access leur permettant de gerer ce que SAP ne gere pas. Mais dans cette base de donnée, certaine donnée a entrer le sont deja sous SAP, se serait donc bete de faire entrer deux fois les memes info dans deux logiciels differents, mon but serait donc de recuperer les données deja sous SAP, mais ces données seront ensuite dans differentes tables, ces tables contenant aussi des infos complementaires qui seront ensuite entrée a la main.
Donc je voudrais savoir si quelqu'un a trouvé des docs interressantes sur le sujet, et aussi comme je vois la semaine prochaine l'equipe SAP pour le groupe afin de leur demander de me mettre a disposition un fichier d'interface avec les données necessaires, sous quel forme dois je leur demander?
0
thebestjl Messages postés 4 Date d'inscription mardi 28 juin 2005 Statut Membre Dernière intervention 31 mai 2007
31 mai 2007 à 16:15
Bonjour ,
Je suis en stage dans une grande entreprise qui utilise SAP R3. Je dois effectuer une extration de donnée depuis une application VBA. Grace au code donnée ci dessus j'ai réussi a me connecter a SAP par le bais de mon application. Mais je ne trouve pas le moyen de pouvoir extraire les données . Je n'ai pas en ma pocéssion les docs de SAP donc je dois me débrouillé tout seul. Si une personne ayant déjas fait cela pouvai m'aider je serai trés reconnaisant.
Merci d'avance
0
sirmain Messages postés 3 Date d'inscription vendredi 19 octobre 2007 Statut Membre Dernière intervention 17 avril 2008
16 avril 2008 à 22:19
En cherchant sur le net je suis tombé sur ce message du forum qui me semble correspondre à mon besoin .
Je cherche à :
- lancer SAP depuis EXCEL par une macro,
- executer une transaction SAP en transmettant les paramètres de sélection par la macro,
- récupérer les données par un export excel,
- faire une deuxième opération du même type,
- fermer les applications.
As tu résolu ce type de besoin ?
Merci, Christian
0
cs_chapata Messages postés 214 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 9 avril 2010 5
17 avril 2008 à 09:25
Non pas du tout, je suis ne plus sur ce projet depuis lgpts, mais, si il y a de l'info, c'est toujours bon a prendre.
Bon courage.

ChaPaTa
/FONT>
0
julot31 Messages postés 1 Date d'inscription mercredi 1 août 2007 Statut Membre Dernière intervention 22 avril 2008
22 avril 2008 à 19:07
Voici un bout de code qui me permet de faire exactement ce que tu veux... mais pas  exactement ce que je voulais moi, mais je vais y arriver. Je me permet de le mettre ici car après de longues recherches sur le net, j'ai rien trouvé pour m'aider....enfin voici mon bout de code (il s'agit d'une application bien particuliére qui sera à adapter en fonction du besoin que chacun peut avoir, me concernant il s'agissit de faire une recherche dans une transaction suivant plusieurs critéres, et d'en exporter le résultat sous forme de tableau excel):
Function SAP()
Dim App, Connection, session As Object
On Error GoTo 0
Set App = CreateObject("Sapgui.ScriptingCtrl.1")
Set Connection = App.OpenConnection("nom de l'application", False)
Set session = Connection.Children(0)
With session
    .findById("wnd[0]").maximize
    .findById("wnd[0]/usr/txt[0]").Text = "xxx"  'system
    .findById("wnd[0]/usr/txt[1]").Text = "xxx" 'logon
    .findById("wnd[0]/usr/pwd").Text = "xx" 'password
    .findById("wnd[0]/usr/txt[2]").Text = "xx" 'language
    .findById("wnd[0]/usr/txt[2]").SetFocus
    .findById("wnd[0]/usr/txt[2]").caretPosition = 2
    .findById("wnd[0]").sendVKey 0
    .findById("wnd[0]/tbar[0]/okcd").Text = "xxxx"
    .findById("wnd[0]").sendVKey 0
    .findById("wnd[0]/usr/ctxt[0]").Text = "critére0"
    .findById("wnd[0]/usr/ctxt[0]").caretPosition = 2
    .findById("wnd[0]/usr/btn[4]").press
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE").Columns.elementAt(1).Width = 12
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,0]").Text = "critére1"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,1]").Text = "critére2"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,2]").Text = "critére3"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,2]").SetFocus
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,2]").caretPosition = 3
    .findById("wnd[1]/tbar[0]/btn[8]").press
    .findById("wnd[0]/usr/btn[15]").press
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,0]").Text = "critére4"
    .findById("wnd[1]").sendVKey 0
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,1]").Text = "critére5"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,2]").Text = "critére6"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,3]").Text = "critére7"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,4]").Text = "critére8"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,5]").Text = "critére9"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,6]").Text = "critére10"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,7]").Text = "critére11"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,8]").Text = "critére12"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,8]").SetFocus
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,8]").caretPosition = 8
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE").verticalScrollbar.Position = 3
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,6]").Text = "critére13"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,7]").Text = "critére15"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,8]").Text = "critére16"
    .findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssub/1/2/tblSAPLALDBSINGLE/ctxt[1,8]").caretPosition = 8
    .findById("wnd[1]/tbar[0]/btn[8]").press
    .findById("wnd[0]/tbar[1]/btn[8]").press
    .findById("wnd[0]/tbar[1]/btn[45]").press
    .findById("wnd[1]/usr/sub/1/rad[1,0]").Select
    .findById("wnd[1]/usr/sub/1/rad[1,0]").SetFocus
    .findById("wnd[1]/tbar[0]/btn[0]").press
    .findById("wnd[1]/usr/ctxt").Text = "nom du fichier.xls"
    .findById("wnd[1]/usr/ctxt").caretPosition = 65
    .findById("wnd[1]/tbar[0]/btn[0]").press
    .findById("wnd[0]/tbar[0]/btn[3]").press
    .findById("wnd[0]/tbar[0]/btn[3]").press
End With
Set App = Nothing
Set Connection = Nothing
Set session = Nothing
End Function

Bonne chance.
0
Bonjour, je dois le même problème en urgence.
Svp qqun peut m'aider.
0
Rejoignez-nous