Reply
Solved! Go to solution

Revision manager and "title"

Hello,

Is there a way to get & set the value of "title" field using the RevisionManager.Application object?

 

When I make a .open the operation is done correctly and I can read the opened object but there is no new window showing inside design manager. Is there some way to allow the .open to effect the UI?

 

Thanks,

Zohar

 

2 REPLIES
Solution
Solution
Accepted by topic author ZoharML
‎03-07-2017 05:04 AM

Re: Revision manager and "title"

I may not be the best one to answer, but in the lack of other replys I cannot find where rev man can get/set the title field.  That may have changed with ST9 where revman got a thourogh wroking over and a new name, I have not started in ST9 SDK yet.

 

I did find that the SolidEdgeFileProperties namespace has some clases that could gain you access to the Title property.  I have not taken time to try it, but it looks like PropertySetsClass can open the file and then get the list of properties, (PropertiesClass) and then there is a enum of IDs one of which is "igSumInfoTitle".  That might get you what you're after, sorry I don't have the time to chase that down myself.

 

As for opening the RevMan window I think I see what you're getting at.  I never wanted to see the application open up a window so I kept my revManApp.Visible = 0; as the data that was being edited was driven from variables in my Forms application which obviously was it's own GUI.   When I try setting it to 1 I see the empty rev man window open up but does not bring up the current revManDoc as you suggested.  I'm sorry I've never had the need to do that or know how.  That is a different topic and should probably be a different thread to keep the threads concise. 

Re: Revision manager and "title"

I've used your info and ended with the attached code.

There is a need to reopen the file using "objPropertySets.Open". So when there is a need to change the file info it cannot be opened as read  form both RevisionManager object and PropertySets. But at least it seems to work.

 

Thanks,

Zohar

 

 

    'get file info from it's propertis page
    Private Sub ReadTitle(file As String, ByRef Title As String, ByRef Seq As String)
        Dim objPropertySets As SolidEdgeFileProperties.PropertySets = Nothing
        Dim objProperties As SolidEdgeFileProperties.Properties = Nothing
        Dim objProperty As SolidEdgeFileProperties.Property = Nothing

        Title = "None"
        Seq = "None"

        Try
            ' Create new instance of the PropertySets object
            objPropertySets = New SolidEdgeFileProperties.PropertySets
            objPropertySets.Open(file, True)    ' Open a file read only

            ' Get a reference to the SummaryInformation properties
            objProperties = objPropertySets.Item("SummaryInformation")
            ' Get a reference to the Title property by name
            objProperty = objProperties.Item("Title")
            Title = objProperty.Value

            objProperties = objPropertySets.Item("Custom")
            objProperty = objProperties.Item("Sequance")
            Seq = objProperty.Value

        Catch ex As Exception
            Console.WriteLine(ex.Message)
        Finally
            If Not (objProperty Is Nothing) Then
                Marshal.ReleaseComObject(objProperty)
                objProperty = Nothing
            End If
            If Not (objProperties Is Nothing) Then
                Marshal.ReleaseComObject(objProperties)
                objProperties = Nothing
            End If
            If Not (objPropertySets Is Nothing) Then
                ' Close underlying property storage
                objPropertySets.Close()
                Marshal.ReleaseComObject(objPropertySets)
                objPropertySets = Nothing
            End If
        End Try
    End Sub