0

I am attempting to find out what is causing certain (MorphX) reports within our AX 2009 environment to print with extra blank zero-width columns.

The appearance of these columns seems to occur over time, and do not seem to be tied to any changes with the report itself. I've been able to trace the problem to HTML formatted reports, where the HTML generated looks something like this:

<tr>
<td colspan="1" style="text-indent: 0px; font-family: Arial; font-weight: 400; font-size: 9pt; color: #000000; text-align: right" nowrap>SO-0043355</td>
<td WIDTH="0.0%"></td>
<td colspan="1" style="text-indent: 0px; font-family: Arial; font-weight: 400; font-size: 9pt; color: #000000; text-align: left" nowrap>00041891</td>
</tr>

In the above example, there is one such column. Normally, we save these files with a .xls extension, and when Excel then opens the file it automatically formats the report into a cell-based layout. These extra td tags are not set to a zero or hidden width but instead the default Excel cell width. These extra columns cause users to spend a considerable amount of time to clean them up prior to being able to work with the data.

Additionally looking at the raw HTML, I'm finding certain cells have different colspan values. In one case, the same information is repeated, and one cell has a colspan of 2 while the other has a colspan of 1.

I've attempted to recreate the reports, using the simplest data source possible and the most basic design, but the problem still occurs.

I cannot seem to find any pattern to what reports will have this column and which will not. A report will print perfectly one day (without the extra columns), and the next will have these extra columns. Once they do the columns it seems we cannot get rid of them. No code changes occur near this time. In some cases we have no changes made to the report for months prior to seeing this occur.

I don't know where to look for the code that generates this HTML, which I think would answer many of the discrepancies I've seen. I've attempted to search for it, but it seems to be deep within the core kernel, which we do not have access to view or modify.

Are there any leads that may shed some light as to why this happens, and how we may be able to fix it?

kingofzeal
  • 1,359
  • 3
  • 12
  • 24
  • Is the same with on different computers with different versions of IE installed using the exact report scenarios? – Alex Kwitny Jul 22 '14 at 21:14
  • IE should not enter into the equation - the reports are MorphX, not SSRS. Regardless, once a report has the extra columns, it displays with them for all users and computers, regardless of configurations. – kingofzeal Jul 23 '14 at 11:53
  • I was guessing (without digging into the reports) that AX might be using some sort of HTML controls to possibly generate output where different IE versions do matter, similar to this issue: http://yetanotherdynamicsaxblog.blogspot.com/2013/08/no-colors-when-comparing-code-in-ax.html . A quick test to eliminate a possibility. – Alex Kwitny Jul 23 '14 at 14:33
  • Ah, I see. Unfortunately, we only have IE10 (with an occasional Windows 8 machine running IE11). We don't have any machines (test or otherwise) with IE9 or below. On both IE10 and IE11 machines, the result is the same though. I'll try to get an IE9 machine up in the meantime. – kingofzeal Jul 23 '14 at 14:46
  • Another question. You say the report works fine one day and not the next day (on the same machine/setup I assume). This points to changing data, such as a column to be displayed with null/'' data that may end up being displayed as a blank TD. Is there a base report this happens with? When you have a report with a blank row, can you rerun the report 10x with the same issue on multiple machines with the same inputs? I'm just confirming it's repeatable across machines with the same data. – Alex Kwitny Jul 23 '14 at 14:54
  • The problem is repeatable across machines with the same inputs. I'm actually in the process of trying to find a report where this *doesn't* happen now, but I know historically we have not had this problem before. Looking over the raw data I can't find any non-printing characters that would cause this. The blank columns also don't align with any element in the design; in the example above, the report design has only two columns (SalesID and InvoiceID), both of which are represented. – kingofzeal Jul 23 '14 at 15:27
  • I'd like to hear how your test goes on an IE9 only machine. I'd check LCS for a bug about this. The HTML formatting I believe happens in `C\ReportRun` (kernel) so your SOL otherwise. It's either data, IE10 issue, or a bug. Wish I could be more help. – Alex Kwitny Jul 23 '14 at 16:21

1 Answers1

0

After some interesting testing, it seems this problem is related to KB2934938, which we installed about 4-5 months ago. Using a test VM, I applied each of the AX updates we have (SP1, SP1 Rollup 6, KB2934938) without changing anything else and running the report after each upgrade was complete. We do not see the empty columns until after the KB2934938 patch is applied.

kingofzeal
  • 1,359
  • 3
  • 12
  • 24