|
@@ -1040,23 +1040,19 @@ namespace PRSDesktop
|
|
|
var bHasData = false;
|
|
|
if (variables.Any())
|
|
|
{
|
|
|
- var dict = Serialization.Deserialize<Dictionary<string, object>>(form.FormData);
|
|
|
+ var dict = Serialization.Deserialize<Dictionary<string, object?>>(form.FormData);
|
|
|
if(dict is not null)
|
|
|
{
|
|
|
- foreach (var key in dict.Keys)
|
|
|
+ var storage = new DFLoadStorage(dict, null);
|
|
|
+ foreach (var variable in variables)
|
|
|
{
|
|
|
- var variable = variables.FirstOrDefault(x => string.Equals(key, x.Code));
|
|
|
- var type = variable?.FieldType();
|
|
|
- if (variable != null)
|
|
|
+ var value = variable.Deserialize(storage.GetEntry(variable.Code));
|
|
|
+ var format = variable.FormatValue(value);
|
|
|
+ var sKey = variable.Code.Replace("/", " ");
|
|
|
+ if (data.Columns.Contains(sKey))
|
|
|
{
|
|
|
- var value = variable.ParseValue(dict[key]);
|
|
|
- var format = variable.FormatValue(value);
|
|
|
- var sKey = key.Replace("/", " ");
|
|
|
- if (data.Columns.Contains(sKey))
|
|
|
- {
|
|
|
- dataRow[sKey] = format;
|
|
|
- bHasData = true;
|
|
|
- }
|
|
|
+ dataRow[sKey] = format;
|
|
|
+ bHasData = true;
|
|
|
}
|
|
|
}
|
|
|
}
|