Имя: Пароль:
1C
1С v8
Подключение отчетов к документам через подключаемые команды БСП.
,
0 Ilnazio
 
09.11.21
10:06
Доброго дня всем. Не совсем понимаю процесс подключения новых отчетов к уже созданным документам в БСП... все усложняют жизнь разрабам и проведение документов в общие модуля выносят...
В общем по привычке начал читать статьи и не нашел объяснения как это работает. Ведь где-то да прописываются отчеты которые должны отобразиться в доке.. Подскажите люди добрые - где?
1 END
 
09.11.21
10:07
(0) Читай на ИТС документацию по БСП. Там все разжевано, сюда передирать смысла не вижу.
2 Kassern
 
09.11.21
10:09
(0) речь про внешний отчет?
3 Ilnazio
 
09.11.21
10:14
(2)Да
4 Ilnazio
 
09.11.21
10:14
(1) Понял, покопаюсь и там
5 Ilnazio
 
09.11.21
10:24
Похоже внешние отчеты можно добавить только в дополнительные отчеты?
6 Fish
 
09.11.21
10:29
"отчеты которые должны отобразиться в доке" - Речь про отчеты или печатные формы документа?
7 Dmitrii
 
гуру
09.11.21
10:31
(5) Это к вопросу - для чего дополнительные отчеты и обработки надо делать через расширения, а не через механизм внешних отчетов и обработок, который оставлен только для совместимости и по сути является морально устаревшим.
8 Kassern
 
09.11.21
10:33
(5) а чем вас не устраивает вкладка дополнительных отчетов на панели отчетов в документе?
9 Kassern
 
09.11.21
10:34
(8) разве что 1 лишний клик мышкой, зато разграничение типовых отчетов от дополнительных в документе
10 Ilnazio
 
09.11.21
11:12
(9) Меня вообще все устраивает) Но руководитель поставил задачу и я пытаюсь ее реализовать, понымаиишь
11 Kassern
 
09.11.21
11:27
(10) тогда используя расширение сделайте ему, как он хочет. Только предварительно обрисуйте, сколько это времени займет и что есть вариант, с типовым функционалом дополнительных отчетов в документе, который займет у вас пару минут.
12 Ilnazio
 
09.11.21
12:11
(11) Через доп отчеты уже реализовано, в документ просят перенести)
а куда копать чтобы вывести отчет из конфигурации? В БСП же это через подключаемые команды все делается, но я не смог найти где прописывается в типовой базе что в документе допустим "продажа" нужно отобразить отчеты допустим "количество товаров" и "стоимость товаров".
Гле-то же в новой БСП хранится эта инфа.., раньше в модуле менеджера вроде как было, а сейчас не нашел
13 Kassern
 
09.11.21
12:47
(12) так доп отчеты и находятся в документе! https://yadi.sk/i/g5qszlxV-XR8Iw
14 Ilnazio
 
09.11.21
15:26
(13) а как ты туда их поместил? в доп отчетах есть возможность разместить только в подсистемах жи
15 Kassern
 
09.11.21
15:29
(14) плохо смотрели вы возможности доп отчетов)
Функция СведенияОВнешнейОбработке() Экспорт
    НаименованиеОтчета="Бла бла бла";
    
    ПараметрыРегистрации = Новый Структура;
    МассивНазначений = Новый Массив();
    МассивНазначений.Добавить("Документ.Нужный документ");
    ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
    ПараметрыРегистрации.Вставить("Вид", "Отчет");

    ПараметрыРегистрации.Вставить("Наименование", НаименованиеОтчета);
    ПараметрыРегистрации.Вставить("Версия", "1.0");
    ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина);
    ПараметрыРегистрации.Вставить("Информация", НаименованиеОтчета);
    ТаблицаКоманд = ПолучитьТаблицуКоманд();
    ДобавитьКоманду(ТаблицаКоманд,
    НаименованиеОтчета,
    "1",
    "ОткрытиеФормы",
    Ложь,"");
    ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
    Возврат ПараметрыРегистрации;
    
