As of right now I am checking if value is not Blank before processing. Something like:
while (field_list.forth()) {
const auto &entry = field_list.getEntry();
int16_t fid = static_cast<int16_t>(entry.getFieldId());
if (entry.getCode() == refinitiv::ema::access::Data::BlankEnum) {
continue;
}
try {
switch (entry.getLoadType()) {
case refinitiv::ema::access::DataType::RealEnum: {
const auto &real_value = entry.getReal();
data.double_fields[fid] = real_value.getAsDouble();
break;
}
case refinitiv::ema::access::DataType::IntEnum: {
data.int64_fields[fid] = static_cast<int64_t>(entry.getInt());
break;
}
case refinitiv::ema::access::DataType::UIntEnum: {
data.int64_fields[fid] = static_cast<int64_t>(entry.getUInt());
break;
}
…
I wanted to understand what how is trdprc_1 cleared at closing - do we get null or 0 from exchanges?