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:
object
SAP 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
SAPNIStreamSocket
connection 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
connect
method. 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
SAPDiagStep
item and ending with a ‘end of message’ item.Parameters: message ( list
ofSAPDiagItem
) – items to sendReturns: server’s response Return type: SAPNI
-
last_response
= None¶ Ivar: stores the last response received from the server Type: SAPNI
-
receive
()[source]¶ Receive a
SAPNI
packet 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
SAPDiag
message, prepending the Diag header.Parameters: msg ( list
ofSAPDiagItem
) – items to send
-
sr
(packet)[source]¶ Sends and receive a
SAPNI
packet using theSAPNIStreamSocket
Parameters: packet ( SAPDiag
) – packet to sendReturns: packet received Return type: SAPNI
-
sr_message
(msg)[source]¶ Sends and receive a
SAPDiag
message, prepending the Diag header.Parameters: msg ( list
ofSAPDiagItem
) – items to sendReturns: server’s response Return type: SAPNI
-
step
= 0¶ Ivar: number of the last dialog step performed Type: int
-