PRT availaibility check in production order.
Hi
I have created PRT of type M and attached to operation and when i try do availaibility check in production order then iam getting message "PRT availability could not be checked"
What are pre-requisite for getting PRT availability check?
Is it possible to check PRT availability for all types of PRTs?
Dear ,
You are facing this error due to PRT avialability check not activated in order type level while creation of production order .
To avoid this issue you need to goto -OPJK-Order Cotol -Select the order type , availability chek (1,2) .Here you need to keep
PRT Availablty Check tab -Checking Rule -01 and PRT Release -01 or 02 based on your requirement .
As prequisit : You need to create the PRT material master with availabilty check 01 and keep this in BOM.In CO02 -Operation Overview -Select the Operation -Hit on PRT button-It will apear with a screen Production Order Changes -PRT -Select the PRT material with Qty , Control Key .
Hope this will give u an idea .
Regards
JH
Similar Messages
-
How to check the Production order exits
Hi Experts
Modification to processing of Command Orders & Tickets
We require a modification to the processing being performed on sales data originating from the Command Concrete system and potentially from other systems yet to come online (e.g. Pinkenba Cement plant).
The Sap process involved is ZINT_INBOUND_POLLING and within that, ZINT_CSTPORD_ROUTINES.
The problem
Currently there is an assumption that every sales order (and its deliveries) will include a product which is made to order, i.e. for which a production order will be required.
In ZINT_CSTPORD_ROUTINES, a check is made to identify the production order linked to the sales order. If there is no such production order (usually because of the customeru2019s credit status) then processing of the ticket is terminated.
This assumption would fall down if an order was to be raised (in Command) on which there is no concrete material. For example, if we sold a bag of pigment or a screed to a customer. In this case the item would be sold from stock and there would be no need for a production order.
The solution
In the routine which checks for the existence of a production order, modify the code as follows:
Inspect each item on the sales order
If (and only if) there is at least one item with a category of u201CZTACu201D then check for a production order, otherwise process the order in the usual manner.
---- ZINT_CSTPORD_ROUTINES -
*& Form process_inbound_data
Create prod. orders from ticket data extracted from the COMMAND
system. Note that large portions of the code in this routine
have been copied from the retired ZPPU_COMMAND_PRODUCTION
interface program. This was done (1) because the old code works
and (2) to save development time.
-->T_ZINT_IDATA Internal table of interface data
-->T_ZINT_PARAM Internal table of interface parameters
-->T_ZINT_MSLOG Internal table of messages
-->P_ZINT_ID Interface ID
-->P_ZINT_TY Inteface type
-->P_ZINT_IS IDOC group for interface
-->P_ZINT_DL Flag: delete IDOC group when complete
-->P_ZINT_AL Flag: run in standalone mode
-->P_ZINT_NW Flag: do not log warning messages
-->P_ZINT_SQ Interface sequence number
<--P_ZINT_RC Return code (<>0=>error)
form process_inbound_data tables t_zint_idata structure zint_idata
t_zint_param structure zint_param
t_zint_mslog structure zint_mslog
using p_zint_id type zint_id
p_zint_ty type zint_ty
p_zint_is type zint_is
p_zint_dl type zint_dl
p_zint_al type zint_al
p_zint_nw type zint_nw
p_zint_sq type zint_sq
changing p_zint_rc type zint_rc.
program is continuing .............
I WANT TO WRITE A CODING HERE **********************
CHECK IF PRODUCTION ORDER REQUIRED
IF NOT THEN GO TO PERFORM UPDATE DATA
if production order required then check
for each item on sales order item list
with item category = 'ZTAC' then
return true
next
end function
if there is no production code
these has to be check from VBAP TABLE field VBELN and PSTYV (ZTAC,ZTAN Etc)
select * from Vbap WHERE VBELN = '00000269951' and VBAP.PSTYV = 'ZTAC','ZTAN' Etc
No production order?
elseif lva_prodord is initial.
clear v_messg.
call function 'CONVERSION_EXIT_ALPHA_OUTPUT'
exporting
input = lva_filemat
importing
output = lva_filemat.
No production order found - log a warning message.
concatenate 'Production Order not be found for'
'Command order' lva_cmdord
'Material' lva_filemat
'Customer' lwa_02-customer
into v_messg separated by space.
perform write_log_entry
tables t_zint_mslog
using 'E' 'ZINT_CSTPORD_ROUTINES'
'FIND_SAP_PRODORD'
v_messg
p_zint_nw
lwa_01-ticketnumber. " RJS
continue.
endif.
Production Order WAS found... Continue creating IDOCS
lwa_hdrlevel-postg_date = lwa_01-ticketdate.
Obtain the storage location parameter value.
read table t_zint_param with key zint_fn = 'LGORT'.
if sy-subrc ne c_noerr.
perform write_log_entry
tables t_zint_mslog
using 'E' 'ZINT_CSTPORD_ROUTINES'
'PROCESS_INBOUND_DATA'
'Parameter LGORT is missing from ZINT_PARAM'
p_zint_nw
lwa_01-ticketnumber. " RJS
exit.
endif.
loop at l_it_05 into lwa_05
where ticketnumber = lwa_01-ticketnumber.
clear lwa_gm_item_create.
lva_filemat = lwa_05-material.
if lva_filemat eq lva_prodmat.
concatenate 'Command ticket-' lwa_05-ticketnumber
into lwa_hdrlevel-conf_text.
lwa_hdrlevel-conf_quan_unit = lwa_05-unitofmeasure.
lwa_hdrlevel-yield = lwa_05-quantity.
check whether the confirmed value + current delivery value is equal *
the production order qty. If the production order value is less
than the total delivered value, set final conf indicator and clear
reservations
lva_wemng = lva_wemng + lwa_05-quantity.
if lva_wemng < lva_psmng.
lwa_hdrlevel-clear_res = c_false.
lwa_hdrlevel-fin_conf = ' '.
else.
lwa_hdrlevel-clear_res = c_true.
lwa_hdrlevel-fin_conf = 'X'.
endif.
move: 'Z1BP_PP_HDRLEVEL' to t_idoc_data-segnam,
lwa_hdrlevel to t_idoc_data-sdata.
append t_idoc_data.
clear lva_formmat.
lva_formmat = lwa_05-material.
lwa_gm_item_create-material = lva_formmat.
lwa_gm_item_create-plant = lwa_03-plant.
lwa_gm_item_create-ref_date = lwa_01-ticketdate.
lwa_gm_item_create-prod_date = lwa_01-ticketdate.
lwa_gm_item_create-move_type = '101'.
lwa_gm_item_create-spec_stock = 'E'.
lwa_gm_item_create-sales_ord = lva_saleord.
lwa_gm_item_create-entry_qnt = lwa_05-quantity.
lwa_gm_item_create-entry_uom = lwa_05-unitofmeasure.
lwa_gm_item_create-orderid = lva_prodord.
lwa_gm_item_create-move_mat = lva_formmat.
lwa_gm_item_create-move_plant = lwa_03-plant.
lwa_gm_item_create-mvt_ind = 'F'.
clear t_idoc_data.
move: 'E1BP2017_GM_ITEM_CREATE' to t_idoc_data-segnam,
lwa_gm_item_create to t_idoc_data-sdata.
append t_idoc_data.
else.
clear: lva_loggr,
lva_formmat.
lva_formmat = lwa_05-material.
select single loggr into lva_loggr from marc
where matnr = lva_formmat
and werks = lwa_03-plant.
if sy-subrc ne 0.
clear v_messg.
No logistics handling group - log a warning message.
concatenate 'No logistics handling group for material'
lva_formmat
'in plant'
lwa_03-plant
into v_messg separated by space.
perform write_log_entry
tables t_ldata
using 'W' 'ZINT_CSTPORD_ROUTINES'
'PROCESS_INBOUND_DATA'
v_messg
p_zint_nw
lwa_01-ticketnumber. " RJS
clear lva_loggr.
endif.
if lwa_03-satsur eq 'T'.
lwa_e1edl21-lprio = 30.
else.
lwa_e1edl21-lprio = 20.
endif.
else.
if lwa_03-satsur eq 'T'.
lwa_e1edl21-lprio = 10.
else.
lwa_e1edl21-lprio = ' '.
endif.
endif.
lwa_e1edl21-berot = lwa_04-driver.
move: 'E1EDL21' to t_idoc_data-segnam,
lwa_e1edl21 to t_idoc_data-sdata.
append t_idoc_data.
lwa_e1edl55-qualf = '001'.
lwa_e1edl55-refnr = lva_saleord.
move: 'E1EDL55' to t_idoc_data-segnam,
lwa_e1edl55 to t_idoc_data-sdata.
append t_idoc_data.
Loop at materials - create delivery entry for each
loop at l_it_05 into lwa_05
where ticketnumber = lwa_01-ticketnumber.
clear t_idoc_data.
lwa_e1edl24-matnr = lwa_05-material.
lwa_e1edl24-werks = lwa_03-plant.
lwa_e1edl24-vfdat = lwa_01-ticketdate.
lwa_e1edl24-lfimg = lwa_05-quantity.
lwa_e1edl24-vrkme = lwa_05-unitofmeasure.
lwa_e1edl24-lgort = t_zint_param-zint_fv.
clear lva_loggr.
lva_formmat = lwa_05-material.
clear lva_loggr.
select single loggr into lva_loggr from marc
where matnr = lva_formmat
and werks = lwa_03-plant.
if sy-subrc ne 0.
No logistics handling group - log a warning message.
concatenate 'No logistics handling group for material'
lva_formmat
'in plant'
lwa_03-plant
into v_messg separated by space.
perform write_log_entry
tables t_ldata
using 'W' 'ZINT_CSTPORD_ROUTINES'
'PROCESS_INBOUND_DATA'
v_messg
p_zint_nw
lwa_01-ticketnumber. " RJS
lva_loggr = 'BBIN'.
endif.
if lva_loggr is initial.
move: 'E1EDL24' to t_idoc_data-segnam,
lwa_e1edl24 to t_idoc_data-sdata.
append t_idoc_data.
endif.
endloop.
clear: lva_xabln,
lva_vbeln,
l_vbfa.
Matching ticket against a Delivery?
select single xabln vbeln into (lva_xabln,lva_vbeln) from likp
where xabln = lwa_01-ticketnumber.
if sy-subrc = 0.
If found, does this delivery match the sales order?
select * from vbfa into l_vbfa
where vbelv = lva_saleord
and vbeln = lva_vbeln.
exit.
endselect.
endif.
No matching delivery found, or Matching delivery, but for other Sls Ord
if lva_xabln is initial
or ( lva_vbeln <> space and l_vbfa is initial ).
if not lva_saleord is initial.
perform create_delivery_idocs tables t_zint_mslog
using s_idcgp
lwa_01-ticketnumber
p_zint_nw.
else.
concatenate 'Error finding a Sales Order for ticket "'
lwa_01-ticketnumber
'" reprocess the file AFTER'
' the sales order issues have been fixed'
into lva_outtext.
perform write_log_entry tables t_zint_mslog
using 'E'
'ZINT_CSTPORD_ROUTINES'
'PROCESS_INBOUND_DATA'
lva_outtext
p_zint_nw
lwa_01-ticketnumber. " RJS
endif.
else.
concatenate 'Command Ticket "'
lwa_01-ticketnumber
'" has already been processed into delivery "'
lva_vbeln
into lva_outtext.
perform write_log_entry tables t_zint_mslog
using 'I'
'ZINT_CSTPORD_ROUTINES'
'PROCESS_INBOUND_DATA'
lva_outtext
p_zint_nw
lwa_01-ticketnumber. " RJS
refresh t_idoc_data.
endif.
endif.
refresh t_idoc_data.
Write out all messages collected so far
perform update_data tables t_zint_mslog
using p_zint_id p_zint_ty.
endloop.
Write out all messages collected so far
perform update_data tables t_zint_mslog
using p_zint_id p_zint_ty.
endform. " process_inbound_data
Thnaks
RegardsThanks
Thread closed -
Material availability check for production order
Hello,
Is there any functional module to check the material availability of production order. So that it can be used in developments.
Regards,
GaneshHi,
Following are the available Function Modules for avaibility checks in Production orders,
BAPI_PRODORD_CHECK_MAT_AVAIL - BAPI: Execute Material Availability Check for Production Orders
And for Process Orders,
BAPI_PROCORD_CHECK_MAT_AVAIL - BAPI: Execute Material Availability Check for Process Orders
Regards,
Dhaval -
Availbility check in production order
Hi Friends
We need to have the availbility check in production order , where we need to exclude some of the storage locations stock & include some of the storage locations stock
How we can achive this
In Customising , either it says to take all the storage locations stock OR to exclude all the storage locations stockHi
Check in T code OPJJ for the availablity check control which you are using in Material master. also check the stocks tab for selcting your type of stocks while doing the availablity check
Also check the control for your oder type in OPJK
Check and revert
Regards
Anupam Sharma
Edited by: anupam sharma on Dec 21, 2009 2:53 PM -
Reg: Error in availability check in production order
Dear all,
I am facing a problem during availability check. After creation of production order, when i am clicking 'Materials' it is showing a error message as 'Incorrect check'. When i click log, the error msg is "Order type xxxx, plant xxxx: Checking rule missing (see long text)".
But in OPJK i checked it. Availabilty check is '2', checking rule is 01, Release material is '1'
Please help me in this case.Hi krishnachandra,
I think that you still don't assign any checking rule for your Order type.
FIrst, please check what production order type is. (On production order header: CO03)
Second, go to OPJK to create new entry and assign appropriate checking rule to that Order type.
Then go to your production order and check Material to see the result.
In case you just maintain one entry only with availability check 2 (check availability during order release). You have to release you production order to check material availability check.
Hope it helpful for you.
Edited by: dennydang on Jan 11, 2012 4:43 PM -
Authorization check for production order settlement
Hi All,
Production order settlement currently can be done by any user of any company code. there is a high risk involved in the same since unauthorized postings may happen. Hence we need to add authorization check for production order settlement. Can we maintain the same at the plant or the company code level?
Waiting for your replies. Thanks in advance!
Regards,
Aman Goelhi
What venki has told abt the exit, its absolutely correct.Even i have used the same exit
From table CAUFV pick Material(PLNBEZ),Basic Start Date(GLTRP),Plant(WERKS) .
Pass parameter Material(PLNBEZ) and Plant(Werks) in table MBEW in respective fields i.e. Material(MATNR) and Plant(WERKS).
Pick the latest record for the current period(LFMON) and year(LFGJA).
Pick Product Cost Estimate number(KALN1) from the record and pass it to table KEKO.
Check if Production Order Basic Start Date(GLTRP)<= BIDAT, if NO post Error Message.
This is the FS for EXit PPco0007
Reward if useful
Amit -
Collective ATP check for production orders
Hi Gurus,
I tried the MDVP tcode, but I can only do the collective ATP check for planned orders. we wanted to do the collective check with production orders, can you tell me how I can do this?
Thanks.I've posted this question but didn't get any response. Can some one please give me an idea how to do the collective ATP check for production orders.
Thanks
Vijaya -
Hi experts
i want to put a check while Production order creation such that without Standard cost estimate(costing),It should not allow to create Production order.
Regards
Sandeep Patilhi
What venki has told abt the exit, its absolutely correct.Even i have used the same exit
From table CAUFV pick Material(PLNBEZ),Basic Start Date(GLTRP),Plant(WERKS) .
Pass parameter Material(PLNBEZ) and Plant(Werks) in table MBEW in respective fields i.e. Material(MATNR) and Plant(WERKS).
Pick the latest record for the current period(LFMON) and year(LFGJA).
Pick Product Cost Estimate number(KALN1) from the record and pass it to table KEKO.
Check if Production Order Basic Start Date(GLTRP)<= BIDAT, if NO post Error Message.
This is the FS for EXit PPco0007
Reward if useful
Amit -
Prt availability.while creating production order
while creating production order. system checking PRT availabilty
if PRT is not there system throws warning msg
PRT: Item: 0010 Material TESTPRT1 plant BP01 is not available.
Message no. CF301
Diagnosis
You are attempting to use a PRT. However, the current status of this PRT does not permit you to use it.
how can change into error msg.........
thx in advanceHello,
I've checked the WUL of the message CF301 and found:
CALL FUNCTION 'CO_FU_FHM_AVAILABILITY_CHECK'
EXPORTING
index_imp = affhd_sav-indbt
tco11_imp = tco11_tmp
IMPORTING
fhm_not_available_exp = fhm_not_available_tmp.
FHM verfügbar
IF NOT fhm_not_available_tmp IS INITIAL.
CASE affhd_sav-fhmar.
WHEN material.
MESSAGE i301 WITH affhd_sav-psnfh
affhd_sav-matnr
affhd_sav-fhwrk.
WHEN sonstige.
MESSAGE i302 WITH affhd_sav-psnfh
affhd_sav-sfhnr.
WHEN dokument.
MESSAGE i303 WITH affhd_sav-psnfh
affhd_sav-fhmnr.
WHEN equipment.
MESSAGE i307 WITH affhd_sav-psnfh
affhd_sav-fhmnr.
WHEN OTHERS.
MESSAGE a886
WITH sy-repid
hlp-fname.
ENDCASE.
I'm afraid the attribute is hardcoded to be warning.
BR,
Tiemin -
I need Checking in Production Order Qty
Hi all,
In our industry we are creating Production Order From Sales Order (MTO Scenario) by using T.Code CO08 or CO01 T.Code with out running MRP.Now if anybody intend to change the PO qty by using CO02 T.Code system allows and as a result the Sales Order Qty and Production Order qty mismatch.Now please give me solution so that anybody cannot change the production order qty and it must be same as sales order qty.
I am waiting for your valuable suggestion.
Thanks & Regards
Nirmal SharmaHi,
1. I dont think this is possible in any standard configuration.
2. You can utilise the exit EXIT_SAPLCOBT_001 and write our logic inside that
3. This exit is validated when ever we save the order,
4. The abap code should be written such that each time it should check for the sales order / itme no and check the quanity to be matching if it fails it should give error
note: in this case if you are trying to creat multiple production order for one single salesorder/item number then it will not be possible or another logic is to be incorporated.
reg
satheesh -
Check in Production order qty with ref to Planned order
Dear all,
Please suggest me, when i am creating a productin order with ref to planned order , so the order qty should not exceed the planned order qty.
How can i control this , please give ur valuable inputs on the same.
regards
Ravi AroraDear
If you are not particualr to conver the planned order to production order through CO40 , then you can control with the help of
Enhancement : PPCO0007 (Exit when saving production order)
Functional Module : EXIT_SAPLCOZV_001
Include : ZXCO1U06
Compare the Order header Qty with the sales order Qty If the production order header qty is more do not allow the system to save the production order..
Otherwise please check those out for your requirement :
Planned Ord. to Production Order User Exit (PPCO0005)
EXIT / BADI for Tcode CO40
Regards
JH -
GR quantity check against Production Order in MB31
Hi Experts,
How to check GR quantity against Production Order (101) can not be greater than Confirmation quantity for the Production Order in MB31.
Regards,
Praful MankarHi Praful,
Use user exit MBCF0002, here put condation that check AFEU table (confirmation table) and allow
that quantity only to do GR
and it will triger at the time of MB31
Regards
Girish -
Material Availablity check for production order - function module?
I have a production order with Material BOM, which has more than 30 components in it. Please suggest me if there is any function module to do the material availability check of a production order. I need the missing component list as output of that function module, with quantities if possible.
thanks,
SubbareddyYou might want to look at these FMs:
CO_ZA_AVAILABILITY_CHK_ORDER
ISA_AUC_MATERIAL_AVAILABILITY
Thanks,
Santosh -
Availability Check in production order
hi everyone!
there is a finished product A, whose compoent is B, and A:B=1:1. now, B's stock is 100PC. we created a production order which product A 80PC, and availability check is "all material is availability".
then we created a new production order, which product A 70PC, and availability check is "all material is availability" too.
but in fact, B is shortage.
Therefore, please tell me how I do material availability check?
thanks!
DanDanHi Dandan,
Check RLT mark in OPJJ, (replenishment lead time)
That use during availability check,during the availability check, the system checks the replenishment lead time.In your case B items for which the delivery date falls after the end of the replenishment lead time, the system assumes that everything can be available.
Regards,
R.Brahmankar -
Actual Confirmation quantity of PRT w.r.t production order
Dear All gurus,
In master data the PRT quantity and usage value and respective formula has been maintained and for same when production order is creating the data is flowing properly, but in production order screen SAP provides Quantity/ Usage value, actual quantity/ actual usage value and remaining quantity/ usage value. How I can post some usage value by actual usage value will updated.
Thanks,
DasDear,
Create PRT as equipemt then assign PRT to Operation in the Routing or Tasklist at the time of assigning you can give the usage, according to ur PRT usage formula the usage of PRT gets calculated which you can see in the Routing/tasklist in Production or Maintenanace Order.
When you are entering time ticket or confirming the qunatity the PRT is get utilised according to confirmed quanity that you can see in the actual usage in Routing.
Pleas try and come back.
Also provide your inputs for the thread Forecated Consumption value.
Regards,
R.Brahmankar
Maybe you are looking for
-
I just got the new ipod touch (5th generation) and it will show up on my computer but it will not show up on itunes and it won't connect. Please help!
-
We recently upgrade the virtual hardware of some of our VMware VM's running Windows 7. One side-effect is that in Windows on these machines, an instance of the NIC from the previous version of virtual hardware remains, as a hidden device. This can be
-
I have updated my Lumia 820 to update 3 from preview for developers and now i have no glance screen option in settings. I previously had it with GDR2 update. Thanks. David
-
Audition CS6 crash when open APE files
It's nothing more to say. When I'm trying to open any APE file, Audition become uneresponsive and later it crash. Any idea?
-
Mouse click event on JTextArea
Hi All, I have a JTextArea with some text which is not editable. If i click on any word on the text area, i want to get that word. Based on the word clicked, i have to display a popup window with some options. And i have to get the string which conta