Перевод отчета на СКД

1. Kaspirovsky 216 13.06.17 10:06 Сейчас в теме
8.3.9
Имеется отчет не на скд
В общем вот и вопрос, как проще сделать.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Dzamba 13.06.17 10:17 Сейчас в теме
(1) Как вариант.
Сделать его с нуля на СКД.
4. Kaspirovsky 216 13.06.17 10:26 Сейчас в теме
(2)Отчет довольно сложный

(3)Сделал обработку выгрузки отчета в excel, она работает только с СКД
5. iskdv 13.06.17 10:30 Сейчас в теме
(4) ого? т.е. есть проблема сохранить поле табличного документа в Ексель?
7. lefthander 13.06.17 10:35 Сейчас в теме
(4)
Сделал обработку выгрузки отчета в excel, она работает только с СКД

Отчет выводится в Табличный документ? Табличный документ отлично сохраняется в Эксель без всяких СКД.
Но скорее всего мне опять не понятно что именно Вы хотите сделать.

(4)
Отчет довольно сложный

Тем более не понятно желание переделки.
СКД это механизм облегчающий построение отчета и его вывод. Если у Вас уже все сделано и работает, зачем его переписывать.
6. Kaspirovsky 216 13.06.17 10:33 Сейчас в теме
(5)Нужно чтобы все выполнялось на сервере
12. Kaspirovsky 216 13.06.17 10:41 Сейчас в теме
(7)
(9)
Нужно отчет вызвать из обработки, даже не вызвать а сохранить в excel, не открывая отчет. С отчетами на СКД проблем нет, а со старыми не на скд загвоздка
8. lefthander 13.06.17 10:36 Сейчас в теме
Напишите ваше сообщение
(6)
Нужно чтобы все выполнялось на сервере

Что именно все?
13. ryutao 50 13.06.17 10:44 Сейчас в теме
(12) Пока будете переносить на СКД, в отчете закомментируйте ТабДок.Показать(), сразу сохраняйте в файл Excel и пользуйтесь отчетом из обработки.
lefthander; +1 Ответить
14. Kaspirovsky 216 13.06.17 10:48 Сейчас в теме
(13)так не пойдет, отчет нельзя трогать...никаких экспортных процедур в отчете, только обработки

так отчет из обработки не запускается, ведь отчет не на скд
15. ryutao 50 13.06.17 10:54 Сейчас в теме
(14) возьмите все, что нужно и скопируйте из отчета в обработку. про Макет не забудьте.
16. Kaspirovsky 216 13.06.17 10:57 Сейчас в теме
(15) Это понятно))

нор если что то в отчете поменяют, то данные в обработке не отразят этого.....

Нельзя из обработки вызвать отчет который не на скд?
17. ryutao 50 13.06.17 11:06 Сейчас в теме
(16) а если Вы его самостоятельно переведете в СКД, кто Вам СКД править будет, когда отчет изменится? Если отчет не Ваш, и у Вас есть доступ к его модулю, то самое простое отслеживать изменения и переносить их в свою обработку. Отчет вызвать можно, но, если в нем отрабатывается открытие формы, Вам это не поможет, будет открываться форма отчета.
18. Kaspirovsky 216 13.06.17 11:14 Сейчас в теме
(17) это еще больше времени займет, + отладка

Варианта нет сохранить обработкой отчет не СКД?
19. ryutao 50 13.06.17 11:21 Сейчас в теме
(18) если нужно, чтобы обработка отрабатывала отчет в файл, время не важно, сейчас, я так понимаю, не отрабатывает?
Есть вариант: делайте копию отчета, в этой своей копии убирайте открытие формы и показ ТабличногоДокумента и добавьте сохранение в файл. Вот этот отчет в обработке и используйте.
20. Kaspirovsky 216 13.06.17 11:24 Сейчас в теме
(19)Александр, а если в отчете что то измениться? ведь другие разработчики не знают что этот отчет должен выгружаться в excel через обработку
21. herfis 499 13.06.17 11:41 Сейчас в теме
(20) Не читал, предлагали или нет.
Но проще всего доработать отчет таким образом, чтобы формирование табличного документа происходило в экспортной функции модуля отчета (функция возвращает табличный документ). Обычно это несложно. Тогда просто будешь вызывать эту функцию из своей обработки.
22. Kaspirovsky 216 13.06.17 12:09 Сейчас в теме
вот написал такое
-----------------------------------
Процедура Кнопка1Нажатие(Элемент)
	
