Подскажите пожалуйста как реализовать в типовой КА снятие доступности вкладки.
Подробнее: Есть форма "РегистрацияСерийТоваров", в ней есть 2 вкладки: ввод серий и вторая - выбор. В документе "РасходныйОрдерНаТовары", нужно чтобы вкладка ввод была не доступаная, только если вызывается из "ПриходногоОрдераНаТовары"... Форма вызывается одна и та же, т.к. в расширении пыталась убрать доступность, "убирается" в обоих случаях и в расходных ордерах и в приходных.
Нашла процедуру документа РасходныйОрдерНаТовары, в которой вызывается форма регистраци:
Форму и код обработки, где открывается эта форма...
Но как написать и где - не пойму, надо проверять сначала из какого документа открывается эта форма (расходного или приходного), если из расходного что-то типа: ЭлементФормы.СтраницаВводСерии.Доступность = Ложь... ?
Подробнее: Есть форма "РегистрацияСерийТоваров", в ней есть 2 вкладки: ввод серий и вторая - выбор. В документе "РасходныйОрдерНаТовары", нужно чтобы вкладка ввод была не доступаная, только если вызывается из "ПриходногоОрдераНаТовары"... Форма вызывается одна и та же, т.к. в расширении пыталась убрать доступность, "убирается" в обоих случаях и в расходных ордерах и в приходных.
Нашла процедуру документа РасходныйОрдерНаТовары, в которой вызывается форма регистраци:
&НаКлиенте
Процедура ОткрытьПодборСерий(ИмяТЧ, Текст = "", ТекущиеДанные = Неопределено)
Если НоменклатураКлиент.ДляУказанияСерийНуженСерверныйВызов(ЭтаФорма,ПараметрыУказанияСерий[ИмяТЧ],Текст, ТекущиеДанные) Тогда
Если ТекущиеДанные = Неопределено Тогда
ТекущиеДанныеИдентификатор = Элементы[ИмяТЧ].ТекущиеДанные.ПолучитьИдентификатор();
Иначе
ТекущиеДанныеИдентификатор = ТекущиеДанные.ПолучитьИдентификатор();
КонецЕсли;
ПараметрыФормыУказанияСерий = ПараметрыФормыУказанияСерий(ТекущиеДанныеИдентификатор, ИмяТЧ);
ОписаниеОповещения = Новый ОписаниеОповещения("ОткрытьПодборСерийЗавершение",
ЭтотОбъект,
Новый Структура("ИмяТЧ,ПараметрыФормыУказанияСерий", ИмяТЧ,ПараметрыФормыУказанияСерий));
ОткрытьФорму(ПараметрыФормыУказанияСерий.ИмяФормы,
ПараметрыФормыУказанияСерий,
ЭтаФорма,
,
,
,
ОписаниеОповещения,
РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
КонецЕсли;
КонецПроцедуры
ПоказатьФорму и код обработки, где открывается эта форма...
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
Если Не ЭтоАдресВременногоХранилища(Параметры.АдресВоВременномХранилище) Тогда
ТекстСообщения = НСтр("ru='Предусмотрено открытие обработки только из документов.'");
ВызватьИсключение ТекстСообщения;
КонецЕсли;
ПараметрыУказанияСерий = Параметры.ПараметрыУказанияСерий;
ЗначенияПолейСвязиСтруктура = Новый Структура(СтрСоединить(ПараметрыУказанияСерий.ПоляСвязи,","));
ЗначенияПолейСвязиСтруктура.Вставить("Номенклатура");
ЗначенияПолейСвязиСтруктура.Вставить("Характеристика");
ЗначенияПолейСвязиСтруктура.Вставить("Склад");
ЗаполнитьЗначенияСвойств(ЗначенияПолейСвязиСтруктура, Параметры);
ЗначенияПолейСвязи = Новый ФиксированнаяСтруктура(ЗначенияПолейСвязиСтруктура);
РеквизитыНоменклатуры = Новый Структура;
РеквизитыНоменклатуры.Вставить("ВидНоменклатуры", "ВидНоменклатуры");
РеквизитыНоменклатуры.Вставить("ЕдиницаИзмеренияПредставление", "ЕдиницаИзмерения.Наименование");
РеквизитыНоменклатуры.Вставить("СрокГодности", "СрокГодности");
РеквизитыНоменклатуры.Вставить("ЕдиницаИзмеренияСрокаГодности", "ЕдиницаИзмеренияСрокаГодности");
РеквизитыНоменклатуры.Вставить("ТипИзмеряемойВеличиныНоменклатуры", "ЕдиницаИзмерения.ТипИзмеряемойВеличины");
РеквизитыНоменклатуры = Новый ФиксированнаяСтруктура(
ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ЗначенияПолейСвязи.Номенклатура, РеквизитыНоменклатуры));
НастройкиИспользованияСерий = Новый ФиксированнаяСтруктура(
Справочники.ВидыНоменклатуры.НастройкиИспользованияСерий(
РеквизитыНоменклатуры.ВидНоменклатуры, ПараметрыУказанияСерий, ЗначенияПолейСвязи));
НоменклатураСервер.ПроверитьВозможностьОткрытияФормыУказанияСерий(
НастройкиИспользованияСерий, ПараметрыУказанияСерий, ЗначенияПолейСвязи);
УстановитьУсловноеОформление();
ТолькоПросмотр = Параметры.ТолькоПросмотр;
ТолькоРедактированиеКоличества = Параметры.ТолькоРедактированиеКоличества;
АвторизованВнешнийПользователь = ОбщегоНазначенияУТКлиентСервер.АвторизованВнешнийПользователь();
ОбщегоНазначенияУТ.НастроитьПодключаемоеОборудование(ЭтаФорма, "Серии");
АдресВоВременномХранилище = Параметры.АдресВоВременномХранилище;
КоличествоВДокументе = Параметры.Количество;
НомераСтрокПредставление = Параметры.НомераСтрокДокумента;
Склад = Параметры.Склад;
Помещение = Параметры.Помещение;
Регистратор = Параметры.Регистратор;
ЕстьУпаковки = ПараметрыУказанияСерий.ПоляСвязи.Найти("Упаковка") <> Неопределено;
Упаковка = Параметры.Упаковка;
Если Не ЗначениеЗаполнено(Упаковка) Тогда
Если ЗначениеЗаполнено(Параметры.УпаковкаДляПодстановки) Тогда
Если РеквизитыНоменклатуры.ТипИзмеряемойВеличиныНоменклатуры <> Перечисления.ТипыИзмеряемыхВеличин.КоличествоШтук
Или РеквизитыНоменклатуры.ТипИзмеряемойВеличиныНоменклатуры = Перечисления.ТипыИзмеряемыхВеличин.КоличествоШтук
И ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Параметры.УпаковкаДляПодстановки, "ТипИзмеряемойВеличины") = Перечисления.ТипыИзмеряемыхВеличин.Упаковка Тогда
Упаковка = Параметры.УпаковкаДляПодстановки;
КонецЕсли;
КонецЕсли;
КонецЕсли;
ИсходнаяУпаковка = Упаковка;
Заголовок = НСтр("ru = 'Регистрация серий товаров'");
ТоварПредставление = НоменклатураСервер.ПредставлениеТовараВФормеУказанияСерий(ЗначенияПолейСвязи);
Параметры.Свойство("ЗаголовокКолонкиКоличество", ПараметрЗаголовокКолонкиКоличество);
Элементы.Упаковка.Доступность = Не ЕстьУпаковки;
Элементы.Серии.ИзменятьСоставСтрок = Не ТолькоПросмотр;
Элементы.СерииКоличествоУпаковок.ТолькоПросмотр = ТолькоПросмотр;
Элементы.ГруппаКоманднаяПанельТаблицы.Видимость = Не ТолькоПросмотр;
Элементы.Количество.Видимость = Не ТолькоПросмотр;
Элементы.ОстаткиСерийКоличествоУпаковок.ТолькоПросмотр = ТолькоПросмотр;
ЗаписыватьПоляМетки = Новый Структура("RFIDEPC,RFIDUser", Ложь, Ложь);
Для Каждого Описание Из НастройкиИспользованияСерий.ОписанияИспользованияРеквизитовСерии Цикл
Если Описание.ИмяНастройки = "ИспользоватьRFIDМеткиСерии" Тогда
Если Описание.ИмяРеквизита = "RFIDTID" Тогда
Если Описание.Использование Тогда
Считыватели = МенеджерОборудованияВызовСервера.ОборудованиеПоПараметрам("СчитывательRFID");
Если Считыватели.Количество() = 0 Тогда
ПодключатьСчитывательRFID = Ложь;
ИначеЕсли Считыватели.Количество() = 1 Тогда
ПодключатьСчитывательRFID = Истина;
СчитывательRFID = Считыватели[0].Ссылка;
Иначе
ТекстСообщения = НСтр("ru = 'К рабочему месту подключено несколько считывателей RFID. Работа одновременно с несколькими считывателями не поддерживается. Оставьте только один считываетель.'");
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
ПодключатьСчитывательRFID = Ложь;
КонецЕсли;
Иначе
ПодключатьСчитывательRFID = Ложь;
КонецЕсли;
Элементы.СерииСтатусРаботыRFID.Видимость = Описание.Использование;
Элементы.СчитатьRFID.Видимость = Описание.Использование
И ПодключатьСчитывательRFID
И Не АвторизованВнешнийПользователь;
ИначеЕсли (Описание.ИмяРеквизита = "RFIDEPC"
Или Описание.ИмяРеквизита = "RFIDUser")
И Описание.Использование Тогда
ЗаписыватьПоляМетки[Описание.ИмяРеквизита] = Описание.МожноРедактировать;
КонецЕсли;
Иначе
НазванияЭлементовСерий = Обработки.ПодборСерийВДокументы.НазванияЭлементовСерий(Описание.ИмяРеквизита);
ПолеФормыСерии = Элементы[НазванияЭлементовСерий.Серии]; // ПолеФормы
ПолеФормыОстаткиСерий = Элементы[НазванияЭлементовСерий.ОстаткиСерий]; // ПолеФормы
ПолеФормыСерии.ТолькоПросмотр = Не Описание.МожноРедактировать;
ПолеФормыСерии.АвтоОтметкаНезаполненного = Описание.ПроверятьЗаполнение;
ПолеФормыСерии.Видимость = Описание.Использование;
ПолеФормыОстаткиСерий.Видимость = Описание.Использование;
Если Не ПустаяСтрока(Описание.Формат) Тогда
ПолеФормыСерии.Формат = Описание.Формат;
ПолеФормыСерии.ФорматРедактирования = Описание.Формат;
ПолеФормыОстаткиСерий.Формат = Описание.Формат;
КонецЕсли;
Если Описание.ИмяРеквизита = "Номер" Тогда
Элементы.СерииЗагрузитьДанныеИзТСД.Видимость = Элементы.СерииНомер.Видимость;
Элементы.СгенерироватьНомер.Видимость = Элементы.СерииНомер.Видимость;
Элементы.ЗаполнитьНомера.Видимость = Элементы.СерииНомер.Видимость;
Если Не Элементы.СерииНомер.ТолькоПросмотр
И Элементы.СерииНомер.Видимость Тогда
Элементы.СерииДобавить.Заголовок = НСтр("ru = 'Ввести номер'");
Иначе
Элементы.СерииДобавить.Заголовок = НСтр("ru = 'Ввести'");
КонецЕсли;
Элементы.СгенерироватьНомер.Доступность = Не Элементы.СерииНомер.ТолькоПросмотр;
Элементы.ЗаполнитьНомера.Доступность = Не Элементы.СерииНомер.ТолькоПросмотр;
КонецЕсли;
Если Не ПустаяСтрока(Описание.ПредставлениеФорматнойСтрокиВЗаголовке) Тогда
ПредставлениеЗаголовкаКолонки = НСтр("ru = '%ПредставлениеРеквизита% (%ПредставлениеФормата%)'");
ПредставлениеЗаголовкаКолонки = СтрЗаменить(ПредставлениеЗаголовкаКолонки, "%ПредставлениеРеквизита%", Описание.ПредставлениеРеквизита);
ПредставлениеЗаголовкаКолонки = СтрЗаменить(ПредставлениеЗаголовкаКолонки, "%ПредставлениеФормата%", Описание.ПредставлениеФорматнойСтрокиВЗаголовке);
ПолеФормыСерии.Заголовок = ПредставлениеЗаголовкаКолонки;
ПолеФормыОстаткиСерий.Заголовок = ПредставлениеЗаголовкаКолонки;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Элементы.ЗаписатьВRFID.Видимость = (ЗаписыватьПоляМетки.RFIDEPC
Или ЗаписыватьПоляМетки.RFIDUser)
И ПодключатьСчитывательRFID
И Не АвторизованВнешнийПользователь;
Элементы.ЗаполнитьПоFEFO.Видимость = НастройкиИспользованияСерий.УчетСерийПоFEFO
И Перечисления.СкладскиеОперации.ЕстьОтгрузка(ПараметрыУказанияСерий.СкладскиеОперации)
И Не ЕстьУпаковки
И Не ТолькоРедактированиеКоличества;
Элементы.ГруппаПечать.Видимость = Не АвторизованВнешнийПользователь;
Элементы.ФормаНастроитьПорядокСканированияСерий.Видимость = Не АвторизованВнешнийПользователь;
Если АвторизованВнешнийПользователь Тогда
Элементы.СерииЗагрузитьДанныеИзТСД.Видимость = Ложь;
КонецЕсли;
РежимОтображенияСерий = "СерииВДокументе";
Распоряжение = Обработки.ПодборСерийВДокументы.РаспоряжениеПоПараметрамФормы(Параметры);
ВариантПолучениеДанныхИзРегистров = Обработки.ПодборСерийВДокументы.ВариантПолучениеДанныхИзРегистровПоПараметрамФормы(ПараметрыУказанияСерий,
Распоряжение,
Параметры.Склад,
НастройкиИспользованияСерий.ВладелецСерий);
Заголовки = Обработки.ПодборСерийВДокументы.ЗаголовкиПоВариантуПолучениеДанныхИзРегистров(ВариантПолучениеДанныхИзРегистров);
ЗаголовокСвободногоОстаткаПоУмолчанию = Заголовки.ЗаголовокСвободногоОстатка;
Если ВариантПолучениеДанныхИзРегистров <> "ВсеСерииНоменклатуры" Тогда
Элементы.РежимОтображенияСерий.СписокВыбора[1].Представление = Заголовки.ЗаголовокКнопки;
Иначе
Элементы.ОстаткиСерийСвободныйОстаток.Видимость = Ложь;
Элементы.РежимОтображенияСерий.СписокВыбора.Удалить(Элементы.РежимОтображенияСерий.СписокВыбора[1]);
КонецЕсли;
// Ввод серий
ТаблицаСерий = ПолучитьИзВременногоХранилища(АдресВоВременномХранилище);
Запрос = Новый Запрос;
ТекстЗапроса =
"ВЫБРАТЬ
| ТаблицаСерий.Серия,
| ТаблицаСерий.Количество,
| ТаблицаСерий.КоличествоУпаковок
|ПОМЕСТИТЬ ТаблицаСерий
|ИЗ
| &ТаблицаСерий КАК ТаблицаСерий
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| ТаблицаСерий.Серия,
| СУММА(ТаблицаСерий.Количество) КАК Количество,
| СУММА(ТаблицаСерий.КоличествоУпаковок) КАК КоличествоУпаковок,
| &ТекстЗапросаРеквизитыСерий
|ИЗ
| ТаблицаСерий КАК ТаблицаСерий
|ГДЕ
| (&ИспользоватьКоличествоСерии
| ИЛИ ТаблицаСерий.Серия <> ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка))
|
|СГРУППИРОВАТЬ ПО
| ТаблицаСерий.Серия
|
|УПОРЯДОЧИТЬ ПО
| ГоденДо,
| Номер";
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТекстЗапросаРеквизитыСерий",
Обработки.ПодборСерийВДокументы.ТекстЗапросаРеквизитыСерий("ТаблицаСерий", НастройкиИспользованияСерий));
Запрос.Текст = ТекстЗапроса;
Запрос.УстановитьПараметр("ТаблицаСерий", ТаблицаСерий);
Запрос.УстановитьПараметр("ИспользоватьКоличествоСерии", НастройкиИспользованияСерий.ИспользоватьКоличествоСерии);
Объект.Серии.Загрузить(Запрос.Выполнить().Выгрузить());
КоэффициентУпаковки = Справочники.УпаковкиЕдиницыИзмерения.КоэффициентУпаковки(Упаковка, ЗначенияПолейСвязи.Номенклатура);
Если Не НастройкиИспользованияСерий.ИспользоватьКоличествоСерии Тогда
Если ТолькоРедактированиеКоличества Тогда
Элементы.СерииКоличествоУпаковок.Вид = ВидПоляФормы.ПолеФлажка;
Иначе
Элементы.СерииКоличествоУпаковок.Видимость = Ложь;
КонецЕсли;
Элементы.ОстаткиСерийКоличествоУпаковок.Вид = ВидПоляФормы.ПолеФлажка;
Элементы.Упаковка.Видимость = Ложь;
Если КоэффициентУпаковки <> 1 Тогда
Упаковка = Справочники.УпаковкиЕдиницыИзмерения.ПустаяСсылка();
КонецЕсли;
КонецЕсли;
Если Не Обработки.ПодборСерийВДокументы.ЕстьПраваНаЧтениеДанныхРегистров(ВариантПолучениеДанныхИзРегистров, Склад) Тогда
Элементы.СтраницыСерий.ОтображениеСтраниц = ОтображениеСтраницФормы.Нет;
КонецЕсли;
ОбновитьКартинкуПечати();
ПравоДобавленияСерий = ПравоДоступа("Добавление", Метаданные.Справочники.СерииНоменклатуры);
Если Не ПравоДобавленияСерий
//++ НЕ УТ
Или Параметры.ПараметрыУказанияСерий.СкладскиеОперации.Найти(Перечисления.СкладскиеОперации.ПотреблениеМатериаловПриПроизводстве) <> Неопределено
//-- НЕ УТ
Тогда
Элементы.СтраницыСерий.ТекущаяСтраница = Элементы.СтраницаОстаткиСерий;
Элементы.СтраницаВводСерии.Видимость = Ложь;
Элементы.СтраницыСерий.ОтображениеСтраниц = ОтображениеСтраницФормы.Нет;
Если Объект.Серии.Итог("КоличествоУпаковок") = 0 Тогда
Если Элементы.РежимОтображенияСерий.СписокВыбора.НайтиПоЗначению("ТолькоОстатки") <> Неопределено Тогда
РежимОтображенияСерий = "ТолькоОстатки";
Иначе
РежимОтображенияСерий = "ВсеСерии";
КонецЕсли;
КонецЕсли;
Если ТипЗнч(Склад) = Тип("СправочникСсылка.СтруктураПредприятия") Тогда
Заголовок = НСтр("ru = 'Подбор серий по остаткам в производстве'");
Иначе
Заголовок = НСтр("ru = 'Подбор серий по остаткам на складе'");
КонецЕсли;
КонецЕсли;
УпаковкаПриИзмененииСервер();
// Доп. реквизиты
УправлениеСвойствамиУТ.ДобавитьКолонкиДополнительныхРеквизитов(
НастройкиИспользованияСерий,
ЭтаФорма,
"Объект.Серии",
"Серии",
"СерииКоличествоУпаковок");
УправлениеСвойствамиУТ.ЗаполнитьКолонкиДополнительныхРеквизитов(
ЭтаФорма,
"Объект.Серии",
"Серия");
Если ТолькоРедактированиеКоличества Тогда
Элементы.СерииДобавить.Видимость = Ложь;
Элементы.СгенерироватьНомер.Видимость = Ложь;
Элементы.ЗаполнитьНомера.Видимость = Ложь;
Элементы.СерииСкопировать.Видимость = Ложь;
Элементы.СерииИзменить.Видимость = Ложь;
Элементы.СерииУдалить.Видимость = Ложь;
Элементы.СерииЗагрузитьДанныеИзТСД.Видимость = Ложь;
Элементы.СерииКонтекстноеМенюДобавить.Видимость = Ложь;
Элементы.СерииКонтекстноеМенюСкопировать.Видимость = Ложь;
Элементы.СерииКонтекстноеМенюУдалить.Видимость = Ложь;
Для Каждого Элемент Из Элементы.ОстаткиСерий.ПодчиненныеЭлементы Цикл
Если Не Элемент = Элементы.ОстаткиСерийКоличествоУпаковок Тогда
Элемент.ТолькоПросмотр = Истина;
КонецЕсли;
КонецЦикла;
Для Каждого Элемент Из Элементы.Серии.ПодчиненныеЭлементы Цикл
Если Не Элемент = Элементы.СерииКоличествоУпаковок Тогда
Элемент.ТолькоПросмотр = Истина;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
ПоказатьНо как написать и где - не пойму, надо проверять сначала из какого документа открывается эта форма (расходного или приходного), если из расходного что-то типа: ЭлементФормы.СтраницаВводСерии.Доступность = Ложь... ?
Прикрепленные файлы:
По теме из базы знаний
- Групповая работа с элементами на форме
- [Расширения] Динамическое управление видимостью и доступностью элементов форм (УФ) (8.3.6+)
- Полезный код для программистов 1С (часть 1). Управление свойствами элементов формы. Хранение копии данных реквизитов
- Управление доступом к формам и элементам форм «УФОРМ-ЮГ» (БП, БП-КОРП, ЕРП, УНФ, УТ, КА, УХ) [Расширение]
- Условное оформление формы в пользовательском режиме 1С (управление видимостью и доступностью элементов форм)
Найденные решения
нужно в параметры открытия передать параметр который будет отличать один случай от другого.
и в одном случае делать видимость папки ложь.
как вариант:
и в одном случае делать видимость папки ложь.
как вариант:
&НаКлиенте
Процедура ОткрытьПодборСерий(ИмяТЧ, Текст = "", ТекущиеДанные = Неопределено)
...
ПараметрыФормыУказанияСерий = ПараметрыФормыУказанияСерий(ТекущиеДанныеИдентификатор, ИмяТЧ);
ПараметрыФормыУказанияСерий.Вставить("ВидДокумента", "РасходныйОрдерНаТовары");
...
КонецПроцедуры
Показать&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
...
Если Параметры.Свойство("ВидДокумента")
И Параметры.ВидДокумента = "РасходныйОрдерНаТовары" Тогда
Элементы.СтраницаВводСерии.Видимость = Ложь;
КонецЕсли;
...
КонецПроцедуры
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
нужно в параметры открытия передать параметр который будет отличать один случай от другого.
и в одном случае делать видимость папки ложь.
как вариант:
и в одном случае делать видимость папки ложь.
как вариант:
&НаКлиенте
Процедура ОткрытьПодборСерий(ИмяТЧ, Текст = "", ТекущиеДанные = Неопределено)
...
ПараметрыФормыУказанияСерий = ПараметрыФормыУказанияСерий(ТекущиеДанныеИдентификатор, ИмяТЧ);
ПараметрыФормыУказанияСерий.Вставить("ВидДокумента", "РасходныйОрдерНаТовары");
...
КонецПроцедуры
Показать&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
...
Если Параметры.Свойство("ВидДокумента")
И Параметры.ВидДокумента = "РасходныйОрдерНаТовары" Тогда
Элементы.СтраницаВводСерии.Видимость = Ложь;
КонецЕсли;
...
КонецПроцедуры
Показать
(3) Можно даже удалить условие
Если в параметрах уже есть свойство "ВидДокумента", то дальше и спрашивать не нужно. Конечно если во всех документах не вставлять такой параметр.
Да и сделать это можно одной строкой в процедуре "ПриСозданииНаСервере" обработки.
Параметры.ВидДокумента = "РасходныйОрдерНаТовары"
Если в параметрах уже есть свойство "ВидДокумента", то дальше и спрашивать не нужно. Конечно если во всех документах не вставлять такой параметр.
Да и сделать это можно одной строкой в процедуре "ПриСозданииНаСервере" обработки.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
...
Элементы.СтраницаВводСерии.Видимость = Параметры.Свойство("ВидДокумента");
...
КонецПроцедуры
(3) Спасибо! Но к сожалению не срабатывает(( Не передает параметр...
Или я что-то делаю не так?
Процедура ОткрытьПодборСерий(ИмяТЧ, Текст = "", ТекущиеДанные = Неопределено)
Если НоменклатураКлиент.ДляУказанияСерийНуженСерверныйВызов(ЭтаФорма,ПараметрыУказанияСерий[ИмяТЧ],Текст, ТекущиеДанные) Тогда
Если ТекущиеДанные = Неопределено Тогда
ТекущиеДанныеИдентификатор = Элементы[ИмяТЧ].ТекущиеДанные.ПолучитьИдентификатор();
Иначе
ТекущиеДанныеИдентификатор = ТекущиеДанные.ПолучитьИдентификатор();
КонецЕсли;
ПараметрыФормыУказанияСерий = ПараметрыФормыУказанияСерий(ТекущиеДанныеИдентификатор, ИмяТЧ);
ПараметрыФормыУказанияСерий.Вставить("ВидДокумента", "РасходныйОрдерНаТовары");
ОписаниеОповещения = Новый ОписаниеОповещения("ОткрытьПодборСерийЗавершение",
ЭтотОбъект,
Новый Структура("ИмяТЧ,ПараметрыФормыУказанияСерий", ИмяТЧ,ПараметрыФормыУказанияСерий));
ОткрытьФорму(ПараметрыФормыУказанияСерий.ИмяФормы,
ПараметрыФормыУказанияСерий,
ЭтаФорма,
,
,
,
ОписаниеОповещения,
РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
КонецЕсли;
КонецПроцедуры
ПоказатьПроцедура Расш1_ПриОткрытииПеред(Отказ)
Если Параметры.Свойство("ВидДокумента")
И Параметры.ВидДокумента = "РасходныйОрдерНаТовары" Тогда
Сообщить("2");
//Элементы.СтраницаВводСерии.Видимость = Ложь;
Иначе
Сообщить("1");
КонецЕсли;
КонецПроцедуры
ПоказатьИли я что-то делаю не так?
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот