CT04 修改或添加特性包含的特性值BAPI_CHARACT_CHANGE
来源:互联网 发布:好看的日剧 知乎 编辑:程序博客网 时间:2024/06/05 09:23
DATA: CHARACTNAME LIKE BAPICHARACTKEY-CHARACTNAME.
DATA: CHARACTDETAILNEW LIKE TABLE OF BAPICHARACTDETAIL WITH HEADER LINE.
DATA: CHARACTVALUESCHARNEW LIKE TABLE OF BAPICHARACTVALUESCHAR WITH HEADER LINE.
DATA: CHARACTDESCRNEW LIKE TABLE OF BAPICHARACTDESCR WITH HEADER LINE.
DATA: CHARACTVALUESDESCRNEW LIKE TABLE OF BAPICHARACTVALUESDESCR WITH HEADER LINE.
"--DATA: RETURN LIKE TABLE OF BAPIRET2 WITH HEADER LINE.
CLEAR:CHARACTNAME,CHARACTDETAILNEW,CHARACTVALUESCHARNEW,CHARACTDESCRNEW.
CLEAR:CHARACTNAME,CHARACTDETAILNEW[],CHARACTVALUESCHARNEW[],CHARACTDESCRNEW[].
DATA: CLASSBASICDATA LIKE BAPI1003_BASIC,
CLASSDOCUMENT LIKE BAPI1003_DOCU,
CLASSADDITIONAL LIKE BAPI1003_ADD,
CLASSSTANDARD LIKE BAPI1003_STAND.
DATA: CLASSDESCRIPTIONS LIKE TABLE OF BAPI1003_CATCH_R WITH HEADER LINE,
CLASSLONGTEXTS LIKE TABLE OF BAPI1003_LONGTEXT_R WITH HEADER LINE,
CLASSCHARACTERISTICS LIKE TABLE OF BAPI1003_CHARACT_R WITH HEADER LINE,
CLASSCHARVALUES LIKE TABLE OF BAPI1003_CHAR_VAL_R WITH HEADER LINE.
DATA: L_INDEX LIKE SY-TABIX.
CHARACTNAME = 'Z_BATCH_PVD_005'.
*檢查CHARACTNAME存在與否(不存在肯定沒有值可選)
CALL FUNCTION 'BAPI_CHARACT_EXISTENCECHECK'
EXPORTING
CHARACTNAME = CHARACTNAME
* KEYDATE = SY-DATUM
TABLES
RETURN = O_RESULT.
READ TABLE O_RESULT WITH KEY TYPE = 'S'.
IF SY-SUBRC <> 0.
EXIT.
ENDIF.
*-1
CLEAR: CHARACTDETAILNEW, CHARACTDETAILNEW[].
CHARACTDETAILNEW-CHARACT_NAME = CHARACTNAME.
CHARACTDETAILNEW-DATA_TYPE = 'CHAR'.
CHARACTDETAILNEW-LENGTH = '12'.
CHARACTDETAILNEW-STATUS = '1'.
CHARACTDETAILNEW-VALUE_ASSIGNMENT = 'M'.
CHARACTDETAILNEW-ADDITIONAL_VALUES = 'X'.
APPEND CHARACTDETAILNEW.
*-2
CLEAR: CHARACTDESCRNEW, CHARACTDESCRNEW[].
CHARACTDESCRNEW-LANGUAGE_INT = 'E'.
CHARACTDESCRNEW-DESCRIPTION = 'RM BATCH'.
APPEND CHARACTDESCRNEW.
CHARACTDESCRNEW-LANGUAGE_INT = '1'.
CHARACTDESCRNEW-DESCRIPTION = '原材料批号'.
APPEND CHARACTDESCRNEW.
L_INDEX = 0.
DO 2 TIMES.
L_INDEX = L_INDEX + 1.
IF L_INDEX = 1. "L_INDEX=1時,執行bapi是清空值,第二次才修改值
* *--3
CLEAR: CHARACTVALUESCHARNEW, CHARACTVALUESCHARNEW[].
CLEAR: CHARACTVALUESDESCRNEW, CHARACTVALUESDESCRNEW[].
ELSE.
IF I_BATCH[] IS INITIAL.
CONTINUE.
ENDIF.
LOOP AT I_BATCH.
CHARACTVALUESCHARNEW-VALUE_CHAR = I_BATCH-CHARG.
APPEND CHARACTVALUESCHARNEW.
CLEAR CHARACTVALUESCHARNEW.
CHARACTVALUESDESCRNEW-LANGUAGE_INT = sy-langu.
CHARACTVALUESDESCRNEW-LANGUAGE_ISO = SY-LANGU.
CHARACTVALUESDESCRNEW-VALUE_CHAR = I_BATCH-CHARG.
CONCATENATE '[' I_BATCH-CHARG ']' I_BATCH-MAKTX INTO CHARACTVALUESDESCRNEW-DESCRIPTION.
"-CHARACTVALUESDESCRNEW-DESCRIPTION = 'TEST 882'. "I_BATCH-MATNR
APPEND CHARACTVALUESDESCRNEW.
CLEAR CHARACTVALUESDESCRNEW.
ENDLOOP.
ENDIF.
CALL FUNCTION 'BAPI_CHARACT_CHANGE'
EXPORTING
CHARACTNAME = CHARACTNAME
* CHANGENUMBER =
* KEYDATE = SY-DATUM
TABLES
CHARACTDETAILNEW = CHARACTDETAILNEW
CHARACTDESCRNEW = CHARACTDESCRNEW
* CHARACTVALUESNUMNEW =
CHARACTVALUESCHARNEW = CHARACTVALUESCHARNEW
* CHARACTVALUESCURRNEW =
CHARACTVALUESDESCRNEW = CHARACTVALUESDESCRNEW
* CHARACTREFERENCESNEW =
* CHARACTRESTRICTIONSNEW =
RETURN = O_RESULT.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'.
DATA: CHARACTDETAILNEW LIKE TABLE OF BAPICHARACTDETAIL WITH HEADER LINE.
DATA: CHARACTVALUESCHARNEW LIKE TABLE OF BAPICHARACTVALUESCHAR WITH HEADER LINE.
DATA: CHARACTDESCRNEW LIKE TABLE OF BAPICHARACTDESCR WITH HEADER LINE.
DATA: CHARACTVALUESDESCRNEW LIKE TABLE OF BAPICHARACTVALUESDESCR WITH HEADER LINE.
"--DATA: RETURN LIKE TABLE OF BAPIRET2 WITH HEADER LINE.
CLEAR:CHARACTNAME,CHARACTDETAILNEW,CHARACTVALUESCHARNEW,CHARACTDESCRNEW.
CLEAR:CHARACTNAME,CHARACTDETAILNEW[],CHARACTVALUESCHARNEW[],CHARACTDESCRNEW[].
DATA: CLASSBASICDATA LIKE BAPI1003_BASIC,
CLASSDOCUMENT LIKE BAPI1003_DOCU,
CLASSADDITIONAL LIKE BAPI1003_ADD,
CLASSSTANDARD LIKE BAPI1003_STAND.
DATA: CLASSDESCRIPTIONS LIKE TABLE OF BAPI1003_CATCH_R WITH HEADER LINE,
CLASSLONGTEXTS LIKE TABLE OF BAPI1003_LONGTEXT_R WITH HEADER LINE,
CLASSCHARACTERISTICS LIKE TABLE OF BAPI1003_CHARACT_R WITH HEADER LINE,
CLASSCHARVALUES LIKE TABLE OF BAPI1003_CHAR_VAL_R WITH HEADER LINE.
DATA: L_INDEX LIKE SY-TABIX.
CHARACTNAME = 'Z_BATCH_PVD_005'.
*檢查CHARACTNAME存在與否(不存在肯定沒有值可選)
CALL FUNCTION 'BAPI_CHARACT_EXISTENCECHECK'
EXPORTING
CHARACTNAME = CHARACTNAME
* KEYDATE = SY-DATUM
TABLES
RETURN = O_RESULT.
READ TABLE O_RESULT WITH KEY TYPE = 'S'.
IF SY-SUBRC <> 0.
EXIT.
ENDIF.
*-1
CLEAR: CHARACTDETAILNEW, CHARACTDETAILNEW[].
CHARACTDETAILNEW-CHARACT_NAME = CHARACTNAME.
CHARACTDETAILNEW-DATA_TYPE = 'CHAR'.
CHARACTDETAILNEW-LENGTH = '12'.
CHARACTDETAILNEW-STATUS = '1'.
CHARACTDETAILNEW-VALUE_ASSIGNMENT = 'M'.
CHARACTDETAILNEW-ADDITIONAL_VALUES = 'X'.
APPEND CHARACTDETAILNEW.
*-2
CLEAR: CHARACTDESCRNEW, CHARACTDESCRNEW[].
CHARACTDESCRNEW-LANGUAGE_INT = 'E'.
CHARACTDESCRNEW-DESCRIPTION = 'RM BATCH'.
APPEND CHARACTDESCRNEW.
CHARACTDESCRNEW-LANGUAGE_INT = '1'.
CHARACTDESCRNEW-DESCRIPTION = '原材料批号'.
APPEND CHARACTDESCRNEW.
L_INDEX = 0.
DO 2 TIMES.
L_INDEX = L_INDEX + 1.
IF L_INDEX = 1. "L_INDEX=1時,執行bapi是清空值,第二次才修改值
* *--3
CLEAR: CHARACTVALUESCHARNEW, CHARACTVALUESCHARNEW[].
CLEAR: CHARACTVALUESDESCRNEW, CHARACTVALUESDESCRNEW[].
ELSE.
IF I_BATCH[] IS INITIAL.
CONTINUE.
ENDIF.
LOOP AT I_BATCH.
CHARACTVALUESCHARNEW-VALUE_CHAR = I_BATCH-CHARG.
APPEND CHARACTVALUESCHARNEW.
CLEAR CHARACTVALUESCHARNEW.
CHARACTVALUESDESCRNEW-LANGUAGE_INT = sy-langu.
CHARACTVALUESDESCRNEW-LANGUAGE_ISO = SY-LANGU.
CHARACTVALUESDESCRNEW-VALUE_CHAR = I_BATCH-CHARG.
CONCATENATE '[' I_BATCH-CHARG ']' I_BATCH-MAKTX INTO CHARACTVALUESDESCRNEW-DESCRIPTION.
"-CHARACTVALUESDESCRNEW-DESCRIPTION = 'TEST 882'. "I_BATCH-MATNR
APPEND CHARACTVALUESDESCRNEW.
CLEAR CHARACTVALUESDESCRNEW.
ENDLOOP.
ENDIF.
CALL FUNCTION 'BAPI_CHARACT_CHANGE'
EXPORTING
CHARACTNAME = CHARACTNAME
* CHANGENUMBER =
* KEYDATE = SY-DATUM
TABLES
CHARACTDETAILNEW = CHARACTDETAILNEW
CHARACTDESCRNEW = CHARACTDESCRNEW
* CHARACTVALUESNUMNEW =
CHARACTVALUESCHARNEW = CHARACTVALUESCHARNEW
* CHARACTVALUESCURRNEW =
CHARACTVALUESDESCRNEW = CHARACTVALUESDESCRNEW
* CHARACTREFERENCESNEW =
* CHARACTRESTRICTIONSNEW =
RETURN = O_RESULT.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'.
ENDDO.
转载自:http://blog.csdn.net/twty5210/article/details/6003114
0 0
- CT04 修改或添加特性包含的特性值BAPI_CHARACT_CHANGE
- CT04 修改特性值BAPI_CHARACT_CHANGE
- ct04特性批量导入、特性长文本批量导入(BAPI_CHARACT_CREATE、BAPI_CHARACT_CHANGE、BAPI_CHARACT_ADDLONGTEXT)
- 二进制异或的特性
- 预处理器 包含Linux特性的资料
- sqlite特性 只能添加字段 不能修改字段 的解决方法 和php sqlite的管理工具 sqlbuddy
- CC2640之添加一个自定义的特性值
- CC2640之添加一个自定义的特性值
- 异或运算的一些特性
- 异或特性
- Qt对C++添加的新特性
- JS 库包含特性 Demo
- Firefox 31发布,包含了ECMAScript 6的新特性
- [Mapbox GL]高亮包含相似数据的特性
- 特性
- 特性
- 特性
- 特性
- 如何解决数据库更改无法保存问题
- HorizontalScrollView 替换 过期Gallery 的实用demo
- [简单博弈] hdu 1525 Euclid's Game
- Unity的WWW网络动态加载和储存在本地
- 说5年,就5年,是时候兑现了
- CT04 修改或添加特性包含的特性值BAPI_CHARACT_CHANGE
- Java添加水印图片
- html 解决height=100%无效
- Moo University - Financial Aid - POJ 2010 二分
- 计算机自动关机问题
- ISTQB AL-TM高级测试经理_问题总结
- weblogic如何从生产模式恢复到开发模式
- 转: 实现自己的类加载时,重写方法loadClass与findClass的区别
- hdu 1425简单hash