По теме из базы знаний
- Управляемое приложение: правильное программное открытие форм
- Конфигурация "Весовая ред. 3.0" для Платформы 8.3
- Открыть форму внутри другой формы - наконец-то возможно!
- Мониторинг ПФР/Минтруда по приказу № Пр-366. Форма для сбора сведений о заработной плате работников бюджетной сферы. Автоматическое заполнение с возможностью корректировки и консолидации и выгрузка в формате XML. ЗГУ/ЗУП 3.1
- Новичок новичку: как добавить программно кнопку на форму путем расширения
Найденные решения
Если открывается просто форма объекта, то можно в модуле менеджера переопределить форму. Если же должна открываться разная форма по условию, то тогда можно
1. Из формы списка проверять условие и открывать требуемую форму
2. В основной форме при создании на сервере проверять условие и открывать требуемую ,а эту ставить в отказ
1. Из формы списка проверять условие и открывать требуемую форму
2. В основной форме при создании на сервере проверять условие и открывать требуемую ,а эту ставить в отказ
(8) В выборе тоже надо описать.
И кроме того, перед началом изменении и в выборе необходимо в форму передавать параметр -
Новый Структура("Ключ", <Документ на который спозиционировались>). В противном случае каждый раз будет открываться новый документ
И кроме того, перед началом изменении и в выборе необходимо в форму передавать параметр -
Новый Структура("Ключ", <Документ на который спозиционировались>). В противном случае каждый раз будет открываться новый документ
(10) Анализ модуля ОценкаПроизводительностиКлиент.НачатьЗамер показал, что ключевая операция должна быть строкой. Уберите этот замер и попробуйте еще раз.
А по ошибке - судя по всему, у вас нет такой колонки в таблице. Соответственно и обращение к ней вызывает ошибку
А по ошибке - судя по всему, у вас нет такой колонки в таблице. Соответственно и обращение к ней вызывает ошибку
(29)
Поймите простую истину. Отказ это не глобальная переменная. Это возможно один из параметров процедуры обработчика. Т.е. если в процедуре есть такой параметр, тогда можно с ним работать. Если нет, то это обычная переменная определяемая внутри процедуры и ни на что не влияет.
Отказ = Истина прописаная в выборе не работает
Поймите простую истину. Отказ это не глобальная переменная. Это возможно один из параметров процедуры обработчика. Т.е. если в процедуре есть такой параметр, тогда можно с ним работать. Если нет, то это обычная переменная определяемая внутри процедуры и ни на что не влияет.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Если открывается просто форма объекта, то можно в модуле менеджера переопределить форму. Если же должна открываться разная форма по условию, то тогда можно
1. Из формы списка проверять условие и открывать требуемую форму
2. В основной форме при создании на сервере проверять условие и открывать требуемую ,а эту ставить в отказ
1. Из формы списка проверять условие и открывать требуемую форму
2. В основной форме при создании на сервере проверять условие и открывать требуемую ,а эту ставить в отказ
(7) Так ?
&НаКлиенте
Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
// ЭлектронноеВзаимодействие.ОбменСКонтрагентами
Если Поле = Элементы.СостояниеЭДО Тогда
ОбменСКонтрагентамиКлиент.ДекорацияСостояниеЭДОФормаСпискаНажатие(ВыбраннаяСтрока, СтандартнаяОбработка = Ложь);
КонецЕсли;
// Конец ЭлектронноеВзаимодействие.ОбменСКонтрагентами
// СтандартныеПодсистемы.УчетОригиналовПервичныхДокументов
УчетОригиналовПервичныхДокументовКлиент.СписокВыбор(Поле.Имя, ЭтотОбъект, Элементы.Список, СтандартнаяОбработка = Ложь);
// Конец СтандартныеПодсистемы.УчетОригиналовПервичныхДокументов
КонецПроцедуры
&НаКлиенте
Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)
КлючеваяОперация = ПолучитьФорму("Документ.АктСписанияМЗ.Форма.ФормаДокумента1").Открыть();
Отказ = Истина;
//КлючеваяОперация ="СозданиеФормыАктСписанияМЗ";
ОценкаПроизводительностиКлиент.НачатьЗамерВремени(Истина, КлючеваяОперация);
КонецПроцедуры
&НаКлиенте
Процедура СписокПередНачаломИзменения(Элемент, Отказ)
КлючеваяОперация = ПолучитьФорму("Документ.АктСписанияМЗ.Форма.ФормаДокумента1").Открыть();
Отказ = Истина;
//КлючеваяОперация ="ОткрытиеФормыАктСписанияМЗ";
ОценкаПроизводительностиКлиент.НачатьЗамерВремени(Истина, КлючеваяОперация);
КонецПроцедуры
Показать
(8) В выборе тоже надо описать.
И кроме того, перед началом изменении и в выборе необходимо в форму передавать параметр -
Новый Структура("Ключ", <Документ на который спозиционировались>). В противном случае каждый раз будет открываться новый документ
И кроме того, перед началом изменении и в выборе необходимо в форму передавать параметр -
Новый Структура("Ключ", <Документ на который спозиционировались>). В противном случае каждый раз будет открываться новый документ
(9)При такой конструкции выдаёт ошибку
&НаКлиенте
Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
// ЭлектронноеВзаимодействие.ОбменСКонтрагентами
Если Поле = Элементы.СостояниеЭДО Тогда
ОбменСКонтрагентамиКлиент.ДекорацияСостояниеЭДОФормаСпискаНажатие(ВыбраннаяСтрока, СтандартнаяОбработка = Ложь);
КонецЕсли;
// Конец ЭлектронноеВзаимодействие.ОбменСКонтрагентами
// СтандартныеПодсистемы.УчетОригиналовПервичныхДокументов
УчетОригиналовПервичныхДокументовКлиент.СписокВыбор(Поле.Имя, ЭтотОбъект, Элементы.Список, СтандартнаяОбработка = Ложь);
// Конец СтандартныеПодсистемы.УчетОригиналовПервичныхДокументов
КлючеваяОперация = ПолучитьФорму("Документ.АктСписанияМЗ.Форма.ФормаДокумента1").Открыть();
Отказ = Истина;
КонецПроцедуры
&НаКлиенте
Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)
КлючеваяОперация = ПолучитьФорму("Документ.АктСписанияМЗ.Форма.ФормаДокумента1").Открыть();
Отказ = Истина;
//КлючеваяОперация ="СозданиеФормыАктСписанияМЗ";
ОценкаПроизводительностиКлиент.НачатьЗамерВремени(Истина, КлючеваяОперация);
КонецПроцедуры
&НаКлиенте
Процедура СписокПередНачаломИзменения(Элемент, Отказ)
КлючеваяОперация = ПолучитьФорму("Документ.АктСписанияМЗ.Форма.ФормаДокумента1").Открыть();
Отказ = Истина;
//КлючеваяОперация ="ОткрытиеФормыАктСписанияМЗ";
ОценкаПроизводительностиКлиент.НачатьЗамерВремени(Истина, КлючеваяОперация);
КонецПроцедуры
ПоказатьПрикрепленные файлы:
(10) Анализ модуля ОценкаПроизводительностиКлиент.НачатьЗамер показал, что ключевая операция должна быть строкой. Уберите этот замер и попробуйте еще раз.
А по ошибке - судя по всему, у вас нет такой колонки в таблице. Соответственно и обращение к ней вызывает ошибку
А по ошибке - судя по всему, у вас нет такой колонки в таблице. Соответственно и обращение к ней вызывает ошибку
(11) Спасибо заработало, а можно чуть подробней о ключе не совсем понял <Документ на который спозиционировались> что за документ прописать ?
КлючеваяОперация = ПолучитьФорму("Документ.АктСписанияМЗ.Форма.ФормаДокумента1", Новый Структура("Ключ", <?>));
КлючеваяОперация.Открыть();
Отказ = Истина;
(11)Разобрался )
Прописал так в выборе и изменениях, открывает нужный документ в упрощённой форме только следом сразу же открывает и второй новый, почему ?
ПараметрыВвода = Новый Структура("Ключ",ВыбраннаяСтрока);
КлючеваяОперация = ПолучитьФорму("Документ.АктСписанияМЗ.Форма.ФормаДокумента1", ПараметрыВвода);
КлючеваяОперация.Открыть();
Отказ = Истина;
Прописал так в выборе и изменениях, открывает нужный документ в упрощённой форме только следом сразу же открывает и второй новый, почему ?
Прикрепленные файлы:
(22) Просто Выбор срабатывает раньше. Хорошо, а что мешает проверять условие и только при необходимости открывать нужную форму?
В обработчике Выбор:
В обработчике Выбор:
// УсловиеВыполнилось = Истина; // тут вместо этого проверяем на условие и присваиваем Истина или Ложь
Если УсловиеВыполнилось = Истина Тогда
ПараметрыВвода = Новый Структура("Ключ",ВыбраннаяСтрока);
ОткрытьФорму("Документ.АктСписанияМЗ.Форма.ФормаДокумента1", ПараметрыВвода);
СтандартнаяОбработка = Ложь;
КонецЕсли;
(23)Потому что у меня 2 формы одна основная вторая упрощённая предназначенная для определённого круга лиц так с помощь этой конструкции
вставленной в Выбор я открываю ФормуДокумента1. Если я её "закоменчу" и везде пропишу это не помогает всё равно открывается основная форма.
Суть в том как отключить запуск основной формы в модуле ФормаСписка1 тогда да можно поставить условие.
ПараметрыВвода = Новый Структура("Ключ",ВыбраннаяСтрока);
КлючеваяОперация = ПолучитьФорму("Документ.АктСписанияМЗ.Форма.ФормаДокумента1", ПараметрыВвода);
КлючеваяОперация.Открыть();
СтандартнаяОбработка = Ложь
вставленной в Выбор я открываю ФормуДокумента1. Если я её "закоменчу" и везде пропишу
СтандартнаяОбработка = Ложь;
Суть в том как отключить запуск основной формы в модуле ФормаСписка1 тогда да можно поставить условие.
Прикрепленные файлы:
(29)
Поймите простую истину. Отказ это не глобальная переменная. Это возможно один из параметров процедуры обработчика. Т.е. если в процедуре есть такой параметр, тогда можно с ним работать. Если нет, то это обычная переменная определяемая внутри процедуры и ни на что не влияет.
Отказ = Истина прописаная в выборе не работает
Поймите простую истину. Отказ это не глобальная переменная. Это возможно один из параметров процедуры обработчика. Т.е. если в процедуре есть такой параметр, тогда можно с ним работать. Если нет, то это обычная переменная определяемая внутри процедуры и ни на что не влияет.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот