Имя: Пароль:
1C
1C 7.7
v7: Ошибка экспорта отчета
0 olafbond
 
26.03.14
16:34
Типовая конфигурация.

Формирую поле отчета:
Количество = Формат(Док.Количество, "Ч010.3,");
Например, число 12 в отчете получаем: "12,000" - что нужно.
Экспортирую в xls. В ячейке таблицы "12 000". Т.е. в тысячу раз больше.

Смотрю на типовую конфигурацию Счет-фактура поле Количество. Все, вроде, то же самое. Но 12 и при экспорте в xls остается 12.

Продолжаю эксперименты. Меняю формат на:
Количество = Формат(Док.Количество, "Ч010.2,");
В отчете "12,00". В xls "12,00" - ошибки нет
Но мне нужны три знака после запятой.

Где косяк?
1 AlexYurg
 
26.03.14
16:35
Запятую замени на точку
2 olafbond
 
26.03.14
16:43
(1) Не вариант. Отчет и печатается и передается в электронном виде. Должна быть запятая.
3 Ёпрст
 
26.03.14
16:44
(2) при сохранении в эксель так и будет.
4 olafbond
 
26.03.14
16:50
(3) Счет-фактура из типовой конфигурации сохраняется правильно в эксель.
5 AlexYurg
 
26.03.14
16:55
В настройках системы посмотри десятичный разделитель.
Если там стоит "разделитель групп разрядов" = запятая,
то поставь там пробел или вообще убери.
6 olafbond
 
26.03.14
17:03
(5) в системных настройках разделитель групп разрядов - " "
Удалить совсем не удается - ошибка.
7 AlexYurg
 
26.03.14
17:05
Ну, а если все-таки написать
Количество = Формат(Док.Количество, "Ч010.3."); (точка!)
а потом открыть в Экселе - что будет?
8 olafbond
 
26.03.14
17:33
Разобрался.
Если в ячейке отчета поставить число вида "12,000" с выравниванием по правому краю, то экспортируется число 12000.
Если с выравниванием по центру (как сделано в типовой конфигурации в счете-фактуре в поле Количество), то экспортируется строка "12,000". Далее при обработке электронного отчета необходимо дополнительное преобразование строки к числу.
9 Ёпрст
 
26.03.14
17:35
если не менять формат числа, или оставить точку - то всё будет пучком.
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший