999x
004903
2021-01-12

Edición de la lista de parámetros a través de la interfaz COM

¿Cómo puedo editar la lista de parámetros usando la interfaz COM?


Respuesta:

Los parámetros de un modelo se pueden modificar utilizando la interfaz de IModel (a partir de IModel3):

  1. código.vb#

Sub test_parameter()

Dim iApp As RFEM5.Application
Establecer iApp = GetObject(, "RFEM5.Application")

iApp.LockLicense

Dim j como entero
j = iApp.GetModelCount

Dim iMod As RFEM5.IModel3
Set iMod = iApp.GetActiveModel

On Error GoTo e

Dim formParams() As RFEM5.FormulaParameter

' obtener todos los parámetros de la fórmula
formParams = iMod.GetFormulaParameters

' eliminar todos los parámetros de la fórmula
iMod.CleanFormulaParameters

' establecer lista de parámetros de fórmula
ReDim Conservar formParams(0 a UBound(formParams, 1) + 1)
formParams(UBound(formParams, 1)).Name = "p"
formParams(UBound(formParams, 1)).Unit = "m"
formParams(UBound(formParams, 1)).UnitType = LengthUnitType
formParams(UBound(formParams, 1)).Valor = 0
formParams(UBound(formParams, 1)).ValueType = DoubleType
formParams(UBound(formParams, 1)).Comment = "nuevo parámetro"
formParams(UBound(formParams, 1)).Fórmula = "b/3"
formParams(UBound(formParams, 1)).RangeOfValues = "(3;5.5>"

iMod.SetFormulaParameters formParams

e:

If Err.Number <> 0 Then MsgBox Err.description, vbCritical, Err.Source
iMod.GetApplication.UnlockLicense
Establecer iMod = Nada

End Sub
#/code#

Solo es posible leer todos los parámetros utilizando la función GetFormulaParameters(). Los parámetros modificados o nuevos se pueden transferir de nuevo como una lista con la función SetFormulaParameters(). Por lo tanto, no se pueden leer ni escribir parámetros individuales.

Cabe señalar que el "Valor" relacionado con su tipo (ValueTyp) y su unidad (Unit) debe estar dentro de los límites definidos (RangeOfValues); de lo contrario, aparece un mensaje de error. Si se calcula el valor, como en el ejemplo, es irrelevante y el valor calculado con la fórmula (Fórmula) debe estar dentro de los límites, si se definen los límites.


Autor

El Sr. Günthel proporciona soporte técnico para los clientes de Dlubal Software y se ocupa de sus solicitudes.

Enlaces
Descargas


;