БСП (Бухгалтерия 3.0, УТ 11)

Стандартные подсистемы:

В свойствах объекта конфигурации необходимо установить "галочку": "Использование стандартные команды"

&НаСервере

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

// СтандартныеПодсистемы.Печать

УправлениеПечатью.ПриСозданииНаСервере(ЭтаФорма, Элементы.ФормаКоманднаяПанель);

// Конец СтандартныеПодсистемы.Печать

// ДополнительныеОтчетыИОбработки

ДополнительныеОтчетыИОбработки.ПриСозданииНаСервере(ЭтаФорма);

// Конец ДополнительныеОтчетыИОбработки

// СтандартныеПодсистемы.ВерсионированиеОбъектов

ВерсионированиеОбъектов.ПриСозданииНаСервере(ЭтотОбъект);

// Конец СтандартныеПодсистемы.ВерсионированиеОбъектов

//.............................

КонецПроцедуры

1. Печать

Модуль менеджера объекта

#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда

// Заполняет список команд печати.

//

// Параметры:

// КомандыПечати - ТаблицаЗначений - состав полей см. в функции УправлениеПечатью.СоздатьКоллекциюКомандПечати

//

Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт

// Отчет кассира-операциониста

КомандаПечати = КомандыПечати.Добавить();

КомандаПечати.Идентификатор = "ОтчетКассираОперациониста";

КомандаПечати.Представление = НСтр("ru = 'Отчет кассира-операциониста'");

КомандаПечати.Обработчик = "УправлениеПечатьюБПКлиент.ВыполнитьКомандуПечати";

КомандаПечати.СписокФорм = "ФормаСписка,ФормаДокумента";

КонецПроцедуры

// Обработчик команд печати.

//

// Параметры:

// МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода - состав полей см. в функции УправлениеПечатью.СоздатьКоллекциюКомандПечати

//

Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

// Устанавливаем признак доступности печати покомплектно.

ПараметрыВывода.ДоступнаПечатьПоКомплектно = Истина;

// Проверяем, нужно ли для макета формировать табличный документ.

Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ОтчетКассираОперациониста") Тогда

// Формируем табличный документ и добавляем его в коллекцию печатных форм.

УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм,

"ОтчетКассираОперациониста",

"Отчет кассира-операциониста",

ПечатьОКО(МассивОбъектов, ОбъектыПечати));

КонецЕсли;

ОбщегоНазначенияБП.ЗаполнитьДополнительныеПараметрыПечати(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода);

КонецПроцедуры

Функция получения табличного документа.

// Получение табличного документа.

//

// Параметры:

// МассивОбъектов - массив документов

// ОбъектыПечати

//

Функция ПечатьОКО(МассивОбъектов, ОбъектыПечати)

УстановитьПривилегированныйРежим(Истина);

ТабДок = Новый ТабличныйДокумент;

ТабДок.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ОперационнаяКассаО1";

Макет = ПолучитьМакет("Печать");

//Для вывода каждого документа с новой страницы

ПервыйДокумент = Истина;

Для Индекс = 0 По МассивОбъектов.Количество()-1 Цикл

СсылкаНаОбъект = МассивОбъектов[Индекс];

// Вывод каждого документа с новой страницы

Если НЕ ПервыйДокумент Тогда

ТабДок .ВывестиГоризонтальныйРазделительСтраниц();

КонецЕсли;

//Для вывода каждого документа с новой страницы

ПервыйДокумент = Ложь;

// Запомним номер строки, с которой начали выводить текущий документ.

НомерСтрокиНачало = ТабДок.ВысотаТаблицы + 1;

Секция = Макет.ПолучитьОбласть("<имя секции>");

Секция.Параметры.<имя параметра> = <значение параметра>;

.

.

.

ТабДок.Вывести(Секция);

// В табличном документе зададим имя области, в которую был

// выведен объект. Нужно для возможности печати покомплектно.

УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабДок, НомерСтрокиНачало, ОбъектыПечати, СсылкаНаОбъект );

КонецЦикла;

Возврат ТабДок;

