I know I have posted about this issue before but I find it very frustrating. Most forms here are customized to at least add company logo and a few extra fields. Nothing to crazy on most. I just ran into this issue again with the PO Form. It is a large PO with over 300 lines. I can’t print/preview it because of the following error…(reduced) "Cannot create a row of size 9087 which is greater than the allowable maximum row size of 8060"
What is the best way to handle this? I am tired of running into it. We have in past by trail and error removing some unnecessary fields in the RDD/SSRS to make more room…but that is very time consuming and could cause other errors.
I don’t if it is just an SSRS thing or the way EPICOR pulls in some much extra stuff.
I doubt Epicor will help since it is on a customization but i do feel this is truly an example of poor programing on their side.
Any advice how to avoid this more? Or can SSRS be configured to not run into what appears to be a limit on data?
I did try to change the form to XML output but nothing happens. Show printed but never shows up. I was told you need to modify something else to use XML. Anyone know?
You could exclude some columns in the RDD you don’t need… Its not about the row count its about how large 1 single row can be… Its a SQL Limitation, nothing with Epicor and nothing with SSRS. Your row can only be 8060 bytes.
The reason for the 8,060 -byte limit is simple. SQL Server allocates and stores data in units called pages, and a single SQL Server data page limits the amount of data that can be stored to 8,060 bytes.
There was mention that SQL 2016 solves this problem, by doing some in-memory crunching. Maybe @Bart_Elia knows a bit more about it.
It should fail even if your PO has 1 Line, if the Number of Columns doesn’t change, which it shouldn’t based on the RDD.
Basically its failing because your Column Size exceeds 8060… lets say you have 165 ShortChars of size 50… that would be 165 x 50 = 8250 + 7 for (SQL Overhead) exceed! Within a single table row… Based on 9087 you are really close, you could go to RDD on a few tables and Exclude Columns you don’t need and Labels you don’t need.
That’s all I can think of. Exclude a Comment field which probably is x(1000) and it should all fit. Its not as simple to explain - sometimes SQL takes stuff off row and sends a pointer to the data, so you could get the error by having just 500 columns… There are 100s of articles on SQL 8060 on google, most of which I dont even fully understand Not as good as @Rich yet.
Whats stopping you from going to RDD (Report Data Definition) and excluding some columns that you don’t need? You must have added additional tables and Relationships to your Custom RDD which probably included all columns… Trim it down =) - Probably all you need is to exclude 2-4 columns and should be good. Esp those Labels can be trouble.
I have been adjusting my RDD and looked at the error again…I should have included this the first time but didn’t think about it.
Does this error mean it is coming from PO Head table?
Program Ice.Services.Lib.RunTask raised an unexpected exception with the following message: RunTask: An error has occurred during report processing. —> Microsoft.ReportingServices.ReportProcessing.ProcessingAbortedException: An error has occurred during report processing. —> Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: Cannot read the next data row for the dataset POHeader. —> System.Data.SqlClient.SqlException: Cannot create a row of size 9086 which is greater than the allowable maximum row size of 8060.