Regarding BOM report
Hi friends,
If anyone have developed ALV report for Bill Of Material.than pls give me sample code....
Material A
Mterial B
Material C
thank for reply.that i know..but how to find multiples level BOM.........like
material A
subcomponent B
subcomponent D
subcomponent F
subcomponent G
subcomponent E
subcomponent H
subcomponent B
Similar Messages
-
Hello,
I am trying to create a BOM report where the user inputs the father item and all the other child items are displayed below it, Including the childs of other father items inside the BOM.
Has anyone done this before ?
Some BOMs items are made of other BOMs.
Kind Regards,Hi,
Let's think together,
1. We have the list of the WH journal in the OINM table, and we can filter it as production transactions....
2. We have the bacth transaction details in IBT1 table, and we can link this table to the OINM....
select T0.ItemCode, T0.InQty, T0.OutQty , T1.BatchNum
from oinm T0 inner join ibt1 T1 on T0.ItemCode = T1.ItemCode and T0.Warehouse = T1.WhsCode and T0.TransType = T1.BaseType and T0.CreatedBy = T1.BaseEntry and T0.DocLineNum = T1.BaseLinNum
where T0.applobj = '202'
3. We have a reqursive query which gives as the list of the subcomponents...
So combine them
Let's modify the prevoius stored procedure.....
Alter Procedure BoomTree(@itemcode nvarchar(20))
AS
BEGIN
WITH BOM (Code) AS
SELECT ROOT.Code as Code
FROM dbo.OITT AS ROOT
WHERE ROOT.Code = @itemcode
UNION ALL
SELECT CHILD.Code
FROM dbo.ITT1 AS CHILD
JOIN BOM ON CHILD.Father = BOM.Code
select T0.ItemCode, T0.InQty, T0.OutQty
, T1.BatchNum
from oinm T0
inner join ibt1 T1 on T0.ItemCode = T1.ItemCode and T0.Warehouse = T1.WhsCode and T0.TransType = T1.BaseType and T0.CreatedBy = T1.BaseEntry and T0.DocLineNum = T1.BaseLinNum
where T0.applobj = '202'
and T0.ItemCode in (select code from BOM)
OPTION (MAXRECURSION 10); -- Handles 10 levels dept of BOM
RETURN
END
GO
exec boomtree 'P0001'
So it was easy.....
Regards,
J. -
Color to header materail field in BOM report
hi experts,
I am doing BOM report in that header material of BOM and their component i moved in same field but
i cant identity which one is a header material (MAST-MATNR) and which one is a componental (STPO-IDNRK) so, I want to color for header material.
Plz send me reply earliest.
Thanks,
JyotsnaHi,
As you can make out the header material for BOM, so for a header material you will be having number of component materials.
Then can check whenever a header material is encountered and can use colors in classical reports.
Hope this helps you.
Regards,
Tarun -
BOM Report to view BOM vaildity date
Hi All,
Is there any standard BOM report where i can view the BOM - valid from date and vaild to date ?
Regards,
PSSHi,
You will get Valid from date from many BOMs table both at header level and item level but the default valid to date will be 31.12.9999, and you will not get the value till you delete the BOM either at header level or at item level.
Once you delete the BOm or item within BOM then this deletion date will become vaild to date and this will be available in concerns tables.
With change number also valid to date will not be capture till you delete the BOMs ot items within the BOM with the change number.
You can only work with header items using production versions valid from and valid to date and restrict the validity of the BOM.
Regards
TAJUDDIN -
Dear All
Please clarify the following discrepancy I found in BOM report in one of my Customer database:
Schenario - 1
Parent Item A -- Qty 1 kg
Child Item B -- Qty 1.2 kg
Parent Item B -- Qty 1 kg
Child Item C -- Qty 1.2 kg
When BOM report is processed and system displays following which is correct :
Item A -- 1 kg
Item B -- 1.2 kg
Item C -- 1.44 kg
Schenario - 2
Now they changed the BOM of Item B as follow :
Parent Item B -- 2 kg
Child Item C -- 7 kg
Again BOM report is processed and system displays following containing wrong value for Item B :
Item A -- 1 kg
Item B -- 0.6 kg
Item C -- 4.2 kg
Since1 kg of Item A requires 1.2 kg of Item B as per BOM defined so in case of Schenario - 2 it should show the same in this case also. Also requirement of Item C of 4.2 kg will also produce 1.2 kg of Item B and not 0.6 kg as shown by the system.
Please clarify this anamoly.
Thanks & with regards
S K GangulyDear Gordon / Swaijis
I am not convinced in Gordons point as user will be confused to see the report though working will not hamper. My point is with respect to BOM report and not with the process of Production routine.
And for Swaijis -- have you enterd my values of 2nd schenario i.e. Quanityt of Parent item of Child BOM should not have unit (1) quantity but more than unit i.e. 2 or 3 etc. and accordingly quantity of child items of this parent to be changed.
Now you take the BOM report of Parent Item of Parent Item of child item and explode it. You will find error in the report.
Thanks & with regards
S K Ganguly -
BOM reports using a group of Materials
Hi all
I am looking at standard SAP BOM reports CS11, CS12, CS13. All of them require that I enter a Material number. Do we have standard reports where we can look at BOM using a generic group of materials example where multiple selection of materials is allowed, or selecting BOMs using for all materials belonging to a material group etc.
thanks a lotHi John,
There are no Standard reports available for BOM.
You may consider creating a query or an ABAP report.
If you are planning to develop a report you may use the Function module CSAP_MAT_BOM_READ which will list the BOM for a material in Internal tables
Regards,
Jayakandan -
Modification of BOM Report! (CS03 )
Dear Experts,
Actually iam required to add an additional field in to a standard BOM Report i.e. CS03
In this report the requirement is to have the additional field for 'stock quantity' available.
Now in order to accomplish this i need to have a custom BOM Report so that i can manipulate according to my requirements,
I humbly request all the experts to help me by giving me the code snippet and any guidelines if possible.
Regards,
Parwez.Dear Mr Vinayak
I request you to kindly guide me as how can we use BADI-CEWB_BOM_CUS_FIELDS , so that in standard report using CS03 we can have additional field like "Stock Quantity" .
Sir, It will be great help , if you can pl send me the detail procedure to be followed for this .
Regards
B Mittal -
'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 -
Hello, i'm new to the forum and to SBO.
i've searched the entire forum for this answer:
I wan't to know if it's possible to display on the BOM report all the child item prices when the Parent item is expanded.
Thank you for your help, and i hope to learn as much as possible and contribute to theis excellent forum for SBO.
Regards,
GuillermoL.-Hello Gordon!
I'm glad to see your replied to my posts, i've been around as a guest viewing your posts and i've seen you help so many people, inluding me.
There is only one more level below the parent item (Level 2), and i need to display the parent item price and those level 2 child items price, but i also have several Price Lists, so i need to be able to select The price list too.
Thank you in advanced.
Best Regards,
Guillermo.- -
Hi Experts..
I have udf in Item Master Data as Drg No. & I want to get this udf in BOM Reports.
Thanks in Advance..
Regards,
RaviHi RAVI_JHA_SAP ,
i have a solution to your problem.
1.create a UDF under BOM rows ( DRG_NO)
2. then create a FMS that will compare the value of Items selected in the BOM row into your Item master data. after doing this select the value of the DRG No and inser the OITM and insert it into you created UDF in the BOM row.
3. set auto refresh on Item row in BOM.
Hope you can use this workaround.
Thank you!
Best Regards,
Darius Gragasin -
Help needed regarding ALV report
Hi,
I have a query regarding ALV report.
The requirement is as follows:-
When the user executes the ALV report and if he sums one numeric field column values and filters out some of the field columns ( for example there r 5 columns in the report and the user has filtered out 2 of them and viewing only 3 columns)
and now the requirements is that when the user runs the report later he should see the modified report ( i mean only 3 cloumns and the total value of the column which he has made) but not the original output which was there when the report was developed.
First of all i wanna know is it possible to do r not. If yes then how
Hope u have got what i want.
eagerly waiting for ur reply.
regards,
maqsoodHi
Yes you can! You have to manage the layout variant.
So when you call your ALV you have to set the parameter I_SAVE = 'A'.
In this way you'll allow the user to save the variants for layout.
After you has to have a chance to choose the variant in selection-screen.
See the demo program BCALV_GRID_11 to manage the variant in selection-screen.
Max -
Hi All,
Yesterday i submitted a query regarding Interactive reports.and i recieved lots of reply .But the replies are all about ALV interactive report.I want to know just about the interactive reports where ew use AT LINE OF SELECTION, HIDE e.c.
PLZ send methe documents related that.
Thanks and Regards
RASHMIHi
Interactive Reports
As the name suggests, the user can Interact with the report. We can have a drill down into the report data. For example, Column one of the report displays the material numbers, and the user feels that he needs some more specific data about the vendor for that material, he can HIDE that data under those material numbers. And when the user clicks the material number, another report (actually sub report/secondary list) which displays the vendor details will be displayed.
We can have a basic list (number starts from 0) and 20 secondary lists (1 to 21). Events associated with Interactive Reports are: 1. AT LINE-SELECTION 2. AT USER-COMMAND 3. AT PF<key> 4. TOP-OF-PAGE DURING LINE-SELECTION. HIDE statement holds the data to be displayed in the secondary list. sy-lisel : contains data of the selected line. sy-lsind : contains the level of report (from 0 to 21)
Interactive Report Events:
AT LINE-SELECTION : This Event triggers when we double click a line on the list, when the event is triggered a new sublist is going to be generated. Under this event what ever the statements that are been return will be displayed on newly generated sublist.
AT PFn: For predefined function keys...
AT USER-COMMAND : It provides user functions keys.
REPORT ZTEJ_INTAB1 LINE-SIZE 103 LINE-COUNT 35(5) NO STANDARD PAGE
HEADING.
*TABLES DECLARATION
TABLES : KNA1, VBAK, VBAP.
*SELECT OPTIONS
SELECT-OPTIONS: CUST_NO FOR KNA1-KUNNR.
*INITIALIZATION
INITIALIZATION.
CUST_NO-LOW = '01'.
CUST_NO-HIGH = '5000'.
CUST_NO-SIGN = 'I'.
CUST_NO-OPTION = 'BT'.
APPEND CUST_NO.
*SELECTION SCREEN VALIDATION
AT SELECTION-SCREEN ON CUST_NO.
LOOP AT SCREEN.
IF CUST_NO-LOW < 1 OR CUST_NO-HIGH > 5000.
MESSAGE E001(ZTJ1).
ENDIF.
ENDLOOP.
*BASIC LIST SELECTION
START-OF-SELECTION.
SELECT KUNNR NAME1 ORT01 LAND1 INTO
(KNA1-KUNNR, KNA1-NAME1,KNA1-ORT01,KNA1-LAND1)
FROM KNA1
WHERE KUNNR IN CUST_NO.
WRITE:/1 SY-VLINE,
KNA1-KUNNR UNDER 'CUSTOMER NO.' HOTSPOT ON,
16 SY-VLINE,
KNA1-NAME1 UNDER 'NAME',
61 SY-VLINE,
KNA1-ORT01 UNDER 'CITY',
86 SY-VLINE,
KNA1-LAND1 UNDER 'COUNTRY',
103 SY-VLINE.
HIDE: KNA1-KUNNR.
ENDSELECT.
ULINE.
*SECONDARY LIST ACCESS
AT user-command.
IF SY-UCOMM = 'IONE'.
PERFORM SALES_ORD.
ENDIF.
IF SY-UCOMM = 'ITWO'.
PERFORM ITEM_DET.
ENDIF.
*TOP OF PAGE
TOP-OF-PAGE.
FORMAT COLOR 1.
WRITE : 'CUSTOMER DETAILS'.
FORMAT COLOR 1 OFF.
ULINE.
FORMAT COLOR 3.
WRITE : 1 SY-VLINE,
3 'CUSTOMER NO.',
16 SY-VLINE,
18 'NAME',
61 SY-VLINE,
63 'CITY',
86 SY-VLINE,
88 'COUNTRY',
103 SY-VLINE.
ULINE.
FORMAT COLOR 3 OFF.
*TOP OF PAGE FOR SECONDARY LISTS
TOP-OF-PAGE DURING LINE-SELECTION.
*TOP OF PAGE FOR 1ST SECONDARY LIST
IF SY-UCOMM = 'IONE'.
ULINE.
FORMAT COLOR 1.
WRITE : 'SALES ORDER DETAILS'.
ULINE.
FORMAT COLOR 1 OFF.
FORMAT COLOR 3.
WRITE : 1 SY-VLINE,
3 'CUSTOMER NO.',
16 SY-VLINE,
18 'SALES ORDER NO.',
40 SY-VLINE,
42 'DATE',
60 SY-VLINE,
62 'CREATOR',
85 SY-VLINE,
87 'DOC DATE',
103 SY-VLINE.
ULINE.
ENDIF.
FORMAT COLOR 3 OFF.
*TOP OF PAGE FOR 2ND SECONDARY LIST
IF SY-UCOMM = 'ITWO'.
ULINE.
FORMAT COLOR 1.
WRITE : 'ITEM DETAILS'.
ULINE.
FORMAT COLOR 1 OFF.
FORMAT COLOR 3.
WRITE : 1 SY-VLINE,
3 'SALES ORDER NO.',
40 SY-VLINE,
42 'SALES ITEM NO.',
60 SY-VLINE,
62 'ORDER QUANTITY',
103 SY-VLINE.
ULINE.
ENDIF.
FORMAT COLOR 3 OFF.
*END OF PAGE
END-OF-PAGE.
ULINE.
WRITE :'USER :',SY-UNAME,/,'DATE :', SY-DATUM, 85 'END OF PAGE:',
SY-PAGNO.
SKIP.
*& Form SALES_ORD
*& FIRST SECONDARY LIST FORM
FORM SALES_ORD .
SELECT KUNNR VBELN ERDAT ERNAM AUDAT INTO
(VBAK-KUNNR, VBAK-VBELN, VBAK-ERDAT, VBAK-ERNAM, VBAK-AUDAT)
FROM VBAK
WHERE KUNNR = KNA1-KUNNR.
WRITE:/1 SY-VLINE,
VBAK-KUNNR UNDER 'CUSTOMER NO.' HOTSPOT ON,
16 SY-VLINE,
VBAK-VBELN UNDER 'SALES ORDER NO.' HOTSPOT ON,
40 SY-VLINE,
VBAK-ERDAT UNDER 'DATE',
60 SY-VLINE,
VBAK-ERNAM UNDER 'CREATOR',
85 SY-VLINE,
VBAK-AUDAT UNDER 'DOC DATE',
103 SY-VLINE.
HIDE : VBAK-VBELN.
ENDSELECT.
ULINE.
ENDFORM. " SALES_ORD
*& Form ITEM_DET
*& SECOND SECONDARY LIST FORM
FORM ITEM_DET .
SELECT VBELN POSNR KWMENG INTO
(VBAP-VBELN, VBAP-POSNR, VBAP-KWMENG)
FROM VBAP
WHERE VBELN = VBAK-VBELN.
WRITE : /1 SY-VLINE,
VBAP-VBELN UNDER 'SALES ORDER NO.',
40 SY-VLINE,
VBAP-POSNR UNDER 'SALES ITEM NO.',
60 SY-VLINE,
VBAP-KWMENG UNDER 'ORDER QUANTITY',
103 SY-VLINE.
ENDSELECT.
ULINE.
ENDFORM. " ITEM_DET
REPORT demo_list_at_pf.
START-OF-SELECTION.
WRITE 'Basic List, Press PF5, PF6, PF7, or PF8'.
AT pf5.
PERFORM out.
AT pf6.
PERFORM out.
AT pf7.
PERFORM out.
AT pf8.
PERFORM out.
FORM out.
WRITE: 'Secondary List by PF-Key Selection',
/ 'SY-LSIND =', sy-lsind,
/ 'SY-UCOMM =', sy-ucomm.
ENDFORM.
After executing the program, the system displays the basic list. The user can press the function keys F5 , F6 , F7 , and F8 to create secondary lists. If, for example, the 14th key the user presses is F6 , the output on the displayed secondary list looks as follows:
Secondary List by PF-Key Selection
SY-LSIND = 14
SY-UCOMM = PF06
Example for AT USER-COMMAND.
REPORT demo_list_at_user_command NO STANDARD PAGE HEADING.
START-OF-SELECTION.
WRITE: 'Basic List',
/ 'SY-LSIND:', sy-lsind.
TOP-OF-PAGE.
WRITE 'Top-of-Page'.
ULINE.
TOP-OF-PAGE DURING LINE-SELECTION.
CASE sy-pfkey.
WHEN 'TEST'.
WRITE 'Self-defined GUI for Function Codes'.
ULINE.
ENDCASE.
AT LINE-SELECTION.
SET PF-STATUS 'TEST' EXCLUDING 'PICK'.
PERFORM out.
sy-lsind = sy-lsind - 1.
AT USER-COMMAND.
CASE sy-ucomm.
WHEN 'FC1'.
PERFORM out.
WRITE / 'Button FUN 1 was pressed'.
WHEN 'FC2'.
PERFORM out.
WRITE / 'Button FUN 2 was pressed'.
WHEN 'FC3'.
PERFORM out.
WRITE / 'Button FUN 3 was pressed'.
WHEN 'FC4'.
PERFORM out.
WRITE / 'Button FUN 4 was pressed'.
WHEN 'FC5'.
PERFORM out.
WRITE / 'Button FUN 5 was pressed'.
ENDCASE.
sy-lsind = sy-lsind - 1.
FORM out.
WRITE: 'Secondary List',
/ 'SY-LSIND:', sy-lsind,
/ 'SY-PFKEY:', sy-pfkey.
ENDFORM.
When you run the program, the system displays the following basic list with a the page header defined in the program:
You can trigger the AT LINE-SELECTION event by double-clicking a line. The system sets the status TEST and deactivates the function code PICK. The status TEST contains function codes FC1 to FC5. These are assigned to pushbuttons in the application toolbar. The page header of the detail list depends on the status.
Here, double-clicking a line no longer triggers an event. However, there is now an application toolbar containing five user-defined pushbuttons. You can use these to trigger the AT USER-COMMAND event. The CASE statement contains a different reaction for each pushbutton.
For each interactive event, the system decreases the SY-LSIND system field by one, thus canceling out the automatic increase. All detail lists now have the same level as the basic list and thus overwrite it. While the detail list is being created, SY-LSIND still has the value 1.
Regards
Anji -
BOM report on Production order
Dear All,
I need to make BOM report as per production order.
Very helpfull for me if any FM for that?
I need also the table where I can get the relation of that.
Can anybody help me?
Thanks in advance.hi
hope it will help you.
Pls reward if help.
REPORT ZMULTIBOM NO STANDARD PAGE HEADING LINE-SIZE 195
LINE-COUNT 60(2) MESSAGE-ID Z1.
TABLES: MBEW, "Material Valuation
MSLB, "Special stocks with vendor
MARA, "Material Master
MAKT, "Material Descriptions
MARD, "Material Master: Storage Location/Batch Segment
MAST, "BOM Header
STKO, "BOM Detail
STPO, "Bom Components
STAS. "BOM Alternative
Text Elements
Plant
SELECT-OPTIONS: S_WERKS FOR MAST-WERKS DEFAULT 'CA',
Material
S_MATNR FOR MAST-MATNR,
Material Type
S_MTART FOR MARA-MTART.
Base Quantity
PARAMETERS: S_BASE TYPE I DEFAULT '1'.
Display up to Level
PARAMETERS: S_LVL TYPE I DEFAULT '99'.
SELECTION-SCREEN SKIP.
Include Vendor Stock
PARAMETERS: X_MSLB AS CHECKBOX.
DATA: W_MATNR LIKE MAPL-MATNR.
DATA: PARENT-MATNR LIKE MAST-MATNR,
CHILD-MATNR LIKE STPO-IDNRK,
CHILD-WERKS LIKE MAST-WERKS,
CHILD-STLAL LIKE MAST-STLAL,
W_MAKTX LIKE MAKT-MAKTX,
W_STD TYPE P DECIMALS 5,
W_MAV TYPE P DECIMALS 5,
W_MENGE TYPE P DECIMALS 3,
W_LEVEL TYPE I,
W_DOT(1),
W_LVL(12),
W_LVL1(12),
W_LVL2(2),
W_COL TYPE I,
W_LFLAG,
W_TTL LIKE MARD-LABST.
DATA: BEGIN OF INT1 OCCURS 50,
LGORT(6),
LABST LIKE MARD-LABST,
END OF INT1.
IF S_BASE EQ 0.
S_BASE = 1.
ENDIF.
append multi level routing
SELECT * FROM MAST WHERE WERKS IN S_WERKS AND
MATNR IN S_MATNR.
SELECT SINGLE * FROM MARA WHERE MATNR = MAST-MATNR AND
MTART IN S_MTART.
IF SY-SUBRC NE 0.
CONTINUE.
ENDIF.
IF MARA-LVORM <> 'X'.
PARENT-MATNR = MAST-MATNR.
CHILD-MATNR = MAST-MATNR.
CHILD-WERKS = MAST-WERKS.
CHILD-STLAL = MAST-STLAL.
SELECT SINGLE * FROM MAKT WHERE MATNR = MAST-MATNR AND
SPRAS = 'E'.
W_MAKTX = MAKT-MAKTX.
REFRESH INT1.
SELECT * FROM MARD WHERE MATNR = MAST-MATNR AND
WERKS = MAST-WERKS AND
LABST NE 0.
MOVE MARD-LGORT TO INT1-LGORT.
MOVE MARD-LABST TO INT1-LABST.
APPEND INT1.
ENDSELECT.
IF X_MSLB EQ 'X'.
SELECT * FROM MSLB WHERE MATNR EQ MAST-MATNR AND
WERKS EQ MAST-WERKS AND
LBLAB NE 0.
MOVE MSLB-LIFNR TO INT1-LGORT.
MOVE MSLB-LBLAB TO INT1-LABST.
APPEND INT1.
ENDSELECT.
ENDIF.
W_LEVEL = 1.
NEW-PAGE.
PERFORM GETCHILD.
ENDIF.
ENDSELECT.
get child parts
FORM GETCHILD.
SELECT * FROM STPO WHERE STLNR = MAST-STLNR
ORDER BY POSNR.
SELECT SINGLE * FROM STKO WHERE STLNR = STPO-STLNR
AND STLAL = MAST-STLAL.
SELECT SINGLE * FROM STAS WHERE STLNR = STPO-STLNR AND
STLKN = STPO-STLKN AND
STLAL = MAST-STLAL.
IF SY-SUBRC EQ 0.
CLEAR: W_DOT, W_LVL, W_LVL1.
PERFORM WRT_DTL.
CHILD-MATNR = STPO-IDNRK.
W_LEVEL = W_LEVEL + 1.
IF W_LEVEL <= S_LVL.
PERFORM SUBCHILD.
ENDIF.
W_LEVEL = W_LEVEL - 1.
ENDIF.
ENDSELECT.
ENDFORM.
get grand children parts
FORM SUBCHILD.
SELECT SINGLE * FROM MAST WHERE MATNR = CHILD-MATNR
AND WERKS = CHILD-WERKS.
IF SY-SUBRC NE 0.
EXIT.
ENDIF.
SELECT * FROM STPO WHERE STLNR = MAST-STLNR
ORDER BY POSNR.
SELECT SINGLE * FROM STKO WHERE STLNR = STPO-STLNR AND
STLAL = MAST-STLAL.
SELECT SINGLE * FROM STAS WHERE STLNR = STPO-STLNR AND
STLKN = STPO-STLKN AND
STLAL = STKO-STLAL.
IF SY-SUBRC EQ 0.
W_DOT = '.'.
PERFORM WRT_DTL.
CHILD-MATNR = STPO-IDNRK.
W_LEVEL = W_LEVEL + 1.
IF W_LEVEL <= S_LVL.
PERFORM SUBCHILD.
ENDIF.
W_LEVEL = W_LEVEL - 1.
SHIFT W_LVL.
ENDIF.
ENDSELECT.
ENDFORM.
TOP-OF-PAGE.
WRITE:/ SY-DATUM,SY-UZEIT,
85 'ABC PTE LTD',
182 'Page', SY-PAGNO.
WRITE: / SY-REPID,
75 'BOM STRUCTURE (WITH LOCATION BALANCES)',
182 SY-UNAME.
SKIP.
CLEAR W_LFLAG.
WRITE:/ 'Material No.:', PARENT-MATNR,
60 'Plant :', MAST-WERKS.
W_COL = 90.
CLEAR W_TTL.
LOOP AT INT1.
IF W_COL > 195.
IF W_LFLAG IS INITIAL.
WRITE:/ 'Description :', W_MAKTX,
60 'Base Qty :', S_BASE LEFT-JUSTIFIED.
W_LFLAG = 'X'.
W_COL = 90.
ELSE.
W_COL = 90.
SKIP.
ENDIF.
ENDIF.
WRITE AT W_COL 'Loc :'.
W_COL = W_COL + 6.
WRITE AT W_COL INT1-LGORT.
W_COL = W_COL + 7.
WRITE AT W_COL(12) INT1-LABST LEFT-JUSTIFIED.
W_COL = W_COL + 16.
W_TTL = W_TTL + INT1-LABST.
ENDLOOP.
IF W_LFLAG IS INITIAL.
WRITE:/ 'Description :', W_MAKTX,
60 'Base Qty :', S_BASE LEFT-JUSTIFIED,
90 'Total :', W_TTL LEFT-JUSTIFIED.
ELSE.
WRITE AT W_COL 'Total :'.
W_COL = W_COL + 8.
WRITE AT W_COL W_TTL LEFT-JUSTIFIED.
ENDIF.
SKIP.
ULINE.
WRITE: /001 'Level',
011 'Item',
017 'Component',
037 'Description',
079 ' Per',
089 'UOM',
094 ' Std Price',
106 'Moving Avg',
119 'Location',
128 ' Balance',
139 'Location',
148 ' Balance',
159 'Location',
168 ' Balance',
179 'Total Quantity'.
ULINE.
FORM WRT_DTL.
CLEAR: MAKT-MAKTX, W_MAV, W_STD.
SELECT SINGLE * FROM MAKT WHERE MATNR = STPO-IDNRK AND
SPRAS = 'E'.
SELECT SINGLE * FROM MBEW WHERE MATNR = STPO-IDNRK AND
BWKEY = MAST-WERKS.
IF SY-SUBRC = 0.
W_MAV = MBEW-VERPR / MBEW-PEINH.
W_STD = MBEW-STPRS / MBEW-PEINH.
ENDIF.
W_MENGE = ( STPO-MENGE / STKO-BMENG ) * S_BASE.
W_LVL2 = W_LEVEL.
CONCATENATE W_DOT W_LVL INTO W_LVL.
CONCATENATE W_LVL W_LVL2 INTO W_LVL1.
WRITE: /001 W_LVL1,
011 STPO-POSNR,
017 STPO-IDNRK,
037 MAKT-MAKTX,
079(8) W_MENGE,
089 STPO-MEINS,
094(10) W_STD,
106(10) W_MAV.
W_COL = 119.
CLEAR W_TTL.
SELECT * FROM MARD WHERE MATNR = STPO-IDNRK AND
WERKS = MAST-WERKS AND
LABST NE 0.
IF W_COL > 166.
W_COL = 119.
WRITE AT /W_COL ' '.
ENDIF.
WRITE AT W_COL MARD-LGORT.
W_COL = W_COL + 5.
WRITE AT W_COL(13) MARD-LABST.
W_COL = W_COL + 15.
W_TTL = W_TTL + MARD-LABST.
ENDSELECT.
IF X_MSLB EQ 'X'.
SELECT * FROM MSLB WHERE MATNR = STPO-IDNRK AND
WERKS = MAST-WERKS AND
LBLAB NE 0.
IF W_COL > 166.
W_COL = 119.
WRITE AT /W_COL ' '.
ENDIF.
WRITE AT W_COL(6) MSLB-LIFNR.
W_COL = W_COL + 6.
WRITE AT W_COL(12) MSLB-LBLAB.
W_COL = W_COL + 14.
W_TTL = W_TTL + MSLB-LBLAB.
ENDSELECT.
ENDIF.
WRITE AT 179(15) W_TTL.
ENDFORM. -
BOM Report with Alternative Items
Hello Experts,
I am trying to write a query of BOM Report with the first Alternative Item (from OALI)
Your help please..
Thank You
MeitalmoThen what is this report using for? Check this to start:
SELECT T0.Father, CASE WHEN T1.OrigItem IS NULL THEN T0.Code ELSE T1.AltItem END as 'Item No.', Case WHEN T1.OrigItem IS NULL THEN T2.ItemName ELSE T3.ItemName END 'Item Description'
FROM dbo.ITT1 T0
LEFT JOIN dbo.OALI T1 ON T1.OrigItem = T0.Code
LEFT JOIN dbo.OITM T2 ON T2.ItemCode = T0.Code
LEFT JOIN dbo.OITM T3 ON T3.ItemCode = T1.AltItem
WHERE T0.Father = '[%0\]' -
Hi, are there any R/3 BOM reports that will detail the <b>current</b> BOM for a range of materials not just one material?. Need to output the results to .xls
OK, I choose "order tree" and I get a pop-up message:
"Order tree for the first procurement element PrdOrd 000009200002/PP04/Re is displayed"
with a long text containing:
<i><b>Diagnosis</b>
The order tree for an MRP element is to be displayed. However, no MRP element was selected in the list.
<b>Procedure</b>
If you wish to display the order tree for a different MRP element, select the MRP element in this list by placing the cursor in the respective list. Then choose the function 'Switch to order tree'.</i>
As a result I get a tree with a node corresponding to a production order number which in turn contains a single subnode corresponding to the material BOM. That's all. No components of the BOM appear.
I've tried various clicking combinations (according to the message long text) - still I can't see any way to get a view of components as you say.
regards
Maybe you are looking for
-
Mbean Null /// PermGen // Manifest.mf --- Many many errors.
Hello, im setting up, an Liferay 6.1.1 on an WebLogic 11G all based on Linux Redhead. At the moment i get this error after 5 hours using Google, it still cant help me with MBean null errors :-/ My problem: Weblogic installtion was succesfull and with
-
Restful Webservice -- Page Not Found
Using the web service wizard in SQL workshop, I have created a simple Restful web service using a GET request of Media Resource Type. The SQL statement gets the mime_type and a blob value from a table via an ID parameter. The code works fine in my st
-
Using LCD 8.1 Is it possible to generate a non-interactive form with a digital signature already in-place? We're generating invoices out of SAP and need to have a digital signature in place when we email the PDF to our vendor. The digital signature w
-
RecipeFox doesn't work because of Java issues when I have Java installed
Recipe Fox grabit has been working but now I keep getting message that I need to install Java when it's already installed. This appears to be after a Firefox update.
-
Pass Records to Oracle Reports
Hi, Lets say that I've already fetched a set of records on Oracle Form, I want to pass these records to a Report " on the Report I don't wana use range or where clause to give me these records" In other way I just want to pass these records on the re