Hi community,
I’m currently working on an SNMP-based DataMiner connector and facing an issue with SNMP SET operations on table columns using type uinteger32.
Scenario:
- The table is indexed correctly and uses:
<code dir="ltr"><OID type="complete" options="instance;multipleGetNext"></code>
- The write parameters use:
<code dir="ltr">snmpSetAndGet="true"</code>
- String/OctetString SETs in the same table work correctly.
- However, specific numeric columns consistently fail with:
<code dir="ltr">Set failed : BAD VALUE</code>

<Param id="9019" trending="true">
<Name>TableLocalPort</Name>
<Description>Local Port</Description>
<Information>
</Information>
<Type>read</Type>
<Interprete>
<RawType>numeric text</RawType>
<Type>double</Type>
<LengthType>next param</LengthType>
</Interprete>
<SNMP>
<Enabled>true</Enabled>
<OID type="complete">1.3.6.1.4.1.2928.2.10.1.1.1.19</OID>
<Type>uinteger32</Type>
</SNMP>
<Alarm>
<Monitored>true</Monitored>
</Alarm>
<Display>
<RTDisplay>true</RTDisplay>
</Display>
<Measurement>
<Type>number</Type>
</Measurement>
</Param>
<Param id="9519" snmpSetAndGet="true">
<Name>TableLocalPort</Name>
<Description>Local Port</Description>
<Type>write</Type>
<Interprete>
<RawType>numeric text</RawType>
<Type>double</Type>
<LengthType>next param</LengthType>
</Interprete>
<SNMP>
<Enabled>true</Enabled>
<OID type="complete">1.3.6.1.4.1.2928.2.10.1.1.1.19</OID>
<Type>uinteger32</Type>
</SNMP>
<Display>
<RTDisplay>true</RTDisplay>
</Display>
<Measurement>
<Type>number</Type>
</Measurement>
</Param>
The indexing appears correct, as the SET is attempted on:
<code dir="ltr">OID.x</code>
The same OID and value work successfully from an external MIB Browser, but fail from DataMiner.
What exactly would be the best approach to fix this issue?
Changing the SNMP type in the connector causes the parameter to show as “Not Initialized,” so I cannot simply change the parameter type. How can this be correctly handled in DataMiner so the numeric table value can be set successfully?
The reason is for some reason DM is not supporting uinteger32 so when I changed to gauge32 it worked stopped giving the wrong value.