Solved

USING EXCEL AS DATASOURCE TO CRYSTAL REPORTS

Posted on 2008-10-17
4
3,583 Views
Last Modified: 2013-11-15
Hello all,

I am trying to use a excel workbook as input to my crystal report.  Here is the issue, I want to be able to use the add command and do a select instead of just selecting the sheets I want.  IE I have 3 sheets and they are all summed at different levels.  I want to be able to create a command (much like i would with a database) that says something like select group, value from MTM group by group.

But when I go to do the select * from mtm it says it doesn't know what that table is.  Does anyone know the proper syntax for excel tables?

I have attached a screenshot.....

Thanks in advance....
crystalbmp.bmp
0
Comment
Question by:mitai
  • 3
4 Comments
 
LVL 3

Expert Comment

by:Cootser
ID: 22745923
Hello mitai

Iam using cr 9 but this may apply to you also

In my example the excel file has Sheet1$

What i did to get the syntax (see below) was first added the actual Sheet1$ into the report, and placed some fields into the details section.  I then ran the report and when the data was displayed i went to Database > Show SQL Query (this displays the actual SQL query that Crystal uses to get data). I copied that text and went into Database expert where i removed Sheet1$ and selected Add Command, pasted the text in there and it accepted it.  I typed the WHERE clause myself

So now my report uses that command to get its data.

One thing to note

Have a look at the example code below

It says `Sheet1_`.`code` the ` character is from the button to the left of the number 1 on my QWERTY keyboard, and i have to press it twice to get it to display
AND
in the WHERE clause i can use a normal ' to enclose the value i.e. 'a001'

SELECT `Sheet1_`.`code`, `Sheet1_`.`desc`, `Sheet1_`.`amount`
 FROM   `Sheet1$` `Sheet1_`
WHERE `Sheet1_`.`code` = 'a001'

Best of luck

Cootser
0
 
LVL 3

Accepted Solution

by:
Cootser earned 500 total points
ID: 22745950
SELECT *
 FROM   `Sheet1$` `Sheet1_`
WHERE `Sheet1_`.`code` = 'a001'

This * also works

For your MTM$ sheet you could put

SELECT *
 FROM   `MTM$` `MTM_`
WHERE `MTM_`.`your_field` = 'some_value'
0
 

Author Closing Comment

by:mitai
ID: 31507285
You are the man!  This works great!
0
 
LVL 3

Expert Comment

by:Cootser
ID: 22765362
Glad to help
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Hi, I am very much excited today since I'm going to share something very exciting Tool used for Analytical Reporting and that's nothing but MICROSTRATEGY. Actually there are lot of other tools available in the market for Reporting Such as Co…
How to increase the row limit in Jasper Server.
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…
In a recent question (https://www.experts-exchange.com/questions/29004105/Run-AutoHotkey-script-directly-from-Notepad.html) here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…

856 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