It looks that your code never assigns any values to the variables DATECREATED, DEVICE, LOTID, ...
If the content of a variable is
null
(because not assigning it or it's the actual value) you should use
DBNull.Value[
^] instead when assigning a value to the parameter.