状态栏消息处理
代码实现:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | class SapMessageType(enum.Enum): SUCCESS = "S" WARNING = "W" ERROR = "E" ABORT = "A" INFORMATION = "I" class SapStatusMessage: def __init__( self , message_as_popup, message_type, message_text, message_id, message_number, message_parameters): self .message_as_popup = message_as_popup self .message_type = SapMessageType(message_type) self .message_text = message_text self .message_id = message_id self .message_number = message_number self .message_parameters = message_parameters class SapStatusBar: def __new__( cls , * args, * * kwargs): if not hasattr ( cls , 'instance' ): cls .instance = super ().__new__( cls , * args, * * kwargs) return cls .instance @staticmethod def get_message(session, status_bar): message = None if session and status_bar: try : bar = session.findById(status_bar) message_type = bar.MessageType.strip() if message_type: message_as_popup = bar.MessageAsPopup message_text = bar.Text.strip() message_id = bar.MessageId.strip() message_number = bar.MessageNumber.strip() parameters = SAP_MESSAGES.get(message_id + message_number, [ str (i) for i in range ( 8 )]) message_parameters = {name: bar.MessageParameter(i).strip() for i, name in enumerate (parameters)} message = SapStatusMessage( message_as_popup, message_type, message_text, message_id, message_number, message_parameters ) except Exception as _: pass return message # 标识SAP的消息信息,提取需要的数据。 # # 名称: [ID][NUMBER] # 对应的参数含义。 SAP_MESSAGES = { 'F5149' : ( 'date' ,) } class SapMessages: """ 标识SAP的消息信息,提取需要的数据。 名称: [ID][NUMBER] 对应的参数含义。 """ F5149 = ( 'date' ) |
https://blog.csdn.net/chenguangqi/article/details/125524474?spm=1001.2014.3001.5502
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2021-08-24 调用outlook发邮件