Bug 5287

DDE not working with latest Windows Update 15 October, 2020

Eric Stevenson
18 September, 2020
Product: PowerBuilder Category: Other
Version: 2019 R2 Build: 2802
Classification: Publishing: Public
Priority: P1
Status: Closed Reason: RESOLVED
armando herrera @Appeon 15 October, 2020
#11
Hi Eric,

Thank you very much for your response!

We then proceed to close this ticket and keep the info for our KB.
Remember that you can always open another ticket in case you need it.

Regards!
Chris Pollach @Appeon 14 October, 2020
#10
Thanks Eric .. that is very useful information to know.

Most appreciated!
Eric Stevenson 14 October, 2020
#9
This was broken with KB4571756, and fixed with the preview build KB4577063, which has been rolled up into KB4579311 for Windows 10 version 2004- ARM64-based Systems.
Chris Pollach @Appeon 14 October, 2020
#8
Hi Eric;

  Do you know the KB number for the DDE fix?

Regards ... Chris
Eric Stevenson 14 October, 2020
#7
I worked with Microsoft to resolve. DDE functionality has been restored with the latest update. Hopefully other PowerBuilder users will also benefit from this. This ticket can be closed.
armando herrera @Appeon 14 October, 2020
#6
Hi Eric, 

I would like to check with you if the response provided has been helpful enough to resolve your case. If so, can we proceed to close the ticket?.
Otherwise, do let us know if we can provide you with any further assistance and keep in mind that you are always welcome to open another ticket in case you need it.

Regards!
Ken Guo @Appeon 25 September, 2020
#5
Hi Eric,

You can use OLE to control Word document in PB, which is similar to Word Macro. You can add fields, execute MailMerge, etc. For example:
lole_word.ActiveDocument.Activewindow.view.type = wdPageView                        
lole_word.ActiveDocument.MailMerge.MainDocumentType = wdFormLetters
lole_word.ActiveDocument.MailMerge.OpenDataSource(ls_source_file)
lole_word.ActiveDocument.MailMerge.DataSource.FirstRecord = 1
lole_word.ActiveDocument.MailMerge.DataSource.LastRecord = 10
lole_word.ActiveDocument.Mailmerge.Execute

For the exact code, you can search for VBA. I can’t provide you a complete case. You can post a question on the Appeon Community and some MVP may give you some help.

BTW, please don’t directly reply in an email. Please reply in our support system. 

Regards,
Ken

eMail from Eric ....
--------------------------------------------------------
Thank you, Ken. Can OLE also retrieve data from the letter, or would this have to be achieved with macros? I believe we need to be able to exchange data back and forth. Do you have any examples that might help?
--------------------------------------------------------
Ken Guo @Appeon 24 September, 2020
#4
Hi Eric,

DDE is not a popular technology. According to your description, it should be based on security considerations, Microsoft's KB has affected the work of DDE.

Regarding the alternative, if you use DDE to fill the Word document, I suggest you try to use the OLE method.

Regards,
Ken
Chris Pollach @Appeon 21 September, 2020
#3
Hi Eric;

  OLE may or may *not* be the appropriate replacement. It all depends on what DDE command are being used back & forth between the DDE Client and the DDE Server. I would not be converting to OLE until you do a complete analysis. Also, it might be good to touch base with MS Technical Support to see if its just a "glitch" that the O/S broke DDE. MS might know of this already and be planing to re-fix this in the next MR.

  What I will do now is transfer this ticket over to the main Support / Engineering team to see if they have any further news on the DDE aspect and possibly other suggestions / alternatives for you to look at if a DDE replacement is required.

Regards ... Chris
Chris Pollach @Appeon 21 September, 2020
#2
eMail from Eric ....

--------------------------------------------------------
Thanks for the feedback, Chris. Do you guys have any comparisons that we can look at for converting from DDE to OLE? As stated in the link you sent, this is not a quick fix. Any info you could provide would be appreciated- We have a need to make this switch happen ASAP.

Thanks, Eric Stevenson
------------------------------------------------------
Chris Pollach @Appeon 18 September, 2020
#1
Hi Eric;

  I just tested my DDE Test Case on W10 build 18363 using PB 2019 R2 build 2353 and both the DDE Server PB App and DDE Client PB App worked 100%. This was using W10 build  18363.

  When I test the same code on W10 build 19041, the DDE Client and Server only work *one* time and then it seems that the link between them is dropped after the completion of each DDE conversation. If you restart the DDE Client EXE, then it will work again with the DDE Server - but again, only once and then the connection is dropped again.

  So it seems that newer W10 O/S builds could indeed be the issue. Unfortunately, Sybase dropped support for DDE way back in the PB 10.x era. Even Microsoft deprecated the DDE functionality over a decade ago in Windows Vista. 

FYI: https://social.msdn.microsoft.com/Forums/en-US/a486cc5a-64d2-4c30-a8eb-dec91e5b86fc/the-future-of-dde?forum=windowsgeneraldevelopmentissues

  So yes, the W10 update could have broken the DDE feature but we are not sure if MS will fix it. You would have to contact MS Technical Support for that feedback. As far as PB is concerned, it urged PB developers to move on with OLE. DDE has basically been a "use at own risk" feature since way back in the Sybase days.

  I wonder if a workaround for now would be to close and then re-open a new DDE connection after each DDE conversation?

Regards ... Chris
PS: Note that MS-Office uses a variation of DDE. Its basically an offshoot of the MS-Windows DDE but not exactly the same. So there is another potential brick wall when using DDE.
Eric Stevenson 18 September, 2020
*Phenomenon:
After installing latest Microsoft updates for Windows 2004 (KB4571756), DDE functionality between program built in PowerBuilder ceased. We are using DDE to populate Word documents.

*Reproduce Steps:
Uninstalling of the update reenabled DDE functionality. Re-installing breaks this functionality for 600+ users.

Remarks:
This is completely crippling our system. This is for Tax operations, and the Windows update MUST be installed, as required by the IRS. The Kansas Tax System will not function without it.
OS:
Windows 10
Platform:
64-bit
Database Type:
Oracle
Database Version:
11g