CR01创建工作中心
1、工作中心
1.1、核心概念
简单来说,工作中心在SAP中代表了一个具体的“工作地点”或“执行单位”。
你可以把它理解为:
生产车间里的一台机器或一条生产线。
一个负责特定作业的班组或团队(如质检小组、维修团队)。
一个工位或一个区域(如喷涂区域、装配工位)。
它的本质是一个“能力提供者”和“成本发生地”。
1.2、 工作中心的主要用途
工作中心在SAP系统中扮演着四个关键角色:
1、工艺路线中的能力单元
在为产品创建工艺路线(Routing)时,每一步操作(Operation)都必须指定一个工作中心。
系统通过工作中心来确定该步骤的标准作业时间(如准备时间、机器运行时间、人工时间),这是计算产品成本、生产提前期和能力需求计划的基础。
2、成本核算的成本中心
每个工作中心都会分配到一个成本中心。
所有发生在该工作中心的费用(如折旧、水电、操作工工资)都通过成本中心进行归集。
通过工作中心中定义的作业类型(如机器工时、人工工时),系统可以将成本中心归集的制造费用,准确地分摊到经过该工作中心生产的产品上,从而实现精细化的产品成本核算。
3、能力计划的能力载体
工作中心定义了可用能力的大小(例如:一台机器每天工作16小时,一个班组有5个人)。
系统在进行产能评估或排产时,会基于工作中心的能力和已经分配的任务(来自生产订单、计划订单等),来计算其负荷情况,从而帮助计划员发现瓶颈。
4、生产订单的执行对象
当生产订单下达后,具体的生产活动(如发料、确认、报工)都是针对某个工作中心来执行的。
工人通过向工作中心进行“确认”,来记录在特定工作中心上花费的实际工时、产量以及废品情况。
1.3、 工作中心的关键数据
创建和维护工作中心(事务码 CR01)时,需要维护以下几类核心数据:
1. 基本数据
工作中心描述: 清晰的名字,如“五号数控车床”、“最终装配线”。
工作中心类别: 这是一个关键分类,决定了工作中心的性质和可用功能,如:
0001 机器/设备
0002 装配线
0003 员工/班组
任务清单类型: 定义该工作中心可以用于哪些工艺路线。
2. 能力数据
这是进行能力计划的核心。
能力: 定义工作中心拥有多少种能力以及能力的数量。
能力类别: 最常见的是001(机器)和002(人工)。一个工作中心可以同时拥有多种能力(例如,一台需要人工操作的机器就同时拥有人工和机器能力)。
能力数: 和能力类别关联的可用数量。例如,能力类别“人工”的能力数为5,代表这个工位有5个工人。
开机时间: 定义工作中心每天的可用时间(如 08:00 - 20:00)。
利用率和效率: 用于对理论能力进行修正,以得到更符合实际的“可用能力”。
可用能力 = 理论能力 × 利用率 × 效率
3. 调度数据
用于计算生产作业的持续时间。
公式: 这里会分配一个计算公式,用于确定工序的加工时间、间隔时间和移动时间。
队列时间: 指作业在开始前的标准等待时间。
标准值码: 将工艺路线中定义的“标准值”(如加工数量是100个)通过公式转换为具体的时间。
4. 成本核算数据
这是连接PP和CO(控制)模块的桥梁。
成本中心: 必填项,指定该工作中心产生的成本由哪个成本中心承担。
作业类型: 与能力类别对应,是成本核算的单位。例如:
能力类别“机器”对应作业类型“机器工时”。
能力类别“人工”对应作业类型“直接人工”。
标准作业价格: 执行单位作业(如1个机器工时)的标准成本。产品成本计算时,就是用“标准工时”乘以“标准作业价格”来得出该工序的制造成本。
2、前台操作
事务代码CR01

基本信息

默认值页签

能力

抬头数据

计划页签

成本核算页签

