Как проверить ошибку при входе в SAP через коды Python - PullRequest
0 голосов
/ 26 апреля 2019

Я пытаюсь войти в SAP через Python, но после запуска кодов я получил следующую ошибку

connection = application.OpenConnection("A101.TA2", True) File "<COMObject <unknown>>", line 3, in OpenConnection pywintypes.com_error: (-2147352567, 'Exception occurred.', (1000, 'saplogon', 'SAP Logon connection entry not found', None, 0, 0), None)

экран входа в систему выглядит следующим образом http://img1.imagehousing.com/0/sap-370961.png

Я попытался A101, A101.TA2 A101.TA2 PRD / ERi TEN в качестве имени соединения, все не удалось. какое должно быть правильное имя соединения?

import win32com.client
import sys
import subprocess
import time

def saplogin():



  path = r"C:\Program Files (x86)\SAP\FrontEnd\SAPgui\saplogon.exe"
  subprocess.Popen(path)
  time.sleep(3)

  SapGuiAuto = win32com.client.GetObject('SAPGUI')
  if not type(SapGuiAuto) == win32com.client.CDispatch:
      return

  application = SapGuiAuto.GetScriptingEngine

  if not type(application) == win32com.client.CDispatch:

      SapGuiAuto = None
      return

  connection = application.OpenConnection("A101.TA2", True)
  print('5')
  if not type(connection) == win32com.client.CDispatch:
      application = None
      SapGuiAuto = None
      return

  session = connection.Children(0)
  if not type(session) == win32com.client.CDispatch:
      connection = None
      application = None
      SapGuiAuto = None
      return

  session.findById("wnd[0]/usr/txtRSYST-BNAME").text = "USERNAME"
  session.findById("wnd[0]/usr/pwdRSYST-BCODE").text = "PASSWORD"
  session.findById("wnd[0]").sendVKey(0)




saplogin()

1 Ответ

0 голосов
/ 30 апреля 2019

Я не работаю с Python, но я бы взял полное имя в строке подключения.

например:

connection = application.OpenConnection("A101.TA2 PRD / Eri TEN", True)

С уважением, ScriptMan

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...