SAP Script

ozgurpeh

Altın Üye
Katılım
30 Eylül 2007
Mesajlar
383
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
04-01-2027
Merhaba aşağıdaki kodlar bir script dosyasının içeriğidir. Script dosyasını çalıştırdığımız zaman SAP de kaydettiğimiz bir işlemi tıpkı exceldeki makro kayıtta olduğu gibi bir kayıt dosyası oluşturup onu klasör için atıyor. Ben bu kodu excelde çalıştırmak istiyorum bu mümkün mü ?


If Not IsObject(application) Then
Set SapGuiAuto = GetObject("SAPGUI")
Set application = SapGuiAuto.GetScriptingEngine
End If
If Not IsObject(connection) Then
Set connection = application.Children(0)
End If
If Not IsObject(session) Then
Set session = connection.Children(0)
End If
If IsObject(WScript) Then
WScript.ConnectObject session, "on"
WScript.ConnectObject application, "on"
End If
session.findById("wnd[0]").maximize
session.findById("wnd[0]/tbar[0]/okcd").text = "vl02n"
session.findById("wnd[0]").sendVKey 0
session.findById("wnd[0]/usr/ctxtLIKP-VBELN").text = "683803235"
session.findById("wnd[0]").sendVKey 0
session.findById("wnd[0]/tbar[1]/btn[14]").press
session.findById("wnd[1]/usr/btnSPOP-OPTION1").press
session.findById("wnd[0]/tbar[0]/okcd").text = "/n"
session.findById("wnd[0]").sendVKey 0
 

EmrExcel16

Destek Ekibi
Destek Ekibi
Katılım
1 Kasım 2012
Mesajlar
1,524
Excel Vers. ve Dili
Office 365 Türkçe
Merhaba evet bu kodlari excel vba ilede kullanabilirsiniz zamaninda sap için bir makro yapmistim kodlarida sizin anlattiginiz sekilde hazirlayip excele uyarlamistim.
 

ozgurpeh

Altın Üye
Katılım
30 Eylül 2007
Mesajlar
383
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
04-01-2027
Merhaba evet bu kodlari excel vba ilede kullanabilirsiniz zamaninda sap için bir makro yapmistim kodlarida sizin anlattiginiz sekilde hazirlayip excele uyarlamistim.
Daha fazlasını bekliyordum açıkçası :)


Tapatalk kullanarak iPhone aracılığıyla gönderildi
 

EmrExcel16

Destek Ekibi
Destek Ekibi
Katılım
1 Kasım 2012
Mesajlar
1,524
Excel Vers. ve Dili
Office 365 Türkçe
Tam olarak ne bekliyordunuz bilmiyorum ama sordugunuz sorunun cevabini vermek istedim "Ben bu kodu excelde çalıştırmak istiyorum bu mümkün mü ? " hayirli aksamlar
 

ozgurpeh

Altın Üye
Katılım
30 Eylül 2007
Mesajlar
383
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
04-01-2027
Tam olarak ne bekliyordunuz bilmiyorum ama sordugunuz sorunun cevabini vermek istedim "Ben bu kodu excelde çalıştırmak istiyorum bu mümkün mü ? " hayirli aksamlar
Nasıl yapılırın cevabını arıyorum açıkçası


Tapatalk kullanarak iPhone aracılığıyla gönderildi
 

EmrExcel16

Destek Ekibi
Destek Ekibi
Katılım
1 Kasım 2012
Mesajlar
1,524
Excel Vers. ve Dili
Office 365 Türkçe
Suan pc basinda degilim yarin daha onceki yaptim dosyayi bulur ozel birsey yapmismiyim yoksa sadece kodlari excel kod sayfasina mi yapistirmisim bilgi veririm ama sap kullanan arkadaşlar varsa yardimci olacaklardir.
 

ozgurpeh

Altın Üye
Katılım
30 Eylül 2007
Mesajlar
383
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
04-01-2027
Suan pc basinda degilim yarin daha onceki yaptim dosyayi bulur ozel birsey yapmismiyim yoksa sadece kodlari excel kod sayfasina mi yapistirmisim bilgi veririm ama sap kullanan arkadaşlar varsa yardimci olacaklardir.
Teşekkürler


Tapatalk kullanarak iPhone aracılığıyla gönderildi
 

ozgurpeh

Altın Üye
Katılım
30 Eylül 2007
Mesajlar
383
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
04-01-2027
Bu dosya ve bu video yardımcı olacaktır.