КонецФункции

#КонецЕсли

Модуль формы объекта

&НаСервере

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

// СтандартныеПодсистемы.Печать

УправлениеПечатью.ПриСозданииНаСервере(ЭтаФорма, Элементы.ФормаКоманднаяПанель);

// Конец СтандартныеПодсистемы.Печать

// ДополнительныеОтчетыИОбработки

ДополнительныеОтчетыИОбработки.ПриСозданииНаСервере(ЭтаФорма);

// Конец ДополнительныеОтчетыИОбработки

.

.

.

КонецПроцедуры

////////////////////////////////////////////////////////////////////////////////

// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ БСП

// СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки

&НаСервере

Процедура ДополнительныеОтчетыИОбработкиВыполнитьНазначаемуюКомандуНаСервере(ИмяЭлемента, РезультатВыполнения)

ДополнительныеОтчетыИОбработки.ВыполнитьНазначаемуюКомандуНаСервере(ЭтаФорма, ИмяЭлемента, РезультатВыполнения);

КонецПроцедуры

// Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки

// СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки

&НаКлиенте

Процедура Подключаемый_ВыполнитьНазначаемуюКоманду(Команда)

Если НЕ ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьНазначаемуюКомандуНаКлиенте(ЭтаФорма, Команда.Имя) Тогда

РезультатВыполнения = Неопределено;

ДополнительныеОтчетыИОбработкиВыполнитьНазначаемуюКомандуНаСервере(Команда.Имя, РезультатВыполнения);

ДополнительныеОтчетыИОбработкиКлиент.ПоказатьРезультатВыполненияКоманды(ЭтаФорма, РезультатВыполнения);

КонецЕсли;

КонецПроцедуры

// Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки

// СтандартныеПодсистемы.Печать

&НаКлиенте

Процедура Подключаемый_ВыполнитьКомандуПечати(Команда)

УправлениеПечатьюКлиент.ВыполнитьПодключаемуюКомандуПечати(Команда, ЭтаФорма, Объект);

КонецПроцедуры

// Конец СтандартныеПодсистемы.Печать

ВАРИАНТ2: Команда печати через общие команды

Текст команды

&НаКлиенте

Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)

//Вставить содержимое обработчика.

УправлениеПечатьюКлиент.ВыполнитьКомандуПечати("Документ.диоИнвентаризацияДрагметаллов", "ИнвентаризационнаяОписьИНВ_8а", ПараметрКоманды,

ПараметрыВыполненияКоманды, ОбщегоНазначенияБПКлиент.ПолучитьЗаголовокПечатнойФормы(ПараметрКоманды));

КонецПроцедуры

2. Внешняя печатная форма

    1. Прежде всего, необходимо принять решение по поводу состава типов объектов метаданных конфигурации, для которых должна быть возможность выполнения назначаемых внешних обработок и отчетов. Например, это могут быть все справочники и документы конфигурации. Состав типов этих объектов необходимо задать в свойстве Тип параметра команды в следующих общих командах:

    2. ДополнительныеОтчетыИОбработкиЗаполнениеОбъекта

    3. ДополнительныеОтчетыИОбработкиОтчеты

    4. ДополнительныеОтчетыИОбработкиПечатныеФормы

    5. ДополнительныеОтчетыИОбработкиСозданиеСвязанныхОбъектов

    6. Для каждого определенного выше объекта метаданных необходимо внести изменения во все его формы объекта и списка.

В свойствах объекта конфигурации необходимо установить "галочку": "Использование стандартные команды"

Пример создания внешней печатной формы

Рассмотрим небольшой пошаговый пример создания внешней печатной формы ТОРГ-12 для новой системы.

1. Создайте обработку, прикрепите к ней макет будущей печатной формы.

2. Создайте глобальную переменную модуля объекта СсылкаНаОбъект, куда будет передаваться ссылка на документ.

3. В модуле объекта необходимо создать экспортную функцию СведенияОВнешнейОбработке