КонецФункции
16 Ilnazio
 
09.11.21
15:36
(15) Понял принял, сейчас погуглю что надо дописать
17 Ilnazio
 
09.11.21
16:00
(15) Функция СведенияОВнешнейОбработке() Экспорт
    
    ИмяОтчёта = "Запросы в снабжение в работе";
    ПараметрыРегистрации = Новый Структура;    
    МассивНазначений = Новый Массив();
    МассивНазначений.Добавить("ДокументСсылка.ЗапросНАБелеерду");
    ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
    ПараметрыРегистрации.Вставить("Вид", "ДополнительныйОтчет");
    ПараметрыРегистрации.Вставить("Наименование", ИмяОтчёта);
    ПараметрыРегистрации.Вставить("Версия", "1.0"); //"1.0"
    ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь); //Варианты: Истина, Ложь
    ПараметрыРегистрации.Вставить("Информация", ИмяОтчёта);
    
    ТаблицаКоманд = ПолучитьТаблицуКоманд();
    
    ДобавитьКоманду(ТаблицаКоманд,
    ИмяОтчёта,
    ИмяОтчёта,
    "ОткрытиеФормы", //Использование. Варианты: "ОткрытиеФормы", "ВызовКлиентскогоМетода", "ВызовСерверногоМетода"
    Ложь,//Показывать оповещение. Варианты Истина, Ложь
    "");//Модификатор
    
    ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
    
    Возврат ПараметрыРегистрации;
    
КонецФункции



не сработало
18 Ilnazio
 
09.11.21
16:00
(15) не сработало
19 Kassern
 
09.11.21
16:05
(17) зачем вы написали МассивНазначений.Добавить("ДокументСсылка.ЗапросНАБелеерду");?
Я же вам написал как надо:  МассивНазначений.Добавить("Документ.Нужный документ");, например Документ.РеализацияТоваровУслуг
20 Kassern
 
09.11.21
16:06
(17)     "ОткрытиеФормы",//Использование. Варианты: "ОткрытиеФормы", "ВызовКлиентскогоМетода", "ВызовСерверногоМетода"

    Ложь//Показывать оповещение. Варианты Истина, Ложь

    "")//Модификатор
Вы это как так комментарии воткнули в процедуру ДобавитьКоманду?)
21 Kassern
 
09.11.21
16:08
держите уже:
Функция СведенияОВнешнейОбработке() Экспорт
    НаименованиеОтчета="Запросы в снабжение в работе";
    
    ПараметрыРегистрации = Новый Структура;
    МассивНазначений = Новый Массив();
    МассивНазначений.Добавить("Документ.ЗапросНАБелеерду"); //Если у вас реально так документ называется))
    ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
    ПараметрыРегистрации.Вставить("Вид", "Отчет");

    ПараметрыРегистрации.Вставить("Наименование", НаименованиеОтчета);
    ПараметрыРегистрации.Вставить("Версия", "1.0");
    ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина);
    ПараметрыРегистрации.Вставить("Информация", НаименованиеОтчета);
    ТаблицаКоманд = ПолучитьТаблицуКоманд();
    ДобавитьКоманду(ТаблицаКоманд,
    НаименованиеОтчета,
    "1",
    "ОткрытиеФормы",
    Ложь,"");
    ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
    Возврат ПараметрыРегистрации;
    
КонецФункции


Функция ПолучитьТаблицуКоманд()
    Команды = Новый ТаблицаЗначений;
    Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
    Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));
    Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
    Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
    Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
    Возврат Команды;
КонецФункции


Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
    НоваяКоманда = ТаблицаКоманд.Добавить();
    НоваяКоманда.Представление = Представление;
    НоваяКоманда.Идентификатор = Идентификатор;
    НоваяКоманда.Использование = Использование;
    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
    НоваяКоманда.Модификатор = Модификатор;
КонецПроцедуры
22 Kassern
 
