diff --git a/silecs-diagnostic-cpp/src/silecs-diagnostic/silecsmodule.cpp b/silecs-diagnostic-cpp/src/silecs-diagnostic/silecsmodule.cpp index 115f40deb844264bbbbfc8c8da1639bf04a5e606..5ca9d91db63502baba5789075837d2cf78f2585b 100755 --- a/silecs-diagnostic-cpp/src/silecs-diagnostic/silecsmodule.cpp +++ b/silecs-diagnostic-cpp/src/silecs-diagnostic/silecsmodule.cpp @@ -428,7 +428,17 @@ void silecsModule::setScalarDataInDeviceFromItem(Item *currentItem, std::string } case Date: { - qDebug() << "Date"; + if(reg->isScalar()) + { + qDebug() << "Date"; + double val; + if(!from_string<double>(val, stringValue, std::dec)) + { + qDebug()<< "Conversion from string to Date failed"; + throw new std::string("Output buffer value of "+plcName+" / "+deviceName+" / "+registerName+ " must be a Date (Epoch value)"); + } + reg->setValDate(val); + } break; } }