Функция должна возвращать структуру со следующими ключами:

  • Вид – назначения объекта. Возможные значения: «ДополнительныйОтчет», «ЗаполнениеОбъекта», «ДополнительнаяОбработка», «Отчет», «ПечатнаяФорма» или «СозданиеСвязанныхОбъектов».

  • Назначение – массив названий объектов, для которого предназначается данных отчет или обработка. Например – “Документ.РеализацияТоваровУслуг”.

  • Наименование – строка, пользовательское имя обработки.

  • Команды – таблица значений, в которой содержатся команды, которые будут использоваться для добавления обработки или отчета в интерфейс программы (колонки таблицы: “Представление”, “Идентификатор”, “Использование”, “ПоказыватьОповещение”,”Модификатор”).

  • ВерсияБСП – строка, версия встроенной в конфигурации библиотеки стандартных подсистем. Необходимы для поддержки совместимости.

  • БезопасныйРежим – булево, отображает режим запуска обработка – безопасный или нет. В безопасном режиме недоступен привилегированный режим, COM-соединение, загрузка dll, доступ к файловой системе и интернету.

  • Информация – строка, комментарий, который характеризует обработку.

  • Версия – строка, версия обработки.

#Область СведенияОПечатнойФорме

Функция СведенияОВнешнейОбработке() Экспорт

ОбъектыНазначенияФормы = Новый Массив;

ОбъектыНазначенияФормы.Добавить("Документ.РеализацияТоваровУслуг");

ПараметрыРегистрации = ПолучитьПараметрыРегистрации(ОбъектыНазначенияФормы, "ТОРГ – 12 (альтернативная)");

ПараметрыРегистрации.Версия = "2014.03.07";

ПараметрыРегистрации.Информация = "Внешняя печатная форма документа реализации товаров и услуг ТОРГ – 12 (альтернативная)";

ТаблицаКоманд = ПолучитьТаблицуКоманд();

ДобавитьКоманду(ТаблицаКоманд,

"ТОРГ – 12 (альтернативная)", // Представление команды в пользовательском интерфейсе

"ТОРГ_12_альтернативная", // Уникальный идентификатор команды

"ВызовСерверногоМетода", // Использование команды //ОткрытиеФормы

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

"ПечатьMXL" // Дополнительный модификатор команды.

);

ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);

Возврат ПараметрыРегистрации;

КонецФункции

Где функция ПолучитьПараметрыРегистрации:

Функция ПолучитьПараметрыРегистрации(ОбъектыНазначенияФормы = Неопределено, НаименованиеОбработки = “”, Информация = “”, Версия = “1.0.0″)

Если ТипЗнч(ОбъектыНазначенияФормы) = Тип(“Строка”) Тогда

ОбъектНазначенияФормы = ОбъектыНазначенияФормы;

ОбъектыНазначенияФормы = Новый Массив;

ОбъектыНазначенияФормы.Добавить(ОбъектНазначенияФормы);

КонецЕсли;

ПараметрыРегистрации = Новый Структура;

ПараметрыРегистрации.Вставить(“Вид”, “ПечатнаяФорма”);

ПараметрыРегистрации.Вставить(“БезопасныйРежим”, Истина);

ПараметрыРегистрации.Вставить(“Назначение”, ОбъектыНазначенияФормы);

Если Не ЗначениеЗаполнено(НаименованиеОбработки) Тогда

НаименованиеОбработки = ЭтотОбъект.Метаданные().Представление();

КонецЕсли;

ПараметрыРегистрации.Вставить(“Наименование”, НаименованиеОбработки);

Если Не ЗначениеЗаполнено(Информация) Тогда

Информация = ЭтотОбъект.Метаданные().Комментарий;

КонецЕсли;

ПараметрыРегистрации.Вставить(“Информация”, Информация);

ПараметрыРегистрации.Вставить(“Версия”, Версия);

Возврат ПараметрыРегистрации;

КонецФункции

Фукнция ПолучитьТаблицуКоманд:

Функция ПолучитьТаблицуКоманд()

Команды = Новый ТаблицаЗначений;

Команды.Колонки.Добавить(“Представление”, Новый ОписаниеТипов(“Строка”));

