Solved

Dynamics GP - SQL/Crystal Report Multi Level BOM Report

Posted on 2011-02-22
20
1,698 Views
1 Endorsement
Last Modified: 2012-05-11
I need a SQL view that i can use in crystal reports to display a multilevel BOM report.
1
Comment
Question by:jnikodym
  • 11
  • 7
  • 2
20 Comments
 
LVL 10

Expert Comment

by:Abdulmalek_Hamsho
ID: 34951558
The requested Multi-Level BOM Crystal Report is attached.
BOM.rpt
0
 

Author Comment

by:jnikodym
ID: 34952032
can you email me the command?  i can't access it from the old question.  Thanks
0
 
LVL 10

Expert Comment

by:Abdulmalek_Hamsho
ID: 34952261
It's there in the Crystal report file.
0
 

Author Comment

by:jnikodym
ID: 34952605
How are you concatenating your space formulas with the data objects?
0
 

Author Comment

by:jnikodym
ID: 34952977
this is still not achieving what i am looking for.  If you look at your report, CBA100 is a component of BA100G.  Then CBA100 is an assembly with components under it.  I would want the report to look like this

BA100G
   BELL100
   CBA100
        CAP100
        CB100
        RES100
        SOLDER
        etc.
   FTRUB
   KPA100
0
 
LVL 10

Expert Comment

by:Abdulmalek_Hamsho
ID: 34953749
I see, the report you're asking for would take time. As I'm busy, I can tell you how to accomplish it, but you must be very good in Crystal Reports.
0
 

Author Comment

by:jnikodym
ID: 34953752
can you tell me how to accomplish it or give me an example report?
0
 
LVL 10

Expert Comment

by:Abdulmalek_Hamsho
ID: 34953857
It's hard for me now to prepare an example. Here's how to do this:

1- The main report shows all of the sub-assemblies LEVEL-0 components.
2- Subreport shows subassemblies' components.

The main report passes the subassembly to the subreport to show its compnents.
0
 

Author Comment

by:jnikodym
ID: 34953889
Won't it be a problem when you get to the third level?  Because you can't have a subreport within a subreport.
0
 
LVL 10

Expert Comment

by:Abdulmalek_Hamsho
ID: 34953938
The main report shows all of the subassemblies, even if it's Level-10, the subreport just shows the components. There won't be subreport within subreport.

This is the main idea of it, but you may need some formulas and conditional formating to accomplish the full report.
0
Complete Microsoft Windows PC® & Mac Backup

Backup and recovery solutions to protect all your PCs & Mac– on-premises or in remote locations. Acronis backs up entire PC or Mac with patented reliable disk imaging technology and you will be able to restore workstations to a new, dissimilar hardware in minutes.

 

Author Comment

by:jnikodym
ID: 34953953
would you have time to build the report?
0
 
LVL 10

Expert Comment

by:Abdulmalek_Hamsho
ID: 34957331
Well, I will do my best to prepare it.
0
 
LVL 10

Expert Comment

by:Abdulmalek_Hamsho
ID: 34975481
Tomorrow I'm gonna work on it.
0
 
LVL 10

Accepted Solution

by:
Abdulmalek_Hamsho earned 500 total points
ID: 34978674
Report is attached. You need to change the ODBC connection to point to your DB in the Main report AND in the two SubReports.
BOM-Formatted.rpt
0
 

Author Comment

by:jnikodym
ID: 34982942
this is exactly what i'm looking for.  One more thing.  Is it possible to get a running total of all the components cost to appear on the main report?
0
 
LVL 10

Expert Comment

by:Abdulmalek_Hamsho
ID: 34983639
It depends upon which cost you're talking about.
0
 
LVL 10

Expert Comment

by:Abdulmalek_Hamsho
ID: 34983652
Anyway, everything is possible.
0
 

Expert Comment

by:flg8rgal
ID: 35215421
I don't use Crystal Reports.  Any chance you can print off the code and pop it into a text format so that I can read it and modify it (if necessary) for use in SQL Server?  Thanks!
0
 
LVL 10

Expert Comment

by:Abdulmalek_Hamsho
ID: 35216976
With BOM_No (PPN_I,CPN_I, QUANTITY_I, POSITION_NUMBER, BOM_LEVEL, Hirchy) AS
      (SELECT DISTINCT PPN_I,CPN_I, QUANTITY_I, POSITION_NUMBER, 0, cast(ltrim(PPN_I) as varchar(1000))FROM BM010115 WHERE PPN_I = '{?ItemNo}'
      UNION ALL
      SELECT BM010115.PPN_I,BM010115.CPN_I, BM010115.QUANTITY_I, BM010115.POSITION_NUMBER, BOM_No.BOM_LEVEL + 1, cast(ltrim(rtrim(BOM_NO.Hirchy)) + ltrim(rtrim(BM010115.PPN_I)) as varchar(1000))FROM BOM_No
      INNER JOIN BM010115
      ON BM010115.PPN_I = BOM_No.CPN_I)

SELECT BOM_No.PPN_I, BOM_No.BOM_LEVEL, Hirchy FROM BOM_No
OPTION (MaxRecursion 100)
0
 

Expert Comment

by:flg8rgal
ID: 35217162
Great, thanks!
0

Featured Post

Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

Join & Write a Comment

INTRODUCTION: While tying your database objects into builds and your enterprise source control system takes a third-party product (like Visual Studio Database Edition or Red-Gate's SQL Source Control), you can achieve some protection using a sing…
Use this article to create a batch file to backup a Microsoft SQL Server database to a Windows folder.  The folder can be on the local hard drive or on a network share.  This batch file will query the SQL server to get the current date & time and wi…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now