问题名称Issue Title: 物料期间状态不对, 无法在MR21中更新物料价格
问题具体描述Description:
用户需要更新部分物料在200X年1月的标准价格. 这些物料在1月没有发生任何业务, 通常情况下应显示为"公开期间(Period opened), 但系统中的显示状态是"输入的数量和值(Quantity and value entered)", 在此状态下, 无法通过MR21更新标准价格.
问题解决方案Resolution: 根据SAP OSS NOTE 574930中的提示, 加入源代码, 程序名为"ZCKML_RESET_STATUS_OF_PERIOD", 并在此基础上修改并存为ZCKML_RESET_STATUS_OF_PERIOD_2", 在SA38中运行此程序, 系统将调整物料的期间状态为"公开期间(Period opend)", 这时可以通过MR21调整物料的标准价格.
[@more@]
Note574930
Symptom
If you use actual costing and material price determination 3, you can only change or release prices of marked cost estimates for a material at the beginning of the period, as long as no goods movements, invoices, and so on have been created for the material. If you then try to carry out a price change, the system generates message C+811 or C+212. This behavior is explained in SAP Note 555176.
The system also does not reset the status to the original value if either the goods movements causing this situation or the actual costing closing entry have been reversed.
Other terms
CNACT, MR21, CKME, CK24
Solution
This note provides a program that allows the status to be reset to 'Period opened' (10) under the following conditions:
-
Goods movements are completely reversed
-
The collected price differences and exchange rate differences are zero in all currencies. Generally, this is also possible by reversing all transactions that have been carried out.
-
The status of the previous period is not 'Closing entry performed'.
-
The material is not locked by another user.
-
The relevant period is the current period. After resetting the status, it is possible to carry out price changes in the period again.
Since the status information is represented in the output table only as figures, the following is a list of the status texts:
Not defined '00'
New objects '01'
Period opened '10'
Price change completed '20'
Quantities and values entered '30'
Values entered '31'
Price determined single-level '40'
Price determined multi-level '50'
Closing entry reversed '60'
Closing entry performed '70'
After generating and activating the program, you can maintain the selection texts: SE38 Goto - Program texts - Selection texts. For all texts, mark checkbox 'from Dictionary' or copy the menu function from the DataDictionary(DD).
In addition, maintain the selection texts of the parameters:
Name Text
P_EBEW Selection of sales order stock
P_MBEW Selection of stock material
P_QBEW Selection of project stock
相关程序
*&---------------------------------------------------------------------*
*& Report zckml_reset_status_of_period
*&---------------------------------------------------------------------*
*& Resets the ML period status to 'period opened' if the circumstances
*& allow that. Additional SAP-Program from note 574930 *
*&---------------------------------------------------------------------*
REPORT zckml_reset_status_of_period.
INCLUDE lckm0top_status.
TABLES:
ckmlhd,
ckmlpp,
marv,
mara,
sscrfields.
TYPE-POOLS:
slis, ckmv0.
TYPES: " allow input range bwkey
BEGIN OF ty_bwkey,
bwkey LIKE ckmlhd-bwkey,
END OF ty_bwkey.
DATA : prev_status LIKE ckmlpp-status.
DATA : t_bwkey TYPE ty_bwkey OCCURS 0 WITH HEADER LINE,
t_kalnr_all TYPE ckmv0_matobj_tbl WITH HEADER LINE,
f_ckmlpp type ckmlpp,
f_ckmlcr type ckmlcr.
* Fieldcatalogs
DATA:
gd_fieldcat TYPE slis_t_fieldcat_alv,
* ALV
gd_program LIKE sy-repid,
gd_tabname TYPE slis_tabname,
gd_top_of_list TYPE slis_t_listheader.
DATA:
BEGIN OF gd_tbl OCCURS 0,
kalnr LIKE ckmlhd-kalnr, "Kalnr des Material-Objekts

当用户尝试在SAP系统中更新200X年1月物料的标准价格时,遇到物料状态错误的问题。问题源于物料状态显示为输入的数量和值,而应为公开期间。按照SAPOSSNOTE574930,通过编写并执行程序ZCKML_RESET_STATUS_OF_PERIOD_2,可以将物料状态重置为公开期间,从而允许使用MR21进行价格更改。该程序要求商品移动已完全冲销,且无未结关账项,无锁定,并且在当前期间操作。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



