物料批次特性值

Mara-MATNR = INOB-OBJEK

INOB-CUOBJ = KSSK-CLINT

KSSK-OBJEK = AUSP-OBJEK

物料特性可以从MM03分类 批次特性MSC3N中查看

类的T-CODE: CL03

特性T-CODE: CT04

特性可以通过下面的BAPI来进行批量维护:

BAPI_CHaraCT_CREATE
BAPI_CHaraCT_CHANGE
BAPI_CHaraCT_DELETE
BAPI_CHaraCT_GETDETAIL

特性分配给物料之后 ,如果要维护物料的特性值,会用到下面的BAPI函数

BAPI_OBJCL_GETDETAIL
BAPI_OBJCL_CHANGE

先用BAPI_OBJCL_GETDETAIL取得到物料的类下面的所有特性值,然后修改特性值,最后用BAPI_OBJCL_CHANGE写回去。

CALL FUNCTION ‘BAPI_OBJCL_GETDETAIL’
EXPORTING
objectkey = 物料号
objecttable = ‘Mara
classnum = 类别
classtype = 类别种类
tables
allocvaluesnum = 数值型特性值
allocvalueschar = 字符型特性值
allocvaluescurr = 货币型特性值
return = 返回值
.

对于QM的批次特性来说,质检对每个批次检验结果回写到批次特性值中。同样可以用下面的。

BAPI_OBJCL_GETDETAIL
BAPI_OBJCL_CHANGE

但是调用BAPI_OBJCL_GETDETAIL的时候参数需要用另外的function取得:

CALL FUNCTION ‘VB_BATCH_2_CLASS_OBJECT’
EXPORTING
i_matnr = 物料号
i_charg = 批次号
I_WERKS = 工厂
IMPORTING
E_OBJEK = 对应objectkey
E_OBTAB = 对应objecttable
E_KLART = 对应classtype
E_CLASS = 对应classnum
.

批次特性的T-CODE: MSC3N

charact=‘ZZYS’.“颜色
perform get_charg_type
usingit_mseg-matnrit_mseg-chargit_mseg-werkscharact
changingit_mseg-z_color.

form get_charg_type
using matnrtypematnr
chargtypecharg_d
werkstypewerks_d
characttypechar30
changingrtnstrtypechar30.

data:r_e_objektypeobjnum,
r_e_obtabtypetabelle,
r_e_klarttypeklassenart,
r_e_classtypeklasse_d.

data: allocvaluesnumtypestandardtableofbapi1003_alloc_values_numwithheaderline,
allocvalueschartypestandardtableofbapi1003_alloc_values_charwithheaderline,
allocvaluescurrtypestandardtableofbapi1003_alloc_values_currwithheaderline,
returntypestandardtableofbapiret2.
callfunction‘VB_BATCH_2_CLASS_OBJECT’
exporting
i_matnr= matnr
i_charg= charg
i_werks= werks
importing
e_objek=r_e_objek
e_obtab=r_e_obtab
e_klart=r_e_klart
e_class=r_e_class.

callfunction‘BAPI_OBJCL_GETDETAIL’
exporting
objectkey=r_e_objek
objecttable=r_e_obtab
classnum=r_e_class
classtype=r_e_klart
*KEYDATE=SY-DATUM
*UNVALUATED_CHARS=’’
*LANGUAGE=SY-LANGU
*IMPORTING
*STATUS=
*STANDARDCLASS=
tables
allocvaluesnum= allocvaluesnum
allocvalueschar= allocvalueschar
allocvaluescurr= allocvaluescurr
return= return
.

loopat_allocvalueschar. if allocvalueschar-charact=charact. rtnstr= allocvalueschar-value_char. endif. endloop. loopat_allocvaluesnum. if allocvaluesnum-charact=charact. data:pstypepdecimals4. move allocvaluesnum-value_fromtops. movepstortnstr. endif. endloop. endform.

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...