Excel vba reference de SAP Gui Scripting API nin yüklenmiş olması gerekiyor.

Bu videoyu izledim fakat bu yamayı nasıl yükleyeceğimi bulamadım


Tapatalk kullanarak iPhone aracılığıyla gönderildi
 
Katılım
24 Nisan 2005
Mesajlar
3,680
Excel Vers. ve Dili
Office 2016 EN 64 Bit
Altın Üyelik Bitiş Tarihi
25/05/2022
Bu videoyu izledim fakat bu yamayı nasıl yükleyeceğimi bulamadım


Tapatalk kullanarak iPhone aracılığıyla gönderildi
Bu iki yöntemi dener misiniz? SAP gui içinden yapmadan direkt excel reference de dll tanımlama ilede yapılıyordu. Şu an tam hatırlamıyorum.
Ancak bu daha kolay gibi duruyor.

https://archive.sap.com/discussions/thread/3168769
https://archive.sap.com/discussions/thread/1787773

Eğer daha önce yüklenmiş ise aktif etmek için bu işlemleri yapın.
https://www.mrexcel.com/forum/excel-questions/468098-control-sap-vba.html
 

EmrExcel16

Destek Ekibi
Destek Ekibi
Katılım
1 Kasım 2012
Mesajlar
1,524
Excel Vers. ve Dili
Office 365 Türkçe
Merhaba daha önceki yaptığım dosyada da kontrol ettim excelde kullanmak için bu kodları özel bir durum yok sadece Dim tanımlamalarını yapıp kullanabilirsiniz yeni bir excel dosyası açıp kod sayfasına geçip yeni bir modül ekledim ve verdiğiniz kodları dim tanımlamalarını yapıp çalıştırdım çalıştı bende deneyip sonucu bildirirseniz sevinirim
Kod:
Sub sap()

Dim SapGuiAuto, Application, Connection, session

If Not IsObject(Application) Then
Set SapGuiAuto = GetObject("SAPGUI")
Set Application = SapGuiAuto.GetScriptingEngine
End If
If Not IsObject(Connection) Then
Set Connection = Application.Children(0)
End If
If Not IsObject(session) Then
Set session = Connection.Children(0)
End If
If IsObject(WScript) Then
WScript.ConnectObject session, "on"
WScript.ConnectObject Application, "on"
End If
session.findById("wnd[0]").maximize
session.findById("wnd[0]/tbar[0]/okcd").Text = "vl02n"
session.findById("wnd[0]").sendVKey 0
session.findById("wnd[0]/usr/ctxtLIKP-VBELN").Text = "683803235"
session.findById("wnd[0]").sendVKey 0
session.findById("wnd[0]/tbar[1]/btn[14]").press
session.findById("wnd[1]/usr/btnSPOP-OPTION1").press
session.findById("wnd[0]/tbar[0]/okcd").Text = "/n"
session.findById("wnd[0]").sendVKey 0


End Sub
 

ozgurpeh

Altın Üye
Katılım
30 Eylül 2007
Mesajlar
383
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
04-01-2027
Sub sap() Dim SapGuiAuto, Application, Connection, session If Not IsObject(Application) Then Set SapGuiAuto = GetObject("SAPGUI") Set Application = SapGuiAuto.GetScriptingEngine End If If Not IsObject(Connection) Then Set Connection = Application.Children(0) End If If Not IsObject(session) Then Set session = Connection.Children(0) End If If IsObject(WScript) Then WScript.ConnectObject session, "on" WScript.ConnectObject Application, "on" End If session.findById("wnd[0]").maximize session.findById("wnd[0]/tbar[0]/okcd").Text = "vl02n" session.findById("wnd[0]").sendVKey 0 session.findById("wnd[0]/usr/ctxtLIKP-VBELN").Text = "683803235" session.findById("wnd[0]").sendVKey 0 session.findById("wnd[0]/tbar[1]/btn[14]").press session.findById("wnd[1]/usr/btnSPOP-OPTION1").press session.findById("wnd[0]/tbar[0]/okcd").Text = "/n" session.findById("wnd[0]").sendVKey 0 End Sub
Kesinlikle bu işimi gördü teşkkürler
 

EmrExcel16

Destek Ekibi
Destek Ekibi
Katılım
1 Kasım 2012
Mesajlar
1,524
Excel Vers. ve Dili
Office 365 Türkçe
Rica ederim.
 
Üst