I'm using SoftArtisans ExcelWriter for SSRS (ver 8.6), and am wondering if it is possible to create a (non-pie) chart, e.g. a Stacked Bar chart, that has multiple series?
I can create pie charts easily enough, and that is what the help docs show, but there is no samples for other types of charts for SSRS integration.
The excel template is embedded in the .rdl file, and the spreadsheet is created when the user exports the generated report using OfficeWriter's Excel rendering extension. However the report is run manually by users, so I don't have the ability to execute any code to modify the Excel object before the user sees it.
Can anyone either confirm that only pie charts are possible for SSRS Integration, or provide some insight into how other chart types are possible?
You can create any type of chart that Excel can create, since you are creating your chart in your template file with Excel.
Here is an example of how I setup my template to build a scatter chart (Please ignore the title of the chart, I forgot to rename it from Pie Chart).
I insert a chart into my template, set the type to be scatter, and I placed 4 data markers under my chart, from two data sources.
Next I edit the Chart's series and point them to the data markers in my file. When the template is populated from ExcelWriters SSRS integration, it will replace all the datamarkers with your data, and update the chart's series.
After redeploying the template file to my report server, I can now export the file to Excel for OfficeWriter, and my output is shown below.
Disclaimer: I am a developer on OfficeWriter and work for SoftArtisans the makers of OfficeWriter.
Please let me know if this helps.
You should be able to create any type of chart.
The way that OfficeWriter SSRS integration works (and just the plain Template object for that matter), is that it takes all of your data and inserts it into your data markers. Then it finds references in your workbook that pointed to your data markers, and expands them to point to all of the new inserted data.
So really you can add any type of chart. You just have to make sure that the chart you create points to the data markers as the source data.
A data marker will correspond to a single series or to horizontal axis data. Then as the data is populated, the values in the series are populated.
On our reporting demo page there's a link at the bottom that says "View Report Template" that you can click on to download and Excel file that shows a variety of different charts pointing to data markers.
Related
I have a existing chart in pptx file, i just want to update its values on daily basis, these charts are already plotted from excel and paste into pptx, i just want to modify the charts ,
but i don't know how many properties are there in charts like series, category and title properties.
i am able to print the chart series and category data, but when i modify these with chart.replace_data(chart_data)
i am getting error like below
return self._chart_part.related_parts[xlsx_part_rId]
KeyError: 'rId4'
I ma using below code to print the values ,
for series in chart.plots:
for i in series.categories:
cat_list.append(i)
for series in chart.series:
for value in series.values:
ser_list.append(value)
the graph looks like below
How can i modify such graphs with updated values which i will be passing from excel to pptx.
I suspect the problem is rooted in the "pasting from Excel" step.
One thing you can try is to right-click on the chart and choose "Edit values in Excel". If that doesn't work for any reason, that would explain the error you're seeing. If it does work, try saving and run the python-pptx code against the saved version.
An alternative, perhaps more reliable fix would be to recreate the chart natively in PowerPoint, starting from adding a new column-chart and adjusting it until you get what you see here. Then you should be able to update it daily with pretty much the code you mentioned (although your ser_list variable will accumulate values for all series in the chart if there is more than one).
To understand why this could be happening, it's important to observe that a chart does not have to have an Excel worksheet "behind" it. It can, and perhaps does in this pasting case, simply have fixed literal values that are embedded in the chart XML itself. The up-side of this is the pasting operation doesn't need to create a whole Excel spreadsheet, which might be tricky in a cut-and-paste context. The down-side is the values can't be conveniently changed using the standard methods.
I haven't tried working with one of those lately so I don't know if editing and saving the data adds a new Excel object created from the embedded values or not, but this might explain the behavior you're seeing.
for the longest of times I've been trying to achieve this to no avail. It seems like it should be a common problem but still I haven't been able find an answer. What I want to do is:
Have a chart in Excel and/or Powerpoint.
Copy this chart as a chart object into PPT.
Keep all characteristics of the original chart but maintain it editable (i.e. - add/remove axes, data labels etc)
Break the link to the original chart/workbook but keep the data editable. I.e., I want a new excel sheet opened when I want to edit the data, just like it works if I create a new chart object.
Preferably, I would like to convert the data of the original to this new chart sheet but this is not of really high importance.
Basically, I want to be able to use graphs as templates for a new graph without editing the original data. Please help!
PS. I didn't include any code as most of the code I've tried has tried to achieve something else. I mostly want to know if this is even possible to do (it should be!)?
Have a data set from which I need to make several scatter plots (date vs. value). Each charts is different, based on different filters. To make one chart, I can filter my data, and then chart it. But if I change the filter, the chart changes. So I can't make any more charts, unless I make a copy of the data. Is there a way to make multiple charts from the same data set without making a copy of the data set for each chart? Pivot table/charts won't help me because I am making scatter plots. I don't want to summarize anything by date, for instance. I could have multiple events on the same date, and I don't want excel grouping them together.
Have you tried using multiple data regions? See the following link: http://technet.microsoft.com/en-us/library/dd220577.aspx
I found it very helpful.
You can also write a code in VBA that will allow you to create multiple charts using different data points. An example of this code can be found here: http://www.ozgrid.com/forum/showthread.php?t=53320
Good luck!
I have a report where I have 50+ fields and I am exporting this report from crystal to excel. Once in excel the data columns are the proper width but the headings are truncated. Is there a way to get the headings to dynamically expand like the data does?
Have you tried using the grid line tools to line up all your columns and headers? Ensure snap to grid is on and that all headers/fields are the same size on screen.
Basically you want the crystal report in the designer to look similar to an excel report; with all the headers and fields in a grid like structure.
Crystal also produced a document many moons ago when they were owned by Seagate describing how to avoid formatting problems when exporting to excel. Check it out HERE
This helped me a load when I had to build stock reports and summaries for one of my customers.
I'm experiencing a problem with Excel Services and charts:
If in my excel pivot chart I use the default style, when publishing the excel to sharepoint all goes well. When I try to make some customization on the pivot chart (e.g. add data labels) they are kept unless the pivot data is updated adding a new row.
Specifically, I have pivot data with dates as rows and the filter is saved on "Today". When the day change, my chart style is lost (reverted to the default one).
Does anyone know about this odd behavior? Is there some setting in excel or Excel Service I'm missing?
Thanks
In client Excel, refreshing the pivot table often reverts formatting of the table and related chart to the default. Microsoft doesn't quite admit it's a bug, but suggests recording a macro when you reformat your chart, so you can rerun the macro. I suppose this doesn't help in Excel Services.
I ran into this same problem when I tried to make my data labels vertical. I found that you could prevent it from happening if you saved your chart design as a template. So the steps for the workaround are
1. Style the chart as you want it to look.
2. Go to the Design tab of the PivotChart Tools group.
3. Hit the 2nd button to the left labeled Save as Template
4. Save the template, the name and the location don't seem to matter.
5. Then save back to sharepoint, now your style will stay even as you save.