Округление количества при выгрузке РН (форма 1С82ВН)
Додано: 29 березня 2016, 12:07
Добрый день.
При выгрузке Расходной накладной в Медок столкнулись с такой проблемой:
количество округляется до 1 знака после запятой.
Выгрузка выполнятся через COM объект "MEDOC.ZApplication".
Используется шаблон документа "1С82ВН".
Ниже часть кода выгрузки из 1С:
Doc = pd.OpenOrCreateDocument(orgId, “1С82ВН”, , , ИД_Документа, 0);
Doc.DisableScripts();
rsMain = Doc.DataSets();
rsMain.Edit();
rsMain.Append();
rsMain.Post();
rsMain = Doc.DataSets("TAB1");
.....
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
rsMain.Edit();
...
rsMain.Fields.Item("TAB1_A3").Value = ВыборкаДетальныеЗаписи.Количество; //В ЭТОМ МЕСТЕ ЗНАЧЕНИЕ В МЕДКЕ ОКРУГЛЯЕТСЯ ДО 1 (!!!) ЗНАКА ПОСЛЕ ЗАПЯТОЙ см. пример значений из отладчика
...
КонецЦикла;
Пример значений в режиме отладки:
rsMain.Fields.Item("TAB1_A3").value 38,6 Число
ВыборкаДетальныеЗаписи.Количество 38,598 Число
При этом если открыть выгруженный документ в МЕДКЕ, то количество можно отредактировать с точностью до 6 знаков после запятой (так как это и указано в шаблоне 1С82ВН).
При выгрузке Расходной накладной в Медок столкнулись с такой проблемой:
количество округляется до 1 знака после запятой.
Выгрузка выполнятся через COM объект "MEDOC.ZApplication".
Используется шаблон документа "1С82ВН".
Ниже часть кода выгрузки из 1С:
Doc = pd.OpenOrCreateDocument(orgId, “1С82ВН”, , , ИД_Документа, 0);
Doc.DisableScripts();
rsMain = Doc.DataSets();
rsMain.Edit();
rsMain.Append();
rsMain.Post();
rsMain = Doc.DataSets("TAB1");
.....
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
rsMain.Edit();
...
rsMain.Fields.Item("TAB1_A3").Value = ВыборкаДетальныеЗаписи.Количество; //В ЭТОМ МЕСТЕ ЗНАЧЕНИЕ В МЕДКЕ ОКРУГЛЯЕТСЯ ДО 1 (!!!) ЗНАКА ПОСЛЕ ЗАПЯТОЙ см. пример значений из отладчика
...
КонецЦикла;
Пример значений в режиме отладки:
rsMain.Fields.Item("TAB1_A3").value 38,6 Число
ВыборкаДетальныеЗаписи.Количество 38,598 Число
При этом если открыть выгруженный документ в МЕДКЕ, то количество можно отредактировать с точностью до 6 знаков после запятой (так как это и указано в шаблоне 1С82ВН).