首页 > 其他分享 >ABAP-CA01工艺路线批导

ABAP-CA01工艺路线批导

时间:2023-05-13 16:36:28浏览次数:34  
标签:task CA01 ABAP lt ls operation TYPE message 批导

  1 FUNCTION zfm_pp_0003.
  2 *"----------------------------------------------------------------------
  3 *"*"本地接口:
  4 *"  IMPORTING
  5 *"     VALUE(IV_TEST) TYPE  CHAR1 OPTIONAL
  6 *"  EXPORTING
  7 *"     VALUE(EV_TYPE) TYPE  CHAR1
  8 *"     VALUE(EV_MESSAGE) TYPE  CHAR255
  9 *"     VALUE(EV_GROUP) TYPE  BAPI1012_TSK_C-TASK_LIST_GROUP
 10 *"  TABLES
 11 *"      TI_INPUT STRUCTURE  ZSPP_0003 OPTIONAL
 12 *"----------------------------------------------------------------------
 13 
 14   DATA:lt_task                   TYPE TABLE OF bapi1012_tsk_c,
 15        ls_task                   TYPE bapi1012_tsk_c,
 16        lt_materialtaskallocation TYPE TABLE OF bapi1012_mtk_c,
 17        ls_materialtaskallocation TYPE bapi1012_mtk_c,
 18        lt_operation              TYPE TABLE OF bapi1012_opr_c,
 19        ls_operation              TYPE bapi1012_opr_c,
 20        lt_return                 TYPE TABLE OF bapiret2,
 21        ls_return                 TYPE bapiret2,
 22        lv_message                TYPE char255,
 23        lv_message_temp           TYPE char255,
 24        ls_testrun                TYPE bapiflag,
 25        lv_group                  TYPE bapi1012_tsk_c-task_list_group.
 26 
 27   REFRESH lt_task .
 28   REFRESH lt_materialtaskallocation .
 29   REFRESH lt_operation .
 30   REFRESH lt_return .
 31   CLEAR lv_message .
 32   CLEAR lv_group .
 33 
 34   LOOP AT ti_input ASSIGNING FIELD-SYMBOL(<fs_data>) .
 35 
 36     AT FIRST .
 37 
 38       CLEAR ls_materialtaskallocation .
 39 *      ls_materialtaskallocation-valid_to_date = '99991231'."有效截止日期
 40       ls_materialtaskallocation-task_list_group = <fs_data>-plnnr .
 41       ls_materialtaskallocation-material = <fs_data>-matnr ."物料
 42       ls_materialtaskallocation-plant = <fs_data>-werks ."工厂
 43       ls_materialtaskallocation-group_counter = <fs_data>-plnal ."组计数器
 44       ls_materialtaskallocation-valid_from = <fs_data>-datuv ."有效起始日期
 45       ls_materialtaskallocation-change_no = <fs_data>-aennr .
 46       APPEND ls_materialtaskallocation TO lt_materialtaskallocation .
 47 
 48       CLEAR ls_task .
 49       ls_task-task_list_group = <fs_data>-plnnr .
 50       ls_task-task_list_usage = <fs_data>-verwe ."任务清单使用
 51       ls_task-task_list_status = <fs_data>-statu ."状态
 52       ls_task-lot_size_from = <fs_data>-losvn ."最小批量
 53       ls_task-lot_size_to = <fs_data>-losbs ."最大批量
 54       ls_task-description = <fs_data>-ktext ."工艺路线描述
 55       ls_task-valid_from = <fs_data>-datuv."有效起始日期
 56       ls_task-plant = <fs_data>-werks .
 57       ls_task-group_counter = <fs_data>-plnal ."
 58 *      ls_task-valid_to_date = '99991231'."有效至
 59       ls_task-task_measure_unit = <fs_data>-meinh .
 60       ls_task-change_no = <fs_data>-aennr .
 61       APPEND ls_task TO lt_task .
 62 
 63     ENDAT .
 64 
 65     CLEAR ls_operation .
 66     ls_operation-change_no = <fs_data>-aennr .
 67 *    ls_operation-valid_to_date =  '99991231'."有效截止日期
 68     ls_operation-task_list_group = <fs_data>-plnnr .
 69     ls_operation-activity = <fs_data>-vornr ."操作/活动编号
 70     ls_operation-operation_measure_unit = <fs_data>-meinh ."作业的计量单位
 71     ls_operation-work_cntr = <fs_data>-arbpl."工作中心
 72     ls_operation-control_key = <fs_data>-steus ."控制码
 73     ls_operation-description = <fs_data>-ltxa1 ."工序短文本
 74     ls_operation-base_quantity = <fs_data>-bmsch ."基本数量
 75     ls_operation-std_value_01 = <fs_data>-vgw01."
 76     ls_operation-std_unit_01 = <fs_data>-vge01."
 77     ls_operation-std_value_02 = <fs_data>-vgw02."
 78     ls_operation-std_unit_02 = <fs_data>-vge02."
 79     ls_operation-std_value_03 = <fs_data>-vgw03."
 80     ls_operation-std_unit_03 = <fs_data>-vge03."
 81     ls_operation-std_value_04 = <fs_data>-vgw04."
 82     ls_operation-std_unit_04 = <fs_data>-vge04."
 83     ls_operation-std_value_05 = <fs_data>-vgw05."
 84     ls_operation-std_unit_05 = <fs_data>-vge05."
 85     ls_operation-std_value_06 = <fs_data>-vgw06."
 86     ls_operation-std_unit_06 = <fs_data>-vge06."
 87     ls_operation-valid_from = <fs_data>-datuv ."有效起始日期
 88     ls_operation-purch_org = <fs_data>-ekorg ."采购组织
 89     ls_operation-matl_group = <fs_data>-matkl ."物料组
 90     ls_operation-cost_elem = <fs_data>-sakto ."成本要素
 91     ls_operation-purch_group = <fs_data>-ekgrp ."外部加工活动的采购组
 92     ls_operation-standard_queue_time = <fs_data>-zwnor .
 93     ls_operation-standard_queue_time_unit = <fs_data>-zeiwn .
 94     ls_operation-denominator = '1'.
 95     ls_operation-nominator = '1'.
 96     ls_operation-plant = <fs_data>-werks .
 97     ls_operation-cost_relevant =  'X'. "与成本核算相关标志
 98     ls_operation-group_counter = <fs_data>-plnal ."
 99     ls_operation-userfields_keyword_id = <fs_data>-slwid .
