After upgrading from 4.6 to 4.8 the pdf print function in crystal reports stopped working.
The error that the browser gives is an unterminated string constant.
After examining the source for the page I see that the crystalreportviewer control injects script from a file called export.js which includes the following:
// export.js
// This file contains the funcitons needed to construct the HTML for the export / print dialog.
//
// Global variable
var print = false; // default to export, so set print to false
var crystal_postback =
"<INPUT type=\"hidden\" name=\"reportsource\" id=\"reportsource\"/>" +
"<INPUT type=\"hidden\" name=\"viewstate\" id=\"viewstate\"/>";
..........
the page source with the error is:
<SCRIPT>
<!--
print = true;crystal_postback="<input type='hidden' name='__EVENTTARGET' value='dnn:ctr500:PrintTimeReport:CrystalReportViewer1'><input type='hidden' name='__EVENTARGUMENT' value='export'><input type='hidden' name='__LASTFOCUS' value=''><input type='hidden' name='__VIEWSTATE' value='/wEPDwUJMjgzMDU3ODk3D2QWBmYPFgIeBFRleHQFPjwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAgVHJhbnNpdGlvbmFsLy9FTiI+ZAIBD2QWDAIBDxYCHgdWaXNpYmxlaGQCAg8WAh4HY29udGVudAUaR3JpZmZpbiBBdXRvbWF0aW9uIFdlYnNpdGVkAgMPFgIfAgUxQXV0b21hdGVkIE1hY2hpbmVyeSxSb2JvdGljIFdlbGRpbmcsTGFzZXIgV2VsZGluZ2QCBA8WAh8CBSlDb3B5cmlnaHQgMjAwNyBieSBHcmlmZmluIEF1dG9tYXRpb24gSW5jLmQCBQ8WBB8CZB8BaGQCBg8WAh8CBRdHcmlmZmluIEF1dG9tYXRpb24gSW5jLmQCAg9kFgICAQ9kFgICBA9kFgJmD2QWEgIBD2QWAmYPZBYGAgMPEGRkFgECAWQCCQ9kFgJmDw8WBh4ISW1hZ2VVcmwFHS9HcmlmZmluV2ViL2ltYWdlcy9leHBhbmQuZ2lmHg1BbHRlcm5hdGVUZXh0BQhNYXhpbWl6ZR4HVG9vbFRpcAUITWF4aW1pemUWCh4HdXNlcmN0cgUJVXNhYmlsaXR5Hgd1c2Vya2V5BRRDb250cm9sUGFuZWxWaXNpYmxlMB4Hb25jbGljawVRaWYgKF9fZG5uX1NlY3Rpb25NYXhNaW4odGhpcywgICdkbm5fSWNvbkJhci5hc2N4X3Jvd0NvbnRyb2xQYW5lbCcpKSByZXR1cm4gZmFsc2U7HghtYXhfaWNvbgUdL0dyaWZmaW5XZWIvaW1hZ2VzL2V4cGFuZC5naWYeCG1pbl9pY29uBR8vR3JpZmZpbldlYi9pbWFnZXMvY29sbGFwc2UuZ2lmZAILDxYCHgVzdHlsZQUNZGlzcGxheTpub25lOxYGZg9kFhgCAw9kFgJmDw8WAh8EBQxBZGQgTmV3IFBhZ2VkZAIFD2QWAmYPDxYCHwQFFUN1cnJlbnQgUGFnZSBTZXR0aW5nc2RkAgcPD2QWAh4Hb25DbGljawVIamF2YXNjcmlwdDpyZXR1cm4gY29uZmlybSgnQXJlIFlvdSBTdXJlIFlvdSBXaXNoIFRvIERlbGV0ZSBUaGlzIFBhZ2U/Jyk7FgJmDw8WAh8EBRNEZWxldGUgQ3VycmVudCBQYWdlZGQCCQ8PFgIfAAUDQWRkZGQCCw8PFgIfAAUIU2V0dGluZ3NkZAINDw8WAh8ABQZEZWxldGUWAh8MBUhqYXZhc2NyaXB0OnJldHVybiBjb25maXJtKCdBcmUgWW91IFN1cmUgWW91IFdpc2ggVG8gRGVsZXRlIFRoaXMgUGFnZT8nKTtkAg8PZBYCZg8PFgIfBAURQ29weSBDdXJyZW50IFBhZ2VkZAIRD2QWAmYPDxYCHwQFC0V4cG9ydCBQYWdlZGQCEw9kFgJmDw8WAh8EBQtJbXBvcnQgUGFnZWRkAhUPDxYCHwAFBENvcHlkZAIXDw8WAh8ABQZFeHBvcnRkZAIZDw8WAh8ABQZJbXBvcnRkZAIBD2QWEAIBDxBkZBYBZmQCBQ8QZGQWAGQCBw8QDxYCHgtfIURhdGFCb3VuZGdkEBUzETxTZWxlY3QgQSBNb2R1bGU+DUFjY291bnQgTG9naW4NQW5ub3VuY2VtZW50cwdCYW5uZXJzBEJsb2cIQ29udGFjdHMJRG9jdW1lbnRzBkV2ZW50cxRFdm90aXZhLkJhY2t1cFNjcmlwdARGQVFzDUZlZWQgRXhwbG9yZXIIRmVlZGJhY2sFRm9ydW0HR2FsbGVyeQ5Hb29nbGUgQWRzZW5zZRBHcmlmZmluIENvbnRhY3RzE0dyaWZmaW4gU2hvcCBPcmRlcnMMR3JpZmZpbl9UaW1lCkdyaWZmaW5CYXkESGVscAZJRnJhbWUFTGlua3MFTWVkaWEQTmV3cyBGZWVkcyAoUlNTKQ5PbnlhayBIZWxwRGVzaw1PbnlhayBSZXBvcnRzD09ueWFrIFNpZ21hLVBybxNPbnlha1RlY2ggU2lnbWFWaWV3FE9ueWFrVGVjaC5DYWxjdWxhdG9yDU9ueWFrVGVjaC5IMk8bT255YWtUZWNoLkgyTy5Gb3Jtc0Rlc2lnbmVyEU9ueWFrVGVjaC5QZWVwaW5nEU9ueWFrVGVjaC5QbHVnSW5zFU9ueWFrVGVjaC5TaWdtYVByby5XUwdSZXBvcnRzClJlcG9zaXRvcnkUUmVwb3NpdG9yeSBEYXNoYm9hcmQMU2VhcmNoIElucHV0DlNlYXJjaCBSZXN1bHRzDVN0b3JlIEFjY291bnQLU3RvcmUgQWRtaW4NU3RvcmUgQ2F0YWxvZwpTdG9yZSBNZW51D1N0b3JlIE1pbmkgQ2FydAZTdXJ2ZXkJVGV4dC9IVE1MDFVzZXIgQWNjb3VudBJVc2VyIERlZmluZWQgVGFibGULVXNlcnNPbmxpbmUKV2hhdHMgTmV3PwdYTUwvWFNMFTMCLTECMzICNTACMTUCNTECNTICNTMCNTQCODACNTUCOTcCNTYCNTcCNTgCOTYCOTUCOTMCOTICNzgCNTkCNjECNjICNjMCNjQCODICODgCODECODUCODcCODQDMTAxAjg5AjgzAjg2Ajk0AjY2AjY3AjQ0AjQ1AjY5AjY4AjcwAjcyAjcxAjczAjYwAjMzAjc0Ajc1Ajc2Ajc3FCsDM2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2RkAgsPEGQPFgFmFgEQBQtDb250ZW50UGFuZQULQ29udGVudFBhbmVnZGQCDQ8PFgIeB0VuYWJsZWRoZGQCEQ8QZGQWAGQCGQ8PFgQfAAUDQWRkHw5oZGQCIw8PFgIfAAUaSW5zdGFsbCBBZGRpdGlvbmFsIE1vZHVsZXNkZAICD2QWGAIDD2QWAmYPDxYCHwQFEkVkaXQgU2l0ZSBTZXR0aW5nc2RkAgUPZBYCZg8PFgIfBAUMTWFuYWdlIFVzZXJzZGQCBw9kFgJmDw8WAh8EBRVNYW5hZ2UgU2VjdXJpdHkgUm9sZXNkZAIJDw8WAh8ABQRTaXRlZGQCCw8PFgIfAAUFVXNlcnNkZAINDw8WAh8ABQVSb2xlc2RkAg8PZBYCZg8PFgIfBAUMTWFuYWdlIEZpbGVzZGQCEQ8PFgIeC05hdmlnYXRlVXJsBUJodHRwOi8vd3d3LmRvdG5ldG51a2UuY29tL2RlZmF1bHQuYXNweD90YWJpZD03ODcmaGVscGN1bHR1cmU9ZW4tdXNkFgJmDw8WAh8EBRBHb3RvIE9ubGluZSBIZWxwZGQCEw9kFgJmDw8WAh8EBQ5WaWV3IFNvbHV0aW9uc2RkAhUPDxYCHwAFBUZpbGVzZGQCFw8PFgQfAAUESGVscB8PBUJodHRwOi8vd3d3LmRvdG5ldG51a2UuY29tL2RlZmF1bHQuYXNweD90YWJpZD03ODcmaGVscGN1bHR1cmU9ZW4tdXNkZAIZDw8WAh8ABQlTb2x1dGlvbnNkZAIDD2QWAmYPDxYEHwUFF0dyaWZmaW4gQXV0b21hdGlvbiBJbmMuHw8FKGh0dHA6Ly9sb2NhbGhvc3QvZ3JpZmZpbndlYi9EZWZhdWx0LmFzcHhkZAIFD2QWAmYPPCsACQEADxYCHwFoZGQCCQ9kFgZmDxAPFgQfAAUDV2ViHwUFEUdvb2dsZSBXZWIgU2VhcmNoZGRkZAICDxAPFgQfAAUEU2l0ZR8FBQtTaXRlIFNlYXJjaGRkZGQCBg8PFgIfAAUGU2VhcmNoZGQCCg9kFgZmDxYCHwFoZAIBDxAPFgIfAWhkDxYBZhYBEAUXRW5nbGlzaCAoVW5pdGVkIFN0YXRlcykFBWVuLVVTZxYBZmQCAw8WAh8BaGQCEA9kFgJmDw8WBB8ABQpKYWNrIEZleWVzHwUFJ0NsaWNrIEhlcmUgVG8gRWRpdCBZb3VyIEFjY291bnQgUHJvZmlsZWRkAhIPZBYCZg8PFgIfAAUGTG9nb3V0ZGQCGA9kFgJmD2QWEgIBDw8WAh8BaGRkAgIPZBYCAgIPFgIfAWhkAgMPDxYCHwFoZBYCZg8PFgQfDmgfAWhkZAIEDw8WAh8BaGRkAgUPZBYCZg9kFgICAQ9kFgoCAQ8PFgIfAwVCL0dyaWZmaW5XZWIvRGVza3RvcE1vZHVsZXMvR3JpZmZpbl9UaW1lL0ltYWdlcy9oZWFkZm9vdF9oZWlnaHQuZ2lmZGQCAw8PFgIfAAVBV2Vla2x5IFRpbWUgU2hlZXQgZm9yIEphY2sgRmV5ZXMgICAgRnJvbSAxMi8xMC8yMDA3IFRvIDEyLzE2LzIwMDdkZAIFDw8WAh8DBUIvR3JpZmZpbldlYi9EZXNrdG9wTW9kdWxlcy9HcmlmZmluX1RpbWUvSW1hZ2VzL2hlYWRmb290X2hlaWdodC5naWZkZAIHDxcFBQVXaWR0aAcAAAAAAOB1QAUEQkFTRQ8WAh8BZ2QFBkhlaWdodAcAAAAAAABJQAUDY3NzZQUPUmVwb3J0Vmlld1N0YXRlFwYFB1JlZnJlc2hoBQdGYWN0b3J5BZYBQ3J5c3RhbERlY2lzaW9ucy5SZXBvcnRTb3VyY2UuUmVwb3J0U291cmNlRmFjdG9yeSxDcnlzdGFsRGVjaXNpb25zLlJlcG9ydFNvdXJjZSwgVmVyc2lvbj0xMC41LjM3MDAuMCwgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj02OTJmYmVhNTUyMWUxMzA0BQpEZXNpZ25Nb2RlaAUJUnB0U291cmNlBTdDcnlzdGFsRGVjaXNpb25zLlJlcG9ydFNvdXJjZS5Ob25IVFRQQ2FjaGVkUmVwb3J0U291cmNlBRJQYWdlUmVxdWVzdENvbnRleHQXAwUVSXNMYXN0UGFnZU51bWJlcktub3duZwUOTGFzdFBhZ2VOdW1iZXICAQUKUGFnZU51bWJlcgIBBQlSZXBvcnRVUkkFREM6XFdlYnNcR3JpZmZpbldlYlxEZXNrdG9wTW9kdWxlc1xHcmlmZmluX1RpbWVcUmVwb3J0c1xUaW1lU2hlZXQucnB0FgICAg8XBAUDc2h3aAUCYnMC3/f//w8FBHNpcG5mBQNwc3RkFgICCw8QZA8WAWYWARAFC01haW4gUmVwb3J0BagDQUFFQUFBRC8vLy8vQVFBQUFBQUFBQUFFQVFBQUFCeFRlWE4wWlcwdVEyOXNiR1ZqZEdsdmJuTXVTR0Z6YUhSaFlteGxCd0FBQUFwTWIyRmtSbUZqZEc5eUIxWmxjbk5wYjI0SVEyOXRjR0Z5WlhJUVNHRnphRU52WkdWUWNtOTJhV1JsY2doSVlYTm9VMmw2WlFSTFpYbHpCbFpoYkhWbGN3QUFBd01BQlFVTENCeFRlWE4wWlcwdVEyOXNiR1ZqZEdsdmJuTXVTVU52YlhCaGNtVnlKRk41YzNSbGJTNURiMnhzWldOMGFXOXVjeTVKU0dGemFFTnZaR1ZRY205MmFXUmxjZ2pzVVRnL0F3QUFBQW9LQ3dBQUFBa0NBQUFBQ1FNQUFBQVFBZ0FBQUFNQUFBQUdCQUFBQUFwUVlXZGxUblZ0WW1WeUJnVUFBQUFPVEdGemRGQmhaMlZPZFcxaVpYSUdCZ0FBQUJWSmMweGhjM1JRWVdkbFRuVnRZbVZ5UzI1dmQyNFFBd0FBQUFNQUFBQUlDQUVBQUFBSUNBRUFBQUFJQVFFTGcWAWZkAgsPDxYCHwMFQi9HcmlmZmluV2ViL0Rlc2t0b3BNb2R1bGVzL0dyaWZmaW5fVGltZS9JbWFnZXMvaGVhZGZvb3RfaGVpZ2h0LmdpZmRkAgYPDxYCHwFoZGQCBw8PFgIfAWhkZAIIDw8WAh8BaGRkAgkPDxYCHwFoZGQCJA8PFgIfAWhkZBgBBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WDgUUZG5uOmRublNFQVJDSDpvcHRXZWIFFWRubjpkbm5TRUFSQ0g6b3B0U2l0ZQUjZG5uOmN0cjUwMDpkbm5BQ1RJT05TOmN0bGRubkFDVElPTlMFO2RubjpjdHI1MDA6UHJpbnRUaW1lUmVwb3J0OkNyeXN0YWxSZXBvcnRWaWV3ZXIxOl9jdGwyOl9jdGwwBTtkbm46Y3RyNTAwOlByaW50VGltZVJlcG9ydDpDcnlzdGFsUmVwb3J0Vmlld2VyMTpfY3RsMjpfY3RsMQU7ZG5uOmN0cjUwMDpQcmludFRpbWVSZXBvcnQ6Q3J5c3RhbFJlcG9ydFZpZXdlcjE6X2N0bDI6X2N0bDIFO2RubjpjdHI1MDA6UHJpbnRUaW1lUmVwb3J0OkNyeXN0YWxSZXBvcnRWaWV3ZXIxOl9jdGwyOl9jdGwzBTtkbm46Y3RyNTAwOlByaW50VGltZVJlcG9ydDpDcnlzdGFsUmVwb3J0Vmlld2VyMTpfY3RsMjpfY3RsNAU7ZG5uOmN0cjUwMDpQcmludFRpbWVSZXBvcnQ6Q3J5c3RhbFJlcG9ydFZpZXdlcjE6X2N0bDI6X2N0bDUFO2RubjpjdHI1MDA6UHJpbnRUaW1lUmVwb3J0OkNyeXN0YWxSZXBvcnRWaWV3ZXIxOl9jdGwyOl9jdGw2BTtkbm46Y3RyNTAwOlByaW50VGltZVJlcG9ydDpDcnlzdGFsUmVwb3J0Vmlld2VyMTpfY3RsMjpfY3RsNwU8ZG5uOmN0cjUwMDpQcmludFRpbWVSZXBvcnQ6Q3J5c3RhbFJlcG9ydFZpZXdlcjE6X2N0bDI6X2N0bDEwBTxkbm46Y3RyNTAwOlByaW50VGltZVJlcG9ydDpDcnlzdGFsUmVwb3J0Vmlld2VyMTpfY3RsMjpfY3RsMTIFPGRubjpjdHI1MDA6UHJpbnRUaW1lUmVwb3J0OkNyeXN0YWxSZXBvcnRWaWV3ZXIxOl9jdGwyOl9jdGwxNLt5SXlh+Iu+oQsQwNZKURR9HFyH'><input type='hidden' name='dnn:IconBar.ascx:optMode' value='EDIT'><input type='hidden' name='dnn:IconBar.ascx:optModuleType' value='0'><input type='hidden' name='dnn:IconBar.ascx:cboDesktopModules' value='-1'><input type='hidden' name='dnn:IconBar.ascx:cboPanes' value='ContentPane'><input type='hidden' name='dnn:IconBar.ascx:txtTitle' value=''><input type='hidden' name='dnn:IconBar.ascx:cboPosition' value='-1'><input type='hidden' name='dnn:IconBar.ascx:cboPermission' value='0'><input type='hidden' name='dnn:IconBar.ascx:cboAlign' value='left'><input type='hidden' name='dnn:dnnSEARCH:Search' value='optSite'><input type='hidden' name='dnn:dnnSEARCH:txtSearch' value=''><input type='hidden' name='dnn:ctr500:PrintTimeReport:CrystalReportViewer1:_ctl2:_ctl9' value=''><input type='hidden' name='dnn:ctr500:PrintTimeReport:CrystalReportViewer1:_ctl2:_ctl11' value='AAEAAAD/////AQAAAAAAAAAEAQAAABxTeXN0ZW0uQ29sbGVjdGlvbnMuSGFzaHRhYmxlBwAAAApMb2FkRmFjdG9yB1ZlcnNpb24IQ29tcGFyZXIQSGFzaENvZGVQcm92aWRlcghIYXNoU2l6ZQRLZXlzBlZhbHVlcwAAAwMABQULCBxTeXN0ZW0uQ29sbGVjdGlvbnMuSUNvbXBhcmVyJFN5c3RlbS5Db2xsZWN0aW9ucy5JSGFzaENvZGVQcm92aWRlcgjsUTg/AwAAAAoKCwAAAAkCAAAACQMAAAAQAgAAAAMAAAAGBAAAAApQYWdlTnVtYmVyBgUAAAAOTGFzdFBhZ2VOdW1iZXIGBgAAABVJc0xhc3RQYWdlTnVtYmVyS25vd24QAwAAAAMAAAAICAEAAAAICAEAAAAIAQEL'><input type='hidden' name='dnn:ctr500:PrintTimeReport:CrystalReportViewer1:_ctl2:_ctl13' value=''><input type='hidden' name='dnn:ctr500:PrintTimeReport:CrystalReportViewer1:_ctl2:_ctl15' value='100'><input type='hidden' name='ScrollTop' value=''><input type='hidden' name='__dnnVariable' value='dnn_ctr500_dnnACTIONS_ctldnnACTIONS_xml<root id=dnn_ctr500_dnnACTIONS_ctldnnACTIONS><n id=2 key=2 txt= enabled=0 hasNodes=1 cssIcon= iIdx=0/></root>
'>";
rpt=true;
pdf=true;
word=true;
xls=true;
;recXls=true;
;rtf=true;
window.open("/aspnet_client/System_Web/2_0_50727/CrystalReportWebFormViewer4/html/crystalexportdialog.htm", "", "dependent,menubar,height=450,resizable,width=600");
-->
</SCRIPT>
the hilighted section is the unterminated string constant, which appears to be viewstate info that is related to the dnn core?
I can't figure out where it's comming from nor I'm I sure of what is missing from the string to make it properly terminated?
Can anyone help.