ФормаОтчета = Отчеты.ОтчетМой.ПолучитьФорму("ФормаОтчета");
    Если Не ФормаОтчета.Открыта() Тогда
        ФормаОтчета.Открыть();
		ТабДок = Новый ТабличныйДокумент;
		ТабДок.Записать("D:\zapic\otchot.xls",ТипФайлаТабличногоДокумента.XLS);
    КонецЕсли;

КонецПроцедуры
Показать

--------------------------------------
(21)
(19)
(8)

Сейчас файл сохраняется без данных, а как сохранять файл с уже данными?
23. lefthander 13.06.17 12:11 Сейчас в теме
(22)
ТабДок = Новый ТабличныйДокумент;
ФормаОтчета.ЗаполнитьОтчет();

- заполните и сформируйте табличный документ.
25. Kaspirovsky 216 13.06.17 12:33 Сейчас в теме
(23)
Процедура Кнопка1Нажатие(Элемент) 

ФормаОтчета = Отчеты.ОтчетМой.ПолучитьФорму("ФормаОтчета"); 
Если Не ФормаОтчета.Открыта() Тогда 
ФормаОтчета.Открыть(); 
ТабДок = Новый ТабличныйДокумент; 
ФормаОтчета.ЗаполнитьОтчет(); 
ТабДок.Записать("D:\zapic\otchot.xls",ТипФайлаТабличногоДокумента.XLS); 
КонецЕсли; 

КонецПроцедуры 
Показать


Пишет ошибку

Метод объекта не обнаружен (ЗаполнитьОтчет)
ФормаОтчета.ЗаполнитьОтчет();
26. корум 287 13.06.17 12:36 Сейчас в теме
(25) ЗаполнитьОтчет() нужно написать самостоятельно.
lefthander; +1 Ответить
28. lefthander 13.06.17 12:39 Сейчас в теме
(25)Конечно, надо посмотреть какой процедурой у Вас заполняется отчет и использовать ее. Какая процедура повешена на кнопку Сформировать? Но не она, а та которая вызывается из под кнопки Сформировать.
29. Kaspirovsky 216 13.06.17 12:40 Сейчас в теме
(26) можно поподробней)) опыта мало
(27)знаю, сейчас работаю над этим каждый день
3. lefthander 13.06.17 10:20 Сейчас в теме
(1)Если он работает, зачем именно на СКД? Хотя да, проще его же сделать на СКД с нуля..
9. herfis 499 13.06.17 10:38 Сейчас в теме
Нет простых универсальных путей переделать обычный отчет, тем более сложный, в отчет СКД.
Но мне непонятна проблема сохранения отчета в эксель. Если речь об исполнении на сервере, то переписать обычный отчет, чтобы табличный документ формировался на сервере - гораздо проще.
10. herfis 499 13.06.17 10:40 Сейчас в теме
Хотя, в толстом клиенте возможно будет проще передавать на сервер сформированный на клиенте табличный документ.
11. ryutao 50 13.06.17 10:41 Сейчас в теме
Вот что вы все на коллегу взъелись? Может, человек СКД осваивает, а свое ему легче портировать и полезнее.
По делу: берете текст Вашего запроса, вставляете его во вновь созданное СКД, идете дальше по закладкам, добавляете параметры, настраиваете структуру по умолчанию, смотрите, что получилось. Далее пилим до получения желаемого функционала.
24. Kaspirovsky 216 13.06.17 12:33 Сейчас в теме
27. ryutao 50 13.06.17 12:38 Сейчас в теме
Гм, в таком случае Вам придется изучить процедуры и функции отчета, чтобы понимать, какие из них вызывать. Я лично думал, что этими вещами вы владеете, если нет, то надо начинать с основ. Разве только кто-нибудь все сделает за Вас, но тогда Вы что с этого получите?
Оставьте свое сообщение

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