Команды.Колонки.Добавить(“Идентификатор”, Новый ОписаниеТипов(“Строка”));

Команды.Колонки.Добавить(“Использование”, Новый ОписаниеТипов(“Строка”));

Команды.Колонки.Добавить(“ПоказыватьОповещение”, Новый ОписаниеТипов(“Булево”));

Команды.Колонки.Добавить(“Модификатор”, Новый ОписаниеТипов(“Строка”));

Возврат Команды;

КонецФункции

Процедура добавление команд ДобавитьКоманду:

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = “”)

// Добавляем команду в таблицу команд по переданному описанию.

// Параметры и их значения можно посмотреть в функции ПолучитьТаблицуКоманд

НоваяКоманда = ТаблицаКоманд.Добавить();

НоваяКоманда.Представление = Представление;

НоваяКоманда.Идентификатор = Идентификатор;

НоваяКоманда.Использование = Использование;

НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;

НоваяКоманда.Модификатор = Модификатор;

КонецПроцедуры

#КонецОбласти

В данных функциях описываются сведения о внешней печатной формы.

4. В модуле объекта печатной формы необходимо добавить предопределённую процедуру “Печать”, которая будет запускаться при печати. В качестве аналога этой процедуры можно использовать как вышеописанный вариант или:

Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм,

“ТОРГ_12_Альтернативная”, “ТОРГ 12 (Альтернативная)”,

ПолучитьТабличныйДокумент(МассивОбъектов, ОбъектыПечати));

ОбщегоНазначенияБП.ЗаполнитьДополнительныеПараметрыПечати(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода);

КонецПроцедуры

Функция ПолучитьТабличныйДокумент(МассивОбъектов, ОбъектыПечати)

ТабДокумент = Новый ТабличныйДокумент;

// Зададим параметры макета по умолчанию

ТабДокумент.ПолеСверху = 10;

ТабДокумент.ПолеСлева = 0;

ТабДокумент.ПолеСнизу = 0;

ТабДокумент.ПолеСправа = 0;

ТабДокумент.РазмерКолонтитулаСверху = 10;

ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Портрет;

// Загрузим настройки пользователя

ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ИнвентаризацияОС_ИНВ01_01";

Макет = ПолучитьМакет("ИНВ01");

ПервыйДокумент = Истина;

Для Индекс = 0 По МассивОбъектов.Количество() - 1 Цикл

Если Не ПервыйДокумент Тогда

ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();

КонецЕсли;

ПервыйДокумент = Ложь;

//..

// В табличном документе зададим имя области, в которую был

// выведен объект. Нужно для возможности печати покомплектно.

УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабДокумент,

НомерСтрокиНачало, ОбъектыПечати, СсылкаНаДокумент);

КонецЦикла;

Возврат ТабДокумент;

КонецФункции

Где функция ПолучитьТабличныйДокументТорг12(…) – функция, которая вернет уже подготовленный табличный документ для печати (подробности как это делается – создание и настройка печатных форм).

3. СтандартныеПодсистемы.ДатыЗапретаИзменения

В форму документа

&НаСервере

Процедура ПриЧтенииНаСервере(ТекущийОбъект)

// СтандартныеПодсистемы.ДатыЗапретаИзменения

ДатыЗапретаИзменения.ОбъектПриЧтенииНаСервере(ЭтаФорма, ТекущийОбъект);

// Конец СтандартныеПодсистемы.ДатыЗапретаИзменения

КонецПроцедуры

Для бухучета в общий модуль ДатыЗапретаИзмененияБП в процедуре ЗаполнитьИсточникиДанныхДляПроверкиЗапретаИзменения(Знач ИсточникиДанных)

Процедура ЗаполнитьИсточникиДанныхДляПроверкиЗапретаИзменения(Знач ИсточникиДанных) Экспорт

//....

ДатыЗапретаИзменения.ДобавитьСтроку(ИсточникиДанных, "Документ.<имя документа>", "Дата" , "БухгалтерскийУчет", "Организация");

//....

КонецПроцедуры

4. Управление счетами и субконто в формах

Вместе с реквизитами произвольного типа ("ЛюбаяСсылка"):

    • "СубконтоИ1",

    • "СубконтоИ2",

    • "СубконтоИ3"

необходимы также соответствующие реквизиты "СубконтоИ1Доступность", "СубконтоИ2Доступность", "Субконто3Доступность" типа "Булево"

#Область НовыйСчетИнтернетПродажИЕгоСубконто

#Область ПоСчету

&НаСервереБезКонтекста

Функция ПолугитьОрганизацию()

//Получить Организацию

КодУзла = ПланыОбмена.ПоОрганизации.ЭтотУзел().Код;

Организация = Справочники.Организации.ПустаяСсылка();

ВыборкаОрганизаций = Справочники.Организации.Выбрать();

Пока ВыборкаОрганизаций.Следующий() Цикл

Если СокрЛП(ВыборкаОрганизаций.Код) = СокрЛП(КодУзла) Тогда

Организация = ВыборкаОрганизаций.Ссылка;

Прервать;

КонецЕсли;

КонецЦикла;

Возврат Организация;

КонецФункции // ПолугитьОрганизацию()

&НаКлиентеНаСервереБезКонтекста

Функция ПолучитьСписокПараметров(Форма, ТекущиеДанные, ШаблонИмяПоляОбъекта, ИмяПоляСчетУчета)

//Получить Организацию

Организация = ПолугитьОрганизацию();

СписокПараметров = Новый Структура("Организация,СчетУчета,ОстаткиОбороты", Организация, ТекущиеДанные[ИмяПоляСчетУчета]);

ТипыДоговора = БухгалтерскийУчетКлиентСерверПереопределяемый.ПолучитьОписаниеТиповДоговора().Типы();

Для Индекс = 1 По 3 Цикл

ИмяПоля = СтрЗаменить(ШаблонИмяПоляОбъекта, "%Индекс%", Индекс);

ДанныеПоля = ТекущиеДанные[ИмяПоля];

ТипПоля = ТипЗнч(ДанныеПоля);

Если ТипПоля = Тип("СправочникСсылка.Контрагенты") Тогда

СписокПараметров.Вставить("Контрагент", ДанныеПоля);

ИначеЕсли ТипыДоговора.Найти(ТипПоля) <> Неопределено Тогда

СписокПараметров.Вставить("ДоговорКонтрагента", ДанныеПоля);

ИначеЕсли ТипПоля = Тип("СправочникСсылка.Номенклатура") Тогда

СписокПараметров.Вставить("Номенклатура", ДанныеПоля);

ИначеЕсли ТипПоля = Тип("СправочникСсылка.Склады") Тогда

СписокПараметров.Вставить("Склад", ДанныеПоля);

КонецЕсли;

КонецЦикла;

Возврат СписокПараметров;

КонецФункции

&НаКлиенте

Процедура ИзменитьПараметрыВыбораПолейСубконто(Форма)

ПараметрыДокумента = ПолучитьСписокПараметров(Форма, Форма.Объект, "СубконтоИ%Индекс%", "СчетИнтернетПродаж");

БухгалтерскийУчетКлиентСервер.ИзменитьПараметрыВыбораПолейСубконто( Форма, Форма.Объект, "СубконтоИ%Индекс%", "СубконтоИ%Индекс%", ПараметрыДокумента);

КонецПроцедуры

&НаКлиенте

Процедура ЗаполнитьНадписиСубконто(Форма)

//Установить видимость,заголовки и прочее

Для Индекс = 1 По 3 Цикл

Если НЕ(СокрЛП(Форма.Элементы["СубконтоИ"+Индекс].ОграничениеТипа)= "") Тогда

Форма.Элементы["СубконтоИ"+Индекс].Заголовок = СокрЛП(Форма.Элементы["СубконтоИ"+Индекс].ПодсказкаВвода);

Форма.Элементы["СубконтоИ"+Индекс].Видимость = Истина;

Форма.Элементы["СубконтоИ"+Индекс].ВыбиратьТип = Ложь;

