![]() |
Telelogic DOORS (steve huntington) | ![]() |
new topic :
profile :
search :
help :
dashboard :
calendar :
home
|
||
Latest News:
|
|
Topic Title: Help with OLE objects in 7.0 Topic Summary: problems with OLE objects and dxl scripts Created On: 19-May-2005 09:02 Status: Post and Reply |
Linear : Threading : Single : Branch |
![]() |
![]()
|
![]() |
|
Hi,
I am having problems with DOORS 7.0. We are planning to migrate to DOORS 7.1 as we are currently still on v5.2. I have created a test database (v7.0SP1) and archived & restored some of our projects. We have a dxl report generator and when I try to run one of these scripts on the v7.0 module it stops and gives me the following error; -R-E- DXL: I think this is a problem with the OLE objects in the module. Can anyone help me with this problem? Thanks Arlene ![]() |
|
![]() |
|
![]() |
|
This is a guess, but does the module contain an OLE object whose application is not installed on the client?
------------------------- Tony Goodman http://www.smartdxl.com |
|
![]() |
|
![]() |
|
the OLE objecsts were imported from Word - I imported a whole word document. And there is Word installed on the PC.
Can you help???? ![]() |
|
![]() |
|
![]() |
|
I would like to point out that in v5, an Object could have a single OLE diagram in it. Either the Object did, or did not, have an OLE; see dxl command oleIsObject(). In v6 and v7, Objects could no longer contain an OLE object; rather any Text attribute could have zero or more OLEs embedded within it. Command oleIsObject now returns whether there is an OLE somewhere in Object Text.
Anyway, v5 DXL that deals with OLEs needs a paradigm conversion, from "Deal with the OLE in the object" to "Deal with each OLE in each Text Attribute value of this object". - Louie |
|
![]() |
|
![]() |
|
Here is some more specific info on Arlene's problem.
The dxl script is trying to paste a Word Picture OLE into Word 2000. The oleCopy command is successful but the oleMethod statement returns "OLE Problem: Command Failed". The same routine works OK for Visio OLE objects.
I have tried inserting new OLEs into the document so it is not something that has come through the migration process.
The dxl sequence is:
if (oleCopy o) { // Copy OLE
clear autoargs // Clear autoargs
put(autoargs, "Placement", wdInLine) // (wdInline = 0)
oleMethod(objRange, "PasteSpecial", autoargs) // Paste the clipboard
Regards
Richard
|
|
![]() |
|
![]() |
|
The way that RTF is handled was completely changed between version 5 and version 7. I had to make some changes to our exporter when we migrated and in the end decided to go for a major rewrite.
I reccommend that you use a "diff" utility to compare the Telelogic Word Exporter version 5 code with the Telelogic Word Exporter version 7 code. As most bespoke utilities are based on this exporter the neccessary changes should become clear to you through carrying out this exersize.
If you have the time and inclination you should consider basing your report generator on the Telelogic "RTF exporter". This is a good option for version 7 because the OLE's are now stored in the RTF and exporting is many many times faster than it is using the massive amount of inter process communication that controlling WORD from within DOORS saddles you with.
Good Luck
Richard
------------------------- Regards, Richard Good |
|
![]() |
|
![]() |
|
Many thanks for the info Richard. I am not keen to totally rework the report generator yet! I have tried the example in the DXL Reference Help for oleCopy that uses rtf but no change.
I have also used the script from topic "Determine OLE file type" in this Forum and my problem ones all come back with OLE class word.document.
I suspect that I need to include a WdPasteDataType constant in my PasteSpecial.
Regards
Richard
|
|
![]() |
|
![]() |
|
After rereading this I see you intend to "migrate" using Archive and Restore. That's a mistake. You want turn off the v5 DOORS service, copy the entire Windows file system to a new location, point the v6 service to this new location. Get it to work. Copy it again to a new location and point the v7 service to this new location.
Archive and Restore will screw up many views that reference other modules (using IDs), but most importantly will mess up ALL you specific-access records, since the Users in the new Database don't have the same UniqueIDs as in the old. You could get around this by archiving the User DB in v5 and restoring it in v7. I can talk you through that if you want. - Louie |
|
![]() |
|
![]() |
|
Hello,
If you have OLE export problems with DOORS 7.1, you should use the new function "richTextWithOle" in your wordDumpBodyVBA function to get the text and the OLE of the exported object. The function wordDumpOLEVBA is not needed anymore. Regards, Frederic |
|
![]() |
Telelogic DOORS
» DXL Exchange
»
Help with OLE objects in 7.0
|
![]() |
FuseTalk Standard Edition v3.2 - © 1999-2009 FuseTalk Inc. All rights reserved.