Копирования 2 документов в 1 в OpenOffice

1. MyNameNoName 02.06.20 23:29 Сейчас в теме
Здравствуйте.
Ранее из внешней обработки в 1С 8.3 формировалось 2 документа:
1. Создавался табличный документ и ТабДокумент.Записать(СтрокаФайла, ТипФайлаТабличногоДокумента.XLS) сохранялся на диск
2. И был шаблон, в который программно средствами 1С заполнялись нужные колонки:
Sheet = Sheets.getByIndex(0);
Sheet.getCellByPosition(1,0).setString(СокрЛП(Объект.Организация));
Sheet.getCellByPosition(1,1).setString(СокрЛП(Объект.Организация.ИНН));
Теперь же нужно эти 2 документа как-то в один объединить. Я бы программно написал все, но логика формирования ТабличногоДокумента на основе макета очень сложная.
Думаю 2 варианта:
1. Загрузить табличный документ в openoffice
Sheet = Sheets.getByIndex(3); - получаю лист, а как в него загрузить табличный документ? Перепробовал все, перечитал весь интернет - не нашел решения, ничего не работает. - это конечно идеальный вариант
2. Или просто сохраняю первый документ, потом его читаю и сохраняю нужный лист во втором документе. Но тоже не работает, то ли делаю что-то не так.
Если кто может помочь очень прошу. Спасибо.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
6. independ 1520 04.06.20 20:14 Сейчас в теме
2. platonov.e 158 03.06.20 07:54 Сейчас в теме
не понятно откуда второй брался
3. alex_bob 246 03.06.20 11:27 Сейчас в теме
Такой способ не подойдет? Тынц
MyNameNoName; +1 Ответить
4. uno-c 235 04.06.20 19:54 Сейчас в теме
В openoffice вроде есть запись макросов. Запишите свои "ручные" действия по открытию и добавлению табличного документа в существующий опенофис с помощью макроса - появится код. Этот код переносите в 1С. С экселем по крайней мере я частенько так поступал, используя запись макросов.
MyNameNoName; +1 Ответить
5. uno-c 235 04.06.20 19:56 Сейчас в теме
Перенести просто копи-пастом код макроса конечно не получится, но смысл записанного текста макроса практически полностью понятен, чуток подредактировать - и вперед.
MyNameNoName; +1 Ответить
7. vugluscr1991 12 04.06.20 20:27 Сейчас в теме
Почему бы после записи в формате Excel не открыть Excel документ средствами 1С (без использования Excel) и почему бы затем не перенести содержимое ячеек из документа 1 в документ 2, используя уже методы опенофисных классов?
MyNameNoName; +1 Ответить
8. MyNameNoName 04.06.20 23:47 Сейчас в теме
Попробовал все варианты довольно трудозатратно. Видимо придется все-таки переносить всю логику в openoffice, а очень не хотелось.
10. uno-c 235 05.06.20 08:29 Сейчас в теме
(8) Не знаю как с опенофисом, но в экселе буквально десяток строк VBA получается. Строки делает запись макроса. Остается их понять, подредактировать под себя и сделать аналогичное в 1С. Это если мое предположение верно: судя по коду, Вы через COM (или что-то подобное) с опенофис из эски работаете:

Sheet.getCellByPosition(1,0).setString(СокрЛП(Объект.Организация));
9. MyNameNoName 04.06.20 23:49 Сейчас в теме +0.5 $m
Смысл именно один табличный документ в виде макета, а один open office - и нужно их объединить. Наверное и правда нужно или в макеты все переделывать, или в open office.
11. KVIKS 399 05.06.20 15:17 Сейчас в теме
А это будет использоваться как рабочая таблица или просто для просмотра? К чему вопрос - я сохранял разные файлы (табок и word ) все в pdf и потом сразу объединял эти файлы в один pdf. Тем самым на выходе получал просто пдф для просмотра и отправки на почту
MyNameNoName; +1 Ответить
12. KVIKS 399 05.06.20 15:25 Сейчас в теме
еще вопрос данные из 2-х файлов можно на разные листы разместить или надо на 1 лист?
В экселе делал так - сохранял несколько табдок в разные файлы эксель. потом программно собирал их в 1 файл на разные листы. временные файлы удалял потом
MyNameNoName; +1 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот