Creating a table in Crystal Reports Basic (one built in vs2008)? - crystal-reports

Is it possible to create a table with this crystal reports, because I need to layout or format my data into a table(not cross tab), is there a way to do this cause I think my tool box is only limited to lines and boxes and basic shapes.

There's a few things you can do to make it look like a table:
Create Each row in your report represents a row in the table.
Put a border/box around the table use the 'Insert Box' from the toolbar and simple start drawing the box in the header of the (or group header) and finish in the footer (or group footer) and when you preview the report you'll see a box around the whole table [report]
Column grid lines can easily be done by linking the top and bottom of your box. they will then expand out in preview mode.
Top Tip: Zooming right in, to say 300%, makes getting the joins much easier, and investigate snap-to-grid you may want to simple disable it it may actually make life easier,(when ultimate precision is required)

If you need to display the data as a table, you can get creative with details, groups, subsections, and formulae. For example, the formula sum({A},{B}) adds all the values of {A} for each group {B} (best used in a group footer). If you have any specific questions, I can try to answer them.

Sorry, but Crystal reports can not create tables. It can execute a stored procedure that creates tables, but that's really the procedure creating the tables.

Related

Formatting Excel Output of Crystal Reports with Multiple Subqueries

I've put together a summary report in Crystal Reports 2013 that has about 10-12 subreports. Each subreport is a fairly basic query that produces one or several lines rows and columns of data. I'm using SAP's Central Management Console to produce the reports, with the output an Excel output.
My problem is that my excel output is coming out unstandardized i.e. random extra empty rows and columns, data and header mismatches, different widths of rows and columns, etc.
I've been messing around with the formatting setting w/in Crystal Reports (standardizing size and shape of subqueries on the preview screen, supressing empty areas, etc.) but can't come close to getting the Excel output to look the way I want.
Is there a specific export formatting function/area within Crystal Reports that will allow me to design the export in the way I'd like? And if not, are there any ways to format multiple subqueries w/in Crystal Reports so their format in an Excel export is uniform?
If i really understood your issue, you have troubles with the alignment of data, cells and stuff like that in the spreadsheet, is it correct?
If so, the solution is to review the align of your fields in the report. It is very boring. You can use some functionalitis like:
right click a field and use "align to grid"
select two fields, right click and use "left align" and "top align"
change the property "gridsize" of the "report" to a higher value and use the keyboard to position the fields.
Avoid empty spaces between field at most.
Keep your eyes on the rulers.
Furthermore, check the version of Crystal Reports you are using. There is a good improvement about it from version 11 to 13.
Exporting to Excel seems a bit qwerky because the same steps do not necessarily work for all reports (my experience at least). Keep this in mind when reading the following steps. Perform the following steps on both the detail(footer if using grouping) and header rows where applicable:
Choose driver “Microsoft Excel(97-2003)”
Make sure the header and detail sections have no spaces in between the columns
Make sure the header and detail column boxes align perfectly (should see red crosses when alignment is correct).
Select all fields on the row, right-click, align to top (if this does try aligning to grid)
Right-click to the left of the detail columns and “Select All Section Objects”
Right-click in the same location and choose “Arrange Lines” then “Fit Section”
Perform steps 4 & 5 on the header columns as well
Open Section Expert, select “Suppress Blank Section” for all unused sections
If none of the above work, use driver “Microsoft Excel (97-2003) (Data Only) “
Headers will still appear in the report but will not be in bold

Grid/table in report

I need to display data in a basic grid, with borders, column headers, etc. How can this be done in a Crystal Report without having to draw every single line and position/size every field?
I've tried a lot of different things, but it is all so sloppy and time consuming. Isn't there an easy way to just display a table in a grid?
the solution here turned out to not use Crystal Reports. To use alerts in SAP BizOne. It works great for a quick well formatted data subscription case
A Crosstab can display results in a footer after the main report has been run. This is the least "time consuming" option, as you put it.
Otherwise the quickest way to turn an existing report into a "table" is to simply add line elements that span from the header to the footer, dividing your fields into columns. The line elements will resize such that they cover all sections:

Report vertical layout

