Cost for Production at Site
Dear All ,
I want to capture the cost of the work caried out at my customers site by employees of my company.
I have near about 100 sites at present and my project tenure is about 2 to 3 years
How can i collect the cost similar to the production order in my plant.
Shall I define the plants for each and every site?
Replies will be highly appreciated.
Regards,
Mandar
Dear Mandar,
1. The request you have posted here, needs a larger discussion interms of integeration with other modules, configuration, Master data Etc.
2. A simple solution is that you can have cost centres to collect the same at the customer leve.
3. This will be simpler, but again it needs to be validated with what cost you are planning to collect and how.
4. Defining a plant alone will not resolve your problem, plant is only a organisationa entity- cost are collected at Cost centres only.
Reg
Dsk
Similar Messages
-
Target costs for product cost collector
hi,
can anyone tell me when are the target costs updated for product cost collector. it is after we post actual costs or after we calculate variance.
ThanksHi Elaine,
Thankyou very much for the Information. In our case when we create new product cost collector and cost it and post actual costs to it, system is showing target costs on the product cost collector even before variance calculation but for product cost collectors which are existing from long time system is not showing target costs after we post actual costs. we have created new cost component structure recently and its active from april 1. does this have any impact on the target costs. Please let me know if you have any idea on this.
Thanks, -
ADDDITIVE COST FOR PRODUCT COST BY SALES ORDER SCENARIO.
Dear friends,
We are using costing for sales order & we have maintained the costing variant under the path IMG> Controlling> Product Cost Controlling> cost object controlling> Product cost by sales order >premliminary costing & order based costing>product costing for sales order costing>Costing variant for Product costing >Check costing variant for product costing.
Under this we have maintained the Costing variant, Now we need to have Additive cost. But didnt found the tab in the costing variant where as when we check in T.code OKKN which is a part of Product cost planning we can find the Additive cost tab.
How to run addtive costing run for Product cost by sales order scenario & please guide me with one example.
Or else is there any configuration where we can assign standard costing variant PPC1 instead of Costing variant SOC1 ( which is a costing variant of Product cost by sales order.
Please guide me
regards,
SandeepHi Sandeep,
You may please try using Unit Costing for Sale Order.
It is over an above the sale order costing you have done. So in case you want to post any additional known cost, you may do the unit costing for the sale order after the sale order costing.
Trust this helps -
Production cost for product preference dermination
Hi Gurus,
I have a question about preference determination for a finished product. As you can see from below screen shot, there is a value for production costs, which is used to calculate RVC. Could you shed lights where this production costs value is from?
Thanks,
RyanHi Dave,
Thanks for your reply.
Actually I checked related tables mentioned by you. However, the logic does not explain well in my case. Value from table /SAPSLL/PRVAL for value type PROD_PRICE is not equal to productions costs showed during performing material preference determination.
One more thing, I got an odd case which has production costs as minus value( -3095.21 CAD). while doing preference determination. Any idea why prodduction costs is minus? (see attached screen shot)
Regards,
Ryan -
Planned costs for production order
Hi,
I have a requirement where the actual costs and planned costs for a production order have to be displayed. I got the actual cost details from the table COEP.
Please let me know if anyone knows the table which stores the Planned Costs / or any function modules which can be helpful.
Thanks in advance.
Neethu MohanHi ,
Please refer the thread,
How To get Planned Cost for a Production Order
Best Regards.
*Reward if it is helpful. -
Actual Costs for Production Order
Hi All
I have a scenerio where they dont want any product costing methods say WIP,Variance calculation & Settlement.
When the Goods receipt is done for production order the actual costs and the Activity costs to be valuated.
Regards
Jayshankar.AHi,
In our case the Standard price is updated in the material master. For this, you need to create a costing estimate using T-Code CK11N and update & release in CK24.
When CK11N is executed the standard price is calculated for the material by taking Moving Avg Price of RM (Price indicator V) and the activity costs are calculated as per data given in KP26. These cost components are added and a final cost estimate is prepared, which is updated using T Code CK24.
the pre-requisites are:
1. BOM should be maintained.
2. Routing should be made.
For executing the same procedure for all the materials, you can use T Code CK40N.
Hope this is what you were looking for.
Revert for further details.
Regards,
Rohit. -
Settling of Cost for Production Order via WBS Element
Hi Gurus,
Just would like to briefly understand, how I can make use of the WBS Element in the Production Order (Assignment tab) to use as cost settling for a production order? How do i automate the WBS Element in the production Order for a set of given parameters? Is there a config I can use to set a profile?
I have a scenario here as below:
I have various types of production orders:
PO 1 = Production A
PO 2 = Production B
PO 3 = Production C
And for each of the above, I will individually have a WBS Element.
PO1 - WBS Element A
PO2 - WBS Element B
PO3 - WBS Element C
And WBS Element A, B and C is a Level 2 WBS Element which are tied to WBS Element Z (Level 1 WBS Element), which will be settled to a project.
Appreciate your kind feedback on the above on how I can make it work in the PP Order.
Thanks.
Rgds.Hi Manoj,
I need to understand your process in more detail.
How do you procure? Create a sales order with TAS item category to create a PReq and PO?
Very simple explanation: Resource Related billing/DIP profiles are used to accumulate costs on WBS elements and then bill the client as needed. -
Recognizing external production costs for production order
Hi Experts,
Our company is new to SAP and one issue we have not resolved is whether it is possible to attach costs to an Inspection Plan, and ultimately have these costs flow with the production order to Cost of Goods Sold (COGS).
The objective is to enable us to analyze which specific customers/products require us to incur these additional costs. Any advice you have to accomplice our objective would be appreciated.
We are a Process Industry, and many materials are sent out for external testing. These costs are significant and some customers and/or products require more testing. We currently have Inspection Plans set up for each Material that requires testing, but have not found a way to burden the material with the appropriate COGS for the external testing.
For example, if a product must be tested for the following characteristics, and each test cost is known, how do we get the test costs attached to the production order for the total of $200?
Product 1 Inspection Plan
Salmonella $70
EColi $59
Coliform $25
Yeast/Mold $46
Thank you!Richard,
Are you able to advise which forum is the proper one for this question?
Thank you,
Esther -
Hi,
How can I display the cost incurred for a production order?
Regards,
PrashantHi
In CO02 or CO03 you can view the order cost.
In GOTO - COST you can go to the primary screen of the cost analysis.
Go to change layout and select second option of cost trend.
Depending upon the order status you shall see the costs.
After the order confirmation and delivery you shall see the primary costs.
After completion of CO cycle you shall see the settled costs.
Narendra Lohokare. -
Function module for calculating planned and actual cost of production order
Hi ,
Do we have any standard function module for calculating planned and actual cost for production order?
i need to implement this in a Z-report.
Thanks
SriniHi,
try below function module
CRMCO_GET_PLAN_ACTUAL_COSTS
CO_IH_GET_PLANNED_COSTS_TOTAL
Regards,
Sankaran -
What are options for applying non-inventory costs to production orders?
We have a non-inventory costs that need to be assigned to product produced on production orders. There are two processes -make-to-order and make-to-stock.
Currently we use activity rates to apply labor and burden costs to our production. We use separate cost centers where needed to ensure that we have sufficient granularity to our activity rates applied.
We have a few specific issues where we need to understand the options for applying costs -
1) We have freight and duty costs related to inbound raw material that we want to assign to our final product. The amount assigned may be either a specific amount (or a specific amount per model), or a % of the total cost on that production order.
2) We have material on the production order bill of material that is called out by quantity and we are using discrete backflush, however we have found there are issues with the accuracy of the quantities. We want to have this product ordered using KANBAN (bin ordering) and have the value relieved from inventory when the bin is issued to production. The cost on the production order is envisioned to be an average amount for the product - or an average amount by model.
3) We want to have a portion of cost for production scrap included in the cost of each product produced. (similar to freight and duty).
In all cases- the amount can change depending on analysis from accounting regarding freight and duty costs (these fluctuate depending on the cost savings we achieve with combined loads and depending on the amount of out of country sourcing), the scrap amount may change periodically depending on the initiatives to reduce scrap on the production floor, etc.
We currently use three activity types, labor, burden and tooling. It is my understanding that there is a limitation in SAP that keeps us limited to 6 activity types.
My questions are:
Are we limited on activity types? these are an option to apply additional costs, but may not be the best option if we want to change the amount applied based on model or apply as a percentage.
Are there other options for applying costs that we can explore? I want to be sure we take into account the various options available before we start down a specific path.
Thank you in advance for your assistance.As clarification- we are using standard costing for our raw material. We currently accumulate the incoming freight in a balance sheet account. This is treated as part of our inventory. We have considered using an activity type with a activity added to the BOM to apply the cost to the production order. Then we could use the secondarly cost element data to book an entry to relieve the freight account on the balance sheet.
Because we use standard costing- access to see production order variance is critical and must be maintained in any process we select. We also use COPA reporting- so the costing information must be able to flow to COPA for the specific orders/products/serial numbers.
We are doing make to order (production order / sales order specific combination) but also looking at a make to stock process - so the method to apply costs must take both of these configurations into consideration.
Rajneesh - you mentioned that I am limited to 6 activities in a work center- but does that mean I can have more than 6 activity types in SAP but only 6 activities in a work center/cost center combination?
Thank you. -
Cost of Production BOM in Prodcution Order
Hello Experts,
Here is scenario that i need help :
Assume that we have a Production BOM with two components with a price of $10 in the pirce list :
Parent Item: A0001 ( Price of A0001 is $10)
Components : A0002,A0003 ( Price of A0002 is $0 and Price of A0003 is $10)
When we create a prodcution order for A0001 with a quantity 1000 and close , i noticed that in the summary tab of Prodcution Order and noticed that Actual component cost : $10,000 and Actual cost : $0 and Total Variance : $10,000.
Due to this there is variance in Prodcution Clearing Account. Could you please help me a right approach on how to enter correct cost for Production BOM.
Any help will be appreicated.
Thanks,
PraneethResolved
-
Product Catalog Site in SharePoint Online
I am in the process of developing a a SharePoint Online site for Sales catalog (Product Catalog). I am trying to refer the steps for product catalog setup in SharePoint and I am always pointed to the steps which is explained for On-Premises. Can anyone
please point me to the right resource which details about the steps/configuration for Product Catalog site development in SharePoint Online. Would be a great help and need this info in urgency.Hi,
Catalog is supported in E3 and E4 subscriptions of SharePoint Online. Please refer to the following technet article.
https://technet.microsoft.com/en-us/library/jj819267.aspx
Please don't forget to mark it answered, if your problem resolved or helpful. -
Hi,
any one can help in this issue.
i am not getting the raw materila cost & manfacture conversion cost for for the bom of FG - SFG - SFG - SFG- RAW
FG - finished goods,
SFG - semi finished goods
RAW - raw material.
plz provide the solution.
raw material and manfacture conversion cost is calculated in PERFORM z_process_data. subroutine.
REPORT z_co_production_cost_nsk.
TABLES: afko, bkpf, t001w , caufv.
TYPE-POOLS: kkblo,
slis.
DATA: d_datefrom LIKE sy-datum,
d_dateto LIKE sy-datum,
d_repid LIKE sy-repid,
d_uname LIKE sy-uname,
d_returncode TYPE i,
d_tabix TYPE i,
d_kokrs LIKE tka01-kokrs,
d_waers LIKE tka01-waers,
wa_fieldcatalog TYPE slis_fieldcat_main,
wa_listevents TYPE slis_alv_event,
wa_listlayout TYPE slis_layout_alv,
wa_print_info TYPE slis_print_alv,
wa_listheader TYPE slis_listheader,
d_headerlines TYPE i.
DATA: BEGIN OF t_caufv OCCURS 0,
aufnr TYPE caufv-aufnr,
werks TYPE caufv-werks,
objnr TYPE covp-objnr,
gamng TYPE caufv-gamng,
plnbez TYPE caufv-plnbez,
rsnum TYPE caufv-rsnum,
END OF t_caufv.
*Added by Anand Bothra on 24/11/2003
DATA: t_ab_caufv LIKE t_caufv OCCURS 0 WITH HEADER LINE.
DATA: t_temp_caufv LIKE t_caufv OCCURS 0 WITH HEADER LINE.
DATA: BEGIN OF t_afpo OCCURS 0,
aufnr TYPE afpo-aufnr,
posnr TYPE afpo-posnr,
wemng TYPE afpo-wemng,
amein TYPE afpo-amein,
charg TYPE afpo-charg,
END OF t_afpo.
DATA: BEGIN OF t_afpo1 OCCURS 0,
aufnr TYPE afpo-aufnr,
refaufnr TYPE afpo-aufnr,
objnr TYPE caufv-objnr,
rsnum TYPE afko-rsnum,
wemng TYPE afpo-wemng,
werks TYPE afpo-dwerk,
charg TYPE afpo-charg,
END OF t_afpo1.
DATA: BEGIN OF t_makt OCCURS 0,
matnr TYPE makt-matnr,
maktx TYPE makt-maktx,
END OF t_makt.
DATA: t_fieldcatalog TYPE slis_t_fieldcat_alv,
t_listevents TYPE slis_t_event,
t_sortsequence TYPE slis_t_sortinfo_alv,
t_listheader TYPE slis_t_listheader.
DATA: BEGIN OF t_production_costs OCCURS 0,
objnr TYPE covp-objnr, " Object Number
kstar TYPE covp-kstar, " Cost Element
wkgbtr TYPE covp-wkgbtr, " Cost of Line Item in CO area curr
mbgbtr TYPE covp-mbgbtr, " Quantity of Line Item
matnr TYPE covp-matnr, " Material Number
kokrs TYPE covp-kokrs, " Controlling Area
belnr TYPE covp-belnr, " Cost Accounting Document
buzei TYPE covp-buzei, " Item Number in Document
END OF t_production_costs.
DATA: BEGIN OF t_production_costs1 OCCURS 0,
objnr TYPE covp-objnr, " Object Number
kstar TYPE covp-kstar, " Cost Element
wkgbtr TYPE covp-wkgbtr, " Cost of Line Item in CO area curr
mbgbtr TYPE covp-mbgbtr, " Quantity of Line Item
kokrs TYPE covp-kokrs, " Controlling Area
belnr TYPE covp-belnr, " Cost Accounting Document
buzei TYPE covp-buzei, " Item Number in Document
END OF t_production_costs1.
DATA t_production_costs2 LIKE t_production_costs1
OCCURS 0 WITH HEADER LINE.
DATA: BEGIN OF t_suborders OCCURS 0,
aufnr TYPE caufv-aufnr,
prevaufnr TYPE caufv-aufnr,
objnr TYPE covp-objnr,
rsnum TYPE caufv-rsnum,
END OF t_suborders.
DATA: BEGIN OF t_outputtab OCCURS 0,
plnbez LIKE afko-plnbez, " Material Number
objnr LIKE caufv-objnr, " Object Number
maktx LIKE makt-maktx, " Material Description
charg LIKE afpo-charg, " Batch Number
aufnr LIKE afko-aufnr, " Production Order Number
gamng LIKE caufv-gamng, " Total Order Quantity
wemng LIKE afpo-wemng, " Goods Receipt Quantity
amein LIKE afpo-amein, " Unit of Measure
yield TYPE p DECIMALS 2, " Percentage Yield
totalrmcost TYPE p DECIMALS 2, " Total Raw Material Cost
totalpmcost TYPE p DECIMALS 2, " Total Packing Mat. Cost
mfgconvcost TYPE p DECIMALS 2, " Manu. Conversion Cost
pkgconvcost TYPE p DECIMALS 2, " Packing Conv. Cost
rmperunit TYPE p DECIMALS 2, " Raw Cost per unit
pmperunit TYPE p DECIMALS 2, " Pack Mat cost per unit
ccperunit TYPE p DECIMALS 2, " Conv Cost per unit
totperunit TYPE p DECIMALS 2, " Total Cost per unit
waers LIKE tka01-waers, " Currency Key for CO Area
END OF t_outputtab.
*Added by Anand Bothra on 24/11/2003.
DATA: t_ab_outputtab LIKE t_outputtab OCCURS 0 WITH HEADER LINE,
t_temp_outputtab LIKE t_outputtab OCCURS 0 WITH HEADER LINE.
BEGIN OF INSERTION VIP110703
DATA:wa_prev_outputtab LIKE LINE OF t_outputtab,
wa_production_costs LIKE LINE OF t_production_costs.
DATA:prev_totmatqty TYPE p DECIMALS 2,
prev_tot_mfgconv_cst TYPE p DECIMALS 2,
grand_mat_qty TYPE p DECIMALS 2 ,
tmp_aufnr TYPE caufv-aufnr.
DATA: BEGIN OF t_suborders_propcost OCCURS 0,
aufnr TYPE caufv-aufnr,
prevaufnr TYPE caufv-aufnr,
objnr TYPE covp-objnr,
rsnum TYPE caufv-rsnum,
proprmcost TYPE p DECIMALS 2,
prop_mfg_convcost TYPE p DECIMALS 2,
END OF t_suborders_propcost.
DATA: wa_suborders LIKE LINE OF t_suborders.
END OF INSERTION VIP110703
BEGIN OF INSERTION VIP111003
DATA: prev_aufnr TYPE caufv-aufnr,
prev_matnr TYPE mara-matnr,
curr_matnr TYPE mara-matnr.
DATA: bln_suborder ,
ratio TYPE p DECIMALS 5.
BEGIN OF INSERTION VIP111003
*Added by Anand Bothra on 28/11/2003
DATA: d_flag TYPE c.
SELECTION-SCREEN BEGIN OF BLOCK zblock1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: s_plnbez FOR afko-plnbez,
s_aufnr FOR afko-aufnr,
"Added By Vivek on 29.11.2005
s_auart FOR caufv-auart obligatory.
PARAMETERS p_werks LIKE t001w-werks OBLIGATORY.
SELECTION-SCREEN END OF BLOCK zblock1.
SELECTION-SCREEN BEGIN OF BLOCK zblock2 WITH FRAME TITLE text-002.
SELECT-OPTIONS: s_monat FOR bkpf-monat NO-EXTENSION OBLIGATORY.
PARAMETERS p_gjahr LIKE bkpf-gjahr OBLIGATORY.
SELECTION-SCREEN END OF BLOCK zblock2.
SELECTION-SCREEN BEGIN OF BLOCK zblock3 WITH FRAME TITLE text-022.
PARAMETERS: p_detsum RADIOBUTTON GROUP rad,
p_sum RADIOBUTTON GROUP rad.
SELECTION-SCREEN END OF BLOCK zblock3.
INITIALIZATION.
d_repid = sy-repid.
d_uname = sy-uname.
p_werks = 'G001'.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF screen-name EQ 'P_WERKS'.
screen-input = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
AT SELECTION-SCREEN ON s_monat.
IF s_monat-high IS INITIAL.
IF NOT ( s_monat-low BETWEEN 1 AND 12 ).
MESSAGE e398(00) WITH text-023 text-024 space space.
ENDIF.
ELSE.
IF ( ( s_monat-low LT 1 ) OR ( s_monat-high GT 12 ) ).
MESSAGE e398(00) WITH text-023 text-024 text-025 space.
ENDIF.
ENDIF.
START-OF-SELECTION.
PERFORM z_get_period_dates.
PERFORM z_select_prod_orders.
PERFORM z_select_prod_costs.
PERFORM z_select_addl_prod_costs.
PERFORM z_select_mat_desc.
END-OF-SELECTION.
IF d_returncode EQ 0.
PERFORM z_process_data.
*Added by Anand Bothra on 24/11/2004.
PERFORM z_select_to_print.
PERFORM z_prepare_fieldcat.
PERFORM z_get_alv_events.
PERFORM z_define_sortsequence.
PERFORM z_define_layout.
PERFORM z_display_list.
*Added by Anand Botra on 25/11/2003.
PERFORM z_export_to_excel.
PERFORM z_send_mail_and_download.
ELSE.
MESSAGE i017(p5).
ENDIF.
*& Form Z_GET_PERIOD_DATES
text
--> p1 text
<-- p2 text
FORM z_get_period_dates.
Determine the date range from the fiscal period range and
fiscal year entered on the selection screen
DATA: d_firstdate LIKE sy-datum,
d_lastdate LIKE sy-datum,
t_dates LIKE scscp_period_str OCCURS 0 WITH HEADER LINE.
CALL FUNCTION 'FIRST_AND_LAST_DAY_IN_YEAR_GET'
EXPORTING
i_gjahr = p_gjahr
i_periv = 'V3'
IMPORTING
e_first_day = d_firstdate
e_last_day = d_lastdate
EXCEPTIONS
input_false = 1
t009_notfound = 2
t009b_notfound = 3
OTHERS = 4.
CALL FUNCTION 'CSCP_PARA1_GET_PERIODS'
EXPORTING
i_datuv = d_firstdate
i_datub = d_lastdate
i_timeunit = 'M'
TABLES
et_dates = t_dates.
SORT t_dates BY sindex.
DELETE t_dates INDEX 1.
LOOP AT t_dates.
SUBTRACT: 1 FROM t_dates-sindex,
1 FROM t_dates-datub.
MODIFY t_dates TRANSPORTING sindex datub.
ENDLOOP.
CLEAR: d_datefrom,
t_dates.
READ TABLE t_dates WITH KEY sindex = s_monat-low.
d_datefrom = t_dates-datuv.
CLEAR d_dateto.
IF s_monat-high IS INITIAL.
d_dateto = t_dates-datub.
ELSE.
CLEAR t_dates.
READ TABLE t_dates WITH KEY sindex = s_monat-high.
d_dateto = t_dates-datub.
ENDIF.
ENDFORM. " Z_GET_PERIOD_DATES
*& Form Z_SELECT_PROD_ORDERS
text
--> p1 text
<-- p2 text
FORM z_select_prod_orders.
Select all production orders as per the selection criteria provided
DATA: d_dlv_code LIKE jstat-stat,
d_teco_code LIKE jstat-stat,
t_status LIKE jstat OCCURS 0 WITH HEADER LINE.
SELECT SINGLE name1 INTO t001w-name1 FROM t001w WHERE werks = p_werks.
if s_plnbez-low eq space and s_plnbez-high eq space.
endif.
SELECT aufnr werks objnr gamng rsnum plnbez
INTO CORRESPONDING FIELDS OF
TABLE t_caufv FROM caufv
WHERE aufnr IN s_aufnr
AND auart IN ('PP01', 'LL02') : BY VIVEK
AND auart in s_auart " Added By Vivek on 29.11.2005
AND werks = p_werks
AND plnbez IN s_plnbez
AND getri BETWEEN d_datefrom AND d_dateto
ORDER BY aufnr.
d_returncode = sy-subrc.
IF d_returncode NE 0.
STOP.
ENDIF.
Filter out only those production orders that have a status
DLV (Delivered) or TECO (Technically Confirmed).
CLEAR: d_dlv_code,
d_teco_code.
PERFORM z_get_status_code USING 'DLV' CHANGING d_dlv_code.
PERFORM z_get_status_code USING 'TECO' CHANGING d_teco_code.
LOOP AT t_caufv.
REFRESH t_status.
CALL FUNCTION 'STATUS_READ'
EXPORTING
CLIENT = SY-MANDT
objnr = t_caufv-objnr
only_active = 'X'
IMPORTING
OBTYP =
STSMA =
STONR =
TABLES
status = t_status
EXCEPTIONS
object_not_found = 1
OTHERS = 2
IF sy-subrc EQ 0.
CLEAR t_status.
READ TABLE t_status WITH KEY stat = d_dlv_code.
IF sy-subrc NE 0.
CLEAR t_status.
READ TABLE t_status WITH KEY stat = d_teco_code.
IF sy-subrc NE 0.
DELETE t_caufv.
ENDIF.
ENDIF.
ELSE.
DELETE t_caufv.
ENDIF.
ENDLOOP.
IF t_caufv[] IS INITIAL.
d_returncode = 4.
STOP.
ENDIF.
Added by Anand Bothra on 24/11/2003**********
t_ab_caufv[] = t_caufv[].
Added by Anand Bothra on 28/11/2003.
IF ( s_plnbez-low EQ space AND s_plnbez-high EQ space ).
IF ( s_aufnr-low EQ space AND s_aufnr-high EQ space ).
d_flag = 'N'.
ELSE.
d_flag = 'Y'.
ENDIF.
ELSE.
d_flag = 'Y'.
ENDIF.
IF d_flag = 'Y'.
Added by Anand Bothra on 21/11/2003.**********
*Get the batch number of the entered order
DATA: itab_afpo LIKE afpo OCCURS 100 WITH HEADER LINE.
DATA: BEGIN OF t_ab_charg OCCURS 0,
*Added by Anand on 27/11/2003
aufnr LIKE afpo-aufnr,
charg LIKE afpo-charg,
END OF t_ab_charg.
LOOP AT t_caufv.
SELECT aufnr charg FROM afpo INTO t_ab_charg WHERE aufnr =
t_caufv-aufnr.
APPEND t_ab_charg.
CLEAR t_ab_charg.
ENDSELECT.
ENDLOOP.
IF sy-subrc = 0.
SELECT * FROM afpo INTO TABLE itab_afpo WHERE charg = d_ab_charg.
ENDIF.
LOOP AT t_ab_charg.
SELECT * FROM afpo INTO itab_afpo WHERE charg = t_ab_charg-charg.
APPEND itab_afpo.
CLEAR itab_afpo.
ENDSELECT.
ENDLOOP.
CLEAR t_caufv.
REFRESH t_caufv.
*Get all the orders with the same batch number.
LOOP AT itab_afpo.
SELECT aufnr werks objnr gamng rsnum plnbez
INTO CORRESPONDING FIELDS OF
t_caufv FROM caufv WHERE aufnr = itab_afpo-aufnr.
APPEND t_caufv.
ENDSELECT.
ENDLOOP.
CLEAR t_caufv.
SORT t_caufv BY aufnr.
delete adjacent duplicates from t_caufv comparing all fields.
ENDIF.
SELECT aufnr posnr wemng amein charg INTO TABLE t_afpo
FROM afpo FOR ALL ENTRIES IN t_caufv
WHERE aufnr = t_caufv-aufnr.
d_returncode = sy-subrc.
IF d_returncode NE 0.
STOP.
ENDIF.
SORT t_afpo BY aufnr.
ENDFORM. " Z_SELECT_PROD_ORDERS
*& Form Z_SELECT_MAT_DESC
text
--> p1 text
<-- p2 text
FORM z_select_mat_desc.
Get the Description of all materials
SELECT matnr maktx INTO TABLE t_makt FROM makt
FOR ALL ENTRIES IN t_caufv
WHERE matnr = t_caufv-plnbez
AND spras = sy-langu.
ENDFORM. " Z_SELECT_MAT_DESC
*& Form Z_PROCESS_DATA
text
--> p1 text
<-- p2 text
FORM z_process_data.
Process the data from all production orders and prepare the output
table for display appropriately
DATA: d_mbgbtr TYPE p DECIMALS 3,
loop_cnt TYPE i.
REFRESH t_outputtab.
LOOP AT t_caufv.
CLEAR t_outputtab.
MOVE-CORRESPONDING t_caufv TO t_outputtab.
CLEAR t_makt.
READ TABLE t_makt WITH KEY matnr = t_caufv-plnbez.
IF sy-subrc EQ 0.
MOVE t_makt-maktx TO t_outputtab-maktx.
ENDIF.
CLEAR t_afpo.
READ TABLE t_afpo WITH KEY aufnr = t_caufv-aufnr.
IF sy-subrc EQ 0.
MOVE: t_afpo-wemng TO t_outputtab-wemng,
t_afpo-amein TO t_outputtab-amein,
t_afpo-charg TO t_outputtab-charg.
ENDIF.
IF t_outputtab-gamng NE 0.
COMPUTE t_outputtab-yield =
( t_outputtab-wemng / t_outputtab-gamng ) * 100.
ENDIF.
APPEND t_outputtab.
ENDLOOP.
SORT t_production_costs BY objnr kstar.
LOOP AT t_production_costs.
AT NEW objnr.
CLEAR: d_mbgbtr, d_tabix, t_outputtab.
READ TABLE t_outputtab WITH KEY objnr = t_production_costs-objnr.
MOVE sy-tabix TO d_tabix.
" Add up the Raw Material and Manufacturing Conversion
" Costs from the previous stage production order
CLEAR loop_cnt .
LOOP AT t_suborders WHERE aufnr = t_outputtab-aufnr.
commented by anand bothra on 20/11/2003
ADD 1 TO loop_cnt.
IF loop_cnt > 1.
EXIT.
ENDIF.
LOOP AT t_production_costs1 WHERE objnr = t_suborders-objnr.
CASE t_production_costs1-kstar.
WHEN '0005000000' OR '0005010000'. " Raw Material Cost
BEGIN OF deletion VIP110703
ADD t_production_costs1-wkgbtr TO t_outputtab-totalrmcost.
END OF deletion VIP110703
ADD t_production_costs1-wkgbtr TO prev_totmatqty.
WHEN '0000500100'. " Manufacturing Conversion Cost
ADD t_production_costs1-wkgbtr TO prev_tot_mfgconv_cst.
BEGIN OF deletion VIP110703
ADD t_production_costs1-wkgbtr TO t_outputtab-mfgconvcost.
END OF deletion VIP110703
ENDCASE.
ENDLOOP.
BEGIN OF INSERTION VIP110703
READ TABLE t_production_costs INTO wa_production_costs
WITH KEY objnr = t_production_costs-objnr
matnr = wa_prev_outputtab-plnbez.
IF sy-subrc = 0.
IF ( wa_production_costs-mbgbtr NE
wa_prev_outputtab-wemng ) .
prev_totmatqty = ( prev_totmatqty /
wa_prev_outputtab-wemng ) *
wa_production_costs-mbgbtr.
prev_tot_mfgconv_cst = ( prev_tot_mfgconv_cst /
wa_prev_outputtab-wemng ) *
wa_production_costs-mbgbtr.
ENDIF.
ENDIF.
LOOP AT t_suborders_propcost
WHERE prevaufnr = wa_prev_outputtab-aufnr.
t_suborders_propcost-proprmcost = prev_totmatqty.
t_suborders_propcost-prop_mfg_convcost = prev_tot_mfgconv_cst
MODIFY t_suborders_propcost.
ENDLOOP.
clear: prev_totmatqty,
prev_tot_mfgconv_cst.
END OF INSERTION VIP110703
BEGIN OF INSERTION VIP111003
CLEAR: wa_prev_outputtab,
wa_production_costs.
READ TABLE t_outputtab INTO wa_prev_outputtab
WITH KEY aufnr = t_suborders-prevaufnr.
ratio = 1.
IF sy-subrc = 0.
READ TABLE t_production_costs INTO wa_production_costs
WITH KEY objnr = t_outputtab-objnr
matnr = wa_prev_outputtab-plnbez.
IF sy-subrc = 0.
IF ( wa_production_costs-mbgbtr NE
wa_prev_outputtab-wemng ) .
ratio = wa_production_costs-mbgbtr /
wa_prev_outputtab-wemng.
prev_totmatqty = ( prev_totmatqty /
wa_prev_outputtab-wemng ) *
wa_production_costs-mbgbtr.
prev_tot_mfgconv_cst = ( prev_tot_mfgconv_cst /
wa_prev_outputtab-wemng ) *
wa_production_costs-mbgbtr.
ENDIF.
ENDIF.
ENDIF.
LOOP AT t_suborders_propcost
WHERE prevaufnr = wa_prev_outputtab-aufnr
AND aufnr = t_outputtab-aufnr.
t_suborders_propcost-proprmcost = prev_totmatqty.
t_suborders_propcost-prop_mfg_convcost = prev_tot_mfgconv_cst.
MODIFY t_suborders_propcost.
ENDLOOP.
*Commented by Anand Bothra on 20/11/2003.
CLEAR: prev_totmatqty,
prev_tot_mfgconv_cst.
BEGIN OF INSERTION VIP111003
ENDLOOP.
ENDAT.
AT END OF kstar.
SUM.
CASE t_production_costs-kstar.
WHEN '0000500200'. " Packing Conversion Costs
t_outputtab-pkgconvcost = t_production_costs-wkgbtr.
WHEN '0005000500'. " Semi-Finished Cost/Quantity
MOVE t_production_costs-mbgbtr TO d_mbgbtr.
WHEN '0005050000' OR '0005050001' OR '0005050002'.
" Packing Mat Costs
ADD t_production_costs-wkgbtr TO t_outputtab-totalpmcost.
WHEN '0005000000' OR '0005010000'.
ADD t_production_costs-wkgbtr TO t_outputtab-totalrmcost.
WHEN '0000500100'. " Manufacturing Conversion Cost
ADD t_production_costs-wkgbtr TO t_outputtab-mfgconvcost.
ENDCASE.
ENDAT.
AT END OF objnr.
MOVE d_waers TO t_outputtab-waers.
Calculations for the Production Order
" Determine the RM Cost/Unit and Mfg Conv Cost/Unit
CLEAR t_afpo1.
READ TABLE t_afpo1 WITH KEY aufnr = t_outputtab-aufnr.
IF ( ( sy-subrc EQ 0 ) AND ( t_afpo1-wemng NE 0 ) ).
BEGIN OF insertion VIP110703
tmp_aufnr = t_production_costs-objnr+2(12).
LOOP AT t_suborders_propcost
WHERE aufnr = tmp_aufnr .
ADD t_suborders_propcost-proprmcost TO t_outputtab-totalrmcost
ADD t_suborders_propcost-prop_mfg_convcost TO
t_outputtab-mfgconvcost.
ENDLOOP.
END OF insertion VIP110703
BEGIN OF insertion VIP111003
CLEAR: t_suborders_propcost , tmp_aufnr.
READ TABLE t_suborders_propcost
WITH KEY aufnr = t_outputtab-aufnr.
IF sy-subrc = 0.
t_suborders_propcost-proprmcost =
t_suborders_propcost-proprmcost * ratio.
ADD t_suborders_propcost-proprmcost
TO t_outputtab-totalrmcost.
t_suborders_propcost-prop_mfg_convcost =
t_suborders_propcost-prop_mfg_convcost * ratio.
ADD t_suborders_propcost-prop_mfg_convcost
TO t_outputtab-mfgconvcost.
tmp_aufnr = t_suborders_propcost-prevaufnr.
bln_suborder = 'T'.
WHILE bln_suborder = 'T'.
CLEAR: t_suborders_propcost .
READ TABLE t_suborders_propcost
WITH KEY aufnr = tmp_aufnr.
IF sy-subrc = 0.
t_suborders_propcost-proprmcost =
t_suborders_propcost-proprmcost * ratio.
ADD t_suborders_propcost-proprmcost
TO t_outputtab-totalrmcost.
t_suborders_propcost-prop_mfg_convcost =
t_suborders_propcost-prop_mfg_convcost * ratio.
ADD t_suborders_propcost-prop_mfg_convcost
TO t_outputtab-mfgconvcost.
tmp_aufnr = t_suborders_propcost-prevaufnr.
ELSE.
bln_suborder = 'F'.
CLEAR tmp_aufnr.
ENDIF.
ENDWHILE.
ENDIF.
END OF insertion VIP111003
END OF deletion VIP110703
t_outputtab-mfgconvcost = ( t_outputtab-mfgconvcost /
t_afpo1-wemng ) * d_mbgbtr.
t_outputtab-totalrmcost = ( t_outputtab-totalrmcost /
t_afpo1-wemng ) * d_mbgbtr.
END OF deletion VIP110703
ENDIF.
IF t_outputtab-wemng NE 0.
t_outputtab-rmperunit = t_outputtab-totalrmcost /
t_outputtab-wemng.
" PM Cost Per Unit = Total PM Cost / Quantity Delivered
t_outputtab-pmperunit = t_outputtab-totalpmcost
/ t_outputtab-wemng.
" Conv Cost Cost Per Unit = (Manu Conv Cost + Pack Conv Cost)
" / Qty Delv
t_outputtab-ccperunit = ( t_outputtab-mfgconvcost
+ t_outputtab-pkgconvcost )
/ t_outputtab-wemng.
ENDIF.
" Total Cost Per Unit = (RM Cost per unit + PM Cost per Unit
" + Conv Cost per unit)
t_outputtab-totperunit = t_outputtab-rmperunit
+ t_outputtab-pmperunit
+ t_outputtab-ccperunit.
Update the calculated values in the internal table
CHECK d_tabix GT 0.
MODIFY t_outputtab INDEX d_tabix
TRANSPORTING totalrmcost totalpmcost
mfgconvcost pkgconvcost
rmperunit pmperunit
ccperunit totperunit waers.
BEGIN OF DELETION VIP110703
MOVE t_outputtab TO wa_prev_outputtab.
END OF DELETION VIP110703
ENDAT.
ENDLOOP.
ENDFORM. " Z_PROCESS_DATA
*& Form Z_DISPLAY_LIST
text
--> p1 text
<-- p2 text
FORM z_display_list.
Display the Report
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
i_callback_program = d_repid
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_STRUCTURE_NAME =
is_layout = wa_listlayout
it_fieldcat = t_fieldcatalog
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
it_sort = t_sortsequence
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT = ' '
it_events = t_listevents
IT_EVENT_EXIT =
is_print = wa_print_info
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
I_BYPASSING_BUFFER =
I_BUFFER_ACTIVE =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab = t_outputtab
EXCEPTIONS
program_error = 1
OTHERS = 2
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
SET PF-STATUS 'Z_AB_STANDARD'.
ENDFORM. " Z_DISPLAY_LIST
*& Form Z_FILL_FIELDCATALOG
text
--> p1 text
<-- p2 text
FORM z_fill_fieldcatalog USING p_rownum LIKE sy-curow
p_colnum LIKE sy-cucol
p_fieldname TYPE slis_fieldname
p_tabname TYPE slis_tabname
p_reffield TYPE dd03p-fieldname
p_reftable TYPE dd03p-tabname
p_qfield TYPE slis_fieldname
p_qtab TYPE slis_tabname
p_sum
p_stext
p_mtext
p_ltext
p_datatype
p_outputlen.
Prepare the fields for ALV list output
CLEAR wa_fieldcatalog.
wa_fieldcatalog-row_pos = p_rownum.
wa_fieldcatalog-col_pos = p_colnum.
wa_fieldcatalog-fieldname = p_fieldname.
wa_fieldcatalog-tabname = p_tabname.
wa_fieldcatalog-ref_fieldname = p_reffield.
wa_fieldcatalog-ref_tabname = p_reftable.
wa_fieldcatalog-qfieldname = p_qfield.
wa_fieldcatalog-qtabname = p_qtab.
wa_fieldcatalog-do_sum = p_sum.
wa_fieldcatalog-seltext_s = p_stext.
wa_fieldcatalog-seltext_m = p_mtext.
wa_fieldcatalog-seltext_l = p_ltext.
wa_fieldcatalog-datatype = p_datatype.
wa_fieldcatalog-outputlen = p_outputlen.
APPEND wa_fieldcatalog TO t_fieldcatalog.
ENDFORM. " Z_FILL_FIELDCATALOG
*& Form Z_PREPARE_FIELDCAT
text
--> p1 text
<-- p2 text
FORM z_prepare_fieldcat.
Append all the display fields into the field catalog internal table
First Row
PERFORM z_fill_fieldcatalog USING 1 1 'PLNBEZ' 'T_OUTPUTTAB'
space 'AFKO' space space
space space space space space
0.
PERFORM z_fill_fieldcatalog USING 1 2 'MAKTX' 'T_OUTPUTTAB'
space 'MAKT' space space
space space space space space
0.
PERFORM z_fill_fieldcatalog USING 1 3 'CHARG' 'T_OUTPUTTAB'
space 'AFPO' space space
space space space space space
0.
Second Row
PERFORM z_fill_fieldcatalog USING 2 1 'AUFNR' 'T_OUTPUTTAB'
space 'AFKO' space space
space space space space space
0.
PERFORM z_fill_fieldcatalog USING 2 2 'GAMNG' 'T_OUTPUTTAB'
space 'CAUFV' 'AMEIN' space
'X' space space space space
0.
PERFORM z_fill_fieldcatalog USING 2 3 'WEMNG' 'T_OUTPUTTAB'
space 'AFPO' 'AMEIN' space
'X' space space space space
0.
PERFORM z_fill_fieldcatalog USING 2 4 'AMEIN' 'T_OUTPUTTAB'
space 'AFPO' space space
space space space space space
0.
PERFORM z_fill_fieldcatalog USING 2 5 'YIELD' 'T_OUTPUTTAB'
space space space space
space text-010 text-010 text-010
'QUAN' 17.
Third Row
PERFORM z_fill_fieldcatalog USING 3 1 'TOTALRMCOST' 'T_OUTPUTTAB'
space space space space
'X' text-011 text-011 text-011
'CURR' 21.
PERFORM z_fill_fieldcatalog USING 3 2 'TOTALPMCOST' 'T_OUTPUTTAB'
space space space space
'X' text-012 text-012 text-012
'CURR' 21.
PERFORM z_fill_fieldcatalog USING 3 3 'MFGCONVCOST' 'T_OUTPUTTAB'
space space space space
'X' text-013 text-013 text-013
'CURR' 21.
PERFORM z_fill_fieldcatalog USING 3 4 'PKGCONVCOST' 'T_OUTPUTTAB'
space space space space
'X' text-014 text-014 text-014
'CURR' 21.
Fourth Row
PERFORM z_fill_fieldcatalog USING 4 1 'RMPERUNIT' 'T_OUTPUTTAB'
space space space space
space text-015 text-015 text-015
'CURR' 21.
PERFORM z_fill_fieldcatalog USING 4 2 'PMPERUNIT' 'T_OUTPUTTAB'
space space space space
space text-016 text-016 text-016
'CURR' 21.
PERFORM z_fill_fieldcatalog USING 4 3 'CCPERUNIT' 'T_OUTPUTTAB'
space space space space
space text-017 text-017 text-017
'CURR' 21.
PERFORM z_fill_fieldcatalog USING 4 4 'TOTPERUNIT' 'T_OUTPUTTAB'
space space space space
space text-018 text-018 text-018
'CURR' 21.
ENDFORM. " Z_PREPARE_FIELDCAT
*& Form Z_GET_ALV_EVENTS
text
--> p1 text
<-- p2 text
FORM z_get_alv_events.
Returns table of possible events for a list type
REFRESH t_listevents.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
et_events = t_listevents
EXCEPTIONS
list_type_wrong = 1
OTHERS = 2
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ELSE.
CLEAR: wa_listevents, d_tabix.
READ TABLE t_listevents WITH KEY name = slis_ev_top_of_page
INTO wa_listevents.
d_tabix = sy-tabix.Hi Sai,
You can try using MB51, use filter movement type 261. Add a filter for the posting date coverage.
Then proceed. Click on the icon DETAIL LIST.
Then click on the SUBTOTAL, add MATERIAL as a Criteria. The click the column AMOUNT IN LC.
You should see the total issuances to per material.
I hope this helps.
Heinrick Palad -
Error while adding the issue for production (item cost not found)
Hi all,
The scenario is,
when the user is trying to add the issue for production system is showing error item cost not
found.The item which is issued is Inventory + purchase item with manual issue method.The valuation
method for that item is FIFO.since the valuation method is FIFO,error related to item cost should
not occur.
Since the valuation method is FIFO.Item cost error should not occur.
The error related to item cost must not occur at the time of issue for production.
Regards-
Mona.Hi!
Please check these threads
Sales Delivery Document
Item Cost Error
No item cost was found
Maybe you are looking for
-
Dear Folks, I created a condition record for free goods in MBN1. It is an exclusive conditon type where the vendor will give me 1 free item of X for 3 items of X purchased. I am expecting a 2nd line item to appear automatically when I create the 1st
-
Error: 0x80040707 - Access Denied while installing itunes +ipod messed up
Yesterday morning my ipod (nano) was working fine, and i plugged it in to upload music and it said something about installing a new version of itunes on my ipod. i clicked yes, and somewhere during installation i assume, it got unplugged by one of my
-
Does Palm T X Supports Bluetooth PAN Network
Hello Guys I have HTC P3000 phone for my cell usage and i have activated internet connection on the same. But the phone supports Bluetooth pan for internet sharing via Bluetooth. Earlier i use to surf the net on my Palm TX via my old cell phone. But
-
How to delete duplicate files and fix borken links
Problem: Duplicate Files and Broken Links Involves 2 IBM ThinkPads (1) one main partition (system driveC:) running Windows XP SP3, (2) running Windows 7 and with two partitions - Drive C: has the library while drive D:contains the "itunes media" fol
-
Hi, How do I perform a full back up of my OS 10.4.11 mac that can be used to completly restore my computer to how it is now at a later date? I've tried searching but the only how to guides seem to involve 10.5 and time machine. I'm sure I've see some