Issue reading user fields from vsdx

Hi,


We extensively use userfields in our visio diagrams. I created a .vdx diagram with just one shape. This shape has some userfields. I’m testing with version 3.6.0.0 and have a time limited test license (so I can properly test without any shape limitations).
When we save this diagram as .vdx and read the user fields using aspose.diagrams everything is working fine. (There are 9 items in the user collection of the shape)
The code I use to traverse the shapes and userfields:
Dim objVisioDocument As New Aspose.Diagram.Diagram(Me.VDXPathTest)
For Each objPage As Aspose.Diagram.Page In objVisioDocument.Pages
For Each objShape As Aspose.Diagram.Shape In objPage.Shapes
Dim strShapeName As String = objShape.NameU
For Each objUserField As Aspose.Diagram.User In objShape.Users
Dim strUserNameU As String = objUserField.NameU
Dim strUserValue As String = objUserField.Value.Val
Next
Next
Next

However, when I open this diagram in Visio 2013 and save it as .vsdx and then read those userfields using Aspose.Diagram, it seems not all fields are properly read. I only got 2 fields in the collection.
When I take a look at the shapefields using developer mode in Visio 2013, those values are still properly filled.
Doing a quick search on the files in the .vsdx file it seems the info needed is available in master5.xml.
Apparently the userfields is some kind of union between fields set in the page.xml and fields in a master.xml.

We need to be able to read Visio 2013 files for our application, so we need this to be fixed before we can buy and start using Aspose.Diagram.

I included the .vdx I used for testing. I did not include the .vsdx, since this can be easily created by opening the .vdx in Visio 2013 and save it as .vsdx.

Regards,
Robert Wielink
Sr. Software Engineer
Infoland BV

Hi,


I did some extra checking, and it seems the userfield values can be found via the master object linked to the shape in the Aspose.Diagram objects.
I can get the master of the shape using the following line of code
Dim objMaster As Aspose.Diagram.Master = objVisioDocument.Masters.GetMaster(objShape.Master.ID)
and then get the userfields of the shape with objMaster.Shapes(0).Users I have found the userfields which were missing.

The only problem is I can get all user fields directly from the shape when I opened an original visio2010.vdx and that I need to get stuff from the master when it is .vsdx.

I also have an issue with the .vdx created by Aspose.Diagram based on the original .vsdx.
When I open the .vdx created by Aspose.Diagram in Visio 2010 I get warnings that it contains invalid data. (The visio created logfile is attached). When I check the shapesheet after it is opened by Visio 2010, all but 2 user fields are gone from the shapesheet.

Hopefully you can shine some light on these issues, and are able to fix the issues with the .vdx created by Aspose.Diagram based on the .vsdx.

Regards,
Robert Wielink
Infoland BV

Hi Robert,


Thank you for contacting support. I tested your sample diagram against the latest build of Aspose.Diagram 3.6.0 API. I managed to replicate these problems on my side. I have logged these problems in our issue tracking system as follows:

DIAGRAMNET-50021 - Can’t retrieve all user fields from VSDX file format
DIAGRAMNET-50022 - VSDX to VDX conversion, warning message of invalid data
DIAGRAMNET-50023 - VSDX to VDX conversion, missing user fields of a shape

Your request has also been linked to these issues and we will keep you updated regarding their fixes or further updates. We’re sorry for your inconvenience.

Hi Robert,


We have a good news for you is DIAGRAMNET-50021 and DIAGRAMNET-50023 have now been resolved and their fix will be included in the next version of Aspose.Diagram for .NET 3.7.0. Its release date is not final yet. We will inform you via this forum thread as soon as the new release is published.

The issues you have found earlier (filed as DIAGRAMNET-50023) have been fixed in this update.


This message was posted using Notification2Forum from Downloads module by Aspose Notifier.

The issues you have found earlier (filed as DIAGRAMNET-50021) have been fixed in this update.


This message was posted using Notification2Forum from Downloads module by Aspose Notifier.
Hi Robert,

We have a good news for you that the issue id DIAGRAMNET-50022 has now been resolved and its fix will be included in the next version of Aspose.Diagram for .NET 5.0.0. We will inform you via this forum thread as soon as the new release is published.

The issues you have found earlier (filed as DIAGRAMNET-50022) have been fixed in this update.


This message was posted using Notification2Forum from Downloads module by Aspose Notifier.

The issues you have found earlier (filed as ) have been fixed in this Aspose.Words for JasperReports 18.3 update.