I have existing report w/ "groups" for Total/Directs/Warehouse/Credits that span horizontally. I need to now stack these groupings vertically. What is the best way to do this in CR? I am used to SSRS, Excel, PowerBI, etc. Crystal Reports is much less intuitive than those tools.
Do I need some kind of funky nested groups? Sub reports? How should we approach this? We assumed it would be a pretty simple formatting/layout change. But it looks like it's actually quite complex to do this.
Original:
How it needs to be re-worked:
If the entire table you're showing is in a Footer, you can just add 3 new footer sections and duplicate the table in each (removing any columns you don't need.) Just right click the relevant section and Insert Section Below.
Otherwise you'll need to use subreports. But since you have the columns already configured, all you really have to do is:
Save 4 subreports, Total, Directs, Warehouse, and Credits. (Just save a copy of your existing report, and delete everything that doesn't need to show up in Total. Rinse and repeat.)
Import each and add the parameters as subreport links
Give them each their own section

In SSRS 2008, is there any way to add all dataset fields to a table at once?

I'm working with SSRS for the first time. When adding a table to a report, is there any way to add all fields of a dataset to it at once or does it have to be done individually? Drag & drop, insert column -> right is a pain when there are a lot of fields that are being displayed.
It's a bit of a workaround, but the "Add new report" wizard automatically creates a table with the specified columns and groups from your given dataset. I don't believe there's a way to trigger this functionality from within an existing report, but you could create a "sacrificial" report to get what you're looking for - run through the wizard, generate the table, and copy / paste it into your original report. As long as your datasets are the same, it should work just fine...
Hope this helps.
I have a similar problem as the op and am new to SSRS/BIDS. And, I am updating a previously created report which (for me) is too complex to just quickly re-create using the "wizard generation" as the datasource is a web service (with code-generated web service parameters, lots of calc'd datasource fields, etc). It is faster to just copy the .rdl, delete all, and create the table manually.
I thought I would add that (only a little better than op's method, but nonetheless it is time-saving) you can just drag and drop to populate columns w/o the "right click > insert column > right". Just drag the dataset field to the place you want it in the table and BIDS/SSRS will automatically insert a new column. It also helps to drag the latter columns first (i.e. always inserting a previous column) so you don't have to scroll to the right all the time.
I was looking for the similar thing and I have figured this out. Open your report in Report Builder 3.0 which is a free BI tool by Microsoft. Go to Insert > Table wizzard. Then just follow the wizard steps to generate auto columns. Save and reopen the file in your visual studio, file will refresh itself.
Ved
#Kevin Fisher actually there is no need a workaround. There is way to do this out of the box of Report Builder 3. Open your existing favorite report template. on the tool bar, click on INSERT tab, look for TABLE icon, click on the down-ward arrow at the bottom of the TABLE icon, then choose TABLE WIZARD. Then I guess you know what to do from here. -hope this help.
I agree that there is no way to bring all of the columns over from the data set to a table easily. But I came up with a method that helped me:
Insert a blank table (this usually gives you 3 columns). Then insert columns to the right of the table (right click, Insert Column, To the Right), as many times as you need in order for it to equal the number of columns in your data set.
Once you have all the blank columns created in your table, click inside a table cell box and use the drop-down to select the field. This has the added benefit of allowing you to get the fields in the correct order, since I've noticed that the field names in the dataset don't always appear in the same order as the SQL stored proc output.

Crystal Reports: Cross-Tab Column Arrangements

I am looking for a way out in cross tab, so that if the columns exceed in cross tab, they shouldnt go on next page..rather a new cross-tab should repeat after the first one.
For example, two columns are displayed in a cross tab :
Now if a new column is added, and assuming that it could not be accomodated within the given page width limit, it will go to a page next to it in CR by default.
But in my report it is required to be shown below the first cross tab (and not on next page), which will look as follows:
Please do suggest me if there's a way out :)
Thanks in advance
Your question is perfectly reasonable, but I'm pretty sure that in CR-XI, there is no automatic way to do this. I recommend skipping the cross-tab designer completely and just making your own:
Make a new CR using a placeholder table that has exactly 1 record.
In this CR, suppress everything but the details section. Add a new details section so you will have Da and Db.
In Da, add a subreport. Use your real datasource and add Column1 and Column2.
In Db, add a subreport. Use your real datasource and add Column3 and Column4.
I don't have time to test this, but I think it will display all the columns as you requested.
(Instead of step 1, you can probably use a placegrouper group in your report that only has 1 group. Then, when you add the subreports, make sure to not add any links to the main report.)
Edit
A dynamic number of columns makes this request much more difficult to do in Crystal.
Maybe you could autogenerate the entire report from a script. I couldn't help you with that, but I'm sure someone else on StackOverflow will.
You can use MS Excel to achieve something similar. Use MS Access or something similar to set up a crosstab of your data. Open a new Excel workbook and import your crosstabbed datasource using Data->Import External Data->Import Data (this imports the entire table, regardless of number of rows). In Page Setup, change settings to Fit to (blank) pages wide by 1 pages tall. You can format the data however you like and the format will be retained. This Excel method will squeeze all your columns into a 1-page wide area. It's not quite what you're asking for, but it will work.
The number of columns may be dynamic, but do you know what the field names could be? For example, your columns include 0-50 US States, then you know what the column names will be, just not which ones or how many. If this is your situation, then use my first suggestion (check off the suppress if blank options to hide unneeded subreports). It won't be pretty (alot of white space), but it can get the job done.
A possible solution can be a multi column report. But it can be difficult to make the row labels and values in the same line.
If you can create an additional row grouping then you have the solution that you want. For example if your columns have number like in your sample. Then you can add a formula like:
columnId \ 2