pysap.SAPDiagClient module¶
- class pysap.SAPDiagClient.SAPDiagConnection(host, port, terminal=None, compress=False, init=False, route=None, support_data=<SAPDiagItem item_type=APPL item_id=ST_USER item_sid=SUPPORTDATA item_value=<SAPDiagSupportBits SAPGUI_IMODE=1 SAPGUI_COMPR_ENHANCED=1 SAPGUI_FONT_METRIC=1 SAPGUI_SYMBOL_RIGHT=1 SAPGUI_SELECT_RECT=1 SAPGUI_DIAGVERSION=1 SAPGUI_LABELS=1 PROGRESS_INDICATOR=1 RFC_DIALOG=0 INPUT_UPPERCASE=1 SAPGUI_TABPROPERTY=1 UPPERCASE=1 SAPGUI_PUSHBUTTON_1=1 SAPGUI_FOCUS_1=1 SAPGUI_TABLE=1 SAPGUI_LONG_MESSAGE=1 DLGH_FLAGS=1 CONTAINER_TYPE=1 OBJECT_NAMES=1 FULL_MENU=1 STOP_TRANS=1 MENU_SHORTCUT=1 FKEY_TABLE=1 LIST_HOTSPOT=0 NORABAX=0 NOMESSAGES=0 NOGRAPH=1 GUIAPI=0 TABSEL_ATTRIB=1 MESDUM_FLAG1=1 MESSAGE_INFO=0 APPL_MNU=1 TABLE_SIZE_OK=1 SCROLL_INFOS=1 OCX_SUPPORT=0 MESSAGE_VARS=1 NEW_BSD_JUSTRIGHT=1 NORFC=0 NOSAPSCRIPT=1 NOSYSMSG=0 TABSCROLL_INFOS=1 UNKNOWN_1=0 TABSTRIP=1 PUSHBUTTON_2=1 CONN_WSIZE=0 CURR_TCODE=1 VARINFO_OKCODE=1 MESSAGE_INFO2=1 NEED_STDDYNPRO=0 R3INFO_USER_CHECKED=0 APPTOOLBAR_FIXED=1 CONTROL_CONTAINER=1 MULTI_LOGIN_USER=0 RFCBLOB_DIAG_PARSER=1 NEW_MODE_REQUEST=1 TABLE_FIELD_NAMES=1 R3INFO_USERID=1 CHECKRADIO_EVENTS=1 R3INFO_FLAGS=0 COMBOBOX_TABLE=1 ISO_LANGUAGE=0 INPUT_REQUIRED=1 COMBOBOX=1 TYPE_SERVER=0 LABEL_OWNER=0 EVENT_DESCRIPTION=1 SCROLLABLE_TABSTRIP_PAGE=1 CONTEXT_MENU=1 WIN16=0 NUM_FIELD=1 USER_TURNTIME2=0 R3INFO_ROLLCOUNT=0 NOTGUI=0 R3INFO_IMODEUUID=0 VARINFO_CONTAINER=0 PROPFONT_VALID=0 TABLE_ROW_REFERENCES_2=1 UNUSED_1=0 PROPERTY_BAG=0 CLICKABLE_FIELD=0 ENJOY_IMODEUUID=0 CTL_PROPCACHE=1 DPLOADONDEMAND=1 JAVA_BEANS=1 RFC_COMPRESS=1 RFC_QUEUE=1 XML_BLOBS=1 WAN=0 HAS_CACHE=0 HEX_FIELD=0 UNUSED_4=0 XML_PROPERTIES=1 UNUSED_3=0 UNUSED_2=0 KEEP_SCROLLPOS=1 RFC_ASYNC_BLOB=1 UNUSED_6=0 COOKIE=0 PROPERTYPUMP=0 NO_EASYACCESS=0 ITS=0 ENJOY_IMODEUUID2=1 UNUSED_5=0 XML_PROP_TABLE=1 AREA2FRONT=1 EMERGENCY_REPAIR=0 CACHED_VSETS=0 AUTO_CODEPAGE=1 ENTRY_HISTORY=0 CONTROL_FOCUS=1 DPLOADONDEMAND_WRITE=1 SUPPBIT_AREA_SIZE=1 NOTIFY_NEWMODE=0 SINGLE_SESSION=0 UNKNOWN_2=0 PRINTDATA=1 WORKPLACE=0 EDIT_VARLEN=1 AUTORESIZE=0 SCROLLBAR_WIDTH=1 CONTROL_FOCUS_ON_LIST=1 WEBGUI_HELPMODE=0 WEBGUI=0 DYNAMIC_PASSPORT=1 DP_HTTP_PUT=0 XMLPROP_DYNPRO=1 XMLPROP_CONTAINER=1 TOOLBAR_HEIGHT=1 ENABLE_UTF8=1 ENJOY_IMODEUUID3=1 ECATT=1 ACCESSIBILITY=0 SLC=1 GUI_USER_SCRIPTING=1 EOKDUMMY_1=1 CBU_RBUDUMMY_2=1 CBURBU_NEW_STATE=1 GUIPATCHLEVEL=1 ENABLE_APPL4=1 R3INFO_CODEPAGE_APP=1 ENABLE_UTF16LE=0 ENABLE_UTF16BE=0 VARINFO_ICON_TITLE_LIST=1 R3INFO_AUTOLOGOUT_TIME=0 GUI_USER_SCRIPTING_INFO=0 ACC_LIST=0 VALUE_4_HISTORY=1 SPLITTER=1 EVENT_DESCRIPTION_1=1 TOP_WINDOW=1 GUI_THEME=1 BINARY_EVENTID=1 DEFAULT_TOOLTIP=1 TABSEL_ATTRIB_INPUT=0 ACC_LIST_PROPS=0 TICKET4GUI=0 FRAME_1=1 R3INFO_CODEPAGE_APP_1=1 DYNT_NOFOCUS=0 TEXTEDIT_STREAM=1 RFC_SERVER_4_GUI=0 OBJECT_NAMES_4_LOGIN_PROCESS=0 ITS_PLUGIN=0 TABLE_COLUMNWIDTH_INPUT=0 CONTROL_FOCUS_ON_LIST_2=0 CELLINFO=1 CBU_RBUDUMMY_3=1 XML_PROP_TABLE_2=1 MESSAGE_INFO3=0 EOKDUMMY_2=1 VARINFO_CONTAINER_LOOP=1 R3INFO_KERNEL_VERSION=1 WEBSAPCONSOLE=0 MENUENTRY_WITH_FCODE=0 RCUI=0 R3INFO_FLAGS_2=0 MESSAGE_SERVICE_REQUEST=1 TC_KEEP_SCROLL_POSITION=1 DIALOG_STEP_NUMBER=1 GUI_PACKET=1 DISPLAY_SIZE=1 GUIPATCHLEVEL_2=1 MAINAREA_SIZE=1 SBA2=1 ALLWAYS_SEND_CLIENT=0 LIST_FULLWIDTH=0 TRACE_GUI_CONNECT=0 XMLPROP_LIST_DYNPRO=0 STD_TOOLBAR_ITEMS=1 VARINFO_CONTAINER_1=1 MAX_STRING_LEN=1 DYNT_FOCUS_FRAME=1 EXTMODE_FONT_METRIC=0 AMC=0 IDA_ALV_FRAGMENTS=0 IDA_ALV=0 SAP_PERSONAS=0 MAX_WSIZE=0 GUI_SIGNATURE_COLOR=0 UNKNOWN_3=0 AGI_ID_TC=0 AGI_ID=0 MSGINFO_WITH_CODEPAGE=0 CONNECT_CHECK_DONE=0 FIORI_MODE=0 NO_FOCUS_ON_LIST=0 AGI_ID_TS_BUTTON=0 GROUPBOX=0 padding_bits=0 |> |>)[source]¶
Bases:
objectSAP Diag Connection
This class represents a basic client connection to a Diag server. Handles initialization and further interaction by sending/receiving packets.
- connect()[source]¶
Creates a
SAPNIStreamSocketconnection to the host/port. If a route was specified, connect to the target Diag server through the SAP Router.
- static get_terminal_name()[source]¶
Generates a random IP address to use as a terminal name. In SAP systems that don’t implement SAP Note 1497445, the dispatcher registers logs the terminal name as provided by the client, or fallback to registering the IP address if the terminal name can’t be resolved. Using a random IP address as terminal name in unpatched systems will make the ‘terminal’ field of the security audit log unreliable.
- init()[source]¶
Sends an initialization request. If the socket wasn’t created, call the
connectmethod. If compression was specified, the initialization will be performed using the respective User Connect item.- Returns:
initialization response (usually login screen)
- Return type:
SAPNI
- initialized = False¶
- Ivar:
if the connection was initialized
- Type:
bool
- interact(message)[source]¶
Interacts with the SAP Diag server, adding the
SAPDiagStepitem and ending with a ‘end of message’ item.- Parameters:
message (
listofSAPDiagItem) – items to send- Returns:
server’s response
- Return type:
SAPNI
- last_response = None¶
- Ivar:
stores the last response received from the server
- Type:
SAPNI
- receive()[source]¶
Receive a
SAPNIpacket using theSAPNIStreamSocket. Response is returned and also stored inlast_response.- Returns:
packet received
- Return type:
SAPNI
- send(packet)[source]¶
Sends a packet using the
SAPNIStreamSocket- Parameters:
packet (
SAPDiag) – packet to send
- send_message(msg)[source]¶
Sends a
SAPDiagmessage, prepending the Diag header.- Parameters:
msg (
listofSAPDiagItem) – items to send
- sr(packet)[source]¶
Sends and receive a
SAPNIpacket using theSAPNIStreamSocket- Parameters:
packet (
SAPDiag) – packet to send- Returns:
packet received
- Return type:
SAPNI
- sr_message(msg)[source]¶
Sends and receive a
SAPDiagmessage, prepending the Diag header.- Parameters:
msg (
listofSAPDiagItem) – items to send- Returns:
server’s response
- Return type:
SAPNI
- step = 0¶
- Ivar:
number of the last dialog step performed
- Type:
int