点击保存即可
3、代码实现
调用函数CRAP_WORKCENTER_CREATE创建工作中心
"--------------------@斌将军-------------------- DATA:ls_in_crhd_api01 TYPE crhd_api01, ls_in_crhd_api02 TYPE crhd_api02, ls_in_crhd_api03 TYPE crhd_api03, ls_in_crhd_api05 TYPE crhd_api05, lt_in_kapa_api01 TYPE TABLE OF kapa_api01, ls_in_kapa_api01 TYPE kapa_api01, lt_in_kapa_api02 TYPE TABLE OF kapa_api02, ls_in_kapa_api02 TYPE kapa_api02, lt_in_crhd_api04 TYPE TABLE OF crhd_api04, ls_in_crhd_api04 TYPE crhd_api04, lt_in_crco_api01 TYPE TABLE OF crco_api01, ls_in_crco_api01 TYPE crco_api01. DATA:lv_arbpl_beg TYPE crhd-arbpl, lv_arbpl_end TYPE crhd-arbpl, lv_arbpl TYPE crhd-arbpl, lv_num TYPE char6, lv_beg_num TYPE char6, lv_end_num TYPE char6. DATA: lv_extnum TYPE balhdr-extnumber, lv_guid_22 TYPE sysuuid_22, lv_comment TYPE crtx-ktext. DATA:lv_check TYPE char1, lv_msg TYPE char255, lv_message TYPE char255. "工作中心抬头数据 CLEAR:ls_in_crhd_api01. ls_in_crhd_api01-arbpl = 'PL000010'."工作中心 ls_in_crhd_api01-werks = '8800' ."工厂 ls_in_crhd_api01-verwe = '0001' ."工作中心类型 ls_in_crhd_api01-ktext = '工作中心描述'."工作中心描述 "工作中心基本数据 CLEAR:ls_in_crhd_api02. ls_in_crhd_api02-veran = '001'."工作中心负责人 ls_in_crhd_api02-planv = '009'."用途 ls_in_crhd_api02-rgekz = ''."标识:反冲 ls_in_crhd_api02-ppskz = ''."提前计划标识 ls_in_crhd_api02-vgwts = 'SL10'."标准值码 ls_in_crhd_api02-vgm01 = '2'. ls_in_crhd_api02-vgm02 = '3'. ls_in_crhd_api02-vgm03 = '3'. ls_in_crhd_api02-vgm04 = '1'. ls_in_crhd_api02-vgm05 = '1'. ls_in_crhd_api02-vgm06 = '1'. "工作中心缺省值 CLEAR:ls_in_crhd_api03. ls_in_crhd_api03-steus = 'PP99'."控制码 ls_in_crhd_api03-ktsch = '2220005'."标准文本码 ls_in_crhd_api03-vge01 = 'S'."标准值计量单位 ls_in_crhd_api03-vge02 = 'S'. ls_in_crhd_api03-vge03 = 'KG'. CLEAR:ls_in_crhd_api05. ls_in_crhd_api05-kapart = '001'."能力类别 ls_in_crhd_api05-fort2 = 'SL98'."加工持续时间 CLEAR:ls_in_kapa_api01. ls_in_kapa_api01-kapart = '001'."能力类别 ls_in_kapa_api01-werks = '8800'."工厂 ls_in_kapa_api01-ktext = '产能短文本'."产能短文本 APPEND ls_in_kapa_api01 TO lt_in_kapa_api01. CLEAR:ls_in_kapa_api02. ls_in_kapa_api02-planr = 'B01'."产能负责计划员组 ls_in_kapa_api02-kalid = 'Z1'."工厂日历标识 ls_in_kapa_api02-versa = '1'."可用产能的激活版本 ls_in_kapa_api02-meins = 'H'."产能基本计量单位 ls_in_kapa_api02-begzt = '000000'."开始时间 ls_in_kapa_api02-endzt = '240000'."结束时间 * ls_in_kapa_api02-pause = gs_input-pause."每班次累计休息时间 ls_in_kapa_api02-ngrad = '97'."产能利用率(百分比) ls_in_kapa_api02-aznor = '4'."单个产能数 ls_in_kapa_api02-kapter = 'X'."标识:产能与有限计划相关 ls_in_kapa_api02-kapavo = 'X'."指示符 : 数个工序能够使用能力 ls_in_kapa_api02-kaplpl = 'X'."指示符 : 长期计划考虑能力 APPEND ls_in_kapa_api02 TO lt_in_kapa_api02. CLEAR:ls_in_crhd_api04. ls_in_crhd_api04-fork1 = 'SL31'."设置产能需求的公式 ls_in_crhd_api04-fork2 = 'SL32'."用于处理产能需求的公式 APPEND ls_in_crhd_api04 TO lt_in_crhd_api04. "成本核算 CLEAR:ls_in_crco_api01. ls_in_crco_api01-kostl = '0088006005'. "成本中心 ls_in_crco_api01-begda = sy-datum."开始日期 ls_in_crco_api01-endda = '99991231'."结束日期 ls_in_crco_api01-kokrs = '8888'."控制范围 "1 ls_in_crco_api01-lstar1 = 'SL11'."活动类型 ls_in_crco_api01-leinh1 = 'MIN'."活动单位 ls_in_crco_api01-forml1 = 'SL32'."公式码 "2 ls_in_crco_api01-lstar2 = 'SL12'."活动类型 ls_in_crco_api01-leinh2 = 'MIN'."活动单位 ls_in_crco_api01-forml2 = 'SL32'."公式码 "3 ls_in_crco_api01-lstar3 = 'SL13'."活动类型 ls_in_crco_api01-leinh3 = 'MIN'."活动单位 ls_in_crco_api01-forml3 = 'SL32'."公式码 "4 ls_in_crco_api01-lstar4 = 'SL14'."活动类型 ls_in_crco_api01-leinh4 = 'MIN'."活动单位 ls_in_crco_api01-forml4 = 'SL32'."公式码 "5 ls_in_crco_api01-lstar5 = 'SL15'."活动类型 ls_in_crco_api01-leinh5 = 'MIN'."活动单位 ls_in_crco_api01-forml5 = 'SL32'."公式码 "6 ls_in_crco_api01-lstar6 = 'SL16'."活动类型 ls_in_crco_api01-leinh6 = 'MIN'."活动单位 ls_in_crco_api01-forml6 = 'SL32'."公式码 APPEND ls_in_crco_api01 TO lt_in_crco_api01 . lv_guid_22 = cl_system_uuid=>if_system_uuid_static~create_uuid_c22( ). lv_extnum = lv_guid_22. TRANSLATE lv_extnum TO UPPER CASE. lv_comment = lv_extnum. CALL FUNCTION 'CRAP_WORKCENTER_CREATE' EXPORTING in_crhd_api01 = ls_in_crhd_api01 in_crhd_api02 = ls_in_crhd_api02 in_crhd_api03 = ls_in_crhd_api03 in_crhd_api05 = ls_in_crhd_api05 comment = lv_comment test = '' * IN_CRHD_API07 = * IV_NO_COMMIT = TABLES in_kapa_api01 = lt_in_kapa_api01 in_kapa_api02 = lt_in_kapa_api02 in_crhd_api04 = lt_in_crhd_api04 in_crco_api01 = lt_in_crco_api01 * IN_KAZY_API01 = * IN_KAPA_API04 = . DATA:lt_message TYPE TABLE OF balm. CALL FUNCTION 'APPL_LOG_READ_DB' EXPORTING object = 'CRAP' subobject = '*' external_number = lv_extnum * DATE_FROM = '00000000' * DATE_TO = SY-DATUM * TIME_FROM = '000000' * TIME_TO = SY-UZEIT * LOG_CLASS = '4' * PROGRAM_NAME = '*' * TRANSACTION_CODE = '*' * USER_ID = ' ' * MODE = '+' * PUT_INTO_MEMORY = ' ' * IMPORTING * NUMBER_OF_LOGS = TABLES * HEADER_DATA = * HEADER_PARAMETERS = messages = lt_message * MESSAGE_PARAMETERS = * CONTEXTS = * T_EXCEPTIONS = . CLEAR:lv_check,lv_message. LOOP AT lt_message INTO DATA(ls_message) WHERE msgty CA 'AEX'. CLEAR:lv_msg. MESSAGE ID ls_message-msgid TYPE ls_message-msgty NUMBER ls_message-msgno WITH ls_message-msgv1 ls_message-msgv2 ls_message-msgv3 ls_message-msgv4 INTO lv_msg. lv_message = lv_message && lv_msg. lv_check = 'E'. CLEAR:ls_message. ENDLOOP. IF lv_check = 'E'. ELSE. READ TABLE lt_message INTO ls_message WITH KEY msgid = 'CR' msgno = '281'. IF sy-subrc EQ 0. * MESSAGE ID ls_message-msgid TYPE ls_message-msgty NUMBER ls_message-msgno * WITH ls_message-msgv1 ls_message-msgv2 ls_message-msgv3 ls_message-msgv4 * INTO ls_output-message. ELSE. * ls_output-type = 'E'. * ls_output-message = '查不到成功消息,创建失败'. ENDIF. ENDIF. "--------------------@斌将军--------------------
以上就是关于CR01创建工作中心的介绍,希望对你有所帮助
定期更文,欢迎关注


浙公网安备 33010602011771号