AnsweredAssumed Answered

Deleting a global variable of a specified name with equation manager

Question asked by Jonathan Hoffman on Jun 27, 2018
Latest reply on Jun 28, 2018 by Artem Taturevych

Hi,

 

So I'm working on a macro to set up various quantities in one part document, so that I can reference it in the drawing, and right now I am working on creating a global variable that references all the relevant custom properties.  I need to figure out how to add this equation, and replace the old one if the old one exists.

 

Right now, my VBA code looks something like this (this is copy-pasted from a much larger code), and I can't figure out how to delete an equation by variable name instead of by index or by the whole equation.  I can't search by the whole equation, because I don't have any way of knowing what the old equation was, as it might have been changed.  Does anyone have any ideas on how I might be able to do this?

 

Any help y'all might have would be greatly appreciated.

 

 

        Dim swEquationMgr As EquationMgr

        Dim longEquation As Long

        Dim Add3() As Integer

        Dim Total_Quantity As String

        Set swEquationMgr = Part.GetEquationMgr

                    

    If UsedFor_Quantity_Array(1) = -1 Then

      

        'This is the case in which there are no callbacks and "Total_Quantity" equals QTY

      

        Total_Quantity = Chr(34) & "QTY" & Chr(34)

             

        longEquation = swEquationMgr.Add3(-1, Total_Quantity, True, swAllConfiguration, Empty)

      

      

      

    Else

      

        'This is if there are callbacks and the total quantity is the sum of QTY and the callback quantities

  

      

        Dim Equation As String

  

 

 

 

        For eq = 0 To UBound(UsedFor_Quantity_Array)

      

            Equation = Equation & " + " & Chr(34) & "Callback_Quantity" & eq & Chr(34)

        Next

      

 

        Total_Quantity = "Total Quantity = " & Equation

             

        longEquation = swEquationMgr.Add3(-1, Total_Quantity, True, swAllConfiguration, Empty)

 

       Dim Total_Quantity_Ref As String

       Total_Quantity_Ref = Chr(34) & "Total Quantity@" & file & Chr(34)

     

     

       retval = Part.DeleteCustomInfo2("", "Total Qty")

       retval = Part.AddCustomInfo3("", "Total Qty", swCustomInfoText, Total_Quantity_Ref)

Outcomes