Crystal Reports Subreport - Selecting data based on column clicked - crystal-reports

I have a number of reports with current and ytd columns(summary totals by salesman). I want to be able to select the sub-report based on the column clicked. I have one sql procedure that selects current and one that selects ytd. I want to use the same report format (without having to copy and modify it) for current and ytd. Is there anyway of identifying what column is clicked?

Crystal Reports is pretty much just a reporting tool; it's not very interactive.
I'm more familiar with older versions of Crystal Reports, but as far as I know there aren't any onClick methods for columns that can be trapped using pure Crystal Reports.
Depending on how many columns you have, you can create a subreport for each column, but that may be prohibitively slow if you have a large number of columns you want to create subreports for.
If you're using C# or VB.NET to generate the report, you may have more options, but since the question isn't tagged with any programming languages, I'm going to assume this is pure Crystal Reports.

Related

Is it possible to adjust the amount of columns (left to right) in Crystal Report based on user input?

I am trying to get crystal to print the details field from Left to Right to an excel spreadsheet output, rather than from the top of the page to the bottom. Setting the details section to 'Format with Columns' and using the layout option of 'Across then Down' doesn't seem to acheive the effect I am looking for. I want to create a given number of columns to the right based on user input passed into Crystal parameters, but I can't seem to find anything within crystal reports that will allow this.
Is it possible that I'm missing something simple, or does Crystal Reports lack the functionality to accomplish columns/rows being generated from left to right rather than up to down?
Thanks in advance for any help!
No such functionality in Crystal alone but you can take control of the Excel output logic using a UFL (User Function Library) allowing a detail-level Crystal formula to write to a specified Excel cell. As the formula progresses through the detail rows, it would increment column/row targets based on the Columns parameter.
You can create the UFL yourself. Alternatively, at least one of the 3rd-party UFLs listed here provides such a function.

Crystal Reports 11: Finding where data is being filtered out

I am not a Crystal Reports developer.
In a legacy Crystal Report, I have been asked to find out why some Rows of data are being excluded from the Report Output at run time.
I copied the SQL behind the report and when I ran it in SQL Server Management Studio, those rows are not excluded. This is what leads me to conclude that there is a filter in the report itself that is excluding certain rows.
My question:
What are the different places in Crystal Reports 11 that I should look to find if any filtering is going on at run time?
I have looked at Formula fields, Selection formulas, Parameter Fields ... but though I have seen various code in those places, I have not found anything that looks like it will limit the output.
I would appreciate any pointers/suggestions.
Besides section suppression, look at:
Report, Selection Formula, Record...
Report, Selection Formula, Group...
Database joins
If the report SQL is the same as the one you checked in SSMS (including record selection formula , which will be the WHERE clause) , check report's details section suppression formula. A details row might be suppressed based on some row values

How to create Table in Crystal Report

Create Table in Crystal Report
I am newbie to Crystal Report, and i am using Crystal Report 2008. I want to know, do we have table object in Crystal Report.. so that i can draw a table with specific rows and columns, and drag and drop the items to each and every table cell as per the requirement.
The problem i am facing without using table object is that, i have to align each and every element either it is text field or database field from the field explorer, so that it looks like a table and it is too much time taking.
If it can be done in Higher versions of Crystal Reports, then please give details.
you have to draw tables mannually in CR, using the line and box items from the designer,
alignment is also available, you can use gridlines and alignment options of crystal reports, its not hard at all..
Goto Insert - Ole Object - Microsoft Office Excel
It will add a excel file in your report. By dragging vertical reduce the excel object to one row and and horizontally to your required no. of Columns.
That will create a table with one row and many columns and can grow automatically in Detail section.

How do I do a CR-type formula in SQL Server Reporting services?

In Crystal Reports, I could define a formula that would evaluate for each detail line. For example, if I had a query that would return a PatientId, an ObsTerm name, and an ObsTerm value, I could define a formula called {#Hispanic} that had the value:
If {Command.OBSNAME} = "HISPANIC" Then
{Command.OBSVALUE}
Else
" "
Then, in the group footer, I could take Maximum({#Hispanic}, {Command.PATIENTID}) to see if I had gotten a value returned for the patient's ethnicity - either I'd get the value (assume only one, since that's how I built the query) or a blank.
I'm trying to convert a CR report over to SSRS 2008R2: how would I do the above? Thanks.
Add a calculated field to your data source (called 'Hispanic' or whatever) with a formula of:
=IIF(Fields!OBSNAME.Value="Hispanic",Fields!OBSVALUE.Value,"")
In your report, add a parent group to your detail row and type [Max(Hispanic)] into a field in the group row. You may then want to hide the detail row and show only the aggregate data. I think there's probably a much easier way to do what you want but it's not clear from your question.
I made the transition from Crystal to SSRS and it is a hard road. You need to unlearn all your Crystal (especially formatting).

crystal report problem

what is the equivalant command like in vb for EOF(), MoveNext, Moveprevious commands in crystal reports
There are no equivalent answers in Crystal Reports, at least not in the versions I have used. Crystal Reports more or less simply dumps the data out into the report.
That said, if you are in a detail row, and you want to find out what the next value of a field will be, you can use:
next({YourColumn})
You can also find out the previous column value by using this:
previous({YourColumn})
Keep in mind that Next() won't work on the last record, and Previous() won't work on the first record.
I'll have to double-check, but I believe there is an OnLastRecord function that returns TRUE if you are on the last record.
First, welcome to SO!
Second, you sound new to Crystal Report's purpose is to display data, not perform the kind of calculations you're talking about. CR usually goes record-by-record through the data, displaying (or suppressing) each record, and adding group headers & footers.
To answer your question, LittleBobbyTables does give a few good pointers. To see the entire list of functions available to you, there is a list in the Formula Editor (see pic below). Press F1 for detailed descriptions of each command.
You can also:
Create a "Running Total Formula" that will evaluate each record and give a calculation in the group footer.
Do the calculations outside of Crystal Reports and only feed the end result in (perhaps with an unlinked join to your primary table).
The most complex option is to make a subreport that does the calculation and feeds the result back to the main report
Can you give us some more details about what you're trying to do?