09.11.21
16:10
Так же, если документ не типовой, то нужно будет скорее всего, как с печатными формами, добавить его в общем модуле в массив доступных для внешних обработок, или как то так
23 pechkin
 
09.11.21
16:19
интересно почему не сделали доп отчеты в том же подменю, а не по кнопке
24 Kassern
 
09.11.21
16:23
(23) а если их будет штук 20? Тогда будет большая портянка вперемешку с типовыми отчетами, которая не всем нужна. В отчетах в разделах можно опционально отключать, которые не нужны, причем это в разрезе пользователя настройка. Тут либо надо создать подобный функционал, либо просто все доп отчеты пихнуть в отдельную менюшку и забить.
25 Ilnazio
 
09.11.21
16:25
(22) Документ не типовой, но я так понимаю для вывода печатных форма и отчетов нужны подключаемые процедуры и папки для расположения отчетов и печатных форм
26 Kassern
 
09.11.21
16:26
(25) правильно понимаете, нужно объяснить БСП, что появился новый объект в виде документа, а формам документа - что нужно использовать возможности БСП)
27 Ilnazio
 
09.11.21
16:32
(24) спасибо, замучил наверное уже)
у нас вид отличается.. там отчет должен быть??)
ПараметрыРегистрации.Вставить("Вид", "Отчет");
28 Kassern
 
09.11.21
16:33
(27) Именно, если хотите, чтобы в документе отображался, а не в разделе Сервис- дополнительные отчеты
29 Ilnazio
 
09.11.21
17:38
(28) Я понял, спасибо большое
30 Ilnazio
 
09.11.21
17:39
(28) Большущее, а то обычно токсичные люди попадаются)
Приятно удивлен))
31 hhhh
 
09.11.21
17:50
(30) вообще-то должна быть обработка, а не отчет. Чтобы в документ засовывать.
32 Kassern
 
09.11.21
17:52
(31) с чего вы взяли? Нормально внешний отчет встраивается через справочник ДополнительныеОтчетыИОбработки, главное правильно СведенияОВнешнейОбработке заполнить
33 pechkin
 
09.11.21
17:59
Можно и отчет и обработку
34 Ilnazio
 
09.11.21
20:14
(32) Дошел до компа) все завелось, все отлично. С новым видом можно выбирать и документы.. Вот только есть несколько моментов, хотел уточнить.
Во-первых, автоматом документ который проставлен в настройках отчета в конфигураторе не появился в базе после заргузке. Но можно выбрать вручную - пойдет.
Во-вторых, после выбора документа во внешней обработке отчет отобразился, но чтобы его открыть нужно раскрыть вкладку отчеты, дальше нажать на дополнительные отчеты и появится то же самое окно как и в доп. отчетах, а потом уже выбрать свой отчет. То есть он как не родной сел)
Есть идеи почему так произошло?
35 pechkin
 
09.11.21
22:04
(34) это фича такая
36 Ilnazio
 
10.11.21
08:29
(35) то есть как родной никак не посадить? Печаль бедаа
37 Kassern
 
10.11.21
09:03
(36) я об этом писал выше, что он будет в дополнительных отчетах. Один лишний клик получается
38 Ilnazio
 
10.11.21
09:53
(37) Я тогда не понял о чем ты) Спасибо всем огромное
39 Ilnazio
 
11.11.21
16:07
Ребят, новый вопрос. Выше мы обсуждали как встроить внешний отчет в документ. Теперь то же самое нужно проделать со встроенным отчетом (в конфе или в расширении без разницы). Думаю логично в конфе сделать (если есть что сказать по этому поводу буду благодарен). Подскажите как это сделать? Как вывести встроенный отчет в определенный документ (скорее всего через подключаемые команды)
40 Kassern
 
11.11.21
16:28
(39) в модуль менеджера какого-нить типового документа с отчетами зайдите и поищите ДобавитьКомандыОтчетов
41 Ilnazio
 
11.11.21
16:41
(40) Спасибо