使用ABAP代码给SAP IPM Contract的行项目分配IP product
发布日期:2021-06-30 14:04:06
浏览次数:3
分类:技术文章
本文共 2617 字,大约阅读时间需要 8 分钟。
*&---------------------------------------------------------------------**& Report ZHANA_PRODUCT_SEARCH*&*&---------------------------------------------------------------------**&*&*&---------------------------------------------------------------------*REPORT zassign_ip.PARAMETERS: prod type comm_product-product_id OBLIGATORY DEFAULT '5600000010', order TYPE CRMD_ORDERADM_H-object_id.DATA: lo_core TYPE REF TO cl_crm_bol_core, lo_collection TYPE REF TO if_bol_entity_col, lv_query_name TYPE crmt_ext_obj_name, lt_selection_parameter TYPE genilt_selection_parameter_tab, ls_selection_parameter TYPE genilt_selection_parameter, ls_query_parameters TYPE genilt_query_parameters.ls_selection_parameter-attr_name = 'OBJECTID'.ls_selection_parameter-option = 'EQ'.ls_selection_parameter-sign = 'I'.ls_selection_parameter-low = order.APPEND ls_selection_parameter TO lt_selection_parameter.ls_query_parameters-max_hits = 1.lv_query_name = 'BTAdvQueryAUI'.lo_core = cl_crm_bol_core=>get_instance( ).lo_core->load_component_set( 'BT' ).lo_collection = lo_core->dquery( iv_query_name = lv_query_name it_selection_parameters = lt_selection_parameter is_query_parameters = ls_query_parameters ).DATA(lo_contract) = lo_collection->get_current( ).CHECK lo_contract IS NOT INITIAL.DATA(locked) = lo_contract->lock( ).CHECK locked = 'X'.DATA(lr_item_handler) = cl_crm_ipm_item_handler_provid=>get_instance( lo_contract ).ASSERT lr_item_handler IS NOT INITIAL.lv_query_name = 'ProdAdvSearchRgProducts'.CLEAR: lt_selection_parameter.ls_selection_parameter-attr_name = 'PRODUCT_ID'.ls_selection_parameter-option = 'EQ'.ls_selection_parameter-sign = 'I'.ls_selection_parameter-low = prod.APPEND ls_selection_parameter TO lt_selection_parameter.lo_core->load_component_set( 'PROD_ALL' ).lo_collection = lo_core->dquery( iv_query_name = lv_query_name it_selection_parameters = lt_selection_parameter is_query_parameters = ls_query_parameters ).DATA(lo_product) = lo_collection->get_current( ).ASSERT lo_product IS NOT INITIAL.DATA(result) = lr_item_handler->create_ip( lo_product ).ASSERT result IS NOT INITIAL.DATA(lo_transaction) = lo_core->get_transaction( ).lo_core->modify( ).DATA(lv_changed) = lo_transaction->check_save_needed( ).CHECK lv_changed EQ abap_true.DATA(lv_success) = lo_transaction->save( ).IF lv_success = abap_true. lo_transaction->commit( ). WRITE:/ 'IP Assigned Successfully'.ELSE. lo_transaction->rollback( ). WRITE: / 'IP Assigned failed'.ENDIF.
转载地址:https://jerry.blog.csdn.net/article/details/103631361 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
不错!
[***.144.177.141]2024年04月23日 11时22分06秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
简单了解各种序列化技术-Hessian序列化框架
2019-05-01
简单了解各种序列化技术-Avro序列化
2019-05-01
AIO 初体验
2019-05-01
各IO 模型对比与总结
2019-05-01
缓冲区Buffer-Buffer操作基本API
2019-05-01
SaaS-基础概念
2019-05-01
云计算的三种模式
2019-05-01
多租户(multi-tenant)
2019-05-01
什么是租户?
2019-05-01
什么是用户?
2019-05-01
Buffer的基本的原理
2019-05-01
缓冲区的分配
2019-05-01
缓冲区分片
2019-05-01
只读缓冲区
2019-05-01
用户认证-什么是认证
2019-05-01
用户认证-什么是会话
2019-05-01
什么是授权
2019-05-01
分布式认证需求-统一认证授权
2019-05-01
分布式认证需求-开放认证体系
2019-05-01
分布式认证方案-基于session的认证方式
2019-05-01