Имя: Пароль:
1C
1С v8
Я в СКД создаю отчет и автоматически сохраняю в формате ексель и отправляю на ftp.
0 AlexandrV
 
05.11.20
17:02
Я в СКД создаю отчет и автоматически сохраняю в формате ексель и отправляю на ftp.
Все надо сохранить на 3-ю страницу файла , макет есть , где можно перезаписать 3-ю страницу и сохранить новый файл.
Как автоматически в режиме скд сохранить отчет на 3-ю страницу файла эксель?
подскажите кто знает
1 fisher
 
05.11.20
17:19
Вижу два варианта.
Один примерно знаю как, но он мне не нравится - работая с Excel через OLE (с помощью VBA скопировать данные из полученной книги и вставить в нужный лист другой книги).
Второй мне нравится, но не знаю как - работая с файлом Excel на уровне XML сделать тоже самое, но без Excel - на уровне его внутреннего формата.
2 fisher
 
05.11.20
17:24
Вдогонку. xlsx - это зипованный XML и его формат майкрософтом вроде бы открыт. То есть теоретических препятствий к реализации второго варианта нет, а на практике будет зависеть от того, насколько это замороченно получаться будет.
3 fisher
 
05.11.20
17:27
Самое банальное что приходит в голову - задифить два XML. Из шаблонного xlsx и с вручную вставленными данными на третий лист. Как минимум сразу можно будет понять, какие дополнительные данные в структуре потребуют пересчета.
4 mistеr
 
05.11.20
17:28
(0) "на 3-ю страницу" == "на 3-й лист книги"?
5 mistеr
 
05.11.20
17:29
С 17-го релиза (кажется) можно для каждого листа указать свой табдок.
6 fisher
 
05.11.20
17:33
(5) И можно вставлять листы в существующую книгу, не задевая остальные?
7 AlexandrV
 
05.11.20
17:35
(4) эта книга отправляется на сторонний сайт и данные не принимаются если 2-х первых страниц нет
8 fisher
 
05.11.20
17:36
(7) Ты ответил не на тот вопрос, который задавался :)
9 AlexandrV
 
05.11.20
17:38
(8) если я перепишу 3-й лист не трогая первые сам , то первые 2 листа не изменятся сами
10 AlexandrV
 
05.11.20
17:38
(9)+ можнос делать макет из 2-х страниц и добавлять 3-ю
11 fisher
 
05.11.20
17:40
(9) Не поспоришь :)
(10) Об этом и речь
12 AlexandrV
 
05.11.20
17:56
У меня заполненный реквизит (табличный документ ) с успехом записывается как эксель, но я не нашел как выгрузить его в страницу макета (файла готового эксельного)
13 Kassern
 
05.11.20
17:58
(1) А разве ПакетОтображаемыхДокументов не решит данную задачу? Создаешь этот пакет, пихаешь в него 2 пустых табличных документа, а третьим листом уже пихаешь нужный Табдок. Все это дело сохраняешь в ексель.
14 fisher
 
05.11.20
18:01
(13) Сильно сомневаюсь, что ТС устроят пустые первые листы.
15 fisher
 
05.11.20
18:05
Хотя... Если первые два листа совсем шаблонные...
Можно их содержимое конвертировать в таб-доки, с тем чтобы перевыгружать потом все скопом в Excel. Тут уже зависит от того, насколько смешным будет получаться результат.
16 mistеr
 
05.11.20
18:19
(6) Нет, можно сохранить массив табдоков как книгу.
17 mistеr
 
05.11.20
18:19
(7) Мне тоже предстоит такая задача, но платформа пока не позволяет.

Блин, не могу найти, на Зазеркалье быд пост об этом.
18 AlexandrV
 
09.11.20
15:07
Как в эксель в com объекте прочитать пакет из 3-х закладок и потом добавить табличный документ в новую закладку и записать
Подскажите кто знает
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший