| 
    
            
         
         | 
    
  | 
Разработка сложных отчетов. Хрусталева | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        asn2023    
     19.07.23 
            ✎
    08:39 
 | 
         
        Пытаюсь подступиться к 1С со стороны конфы.
 
        Читаю Разработку сложных отчетов Хрусталевой. В модуле формы пишу, чтобы отчет открывался при открытии, но код игнорируется. &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Параметры.СформироватьПриОткрытии = Истина; КонецПроцедуры Что может быть не так? Все вроде по буквам проверила.. Типовой пример работает, а мой - нет.  | 
|||
| 
    1
    
        ДНН    
     19.07.23 
            ✎
    08:49 
 | 
         
        (0) 
 
        ПараметрыОткрытия = Новый Структура("СформироватьПриОткрытии", Истина); ОткрытьФорму("Отчет.ТвойОтчет.ФормаОтчета", ПараметрыОткрытия);  | 
|||
| 
    2
    
        RomanYS    
     19.07.23 
            ✎
    08:52 
 | 
         
        (0) у формы в обработчиках указана данная процедура?     
         | 
|||
| 
    3
    
        DrZombi    
     гуру 
    19.07.23 
            ✎
    09:05 
 | 
         
        (0) Ужас... Пользуйся БСП, там формы не надо. :)     
         | 
|||
| 
    4
    
        DrZombi    
     гуру 
    19.07.23 
            ✎
    09:11 
 | 
         
        + (0) Если все же отчет открылся формой "БСП" https://infostart.ru/video/w518846/
 
        https://its.1c.ru/db/bsp318doc#content:2221:1:issogl2_список_дополнительные_отчеты_и_обработки https://its.1c.ru/db/bsp317doc#content:2175:1:issogl1_роли_для_работы_с_дополнительными_обработками_и_отчетами В обработке, модуле, должны присутствовать: (Подробнее смотри в код БСП :)) Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт Настройки.ФормироватьСразу = Ложь; Настройки.События.ПередЗагрузкойНастроекВКомпоновщик = Истина; Настройки.События.ПриСозданииНаСервере = Истина; Настройки.События.ПриОпределенииИспользуемыхТаблиц = Истина; КонецПроцедуры // См. ОтчетыПереопределяемый.ПриСозданииНаСервере Процедура ПриСозданииНаСервере(Форма, Отказ, СтандартнаяОбработка) Экспорт Если ЗначениеЗаполнено(Форма.НастройкиОтчета.ВариантСсылка) Тогда Форма.НастройкиОтчета.Наименование = Форма.НастройкиОтчета.ВариантСсылка; КонецЕсли; КонецПроцедуры  | 
|||
| 
    5
    
        DrZombi    
     гуру 
    19.07.23 
            ✎
    09:22 
 | 
         
        +(0) Список параметров более обширен, так же и список процедур.
 
        Я все не описал, так что выуськивайте самостоятельно в общих модулях БСП. Настройки.ФормироватьСразу = Ложь; Настройки.События.ПередЗагрузкойНастроекВКомпоновщик = Истина; Настройки.События.ПриСозданииНаСервере = Истина; Настройки.События.ПриОпределенииИспользуемыхТаблиц = Истина;  | 
|||
| 
    6
    
        Мультук    
     гуру 
    19.07.23 
            ✎
    09:30 
 | 
         
        (0) 
 
        P.S. Т.е. запросы вы выучили? В "чистом СКД" -- где есть только сам отчёт и компоновка данных вы уже уверенно плаваете? Чтение и понимание (например) вот этой статьи уверенное ? https://infostart.ru/1c/articles/1101676/ Имхо (надеюсь я ошибаюсь), вы взялись за рюшечки, которые будут актуальны "несколько позже", если вообще будут актуальны. P.P.S. Ищем по слову СКД или регаемся качаем архив. https://курсы-по-1с.рф/free/ https://fs.kursypo1c.ru/free/1Cv8-Platform/1CDev-SystemOfDataComposition.rar  | 
|||
| 
    7
    
        asn2023    
     19.07.23 
            ✎
    14:49 
 | 
         
        (2) 
 
        Спасибо! При копировании из листинга программа не поняла, что это за процедура. Выбрала процедуру из списка, все заработало.  | 
|||
| 
    8
    
        RomanYS    
     19.07.23 
            ✎
    15:01 
 | 
         
        (7) ага, привязка событий:
 
        либо явная - выбором обработчиков в свойствах формы, либо неявная - при выборе предопределенной процедуры из списка процедур. Простой копипаст идёт мимо обоих вариантов.  | 
|||
| 
    9
    
        Donkey_hot    
     19.07.23 
            ✎
    15:02 
 | 
         
        (7) Пишите код ручками. Копипаста на данном этапе - зло.     
         | 
|||
| 
    10
    
        RomanYS    
     19.07.23 
            ✎
    15:15 
 | 
         
        (9) в данном конкретном случае "руками" бы получил ту же ошибку     
         | 
|||
| 
    11
    
        Donkey_hot    
     19.07.23 
            ✎
    15:18 
 | 
         
        (10) Цитата из книги: "Для реализации этих возможностей создадим основную форму отчета ОтчетПоСистемнымБлокам. Создадим обработчик события формы ПриСозданииНаСервере и заполним его следующим образом (листинг 2.8)."
 
        "Создадим и заполним обработчик", а не "Напишем в модуле формы код", в этом основная разница)  | 
|||
| 
    12
    
        RomanYS    
     19.07.23 
            ✎
    15:21 
 | 
         
        (11) разницу нужно понимать)), а сам как раз предлагаешь "пишите код ручками"     
         | 
|||
| 
    13
    
        Donkey_hot    
     19.07.23 
            ✎
    15:23 
 | 
         
        (12) В данном конкретном примере не так важно, но там дальше будут примеры с полностью программным исполнением отчета, вот их конечно лучше бы переписать, простая копипаста этого куска будет менее ценна в педагогическом смысле (ИМХО)     
         | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |