与值相关的属性

Attribute Name HAP_AttributeNumber 含义
Value HAP_VALUE 当前数值( node's .Value )
Physical Quantity HAP_UNITROW 该值对应的“物理量”在 Unit Table 中的行号
Units of Measure HAP_UNITCOL 该值对应的“单位”在 Unit Table 中的列号
Basis HAP_BASIS 值的基准,如 MOLE / MASS 等
Option List HAP_OPTIONLIST 一个节点,其子节点列出本变量允许的所有可选值

用Python表示的话就是:

HAP_VALUE = 0 # 当前值

HAP_UNITROW = 3 # 物理量所在行

HAP_UNITCOL = 4 # 单位所在列

HAP_BASIS = 7 # 基准 (MOLE/MASS…)

HAP_OPTIONLIST = 9 # 允许值列表节点

python的

# 1. 当前值
v = node.AttributeValue(HAP_VALUE)      # 等价于 node.Value

# 2. 物理量 + 单位
if node.AttributeType(HAP_UNITROW) != 0:
    u_row = node.AttributeValue(HAP_UNITROW)  # int
    u_col = node.AttributeValue(HAP_UNITCOL)  # int
    print("物理量行号:", u_row, "单位列号:", u_col)

# 3. 基准
if node.AttributeType(HAP_BASIS) != 0:
    print("基准:", node.AttributeValue(HAP_BASIS))

# 4. 下拉选项
if node.AttributeType(HAP_OPTIONLIST) != 0:
    opt_node = node.AttributeValue(HAP_OPTIONLIST)  # 返回 IHNode
    for opt in opt_node.Elements:
        print("可选值:", opt.Value)
B=aspen.Tree.FindNode("\Data\Streams\FEED\Output\MASSFLOW")
v = B.AttributeValue(3)
print("变量名:", B.Name)
print("值:", B.Value, "类型编号:", B.ValueType)
print("单位:", B.AttributeValue(HAP_UNITROW),
      B.AttributeValue(HAP_UNITCOL))
aspen.Close()