Иначе

Форма.Элементы["СубконтоИ"+Индекс].Заголовок = "Субконто" + +Индекс;

Форма.Элементы["СубконтоИ"+Индекс].Видимость = Ложь;

КонецЕсли;

КонецЦикла;

ОбновитьОтображениеДанных();

КонецПроцедуры

&НаКлиенте

Процедура ОбработатьИзменениеСчета(Форма, ПриНачале = Истина)

//Получить Организацию

Организация = ПолугитьОрганизацию();

ПоляФормы = Новый Структура("Субконто1,Субконто2,Субконто3");

ПоляФормы.Субконто1 = "СубконтоИ" + "1";

ПоляФормы.Субконто2 = "СубконтоИ" + "2";

ПоляФормы.Субконто3 = "СубконтоИ" + "3";

БухгалтерскийУчетКлиентСервер.ПриВыбореСчета(форма.Объект.СчетИнтернетПродаж, Форма, ПоляФормы, Неопределено, Истина);

ПоляОбъекта = Новый Структура("Субконто1,Субконто2,Субконто3,Организация");

ПоляОбъекта.Субконто1 = "СубконтоИ" + "1";

ПоляОбъекта.Субконто2 = "СубконтоИ" + "2";

ПоляОбъекта.Субконто3 = "СубконтоИ" + "3";

ПоляОбъекта.Организация = Организация;

БухгалтерскийУчетКлиентСервер.ПриИзмененииСчета(Форма.Объект.СчетИнтернетПродаж, Форма.Объект, ПоляОбъекта, Истина);

ИзменитьПараметрыВыбораПолейСубконто(Форма);

Если ПриНачале Тогда

ЗаполнитьНадписиСубконто(Форма);

КонецЕсли;

КонецПроцедуры

&НаКлиенте

Процедура СчетИнтернетПродажПриИзменении(Элемент)

Если СокрЛП(Элементы.СчетИнтернетПродаж) <> "" Тогда

ОбработатьИзменениеСчета(ЭтотОбъект);

КонецЕсли;

КонецПроцедуры

#КонецОбласти

#Область ПоСубконто

&НаКлиенте

Процедура ОбработатьНачалоВыбораСубконто(Элемент, СтандартнаяОбработка)

ПараметрыДокумента = ПолучитьСписокПараметров(ЭтотОбъект, ЭтотОбъект.Объект, "СубконтоИ%Индекс%", "СчетИнтернетПродаж");

ОбщегоНазначенияБПКлиент.НачалоВыбораЗначенияСубконто(ЭтотОбъект, Элемент, СтандартнаяОбработка, ПараметрыДокумента);

КонецПроцедуры

//////////////////////////////////////////////////////////////////////////////////////////////////

&НаКлиенте

Процедура СубконтоИ1ПриИзменении(Элемент)

ИзменитьПараметрыВыбораПолейСубконто(ЭтотОбъект);

КонецПроцедуры

&НаКлиенте

Процедура СубконтоИ1НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)

ОбработатьНачалоВыбораСубконто(Элемент, СтандартнаяОбработка);

КонецПроцедуры

//////////////////////////////////////////////////////////////////////////////////////////////////

&НаКлиенте

Процедура СубконтоИ2ПриИзменении(Элемент)

ИзменитьПараметрыВыбораПолейСубконто(ЭтотОбъект);

КонецПроцедуры

&НаКлиенте

Процедура СубконтоИ2НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)

ОбработатьНачалоВыбораСубконто(Элемент, СтандартнаяОбработка);

КонецПроцедуры

//////////////////////////////////////////////////////////////////////////////////////////////////

&НаКлиенте

Процедура СубконтоИ3ПриИзменении(Элемент)

ИзменитьПараметрыВыбораПолейСубконто(ЭтотОбъект);

КонецПроцедуры

&НаКлиенте

Процедура СубконтоИ3НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)

ОбработатьНачалоВыбораСубконто(Элемент, СтандартнаяОбработка);

КонецПроцедуры

#КонецОбласти

#КонецОбласти