100     ls_operation-userfield_ch20_00 = <fs_data>-usr00 .
101     ls_operation-task_list_group = <fs_data>-plnnr .
102     APPEND ls_operation TO lt_operation .
103 
104   ENDLOOP .
105 
106   ls_testrun-bapiflag = iv_test .
107   CALL FUNCTION 'BAPI_ROUTING_CREATE'
108     EXPORTING
109       testrun                = ls_testrun
110 *     PROFILE                =
111 *     BOMUSAGE               =
112 *     APPLICATION            =
113     IMPORTING
114       group                  = ev_group
115 *     GROUPCOUNTER           =
116     TABLES
117       task                   = lt_task
118       materialtaskallocation = lt_materialtaskallocation
119 *     SEQUENCE               =
120       operation              = lt_operation
121 *     SUBOPERATION           =
122 *     REFERENCEOPERATION     =
123 *     WORKCENTERREFERENCE    =
124 *     COMPONENTALLOCATION    =
125 *     PRODUCTIONRESOURCE     =
126 *     INSPCHARACTERISTIC     =
127 *     TEXTALLOCATION         =
128 *     TEXT                   =
129       return                 = lt_return
130 *     TASK_SEGMENT           =
131 *     DEPENDENCY_ALLOCATION  =
132 *     DEPENDENCY_ORDER       =
133 *     DEPENDENCY_DATA        =
134 *     DEPENDENCY_DESCRIPTION =
135 *     DEPENDENCY_DOCUMENTATION       =
136 *     DEPENDENCY_SOURCE      =
137     .
138 
139   LOOP AT lt_return INTO ls_return WHERE type = 'E' OR type = 'A' .
140 
141     CLEAR lv_message_temp .
142 
143     CALL FUNCTION 'MESSAGE_TEXT_BUILD'
144       EXPORTING
145         msgid               = ls_return-id
146         msgnr               = ls_return-number
147         msgv1               = ls_return-message_v1
148         msgv2               = ls_return-message_v2
149         msgv3               = ls_return-message_v3
150         msgv4               = ls_return-message_v4
151       IMPORTING
152         message_text_output = lv_message_temp.
153 
154     lv_message = lv_message_temp && ';' && lv_message .
155 
156   ENDLOOP .
157 
158   IF lv_message IS INITIAL .
159 
160     IF iv_test = 'X' .
161 
162       CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
163         EXPORTING
164           wait = 'X'
165 *   IMPORTING
166 *         RETURN        =
167         .
168     ELSE .
169       CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
170         EXPORTING
171           wait = 'X'
172 *   IMPORTING
173 *         RETURN        =
174         .
175     ENDIF .
176     ev_type = 'S' .
177 
178   ELSE .
179 
180     CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'
181 *   IMPORTING
182 *     RETURN        =
183       .
184 
185     ev_type = 'E' .
186 
187   ENDIF .
188 
189   ev_message = lv_message .
190 
191 ENDFUNCTION.

