EZWriter source in TEST is not storing the same script the client has currently in prod
Refer to SupportZendesk Ticket: 365875
Account: National Inventors Hall of Fame
Region: US
Articles used in your research: Unable locate any related articles.
General
Business impact if not resolved: They are unable to launch a new template for events which will affect their ability to go-live with new events in the New UX environment.
Short Summary of issue (issue description): An error message appears while attempting to copy over an EZ writer script from the client's PROD (24.420250121) to TEST (25.220250804) for the Payment Plan Confirmation source. We believe the change from ckeditor to Syncfusion is affecting this process and we're seeking a best practice on how carry over scripts to syncfusion.
Macro Vertical: Other
Debug Environment:
Customer DB Location: Hosted
Database: InventNow_Test_0044234345_USI
Server: Debug-US,1433
Version: 25.220250804
V30 Link: https://supportwebus.ungerboeck.com/InventNow_Test & https://supportwebus.ungerboeck.com/InventNow_Prod_0044234345_USI_V30
User Login: usiadmin / ITRocks2014
Recreation Steps:
1. Log into PROD first to pull the script, Back office > search EZwriter Data Sources
2. Type "Payment Plan Confirmation" in the description > search
3. Select "Payment Plan Confirmation" > Click the detail tab
4. Highlight the script entirely and copy
5. Log into Test to paste the script repeating steps 1-3
6. Click actions > Edit > Edit ERwriter Data Source
7. Delete the current script and paste the one copied from PROD
8. Apply changes and error populates
...
Observed vs. Expected Results: An error populates stating an "Unexpected Error Occurred" with details stating with following fields Invalid column name 'ER201_DESC', Invalid column name 'ER201_DUE_DATE', and Invalid column name 'ER201_AMT_TOTAL'. Client expects script to be copied over with no issues since he was able to create a new data source in PROD with the same script.
What does the client want to accomplish: They'd like to have their Payment Plan Confirmation data source in test to be configured the same as in PROD.
Attachments:
Attachments or screenshots:
Script from PROD:

Error in TEST:

