arefaste/1C_Forums huggingface dataset:
Как правильно задавать параметр в СКД, чтобы к примеру по параметру "Наименование" срабатывал запрос и выводил информацию, касающуюся выбранного наименования в отчете? Просто при запуске отчета программа пишет"Значение неопределенно"...
---
эх я думал в вы прошлом отчете это увидите:)
---
Если данных немного выходит, можно реализовать отбором.
---
А если много, то нельзя?
---
Можно, почему нет. Просто сначала выполнится весь запрос, и потом на эти данные будет наложен отбор. Я вот и спросил, что если выборка небольшая в результате, можно и отбором обойтись.
---
Это заблуждение. Запрос к СУБД будет сформирован с учетом отборов.
---
не можете найти закладку "Параметры" и проставить галки в схеме или вас интересует программная установка?

в запросе набора данных СКД избавиться от указанного сообщения поможет заключение параметра в {}
---
да оно как-то странно работает,сам параметр в отчете не появляется,даже несмотря на галки...
---
в настройках быстрый доступ поставь
---
в настройках чего именно,подскажите?
---
В самой схеме компоновки
---
а можете пожалуйста глянуть в моей конфигурации что я не так делаю, в Отчет2?
---
в настройках варианта отчета на вкладке параметры правой кнопкой по параметру - свойства элемента пользовательских настроек - галка включать в пользовательские настройки + режим редактирования быстрый доступ или какой надо
---
поставил и все равно пусто...
---
в управляемом или обычном приложении?
---
А как это понять?
---
ммм.... ну, допустим, если альт+ф нажать, че-нибуть происходит?
---
вообще ничего
---
похоже на управляемое...
ну, не знаю, можно посоветовать
- убедиться, что открыт именно тот вариант, который настраивался (ну или вообще, что именно тот отчет, который правим, бывает)
- проверить, что форма отчета не нарисованная, а стандартная. если нарисованная, там должна быть группа КомпоновщикНастроекПользовательскиеНастройки, если нет, юзать стандартную или пересоздать форму
- на всякий поменять имя отчета в конфигураторе
---
скрин выложите
---
если вы создали отчет через скд с параметром убедитесь в двух вещах галочка ограничения должна быть снята
---
а вы не могли бы глянуть в конфигурации где я настройки недокрутил?
---
ссылку дайте на cf
---
В конфигурации есть Отчет-тест, так называется и там параметр "Единица измерения" не отображается почему-то...
---
эх я думал в вы прошлом отчете это увидите:)
---
спасибо вам огромное, а то я просто не мог понять что изменилось,что оно отображается и не настройки искал
Добрый день!

Есть код формирующий Excel файл через com-объект, в 7ке такой же точно формирует файл за 10-15 минут. В 8ке (тот же объем данных) - несколько часов.
Замер производительности говорит что 90% времени занимает метод Ins ert. (собственно основой принцип построения - копирование шаблонной строки, вставка ее и заполнение).

```1c
    ExcelApp.Rows("тут адрес шаблонной строки").Select();
    ExcelApp.Selection.Copy();
    ExcelApp.Rows("тут адрес новой строки").Sele ct();
    ExcelApp.Selection.Insert(-4121); //вот тут все тормоза
```

Собственно вопрос: почему один и тот же код, на одном и том же сервере, с одним и тем же com-объектом работает настолько разное время?
Есть ли другой способ скопировать шаблон строки и заполнить его данными? (обязательно шаблон потому-что там куча сложных формул по расчету)
---
Сделал формирование через табличный документ, после записи открываю его com-объектом и проставляю формулы.
---
А зачем копировать? заполняйте FormulaR1C1.
Вон даже мелкосовфт для нас пишет
Свойство Range.FormulaR1C1 (Excel)
---
могу посоветовать попробовать на другой платформе, другой версии Excell
не понятно чем отличается код 7 и 8 в вашем случае, какие данные вставляются
почему не идете через создание табличного документа и сохранения его в Excell
---
почему не идете через создание табличного документа и сохранения его в Excell

основная причина - сохранить форматирование всех колонок и формулы в них. формулы обязательно, в табличном документе есть возможность вставлять формулы?
---
вообще формула из себя представляет текст. А что будет если этот текст написать в табл документе и сохранить в excell, я хз
над бы проверить
---
проверил, не работает))
---
еще можно попробовать сразу скопировать нужное количество строк. А не по одной. Ексель вообще вещь очень в себе, что там у него в мозгах, никто не знает.
---
+, в таком случае это хороший подход - создать строки заранее и потом заполнять (к примеру копировать удвоенным кол-вом строк за раз для уменьшения кол-ва операций)
(1) Надеюсь, у вас используются на время операции ExcelApp.Visible = False и ExcelApp.ActiveWorkBook.EnableCalculation = False ?

Рассмотрите вариант экспорта данных отдельно и использовать обработку данных средствами самого Excel
---
Сделал формирование через табличный документ, после записи открываю его com-объектом и проставляю формулы.
После выходных плохо думается что-то...
Дано: форма на которой лежит таб. часть справочника, в котором есть поле с типом "Дата". Нужно в момент перехода с этого поля, проверять ввели что-то или нет. Повесил событие "ПриИзменении", кроме как Элемент.ТекстРедактирования проверить нечего. Но если дата пустая то содержится строка вида " . . ". Не хотелось бы конечно сравнивать в явном виде. Как еще можно проверить? Проверить хочу именно в момент схода, а не приокончанииредактирования
---
А почему не обратиться к Элементы.ИмяТЧНаФорме.ТекущиеДанные? Используйте событие ПриИзменении всей табличной части.
---
Почему в обработчике события "ПриИзменении" Вы не обращаетесь непосредственно к значению?

```1c
    Если Не ЗначениеЗаполнено(Элементы.Таблица.ТекущиеДанные.РеквизитДаты) Тогда
    // тут код
    КонецЕсли;
```
---
Если Вам необходимо выполнять проверку именно при переходе на другой элемент формы, то используйте обработчик события "ОкончаниеВводаТекста". Здесь будет еще не установлено новое значение реквизита, то параметр "Текст" будет содержать строковое представление вводимых данных.

Ну а если исключить столь строгое ограничение момента проверки реквизита, то подскажите, по каким именно причинам не получилось использовать событие "ПриИзменении"? Что подразумевается под фразой "...кроме как Элемент.ТекстРедактирования проверить нечего"?
---
(3) и "ОкончаниеВводаТекста" и "ПриИзменении" в Элемент.ТекстРедактирования возвращает значение вида " . . ". Как определить что это пустая дата не прибегая к явному сравнению вида

```1c
    Если Элемент.ТекстРедактирования = " . . " Тогда
    //тут код
    КонецЕсли;
```

Никаких других данных(значений) нигде не содержится
(4) ПриОкончанииРедактирования не хочу использовать- колонок много
---
Если не хочется извращаться с текстом то можно так же при окончании ввода текста получить текущую строку и обратиться напрямую к дате
Элементы.ТабЧасть.ТекущиеДанные.ДатаФормы
Если уж совсем извращаться то можно сделать ЗначениеЗаполнено(СокрЛП(СтрЗаменить(Элемент.ТекстРедактирования,".","")));
---
А почему не обратиться к Элементы.ИмяТЧНаФорме.ТекущиеДанные? Используйте событие ПриИзменении всей табличной части.
---
(9) точно! зациклился что при создании процедуры подставляется
```1c
    ПриИзменении(Элемент)
```
---
Почему в обработчике события "ПриИзменении" Вы не обращаетесь непосредственно к значению?

```1c
    Если Не ЗначениеЗаполнено(Элементы.Таблица.ТекущиеДанные.РеквизитДаты) Тогда
    // тут код
    КонецЕсли;
```
---
анализируете Элемент.ТекстРедактирования - чтобы "поймать" ввод каждого символа ? Для чего? может проверять значение с типом "Дата" на заполненность ?
---
проверить нечего
как нечего, а значение в текущей строке?
---
Вот накидал по быстрому обработку. Можно повесить событие при окончании редактирования и получать доступ сразу к элементу.
---
закрыт
Выдает ошибку:
Ошибка исполнения отчета
по причине:
Ошибка при выполнении обработчика - 'ПриКомпоновкеРезультата'
по причине:
{ВнешнийОтчет.ВыполнениеЗаказовНаПроизводствоОтчет.МодульОбъекта(61)}: Ошибка при вызове метода контекста (Инициализировать)

по причине:
Ошибка компоновки данных
по причине:
Ошибка инициализации
по причине:
Ошибка создания набора данных "НаборДанных2"
по причине:
Не найден внешний набор данных
Вот код:

```1c
    Запрос = Соединение;
    Запрос = Соединение.NewObject("Запрос");
    Запрос.Текст ="ВЫБРАТЬ
    |уатПутевойЛист.СпидометрВозвращения - уатПутевойЛист.СпидометрВыезда КАК ПройденноеРасстояние,
    |уатПутевойЛист.Водитель1,
    |уатПутевойЛист.Водитель1.Код,
    |уатПутевойЛист.Водитель1.ДатаРождения,
    |уатПутевойЛист.Водитель1.Наименование
    |ИЗ
    |Документ.уатПутевойЛист КАК уатПутевойЛист";
    Результат =Запрос.Выполнить();
    Выборка=Результат.Выбрать();

    ТЗ=Новый ТаблицаЗначений;
    ТЗ.Колонки.Добавить("ПройденноеРасстояние");
    ТЗ.Колонки.Добавить("Водитель1");
    Тз.Колонки.Добавить("Вод");
    Тз.Колонки.Добавить("Код");
    Тз.Колонки.Добавить("ДатаРождения");

    Пока Выборка.Следующий() Цикл;
    Строка=ТЗ.Добавить();
    Строка.ПройденноеРасстояние=Выборка.ПройденноеРасстояние;
    Строка.Водитель1=Выборка.Водитель1Description;
    Строка.Код=Выборка.Водитель1Code;
    Строка.ДатаРождения=Выборка.Водитель1ДатаРождения;
    КонецЦикла;

    СтандартнаяОбработка = Ложь;

    НаборыДанных = Новый Структура("ВходящиеДанные", ТЗ);

    Схема = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");

    КМ = Новый КомпоновщикМакетаКомпоновкиДанных;

    Макет = КМ.Выполнить(Схема, КомпоновщикНастроек.Настройки);

    ПК = Новый ПроцессорКомпоновкиДанных;
    ПК.Инициализировать(Макет, НаборыДанных);

    ПВ = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ПВ.УстановитьДокумент(ДокументРезультат);
    ПВ.Вывести(ПК, Истина);
```

Внешний набор данных есть, на скрине видно.
В чем может быть причина?
---
Заполните поле "Имя объекта, содержащего данные" значением "ВходящиеДанные". Это имя ключа структуры, передаваемой процессору компоновки как внешние данные.
---
колонки в ТЗ не типизированные
---
почему тогда в другом, почти таком же отчете работает все?
---
я не телепат, ответить не могу
---
Заполните поле "Имя объекта, содержащего данные" значением "ВходящиеДанные". Это имя ключа структуры, передаваемой процессору компоновки как внешние данные.
---
Спасибо.Невнимательность)
Если в СКД, при установке отбора в режиме конфигуратора и задать представления отбора не показывает само поле выбора
---
http://prntscr.com/nzslxx

может это представление поможет. сам не так давно об этих 2х разных представлениях узнал
---
Так задумано. Представление дает пользователю элемент управления "Использование", но лишает его шаловливые ручки возможности менять детализацию элемента.
---
Кто в курсе подскажите как сделать чтобы и представление можно было написать и отбор работал нормально
---
т.е. вы хотите на один и тот же отбор назначить два условия?
так не получится, задайте другое имя отбору и все будет
---
я хочу сделать 2 отбора по одному и тому же полю - одно в списке, а другое Не в Списке, Только в режиме предприятия они выглядят одинаковыми, вот я и хочу написать представление, то ели представление <> "" то в режиме предприятия, поле почему то имеет вид "Только Флажок в шапке отчета", а бегать настраивать это каждому пользователю - это не вариант. Это касается всех отборов - если есть представление, то не видно поле отбора.
---
http://prntscr.com/nzslxx

может это представление поможет. сам не так давно об этих 2х разных представлениях узнал
---
Да это оно, спасибо. Кто бы мог подумать , что представление там нельзя заполнять а здесь можно!
---
Эх жаль что картинка больше недоступна :(
Может быть обновите? :)
---
Спасибо. Немножко не то что я хотел получить :)

Попробую спросить тут на всякий случай. Как сделать в СКД в режиме конфигуратора такие настройки, чтобы в пользовательском режиме для отбора был установлен признак - "Только флажок в шапке отчета"?
---
сделать как сделал автор этого сообщения
---
Пробовал, но чёт не прокатило в моём случае. У меня условие на "Реквизит > 0"

Может у меня руки конечно из того места растут. Попробую ещё. Спасибо вам за ответы.
Есть документ "Начисление зарплаты менеджерам", в нем таб часть "Менеджеры", данная таб часть должна заполняться менеджерами, которые в текущем месяце завершили сделки, то есть указаны в документе "Расходной накладной", помогите пожалуйста заполнить таб часть.
Я получила необходимых менеджеров запросом, но таб часть заполняется номерами строк(стандартный реквизит таб части), а фио не отображается

```1c
    &НаСервере
    Процедура ПолучениеТабл()
    Запрос=Новый Запрос();
    Запрос.Текст=
    "ВЫБРАТЬ
    |
    | РасходнаяНакладная.ОтветственныйМенеджер КАК ОтветственныйМенеджер
    |ИЗ
    | Документ.РасходнаяНакладная КАК РасходнаяНакладная
    |ГДЕ
    | РасходнаяНакладная.Дата МЕЖДУ &ДатаНачало И &ДатаКонец";
    Запрос.УстановитьПараметр("ДатаНачало",НачалоМесяца(Объект.Дата));
    Запрос.УстановитьПараметр("ДатаКонец",КонецМесяца(Объект.Дата));
    //Выборка= Запрос.Выполнить().Выбрать();
    //Пока Выборка.Следующий() Цикл
    // Объект.Менеджеры.Загрузить(Выборка.ОтветственныйМенеджер);
    // КонецЦикла;
    Объект.Менеджеры.Загрузить(Запрос.Выполнить().Выгрузить());

    КонецПроцедуры
```
---
Вопрос решен:)
Сделала так

```1c
    Пока Выборка.Следующий() Цикл
    НовСтрока=Объект.Менеджеры.Добавить();
    НовСтрока.ФИОМенеджера=Выборка.ОтветственныйМенеджер;
    КонецЦикла;
```
---
Вопрос решен:)
Сделала так

```1c
    Пока Выборка.Следующий() Цикл
    НовСтрока=Объект.Менеджеры.Добавить();
    НовСтрока.ФИОМенеджера=Выборка.ОтветственныйМенеджер;
    КонецЦикла;
```
Есть УТ 11.4.
Встала необходимость добавить документ. Сделали это через расширение. Все хорошо.
Но... заказчик захотел чтобы была в наличии возможность присоединить файл к документу, как это в типовых.
В расширении завели новый справочник <Документ>ПрисоединяемыеФайлы, все нужные реквизиты и ТЧ, как в типовой.
Заимствовали нужные определяемые типы, справочники и перечисления. в Определяемом типе в расширении добавили документ из расширения.

Проверка ошибок не показывает.

Кнопка "Файлы" в форме документа не появляется.

Понимаю, что что-то или не так сделали или забыли, но что именно?

Если делать тоже самое. но не в расширении, а с добавленным документом в основной конфигурации, все взлетает.

Отсюда вопрос знатокам - возможно ли такое в расширении в принципе и если да, то что и где надо доработать?
---
в Определяемом типе в расширении добавили документ из расширения. Вызывает вопросы эта фраза. Каким образом Вы добавили в определяемый тип свой документ, если состав определяемого типа в расширении нельзя изменять, только контролировать? В документации к платформе 8.3.14 явно это обозначено:
При расширении данных следует помнить о следующих особенностях и ограничениях:
● В расширении конфигурации не поддерживается использование заимствованных определяемых типов.
Возможно это и есть Ваш камень преткновения, не позволяющий реализовать присоединение файлов в расширениях.
---
в Определяемом типе в расширении добавили документ из расширения. Вызывает вопросы эта фраза. Каким образом Вы добавили в определяемый тип свой документ, если состав определяемого типа в расширении нельзя изменять, только контролировать? В документации к платформе 8.3.14 явно это обозначено:
При расширении данных следует помнить о следующих особенностях и ограничениях:
● В расширении конфигурации не поддерживается использование заимствованных определяемых типов.
Возможно это и есть Ваш камень преткновения, не позволяющий реализовать присоединение файлов в расширениях.
---
действительно не поддерживается, документацию плохо читали ((
в результате, чтобы не тащить всю БСП, сделали замену по найденной на этом же сайте статье
---
есть подозрение, что расширение не может работать с присоединяемыми к объектам файлами...
---
может все дело в том, что у заимствованного ОпределяемогоТипа снимается флаг проверки значения при применении расширения и он становится "серым" или еще из-за чего, но факт, что у документа, добавленного в основную конфигурацию при выполнении точно таких же действий все появляется и работает, а у документа из расширения заветной кнопочки "Файлы" не появляется...
---
В общую команду добавьте свой тип.
У документа "Заказ" на форме расположена кнопка "Печать", которая вызывает общую
комманду (рис. 1). Нужно сделать аналогичную кнопку для "Расходной накладной". Как видно на рис.1, комманда ссылается на "Объект.Ссылка" в списке Глобальных комманд. В списке Расходной нет записи "Объект.Ссылка". Вопрос: как добавить?
---
В общей команде в свойствах указать в типе параметра команды нужный документ, т.е. расходную накладную
---
В общей команде в свойствах указать в типе параметра команды нужный документ, т.е. расходную накладную
Добрый день!

Есть область макета - строка. У нее есть 3 колонки: колонка1, колонка2, колонка3. После получения области, вот так "макет.получитьОбласть("строка")", нужно программно установить для колонки1 шрифт - наклонный, для колонки2 и колонки3 выравнивание - по центру. Как это сделать?
---
Устанавливать все это надо после выведения области в табличный документ. Примерно так:

```1c
    Шрифт = Новый Шрифт(.......);//см. конструктор шрифта

    //цикл выведения
    ТабДок.Вывести(ОбластьСтрока);
    ТабДок.Область(ТабДок.ВысотаТаблицы, НомерКолонки1).Шрифт = Шрифт;
```

и так далее.
---
Устанавливать все это надо после выведения области в табличный документ. Примерно так:

```1c
    Шрифт = Новый Шрифт(.......);//см. конструктор шрифта

    //цикл выведения
    ТабДок.Вывести(ОбластьСтрока);
    ТабДок.Область(ТабДок.ВысотаТаблицы, НомерКолонки1).Шрифт = Шрифт;
```

и так далее.
---
ТабДок.Область(ТабДок.ВысотаТаблицы, НомерКолонки1).Шрифт = Шрифт;

А если, например, колонка 1 состоит из 3-х объедиенных ячеек, тогда как?
---
Разобрался, вот так:

ТабДок.Область(ТабДок.ВысотаТаблицы, начальнаяКолонка, ТабДок.ВысотаТаблицы, конечнаяКолонка).Шрифт = Шрифт;
На упр форме расположена кнопка, которая вызывает общую комманду, которая, в свою очередь, вызывает обработку печати. У пользователя без Полных прав нажатие на кнопку вызывает Нарушение прав доступа. Разрешил просмотр и использование этой комманды и обработки в одном из наборе прав, но это не помогло.

Подскажите, пожалуйста, куда смотреть, где копать? Неужели нужно для всех наборов прав этого пользователя (а их больше 10-ти) разрешить использование?
---
Загляните в журнал регистрации после воспроизведения ошибки. Там должна быть информация к какому объекту конфигурации было отказано в доступе.
---
Загляните в журнал регистрации после воспроизведения ошибки. Там должна быть информация к какому объекту конфигурации было отказано в доступе.
---
это оно! СПАСИБО!
---
Пожалуйста :D
Никак не могу остановиться в процедуре на сервере, перешерстил кучу форумов, сервер запущен с -debug, в конфигураторе вижу это(смСкрин). Но не во внешних обработках, не в расширениях не могу остановиться в функциях &НаСервере.
---
Решено, была ошибка в коде, пытался вызвать сразу функцию на сервере по кнопке.
---
Решено, была ошибка в коде, пытался вызвать сразу функцию на сервере по кнопке.
Нужно сделать отчеты по документам "Оприходование излишков товаров" и "Списание недостач товаров". Можно ли сделать эти отчеты в одной скд, например на форме сделать какой-нибудь переключатель и выбирать или один отчет, либо другой?
---
пример внутри
---
почему бы нет. Добавляем Объединение и 2 набора данных, по параметру ставим ограничение. То есть какой то набор данных будет пустым. Да и вообще ПриКомпоновкеРезультата можно удалить тот или иной набор данных
---
Через параметр в условии, может...
Тогда, если у вас на форме переключатель в одном положении, срабатывает первое условие в запросе, в другом второе
---
Да возможно , в процедуре ПриКомпоновкеРезультата .
---
а чем плохо сделать два набора данных и два варианта отчета?
---
мне этот вариант нравится, как на закладке "Настройки" выбрать данные из НабораДанных2?
---
по разному назвать все реквизиты похожие и все во вкладке "настройки" они будут по разному называться, вот только если захотите использовать реквизиты из двух наборов в одном варианте отчета, то наборы придется связывать (как таблицы в запросе)
---
пример внутри
Собственно вопрос как к точкам или сериям на диаграмме на СКД добавить в легенде свой текст?
То есть точки со значениями 1, 2 и 3. В легенде просто написано 1, 2, 3. А надо добавить слово "этаж"
---
Создать вычисляемое поле и в выражении прописать
Строка(Этаж)+" этаж"
Его и выбирать в сериях
---
Создать вычисляемое поле и в выражении прописать
Строка(Этаж)+" этаж"
Его и выбирать в сериях
---
Без СКД в отчете я делал так:

Серия = Диаграмма.УстановитьСерию(Выборка.Колво);
Серия.Текст = Строка(Выборка.Колво)+" этаж";
---
Можно использовать выражение представления для поля "этаж", что-то типа Строка(Этаж)+" этаж"
Добрый день! Подскажите пожалуйста, есть ли возможность в ОФ в форме списка убрать рамки(границы) у колонок(ячеек строки)?
---
назначить рамке цвет ячейки. как идея. нет конфы подходящей под рукой.
---
цветом не?
---
в смысле закрасить ячейку цветом рамки? не подходит, дополнительная нагрузка на оформление ячейки. Эти ячейки в дальнейшем будут заполняться зеленым цветом
---
назначить рамке цвет ячейки. как идея. нет конфы подходящей под рукой.
---
я в свойствах Оформление ставил нет рамки и белый цвет рамки, ничего не поменялось
---
О, спасибо, попробую сделать, не сразу допетрил
---
У свойства табличного поля на форме убрать. см. вложение.
---
Это для всего табличного поля, не подходит, мне необходимо только для определенных ячеек убрать.(
---
у меня противоположная проблема - свойства установлены, а рамка не отображается
---
Тогда только цвета рамки у ячейки
Добрый день, с помощью обработки планирую изменить Код(номер) у спр. Физических Лиц, чтоб поменять формат написания. Скажите, с ссылками ничего не случится ?
---
Нет. Возможно только изменится представление, если У вас прописано представление ссылки используя код
---
Нет. Возможно только изменится представление, если У вас прописано представление ссылки используя код
---
Спасибо
Здравствуйте.

Конфигурация УНФ для Украины 1.6. Пытаюсь разобраться как на форме создаются поля ввода. В конфигураторе их нет (рис.1). Они каким-то образом создаются при открытии формы (рис. 2). Каким - гне могу понять. Очень мало опыта с упр формами(

Помогите разобраться, пожалуйста.
---
программно заполняется.

```1c
    ПриСозданииНаСервере
    {
    ПриСозданииПриЧтенииНаСервере();
    {
    ПрочитатьСвойстваВидовКонтактнойИнформацииКонтактныхЛиц();
    ЗаполнитьТаблицуКонтактнойИнформацииКонтактныхЛиц();
    ОбновитьЭлементыКонтактныхЛиц();
    }
    }
```
---
программно заполняется.

```1c
    ПриСозданииНаСервере
    {
    ПриСозданииПриЧтенииНаСервере();
    {
    ПрочитатьСвойстваВидовКонтактнойИнформацииКонтактныхЛиц();
    ЗаполнитьТаблицуКонтактнойИнформацииКонтактныхЛиц();
    ОбновитьЭлементыКонтактныхЛиц();
    }
    }
```
---
Включите замер производительностии в конфигураторе и откройте форму в режиме предприятия.
После выключения замера вы увидите вызовы общих процедур.