The BOM alternative 1,2
Hi,
We have created one BOM (alternative 1) with date (valid from10.01.2008) and 2 Months later we kept the same BOM and created (alternative 2) with date (valid from 10.03.2008). We will always (re)create the same BOM with new alternative every 2 Months.
Now we want to display the BOM (from the last valid from date) only when we give a date and not a alternative number (because in one year we will not remenber the alternative number.)
How can I customize the System so that it shows the right BOM through the date (valid from or the last valid from date). for exp. if I give 10.03.2008>Display only BOM(alternativ 2) and 17.03.2008>Display only BOM(alternativ 2) because it is the last valid from date
Thanks
Dear Dede,
Kindly read this and revert back what more you need.
1.When you create a BOM for a material (First Alternative) as on today using an ECN,then in the header of the BOM,the valid from
date will be 28.03.2008 & valid To Date will be 31.12.9999.
2.For its BOM components the valid from date will be 28.03.2008 & valid To Date will be 31.12.9999.
3.If create a Change that's valid from tomorrow(29.03.2008),and using this if i'm changing the First Alternative BOM's components say
i'm deleting one component and saving the datas.
4.If i go in display mode of the BOM removing the valid from & To date in the input screen,then for the deleted item or component,the
valid from date will be 28.03.2008 & valid to date will be 29.03.2008.But in the header of the BOm,there wont be any change,the valid
from date will be 28.03.2008 & valid to date will be 31.12.9999.
5.Now if I decide to delete the entire BOM(alternative 01) on 05.04.2008,then i create an ECN that's valid from 05.04.2008,and using
this,I go in Change mode and then from the top menu,BOm Material --->Delete,and save.
6.Now go in display mode of the BOM and check in the header of the BOM,there now you can see the valid from date will be
28.03.2008 & valid to date will be 05.04.2008.
So this valid to date of the BOM header will be changed,only if the entire BOM is deleted.
I hope the above explanation will clear all your doubts.
Reward points if satisfied with the answer and close this thread.
Regards
Mangalraj.S
Similar Messages
-
BOM Alternative Check on CS01 screen
Dear All,
Right now i need to implement a user exit for the BOM alternative in CS01 screen. For a particular BOM Usage we should not allow the user to create alternative other than '1'. So before getting the automatic alternative i need to implement the user exit/Badi for the checking on the alternative.
thanks,
rajesh.Hi,
There is a standard customzing for alternative BOM in CS01...
SAP Customizing Implementation Guide --> Production --> Basic Data --> Bill of Material --> Control Data for Bills of Material --> Define Modification Parameters. If you tick the " Multiple BOM inactive" then nobody should be able to create other alternatives then 1. -
'Valid to' dates for both the Header & the components in the BOM report.
Hi Experts,
My Requirement:
Need to display the 'Valid to' dates for both the Header & the components in the BOM report.
Right now we are using the Functional modules 'GET_STKO' & 'GET_STPO' for the header
& the components respectively. The report gives the correct output for the all the BOM alternatives
which exist. But for the BOM alternatives which have been deleted(updated in STKO-LKENZ)
'Valid to' dates are displayed as'00/00/0000'.
(Note:ECM is used for BOMs)
Is there any Logical Database that I can fetch the 'Valid to' dates of both BOM Header & components
which are deleted?
Regards,
MaheshDear Mahesh,
In my understanding I dont think you cannot get the valid to date for BOM header,unless a ECN,(engineering change number) is
used to set the deletion flag.In otherwords none of the business sets for all these BOM's the valid to date(which means the
default valid to date 31.12.9999 is taken).
Check with this FM, CS_BOM_EXPL_MAT_V2 whether can you get the valid to date for the components(infact here also the
valid from date given in the input screen impacts the report output).
Check and revert back.
Regards
Mangalraj.S -
SD-PP integration: BOM alternative
hello, friends. i wish to ask you about transfer of requirements from SD to PP.
when processing the sales order, the user can manually select the BOM alternative via a dialog box. in standard, BOM with usage 3 (universal) and 5 (SD) are supported.
i notice that after we run MRP, in the planned order the BOM usage is 1 and alternative is defaulted to the first in the order sequence. this is true if the BOM selection method in the material master MRP 4 view is either for production version or blank.
if the selection method is by key date, then the BOM in the planned order will be the first in sequence for alternatives by key date.
in variant configuration, the specific requirements are transferred. but for a simple BOM, in neither situation is the alternative selected in the sales order transferred. why is this so? are there missing settings?
hoping for your valued inputs.
many thanks.Hi
In case of Variant configuration(VC) , the BOM Selection will be based on Dependencies assigned to the Components. In VC there is no alternative BOM Concept. There will be one Simple BOM called Super BOM which contain all the components which is required to make all the variants of K-mat.
In the sales order , the user will configure the requirements and based on the requirements selected in SO , the system will pick respective Components from Super BOM during MRP
Regards
Brahmaji -
Error for open process order when BOM alternative is not found
Dear colleagues,
When I open process order. BOM alternative is selected according to the production version. But when BOM alternative is not found system gives only information message and I can open process order, I want to prevent open process order when there is no BOM alternative according to the production version. Because the Bom can be deleted after creation production version.
Thanks for your helping,Hi,
U need to use an enhancement at the creation of order to check the active status of the bom and restricting the order creation when BOM status is inactive.
see whether following enhancement is useful for your scenario:
PPCO0006 Enhancement & EXIT_SAPLCOZF_003
Please confirm.
Regards
Suri -
Function module to get the BOM details for a material-plant combination
hi
Is there any function module to get the BOM details such as
BOM Usage -STLAN
Alternative BOM -STLAL
Items -POSNR
Required Quantity-EMENG
Resulting Quantity-MENGE
Unit of measure -BMEIN
Base unit of measure-MEINS
for a given material-plant combination
if so please suggest me some FMs.................
Awaiting for ur reply..............try the below fm it may be useful for you
DATA : BEGIN OF I_BOM OCCURS 0.
INCLUDE STRUCTURE STPOX.
DATA : END OF I_BOM.
CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'
EXPORTING
CAPID = 'PP01'
DATUV = SY-DATUM
MEHRS = 'X'
MTNRV = P_MATNR
WERKS = P_WERKS
TABLES
STB = I_BOM
EXCEPTIONS
ALT_NOT_FOUND = 1
CALL_INVALID = 2
MATERIAL_NOT_FOUND = 3
MISSING_AUTHORIZATION = 4
NO_BOM_FOUND = 5
NO_PLANT_DATA = 6
NO_SUITABLE_BOM_FOUND = 7
CONVERSION_ERROR = 8
OTHERS = 9.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
just befor use it check your application area.for my case it is PP01. you can find it in CS12 when you are exploding the bom the value you are giving in BOM application that is the value for CAPID.
Just go to se37 and checkout the fm it has lot of options here I am using the minimum things.
regards
shiba dutta -
Tuning the BOM of a new material
Hi experts,
When a new material will be launched, what is the best way to tune its BOM
1) Can we create a BOM with a USAGE different to 1 = Production?
2) Does this new BOM can be used in a routing?
3) Can we create a planned order without a previous BOM and we can assign the components when we are creating the planned order?
4) Can we create a production order without a previous BOM and we can assign the components when we are creating the production order?
At the end when the BOM is all right then we create a BOM with USAGE 1 = Production
Best regards,
Arnulfo Cordero PradelHi Arnuflo,
Let me answer your questions one by one:
1) Can we create a BOM with a USAGE different to 1 = Production?
Yes, if you intend to use that BOM for production. If you have engineers working on your BOM, then, alternatively, you can also create and engineering BOM which later copied into production BOM.
2) Does this new BOM can be used in a routing?
BOM isn't necessarily used in routing. But its components can be allocated/assigned to operations in the routing. By default, all BOM components are allocated to the first operation.
3) Can we create a planned order without a previous BOM and we can assign the components when we are creating the planned order?
Yes, you can. But if you create the planned order through MRP, there will be exception message. You can assigned the BOM later.
4) Can we create a production order without a previous BOM and we can assign the components when we are creating the production order?
Yes, you can. You can even add components directly to the production order without assigning any BOM.
Regards,
Julian -
How to link between these tables and get the bom explosion
tables : mast,stpo,makt
SELECT AMATNR BMAKTX CIDNRK CMENGE C~MEINS INTO CORRESPONDING FIELDS OF TABLE IT_COMP_IDEL FROM
MAST AS A INNER JOIN MAKT AS B ON AMATNR = BMATNR
INNER JOIN STPO AS C ON ASTLNR = CSTLNR
WHERE AMATNR IN S_MATNR AND AWERKS IN S_WERKS.
using cs13 to get the bom summary
using these table to but i got only few materials only,
but cs13 got more materials
how can i solve that one
Regards
dsHi,
Just go through this program i think it will help u out.
TABLES: MARA, MARC.
TYPE-POOLS : fibs,stree.
TYPES: BEGIN OF STRUCT_BOM,
MATNR TYPE MATNR, " Material Number
WERKS TYPE WERKS_D, " Plant
IDNRK TYPE IDNRK, " BOM Item
STLAL TYPE STLAL, " Alternative BOM
STUFE TYPE HISTU, " BOM Level
OJTXB TYPE OJTXB, " Object description (assembly)
END OF STRUCT_BOM.
*- table types
types: t_bom type table of struct_bom.
*Internal Tables to hold the BOM data.
DATA: ITAB_BOM type table of STRUCT_BOM.
DATA: WA_BOM TYPE STRUCT_BOM,
wa_stb type stpox,
wa_matcat type stpox.
DATA: IT_STB type standard table of STPOX,
IT_STBC type standard table of STPOX,
IT_MATCAT type standard table of CSCMAT.
*-- to enter BOM DATA
*Selection Options
select-options: s_matnr for V_matnr, "BOM Material
s_plant for V_werks. "BOM Plant
*Input Parameters
parameters: p_alter type stko-stlal, "Alternate BOM
p_usage type stzu-stlan, "BOM usage
p_appli type tc04-capid, "BOM Application
P_CATE TYPE STKO-STLTY DEFAULT 'M'. "BOM Category
INITIALIZATION.
REFRESH ITAB_BOM.
CLEAR WA_BOM.
REFRESH IT_STB.
REFRESH IT_MATCAT.
START-OF-SELECTION.
SELECT matnr
werks
stlal
INTO CORRESPONDING FIELDS OF TABLE itab_bom
FROM mast
WHERE matnr IN s_matnr
AND werks IN s_plant
AND stlan = p_usage
AND stlal = p_alter.
CLEAR V_MATNR.
CLEAR V_WERKS.
DATA: WA_STB TYPE STPOX,
WA_MATCAT TYPE CSCMAT.
v_matnr = wa_bom-matnr.
v_werks = wa_bom-werks.
CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'
EXPORTING
capid = p_appli
datuv = sy-datum
mktls = 'X'
mehrs = 'X'
mtnrv = v_matnr
stlal = p_alter
stlan = p_usage
werks = v_werks
TABLES
stb = it_stb
matcat = it_matcat
EXCEPTIONS
alt_not_found = 1
call_invalid = 2
material_not_found = 3
missing_authorization = 4
no_bom_found = 5
no_plant_data = 6
no_suitable_bom_found = 7
conversion_error = 8
OTHERS = 9.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
Then just print whatever data u want it_stb, it_matcat tables.
reward points if u find my answer helpfull. -
Function module needed to read all the BOM statuses
Dear Friends,
In a report we are using CS_BOM_EXPL_MAT_V2 function module to get the dispaly the BOMs. But it is displaying only the BOMs which are in Active stauts e.g 1 & 3.
My requirement is needs to read both active and inactive BOMs. Inactive BOM status is 2.
suggest me if there is any another FM or any another way to get all the BOM status materials.
Thanks for your help.
Srinivas.You need to supply another application for alternative determination (field CAPID). It should be possible to customize one for your needs using "Define Order of Priority for BOM Usages" and "Define Applications" under "Production->Basic Data->Bill of Material->Alternative Determination"
Edited by: Carsten Grafflage on Aug 5, 2010 1:44 PM: Corrected one string from customizing - sorry. -
Routing link to BOM alternative
Hi all,
In our current SAP solution (SAP R/2) each routing alternative stores a link to an associated Bill of Material alternative. We have noticed that in mySAP ERP the routing alternatives can store BOM alternatives in the Component Allocation tab, but if you look at the header table for routing PLKO there is a field for associated BOM alternative (STLAL). If we select a BOM alternative this field is still not populated.
Does anyone know where this link is stored? Does the new system assume that production versions are created to store this combination of Routing and BOM? We would appreciate the insight. Thanks!
Sincerely,
JustinHi Justin,
Suppose you have two BOMs ,alternative 1 & 2. T.code cs01
To change T.code cs02.
A routing is created for the header material. T.code ca01.
To change T.code ca02.
In the routing, if you click the component allocation tab, you can see both the alt BOMs. From here you can select the BOM you want & then save. All the material will be allocated to the first operation by default.
Reg. Prod version:
You can create eg version 1 Routing + Alt BOM1
version 2 Routing + Alt Bom2.
In the material master, mrp view 4 check the options Bom selection , here if you give as selection only by prod version, during prodn order creation, the system will inform that there are two prodn versions & which one to select. This selection of pron version can be made manual or automatic. Given in T.code opl8
Regards,
SDS -
It did not insert the materials in the BOM using 'CSAP_MAT_BOM_MAINTAIN'
Hi!
We developed a ABAP technical maintenance BOM.
In the program.
Before, we got current BOM and eliminated all related items.
Routine below.
LOOP AT INTO it_stpo wa_stpo.
MOVE-CORRESPONDING TO wa_stpo wa_stpo_i.
wa_stpo_i-id_itm_ctg = wa_stpo-item_categ.
wa_stpo_i-id_item_no = wa_stpo-item_no.
wa_stpo_i-id_comp = wa_stpo-component.
wa_stpo_i-fldelete = 'X'.
APPEND TO wa_stpo_i it_stpo_i.
ENDLOOP.
CALL FUNCTION 'CSAP_MAT_BOM_MAINTAIN'
EXPORTING
Stuff = pv_matnr
plant = p_werks
bom_usage = p_tplis
Alternative = p_altlis
VALID_FROM = v_valid_from
i_stko = pv_wa_stko
TABLES
t_stpo = it_stpo_i.
After , we inserted new materials in the BOM using the same function .
routine below
LOOP AT INTO it_tab_i wa_tab_i ins_up_del WHERE = '1 ' OR
ins_up_del = '2 ' .
wa_stpo_i - item_categ = ' L' .
wa_stpo_i -component = wa_tab_i - matnr_pri .
v_menge_i = wa_tab_i - menge ( 9 ) .
v_menge = v_menge_i / 1000 .
WRITE TO v_menge wa_stpo_i - comp_qty .
wa_stpo_i - comp_unit = " KG " .
wa_stpo_i - issue_loc = " COS " .
APPEND TO wa_stpo_i it_stpo_i .
ENDLOOP .
* Including new materials in the BOM .
CALL FUNCTION ' CSAP_MAT_BOM_MAINTAIN '
EXPORTING
Stuff = pv_matnr
plant = p_werks
bom_usage = p_tplis
Alternative = p_altlis
VALID_FROM = v_valid_from
i_stko = pv_wa_stko
IMPORTING
fl_warning = v_fl_warning
TABLES
t_stpo = it_stpo_i
EXCEPTIONS
error = 1
OTHERS = 2 .
But the new materials were not inserted.
Could you help me what is missing in the routine ?
Thanks.Hi!
We found the problem.
The problem was in the fields ID_ITM_CTG, ID_ITEM_NO and ID_COMP.
They were not cleaned when we were inserting the new materials in the BOM. -
How to increase the BOM Alternate field in CS01
Hi,
We are interfacing between SAP and third party PLM software (Innovator) to bring the BoM date for CS01 transaction. the third party PLM is having 3 digit version, whereas IN CS01 the BoM alternate takes only 2 digit . kindly suggest the best solution to map the date to CS01 requirement (the RFC are working fine and we are uploading thrrough BDC)
regards,
paveetraDear
"Alternative selection for multiple BOMs"
(Transaction OS32).
select the bom Application and check all the box like mrp elxp rel for costing
with regards
pushpala -
Hello Experts,
I have one issue in BOM alternative item group I have made the settings as below.
Material 1 AltItemGroup 01
Priority 1
Strategy 2 100% check
Usage prob. 100
Material 2 AltItemGroup 01
Priority 2
Strategy 2 100% check
Usage prob. 100
For Material 1 required bill of material quantity is 65 MT
For Material 2 required bill of material quantity is 65 MT
Now I am creating the process order for quantity 1000 MT. When the material availability check done it proposing as below in process order.
Material 1 = 65 MT (Available Stock 807.109 MT)
Material 2 = 0 MT (Available Stock 5.850 MT)
And again Material 2 = 32.5 MT
My question is as per above settings and stock situation of the material it should propose only Material 1 = 65 MT. But here system is also proposing Material 2 = 32.5 MT. Can any one tell what I am doing wrong?
Any settings are missing or what will be output for the above settings.
Please explain in detail.
Thanks in Advance
Regards,
GaneshHi Ganesh,
Pl. make the following settings:
Material 1 AltItemGroup 01
Priority 1
Strategy 2 100% check
Usage prob. 100
Material 2 AltItemGroup 01
Priority 2
Strategy 2 100% check
Usage prob. 0
The strategy 2 will automatically handle the situation when Material 1 is not available and 2 is available.
Pl. test & revert. It will work as per your requirements
Regards,
HKV... -
BOM explosion where first BOM alternative has deletion flag
Hi,
I got the following very basic scenario:
One FERT material has two BOM alternatives (alternative 1 and 2). Both of them are valid in terms of date, status and lot size. When a production order is created by CO01 the system will pick automatically alternative 1 (which is ok for me). BUT if this BOM alternative 1 gets a deletion flag (on BOM alternative header) I would expect that the system would automatically pick alternative 2 (it is the "next" suitable alternative). But the systems says there is no valid BOM available.
Only if I really delete alternative 1 (so I cannot see it anymore in CS02), the system would pick alternative 2 (because it is now the really first one available - no version in front with only deletion flag). But in terms of documentation I cannot delete the alternatives.
Maybe somebody could explain that to me or had a similar problem...
BR and thanks in advance.
ChristianHi Guys,
many thanks for your suggestions. Setting the status to inactive did the trick. Obviously the deletion flag is not enough at this point.
Just to clarify - production version of course would be an option but that did not work with the following:
I have 6 different routings for this FERT and the user has to choose when the production order is created. That works basically fine when the order is created with CO01 (popup for selection of production version based on MRP4 setting). BUT when a planned order is converted directly from MD04 into a production order the system would automatically pick production version 1 (no matter what setting in MRP4 view). If there are no production version the user would get at least a popup for choosing a routing. But this would maybe an additional thread in the forum
Thanks
Christian -
HI ABAP Guru's,
How to Update the BOM Using Below function Modules.
CSAP_MAT_BOM_OPEN CSAP_BOM_ITEM_MAINTAIN CSAP_MAT_BOM_CLOSE.
My Requremnet is For any components contains Issued storage location's .. I need to delete that storage location.
But it is not updating see the below code.
Can you please give me the Proper Reason why it is not get updated .
Afetr Maintain BOM I have tried with COMMIT statemnet also but helpless.
call function 'CONVERSION_EXIT_PDATE_OUTPUT'
exporting
input = sy-datum
importing
output = date.
*Enquee Exceptions
call function 'CALO_INIT_API'
exceptions
log_object_not_found = 1
log_sub_object_not_found = 2
others = 3.
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
*BOM Open
call function 'CSAP_MAT_BOM_OPEN'
exporting
material = 'matnr'
plant = 'werks'
bom_usage = '1'
valid_from = date
importing
o_stko = gt_stko
fl_warning = fl_warning
tables
t_stpo = gt_stpo
exceptions
error = 1
others = 2.
loop at gt_stpo.
gt_stpo-issue_loc = ' '.
*change BOM Contents
call function 'CSAP_BOM_ITEM_MAINTAIN'
exporting
i_stpo = gt_stpo
importing
fl_warning = fl_warning
exceptions
error = 1
others = 2.
if sy-subrc <> 0.
commit work.
endloop.
*Close BOM
call function 'CSAP_MAT_BOM_CLOSE'
exporting
fl_commit_and_wait = ' X'
importing
fl_warning = fl_warning
exceptions
error = 1
others = 2.
Thanks in advance,
<<Thread unlocked, Urgency normalized>>
Edited by: kishan P on Jan 17, 2012 1:38 PM
Edited by: kishan P on Jan 17, 2012 5:47 PMCan you check the following code.
call function 'CALO_INIT_API'
exceptions
log_object_not_found = 1
log_sub_object_not_found = 2
other_error = 3
others = 4.
data v_datun type CSAP_MBOM-DATUV.
CALL FUNCTION 'CONVERT_DATE_TO_EXTERNAL'
EXPORTING
DATE_INTERNAL = SY-DATUM
IMPORTING
DATE_EXTERNAL = v_datun.
*- Eröffnen der Stückliste für Änderungen
call function 'CSAP_MAT_BOM_OPEN'
exporting
material = 'CG0012'
plant = '0002'
bom_usage = '1'
valid_from = v_datun
ALTERNATIVE = '03'
importing
o_stko = tstk2
fl_warning = flg_warning
tables
t_stpo = tstp2
exceptions
error = 1.
clear: tdep2_data,
tdep2_source,
tdep2_descr,
tdep2_order,
tdep2_doc.
refresh: tdep2_data,
tdep2_source,
tdep2_descr,
tdep2_order,
tdep2_doc.
data v_date type char10 .
CALL FUNCTION 'CONVERT_DATE_TO_EXTERNAL'
EXPORTING
DATE_INTERNAL = SY-DATUM
IMPORTING
DATE_EXTERNAL = v_date
EXCEPTIONS
DATE_INTERNAL_IS_INVALID = 1
OTHERS = 2
loop at tstp2.
if tstp2-COMPONENT = '61065A'.
tstp2-FLDELETE = 'X'.
tstp2-CHANGED_BY = SY-UNAME.
modify tstp2.
endif.
clear tstp2.
endloop.
perform item_maintain.
call function 'CSAP_MAT_BOM_CLOSE'
importing
fl_warning = flg_warning
exceptions
error = 1.
*- Unterroutine
Form item_maintain.
call function 'CSAP_BOM_ITEM_MAINTAIN'
exporting
i_stpo = tstp2
importing
fl_warning = flg_warning
tables
t_dep_data =
t_dep_descr =
t_dep_order =
t_dep_source = tdep2_source
t_dep_doc =
exceptions
error = 1
others = 2.
if sy-subrc = 0.
endif.
endform.
Maybe you are looking for
-
No internet access on virtual servers
Server 2012 R2 Virtual server. HP DL360p Gen 8 Server Fully updated driver for hardware. I have created a Virtual switch in Hyper-v and then attached it to the virtual machine network adapter. I have full network access to all resources on the LAN.
-
Any way to get prior (non-iOS 6) version of iMovie?
Just saw a demo of iMovie and really liked it. I headed to the iTunes app store and was seriously disappointed to find that I could only use iMovie if I updated to iOS 6. That isn't going to happen. I use Google Maps every day and will switch to an A
-
Can I use a stored procedure to validate a username and password?
We are using Discoverer on a standalone server but we have a database link to our reporting database. Our standalone Discoverer is on a 10g database with a database link. Our reporting database is an 9i database using oracle applications. I have a st
-
Use an SQL Query in a backing bean
hi, I like to know how to run an SQL query in a backing bean method, this being the code I tried , his goal is to fill the field "cin" with data coming from my database, here is the Code: public String cb2_action() { BindingContainer bindings = getBi
-
Is there a plugin for CS6 that I need to download to get my HP Officejet 7612 Wide Format Printer to be compatible with my MacBook Pro that is running my CS6 program?