Script from PROD:
SELECT CASE WHEN EXISTS (SELECT 1 FROM (SELECT ROW_NUMBER() OVER (PARTITION BY ER201_PAY_NBR ORDER BY ER201_DUE_DATE) rn FROM ER201_PAYMENT_PLAN_HDR WITH(NOLOCK) INNER JOIN ER205_INVOICE_DTL WITH(NOLOCK) ON ER201_PAYMENT_PLAN_HDR.ER201_PAY_PLAN_ID = ER205_INVOICE_DTL.ER205_PAY_PLAN_ID WHERE ER205_INVOICE_DTL.ER205_ORD_NBR = @ORDER AND LTRIM(RTRIM(ER201_CALC_TYPE)) <> 'MVOT' AND ER201_PAYMENT_PLAN_HDR.ER201_ORG_CODE = @ORGANIZATION AND ER201_PAY_NBR <> 1 AND ER205_INVOICE_DTL.ER205_PAY_PLAN_ID <> '02') x WHERE rn = 1) THEN '<table border="1" cellpadding="6" cellspacing="0" style="font-family:Calibri;font-size:11pt;border-collapse:collapse;width:100%;"><tr><td colspan="3" style="font-size:11pt;font-weight:bold;padding:6px 4px;border:1px solid #000;background-color:#f2f2f2;">Payments Scheduled</td></tr><tr><td style="border:1px solid #000;"><b>Description</b></td><td style="border:1px solid #000;"><b>Date</b></td><td style="border:1px solid #000; text-align:right;"><b>Amount</b></td></tr>' + (SELECT '<tr><td style="border:1px solid #000;">' + ER201_DESC + '</td><td style="border:1px solid #000;">' + CONVERT(VARCHAR(10), ER201_DUE_DATE, 101) + '</td><td style="text-align:right;border:1px solid #000;">' + FORMAT(ER201_AMT_TOTAL, 'C') + '</td></tr>' FROM (SELECT ER201_DESC, ER201_DUE_DATE, ER201_AMT_TOTAL, ER201_PAY_NBR, ROW_NUMBER() OVER (PARTITION BY ER201_PAY_NBR ORDER BY ER201_DUE_DATE) rn FROM ER201_PAYMENT_PLAN_HDR WITH(NOLOCK) INNER JOIN ER205_INVOICE_DTL WITH(NOLOCK) ON ER201_PAYMENT_PLAN_HDR.ER201_PAY_PLAN_ID = ER205_INVOICE_DTL.ER205_PAY_PLAN_ID WHERE ER205_INVOICE_DTL.ER205_ORD_NBR = @ORDER AND LTRIM(RTRIM(ER201_CALC_TYPE)) <> 'MVOT' AND ER201_PAYMENT_PLAN_HDR.ER201_ORG_CODE = @ORGANIZATION AND ER201_PAY_NBR <> 1 AND ER205_INVOICE_DTL.ER205_PAY_PLAN_ID <> '02') d WHERE rn = 1 FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)') + '</table>' ELSE '' END AS FullHTML;
Full error pulled from weblog:
2025-08-22 14:58:56.972 -05:00 [INF]
EZWriter Data Source 385
Threw error Index # 0 Class - 16 LineNumber - 1 Message - Invalid column name 'ER201_DESC'. Number - 207 Procedure - Server - Debug-US,1433 Source - .Net SqlClient Data Provider State - 1 Index # 1 Class - 16 LineNumber - 1 Message - Invalid column name 'ER201_DUE_DATE'. Number - 207 Procedure - Server - Debug-US,1433 Source - .Net SqlClient Data Provider State - 1 Index # 2 Class - 16 LineNumber - 1 Message - Invalid column name 'ER201_AMT_TOTAL'. Number - 207 Procedure - Server - Debug-US,1433 Source - .Net SqlClient Data Provider State - 1 SQL - EXECUTE As USER = 'EZWriterUser'; SELECT CASE WHEN EXISTS (SELECT 1 FROM (SELECT ROW_NUMBER() OVER (PARTITION BY ER201_PAY_NBR ORDER BY ER201_DUE_DATE) rn FROM ER201_PAYMENT_PLAN_HDR WITH(NOLOCK) INNER JOIN ER205_INVOICE_DTL WITH(NOLOCK) ON ER201_PAYMENT_PLAN_HDR.ER201_PAY_PLAN_ID = ER205_INVOICE_DTL.ER205_PAY_PLAN_ID WHERE ER205_INVOICE_DTL.ER205_ORD_NBR = 999999999 AND LTRIM(RTRIM(ER201_CALC_TYPE)) <> 'MVOT' AND ER201_PAYMENT_PLAN_HDR.ER201_ORG_CODE = 'Z' AND ER201_PAY_NBR <> 1 AND ER205_INVOICE_DTL.ER205_PAY_PLAN_ID <> '02') x WHERE rn = 1) THEN '' + (SELECT '' FROM (SELECT ER201_DESC, ER201_DUE_DATE, ER201_AMT_TOTAL, ER201_PAY_NBR, ROW_NUMBER() OVER (PARTITION BY ER201_PAY_NBR ORDER BY ER201_DUE_DATE) rn FROM ER201_PAYMENT_PLAN_HDR WITH(NOLOCK) INNER JOIN ER205_INVOICE_DTL WITH(NOLOCK) ON ER201_PAYMENT_PLAN_HDR.ER201_PAY_PLAN_ID = ER205_INVOICE_DTL.ER205_PAY_PLAN_ID WHERE ER205_INVOICE_DTL.ER205_ORD_NBR = 999999999 AND LTRIM(RTRIM(ER201_CALC_TYPE)) <> 'MVOT' AND ER201_PAYMENT_PLAN_HDR.ER201_ORG_CODE = 'Z' AND ER201_PAY_NBR <> 1 AND ER205_INVOICE_DTL.ER205_PAY_PLAN_ID <> '02') d WHERE rn = 1 FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)') + 'Payments ScheduledDescriptionDateAmount' + ER201_DESC + '' + CONVERT(VARCHAR(10), ER201_DUE_DATE, 101) + '' + FORMAT(ER201_AMT_TOTAL, 'C') + '' ELSE '' END AS FullHTML;
-> Invalid column name 'ER201_DESC'.
Invalid column name 'ER201_DUE_DATE'.
Invalid column name 'ER201_AMT_TOTAL'.
SELECT CASE WHEN EXISTS (SELECT 1 FROM (SELECT ROW_NUMBER() OVER (PARTITION BY ER201_PAY_NBR ORDER BY ER201_DUE_DATE) rn FROM ER201_PAYMENT_PLAN_HDR WITH(NOLOCK) INNER JOIN ER205_INVOICE_DTL WITH(NOLOCK) ON ER201_PAYMENT_PLAN_HDR.ER201_PAY_PLAN_ID = ER205_INVOICE_DTL.ER205_PAY_PLAN_ID WHERE ER205_INVOICE_DTL.ER205_ORD_NBR = 999999999 AND LTRIM(RTRIM(ER201_CALC_TYPE)) <> 'MVOT' AND ER201_PAYMENT_PLAN_HDR.ER201_ORG_CODE = 'Z' AND ER201_PAY_NBR <> 1 AND ER205_INVOICE_DTL.ER205_PAY_PLAN_ID <> '02') x WHERE rn = 1) THEN '' + (SELECT '' FROM (SELECT ER201_DESC, ER201_DUE_DATE, ER201_AMT_TOTAL, ER201_PAY_NBR, ROW_NUMBER() OVER (PARTITION BY ER201_PAY_NBR ORDER BY ER201_DUE_DATE) rn FROM ER201_PAYMENT_PLAN_HDR WITH(NOLOCK) INNER JOIN ER205_INVOICE_DTL WITH(NOLOCK) ON ER201_PAYMENT_PLAN_HDR.ER201_PAY_PLAN_ID = ER205_INVOICE_DTL.ER205_PAY_PLAN_ID WHERE ER205_INVOICE_DTL.ER205_ORD_NBR = 999999999 AND LTRIM(RTRIM(ER201_CALC_TYPE)) <> 'MVOT' AND ER201_PAYMENT_PLAN_HDR.ER201_ORG_CODE = 'Z' AND ER201_PAY_NBR <> 1 AND ER205_INVOICE_DTL.ER205_PAY_PLAN_ID <> '02') d WHERE rn = 1 FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)') + 'Payments ScheduledDescriptionDateAmount' + ER201_DESC + '' + CONVERT(VARCHAR(10), ER201_DUE_DATE, 101) + '' + FORMAT(ER201_AMT_TOTAL, 'C') + '' ELSE '' END AS FullHTML;
-
Carissa Harrison and Richard Marmura - We can copy this SQL to a new Merge Template in Classic, but not in New UX.
I think it might be a syncfusion library gap? Is this something we should create a Jira for so it can be reviewed and addressed?
-
Carissa Harrison and Richard Marmura - customer has just escalated this issue.
Can you advise if this is a syncfusion gap we need to submit a Jira for.
Is there any recommended way to transfer merge SQLs from existing templates (created with ck editor) to new templates (created with syncfusion)?
-
I think there is already a JIRA for this. https://ungerboeck.atlassian.net/browse/VENOPS-7613 Zach Lono
The work around is to paste the code into MM701_SQL.
Please sign in to leave a comment.
Comments
4 comments
Date Votes