Группа: Пользователи
Сообщений: 498
Спасибо сказали: 5 раз
Рейтинг: 0
Всем привет! Хочу задать вопрос по быстрому и получить тоже так же ... Никто не подскажет почему указанный ниже фрагмент не работает. Дело в том, нужно выбрать значение в форме выбора программно. Но при этом что бы открытие формы выбора было не модально. Потому что раздражает то что в таком режиме у окна нет режима свернуть и развернуть окно, а есть только крестик - выйти. Вот фрагмент
ФормаВыбора=ПолучитьФорму("Справочник.Справочник1.ФормаВыбора",,ЭтаФорма); ОбъектСсылка = ФормаВыбора.ОткрытьМодально(); // Так проходить без проблем //ОбъектСсылка = ФормаВыбора.Открыть(); // А так выпердриваеться ... НИКАК НЕ ХОЧЕТ .... Если ОбъектСсылка <> Неопределено Тогда ФормаОбъектаСсылки = ПолучитьФорму("Справочник.Справочник1.ФормаОбъекта", новый Структура("Ключ", ОбъектСсылка)); Предупреждение(ФормаОбъектаСсылки.Объект.Наименование); КонецЕсли;
Короче нужно то что указано в коде, только что бы форма выбора открывалась Не модально, а как обычно. Если можно просто подкорректируйте под эту цель. Буду признателен!
ОткрытьФорму("Справочник.Справочник1.ФормаВыбора",,ОбъектСсылка); Если ОбъектСсылка <> Неопределено Тогда ФормаОбъектаСсылки = ПолучитьФорму("Справочник.Справочник1.ФормаОбъекта", новый Структура("Ключ", ОбъектСсылка)); Предупреждение(ФормаОбъектаСсылки.Объект.Наименование); КонецЕсли;
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9
Gigi @ Today, 16:07
, Из кода вообще не понятно, что вы хотите сделать (после того, как выбрали значение). Разница между методами ОткрытьМодально и Открыть в том, что последний ничего не возвращает.
Допрацьовую: - "Бухгалтерія для України 2.1"; - "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".
Группа: Пользователи
Сообщений: 498
Спасибо сказали: 5 раз
Рейтинг: 0
Цитата(Petre @ 01.03.18, 16:56)
Из кода вообще не понятно, что вы хотите сделать (после того, как выбрали значение). Разница между методами ОткрытьМодально и Открыть в том, что последний ничего не возвращает.
Не важно что хочу... главное ОТКРЫТЬ ФОРМУ ВЫБОРА НЕ МОДАЛЬНО и ПОЛУЧИТЬ ССЫЛКУ ВЫБРАННОГО ОБЪЕКТА. Вот и все что нужно! Но в том то и все дело, что команда ОткрытьМодально() это функция. Очень удобная. С ее помощью можно одним махом открыть форму выбора и запеременить ссылку выбранного объекта. Просто САМОЕ ОТКРЫТИЕ НУЖНО НЕ МОДАЛЬНОЕ! Вот и все. А команда Открыть() позволяет открыть не модально, но за то это процедура. И в таком случае как получить выбранную ссылку? Короче .. Капец Главное даже по этой ерунде
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9
Gigi @ Today, 17:07
, Все зависит от конкретики. Если полученную ссылку необходимо поместить в элемент формы, достаточно указать данный элемент как владельца в ПолучитьФорму и больше ничего не делать. Если полученная ссылка не помещается в элемент формы, а лишь используется программно для х.з. каких целей, то, как вариант, в ПолучитьФорму как владелец указывается ЭтаФорма (как у вас в первом сообщении), и этой же форме-владельце в процедуре события ОбработкаВыбора получаем выбранное значение из параметра ЗначениеВыбора и делаем с ним что необходимо.
Допрацьовую: - "Бухгалтерія для України 2.1"; - "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".
Группа: Пользователи
Сообщений: 498
Спасибо сказали: 5 раз
Рейтинг: 0
Petre @ Вчера, 17:28
, Короче объясняю вкрадце Есть кнопка на форме. При нажатии на эту кнопку нужно: Первое - Нужно что бы происходило то что обычно происходит при выборе реквизита Ссылка... ничего кроме .... т.е. появилась форма выбора БЕЗ МОДАЛЬНОГО РЕЖИМА. Второе - Получить ссылку выбранного в переменную. Третье - по этой ссылке сделать кое какие записи на сервере. Вот собственно и все. Так что пожалуйста если не трудно пример кода для указанных пунктов. Буду благодарен Просто все это уже было не однократно сделано в таком стиле, о котором выше уже говорил:
ФормаВыбора=ПолучитьФорму("Справочник.Справочник1.ФормаВыбора",,ЭтаФорма); ОбъектСсылка = ФормаВыбора.ОткрытьМодально(); // Так проходить без проблем //ОбъектСсылка = ФормаВыбора.Открыть(); // А так выпердриваеться ... НИКАК НЕ ХОЧЕТ .... Если ОбъектСсылка <> Неопределено Тогда ФормаОбъектаСсылки = ПолучитьФорму("Справочник.Справочник1.ФормаОбъекта", новый Структура("Ключ", ОбъектСсылка)); Сообщить(ФормаОбъектаСсылки.Объект.Наименование); ЗаписьПоСсылке(ОбъектСсылка); КонецЕсли;
Не устраивает только режим МОДАЛЬНОГО ОТКРЫТИЯ. Вот и все Так что кодовый пример указанных целей если не трудно Буду весьма признателен!
Процедура ОбработкаВыбора(ЗначениеВыбора, Источник) Если ЗначениеВыбора <> Неопределено Тогда Сообщить(ЗначениеВыбора.Наименование); КонецЕсли; КонецПроцедуры
где - МояКнопкаНажатие - обработчик события "Нажатие" кнопки, которая нажимается; - ОбработкаВыбора - обработчик события "ОбработкаВыбора" формы, где располагается кнопка.
Допрацьовую: - "Бухгалтерія для України 2.1"; - "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!