报工增强(发料不足不允许报工)

CMOD: CONFPP04  PP定单确认:客户特殊输入检查2
 
EXIT_SAPLCORF_104
PP Order Confirmation: Customer-Specific Input Check With Change
  SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; } .L0S31 { font-style. italic; color: #808080; } .L0S32 { color: #3399FF; } .L0S33 { color: #4DA619; } .L0S52 { color: #0000FF; } . *&---------------------------------------------------------------------*
*&  包括                ZXCOFU14
*&---------------------------------------------------------------------*
DATA:BEGIN OF ITAB OCCURS ,
       VORNR LIKE RESB-VORNR,
       RSNUM LIKE RESB-RSNUM,
       MATNR LIKE RESB-MATNR,
       RSPOS LIKE RESB-RSPOS,
       AUSCH LIKE RESB-AUSCH, "部件废品率
       BDMNG LIKE RESB-BDMNG, "需求
       ENMNG LIKE RESB-ENMNG, "提取
       DATA1 TYPE DECIMALS 3,
       DATA2 TYPE DECIMALS 3,
     END OF ITAB,
     V_VORNR    LIKE V_AFVC_AFKO-VORNR,
     V_LMNGA_LJ LIKE AFRU-LMNGA,  "累计报工数量
     V_LMNGA_DQ LIKE AFRU-LMNGA,  "当前报工数量
     V_LMNGA    LIKE AFRU-LMNGA.  "累计+当前

IF AFRUD_IMP-LMNGA > .
  SELECT RSNUM MATNR RSPOS BDMNG ENMNG AUSCH VORNR
  FROM RESB
  INTO CORRESPONDING FIELDS OF TABLE ITAB
  WHERE RSNUM = CAUFVD_IMP-RSNUM
    AND VORNR = AFVGD_IMP-VORNR
    AND BDMNG > 0
    AND POSTP = 'L' “项目类别(物料单)
    AND XLOEK NE 'X' ”删除物料
    AND RGEKZ NE 'X' “标识:反冲
    AND DUMPS NE 'X'  “虚拟项目标识
    AND XWAOK EQ 'X' ”
*    and kzear ne 'X'
.

SELECT SUM( LMNGA ) FROM AFRU INTO V_LMNGA_LJ WHERE AUFNR = AFRUD_IMP-AUFNR AND VORNR = AFVGD_IMP-VORNR
  AND STOKZ  'X' AND STZHL 1.

V_LMNGA = V_LMNGA_LJ + AFRUD_IMP-LMNGA.

LOOP AT ITAB.
  ITAB-DATA1 = FLOOR( ITAB-BDMNG / ( + ( ITAB-AUSCH / 100 ) ) / CAUFVD_IMP-GAMNG ).  "算出每一个产成品需要花费多少单位的原材料
  ITAB-DATA2 = FLOOR( ITAB-DATA1 * V_LMNGA ).
  IF ITAB-DATA2 > ITAB-ENMNG.
    MESSAGE '没有及时发料或发料数不够生产报工数,中止报工!' TYPE 'E'.
    EXIT.
  ENDIF.
ENDLOOP.

ENDIF.
<think>嗯,用户的问题是关于SAP系统中冲回的操作方法和错误解决方案。需要结合系统级指令中的引用内容和用户需求来回答。用户提到的引用内容[^1]主要说明了作业在SAP系统中的重要性及其与仓库作业的关联性,还提到是标准功能而派通常是自定义开发的。虽然引用内容没有直接涉及冲回,但为回答提供了背景框架。关于冲回的核心需求,这个操作在SAP中确实存在但需要谨慎处理。标准解决方案是通过T-codeCOR8进行技术性冲销,或者使用CORK进行批量冲销。操作流程需要明确:先选择原凭证,再选择冲销原因和日期。特别要注意的是,系统会生成反向凭证,冲销后需要重新。常见错误场景主要分三类:凭证锁定、成本对象状态冲突和系统配置问题。解决方案需要针对性处理,比如检查凭证是否被占用,确认生产订单是否已关闭或结算,验证后台配置是否允许冲销等。预防措施方面,重点在于用户权限控制和系统配置优化。应该限制关键事务代码的访问权限,并在后台配置中启用冲销检查功能。成本控制模块的集成配置也至关重要。补充说明中提到COOIS订单信息系统的重要性,这可以作为凭证追溯具。同时强调冲销操作对财务数据的影响,建议在测试环境验证操作流程。生成的相关问题覆盖了操作步骤、错误处理、财务影响和替代方案,能帮助用户全面理解冲回。其中关于自动冲销功能的问题很有深度,因为标准SAP确实没有该功能,需要增强开发。最后检查了回答格式:行内代码和事务码使用$...$格式,关键操作点分段清晰,中文表述符合要求,引用标识[^1]正确添加在背景说明部分。整个回答既解决了用户的操作指南需求,也提供了错误排查路径。</think>以下是SAP系统中**冲回**的操作指南及常见错误解决方案,结合系统逻辑和实操要点整理: --- ### **一、标准冲回操作** 1. **事务码路径** - 单个订单冲回:`COR8`(技术性冲销) - 批量冲回:`CORK`(批量反冲) 2. **操作步骤**(以`COR8`为例): ```abap 1. 输入需冲销的凭证号(可通过COOIS查询历史) 2. 选择冲销原因(如"输入错误"、"生产返") 3. 指定冲销日期(默认为当前日期) 4. 执行后系统自动生成反向确认凭证 ``` > ⚠️ 注意:冲销后需重新执行T-code `CO11N`进行正确。 --- ### **二、常见错误及解决方案** | 错误现象 | 原因分析 | 解决方案 | |---------|---------|---------| | **错:凭证已被锁定** | 订单状态为“已关闭”或“技术性完成” | 1. 通过`CO02`重开订单<br>2. 取消技术完成标记 | | **成本中心无法反冲** | 关联的作业类型配置冲销逻辑 | 检查配置路径:<br>`SPRO > 生产 > 商品成本控制 > 成本对象控制 > 按期间分配的成本 > 作业分配 > 定义作业类型` → 启用“允许反冲” | | **冲销后库存一致** | 系统自动退料失败(BOM配置错误) | 1. 检查物料凭证(MB03)<br>2. 手动执行MBST退料 | | **冲销权限缺失** | 用户角色分配事务码COR8/CORK | 联系BASIS添加权限角色 | --- ### **三、关键预防措施** 1. **配置检查** - 启用生产订单参数文件中的冲销标识: `OPPT > 订单类型配置 > 允许确认冲销` ✅ - 激活成本控制集成: `OKO7`关联成本核算版本与订单类型 2. **操作规范** - 冲销前确认订单状态(`CO03`查看订单抬头) - 避免在财务月结期间操作(可能影响成本分摊) - 冲销后立即验证物料凭证(MIGO)和成本(S_ALR_87013611) > [^1] 作为生产执行核心环节,其冲销操作直接影响成本核算与库存状态。标准系统虽支持冲销,但需确保后台配置与业务流程匹配(如自动退料依赖BOM的“反冲”标识)。 --- ### **四、扩展说明** 若标准冲销无法解决问题: 1. **人调整方案** - 通过`MB31`手动退料 - 使用`KB11N`手重过账作业 2. **增强开发** 可创建Z程序实现批量冲销+自动重(需ABAP开发) ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值