OO
长沙铁道学院-康帅傅
ABAP 7.58,你值得拥有
展开
-
MDG context API的用法
背景实施BADI USMD_RULE_SERVICE进行实体数据校验时,需要判断当前的CR type以及CR step,严格控制增强生效的条件。源代码 method if_ex_usmd_rule_service~check_entity. if io_model is initial or io_model->d_usmd_model <> if_mdg_bp_constants=>gc_bp_model. return. endi原创 2020-12-18 14:03:34 · 357 阅读 · 0 评论 -
MDG维护物料分类和特性(参考代码)
code referenceparameters:p_cr type usmd_crequest, p_matnr type matnr obligatory, p_class type klasse_d, p_sub as checkbox.try. data(lo_api_instance) = cl_usmd_gov_api=>get_instance( if_mdg_bs_mat_gen_c=>gc原创 2022-04-11 19:39:39 · 874 阅读 · 0 评论 -
ABAP读取Excel方法大全
前言ABAP读取Excel文件可以使用多种方式实现,OLE是最常用的技术,但速度及兼容性较差;也可以使用DOI接口读取,最新的技术则通过XML技术进行解析,采用最新的面向对象编程,容易理解,且兼容性较好。方法标准函数函数名说明TEXT_CONVERT_XLS_TO_SAP基于OLE,需要内表结构与Exce列顺序一致ALSM_EXCEL_TO_INTERNAL_TABL基于OLE,按单元读取出来,最长只支持50个字符UPLOAD_XLS_FILE_2_ITAB(尚原创 2020-11-20 10:40:06 · 3000 阅读 · 2 评论 -
SAP Odata开发新手起步
环境初始化https://blogs.sap.com/2013/05/14/quick-starter-configuration-guide-sap-gateway/https://help.sap.com/viewer/68bf513362174d54b58cddec28794093/7.4.19/en-US/925822518bc72214e10000000a44176d.htmlhttps://blogs.sap.com/2017/11/19/sap-fiori-ui5-app-configu原创 2020-08-31 15:40:32 · 903 阅读 · 0 评论 -
SAP异步SOAP服务fault message抓取
lo_api->product_mdmbulk_replicate_requ( input = ls_input ). commit work and wait. data(lo_protocol_message) = cast cl_wsprotocol_message_id( lo_api->get_protocol( if_wsprotocol=&...原创 2021-08-27 16:25:02 · 617 阅读 · 0 评论 -
MDG convenience API示例代码
种草已实现,源代码联系Q 2212332116原创 2021-03-19 22:39:35 · 661 阅读 · 0 评论 -
MDG跨实体校验(cross entity validation)读取entity text
背景实现BADI USMD_RULE_SERVICE进行实体合法性校验时,常需要依赖于其他实体的数据实现原理check entity方法的输入参数IO_MODEL包含模型运行时信息,调用对应的read_model方法即可参考代码data:lr_data type ref to data, lt_messages type usmd_t_message, lt_sel type usmd_ts_sel, ls_sel原创 2021-03-12 13:22:51 · 504 阅读 · 1 评论 -
SAP查看shared object共享对象
背景使用如下代码写入shared objectdata:lo_root type ref to ycl_shared_object.data(lo_shm_handle) = ypwk_area_emp=>attach_for_write( inst_name = 'YTEST' ).create object lo_root area handle lo_shm_handle.lo_shm_handle->set_root( lo_root ).lo_root->set_d原创 2021-01-28 10:47:26 · 483 阅读 · 0 评论 -
MDG BADI USMD_SSW_SYSTEM_METHOD_CALLER 实例
背景用户提出变更申请,需要给审批人发送OA代办消息,当审批人批准或拒绝变更申请时,同样需要发送已办消息。实现思路在标准的step中间插入自定义step,同时自定义step绑定service name,service 触发BADI实施。步骤自定义service name&& CR step维护V_USMD202C_SSW维护USMD201C_SSW修改变更申请类型对应的Brf+决策表以CR TYPE BP1P1为例非用户代理决策表单一值决策表新建BADI实施,实现原创 2020-12-30 16:53:12 · 983 阅读 · 2 评论 -
ABAP动态获取内表的字段列表
本例是获取内表ct_bp_basic的字段清单,基本类型是表类型,结构中包含include,故需要展开;无inlcude结构,则可忽略第二部分 data(lo_table_basic) = cast cl_abap_tabledescr( cl_abap_tabledescr=>describe_by_data( ct_bp_basic ) ). data(lo_struct_basic) = cast cl_abap_structdescr( lo_table_basic->get_t原创 2020-11-03 15:05:11 · 3061 阅读 · 0 评论 -
ABAP定时刷新选择屏幕
parameters : p_time type i default 3.class lcl_event definition. public section. methods m_timer_finished for event finished of cl_gui_timer.endclass.class lcl_event implementation. method m_timer_finished. " cl_gui_cfw=>set_new_原创 2020-06-12 15:51:12 · 1532 阅读 · 0 评论 -
ABAP设计模式实例-代理模式
背景12306官网支持注册和订票操作,携程代理了12036,但是不支持注册功能实例代码"抽象接口interface if_ticket. methods: register importing id type string, get_train_list importing from type string default '北京'.endinterface."真实实现类-12306官网class t12306 definition create public. publi原创 2020-06-11 17:00:38 · 242 阅读 · 0 评论 -
ABAP设计模式实例-桥接模式
个人理解对于实现相同接口的多个类,寻找他们的共同点,由此抽象出另一个新接口,新接口通过关联旧接口的方式,调用实现类实例代码"基础接口interface if_person. methods:sayhello.endinterface."实现类1class javaer definition create public. public section. interfaces:if_person.endclass.class javaer implementation.原创 2020-06-09 16:44:42 · 192 阅读 · 0 评论 -
ABAP设计模式实例-适配器模式
背景适配器模式有两种实现方式,类适配器和对象适配器,因ABAP不支持多继承,故类适配器实际了只能适配一个Adaptee(适配者)基础实现类适配器class adaptee definition create public. public section. methods: adaptee_request.endclass.class adaptee implementation. method adaptee_request. write:/ 'request from原创 2020-06-08 16:35:41 · 268 阅读 · 2 评论 -
ABAP单元测试(UT)的两个简单例子
背景最近写的接口分支太复杂,每次修改以后手工测试较为耗时,且无法考虑所有场景,为保证代码的质量和稳定,决定学习ABAP unit test相关知识,以下是自己实现的几个例子,Step by Step的参考链接如下Understanding ABAP Unit Testing源代码针对class*&---------------------------------------------------------------------**& Report YPWK_UT*&a原创 2020-06-02 19:04:37 · 1619 阅读 · 0 评论 -
ABAP设计模式实例-创建型模式
单例模式report ypwk_singleton.class lcl_basic_singleton definition create private. public section. class-methods:get_instance returning value(ro_instance) type ref to lcl_basic_singleton. class-methods class_constructor. methods:set_原创 2020-05-20 19:15:10 · 461 阅读 · 0 评论