标签:task,CA01,ABAP,lt,ls,operation,TYPE,message,批导
From: https://www.cnblogs.com/TigerMan/p/17397600.html

相关文章

  • ABAP-CR01工作中心批导
    1FUNCTIONzfm_pp_0004.2*"----------------------------------------------------------------------3*"*"本地接口:4*"IMPORTING5*"VALUE(IV_TEST)TYPECHAR1OPTIONAL6*"EXPORTING7*"VALUE(EV_......
  • ABAP-CS01BOM批导
    1FUNCTIONzfm_pp_0002.2*"----------------------------------------------------------------------3*"*"本地接口:4*"IMPORTING5*"VALUE(IV_TEST)TYPECHAR1OPTIONAL6*"EXPORTING7*"VALUE(EV_......
  • ABAP read_text 使用 快速开始
    DATA : lv_name TYPE thead-tdname.PERFORM frm_read_text USING '0001' lv_name 'RBKP' CHANGING <fs_itab>-zfpdz. *&---------------------------------------------------------------------**& Form frm_read_text*&----------......
  • ABAP 根据批次特性获取描述 快速开始
    TYPES:BEGIN OF ty_inob,        matnr TYPE mara-matnr,        charg TYPE mchb-charg,        objek TYPE inob-objek,        cuobj TYPE inob-cuobj,      END OF ty_inob. DATA:gt_inob TYPE TABLE OF ty_inob, ......
  • ABAP save_text 使用 快速开始
    业务背景,保存MIR7的注释字段   PERFORM frm_save_note USING lv_invno lv_year  <fs_itab>-zfpdz. *&---------------------------------------------------------------------**& Form frm_save_note*&------------------------------------------------------......
  • ABAP创建OA流程,日期格式问题
    1.代码:DATA:lv_dateTYPEd.DATA:lv_datestringTYPEstring."传到OA的日期,如2023-01-09lv_date=sy-datum.CONCATENATElv_date+0(4)lv_date+4(2)lv_date+6(2)INTOlv_datestringSEPARATEDBY'-'.ls_main1-field_name='CJSJ'.ls_main1-......
  • ABAP 遍历内表数据的时候,加上前端筛选条件
    1.前端查询条件*----------------------------------------------------------------------**选择屏幕*----------------------------------------------------------------------*SELECTION-SCREENBEGINOFBLOCKb1WITHFRAMETITLETEXT-001.SELECT-OPTIONS:"PARA......
  • ABAP_搜索帮助
    ALV引用标准搜索帮助ls_fieldcat-ref_table ='EKKO'.ls_fieldcat-ref_field ='BSART'.ls_fieldcat-edit ='X'  这样就行了,但是有时候会出现校验值不存在的报错这时给ls_fieldcat-no_init_ch ='A'加一个就行了   ......
  • 关于ABAP索引
    1、什么是索引如果把数据库表看做一本书,索引就可以看做书的检索目录。目录中包含书中的大小标题(部分字段数据),并且有对应的数据表条目的页码(指针),可以快速的访问数据库表中对应行的所有字段内容一个表中包含一个主索引和多个二级索引主索引:是系统根据表关键字自动创建的,用户不需要创......
  • ABAP:EKBE采购凭证历史更新增强
    EKBE采购凭证历史更新增强:函数:ME_UPDATE_GOODS_RECEIPT使用隐式增强更新tekbe表字段~ ......