Точно не мой день...
Задача: Пользователь должен выбрать из списка значение, после чего ему задается вопрос...
КОД: (МойСписок, ВыбранноеПредставление и ВыбранноеЗначение - реквизиты формы)
Начало выполнения - КомандаВыполнить()
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
ЗаполнитьМойСписок();
КонецПроцедуры
&НаСервере
Процедура ЗаполнитьМойСписок()
Для н = 1 По 10 Цикл
нр = МойСписок.Добавить();
нр.Значение = "Значение_" + СокрЛП(н);
нр.Представление = "Наименование " + СокрЛП(н);
КонецЦикла;
КонецПроцедуры
&НаКлиенте
Процедура КомандаВыполнить(Команда)
Оповещение = Новый ОписаниеОповещения("ПослеВыбораИзСписка", ЭтотОбъект);
МойСписок.ПоказатьВыборЭлемента(Оповещение, "Виберіть, що додається...");
КонецПроцедуры
&НаКлиенте
Процедура ПослеВыбораИзСписка(ВыбранныйЭлемент, СписокПараметров) Экспорт
Если ВыбранныйЭлемент = Неопределено Тогда
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Не обрано!";
Сообщение.УстановитьДанные(ЭтотОбъект);
Сообщение.Сообщить();
Иначе
ВыбраноеЗначение = ВыбранныйЭлемент.Значение;
ВыбранноеПредставление = ВыбранныйЭлемент.Представление;
ПродолжимВыполнение();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПродолжимВыполнение()
ОписаниеОповещения = Новый ОписаниеОповещения("ПослеОтветаНаВопрос", ЭтотОбъект);
ПоказатьВопрос(ОписаниеОповещения, "Дайте відповідь що небудь!", РежимДиалогаВопрос.ДаНет, 60);
КонецПроцедуры
&НаКлиенте
Процедура ПослеОтветаНаВопрос(РезультатВопроса, ДополнительныеПараметры) Экспорт
Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
ПередадимДействиеДальше();
Иначе
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "- - - - -";
Сообщение.УстановитьДанные(ЭтотОбъект);
Сообщение.Сообщить();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПередадимДействиеДальше()
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "! ! ! ! ! ! ! !";
Сообщение.УстановитьДанные(ЭтотОбъект);
Сообщение.Сообщить();
КонецПроцедуры
&НаКлиенте
Процедура ДопКомплектацияПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)
Отказ = Истина;
Оповещение = Новый ОписаниеОповещения("ПослеОтветаПользователя", ЭтотОбъект);
ТекстВопроса = НСтр("ru = 'Для выполнения этой операции необходимо записать документ. Записать?'");
ПоказатьВопрос(Оповещение, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
КонецПроцедуры
&НаКлиенте
Процедура ПослеОтветаПользователя(Ответ, ДополнительныеПараметры) Экспорт
Если Ответ = КодВозвратаДиалога.Да Тогда
Записать();
Объект.ДопКомплектация.Добавить();
КонецЕсли;
КонецПроцедуры
denis84 @ Сегодня, 13:18
,
Это всё понятно, но после
МойСписок.ПоказатьВыборЭлемента(Оповещение, "Виберіть, що додається...");
Пример во внешней обработке
https://pro1c.org.ua/redirect.php?https://fex.net/ru/s/amxfyfs
AnryMc @ Вчера, 15:13
,
В мене ваша обробка працює так, як вам потрібно - в процедуру ПослеОтветаНаВопрос приходить КодВозвратаДиалога.Да
AnryMc @ Вчера, 16:35
,
Працює - платформа 8.3.16.1148, конфігурація Business automation software for accounting CORP, edition 2.1 (2.1.9.2)
alexxbely @ Сегодня, 14:00
,
на 8.3.15.1700 - не работает - после выбора значения всё...
(в файловом и SQL -вариантах)
AnryMc @ 12.04.24, 14:25
,
спробував на 8.3.15.1700 файлова - працює, як треба...
навіть не знаю, що це може бути. наче ж простіше код не вигадаєш
Чудеса какие-то аж интересно посмотреть. Нашел ближайший релиз 8.3.15.1830. Выкачаю - попробую. 8.3.15.1700 не нашел. Если сможете, куда-то залейте; посмотрим.
Может быть какая-то дурацкая проблема типа кеша?
TohaMonster @ Сегодня, 10:00
,
Пробовал в копии базы на другой машине...
На 8.3.15.1830 сработало как часы
А, ну, посмотрел выше: пан alexxbely проверил и на 1700.
Что-то тут не то
TohaMonster @ Сегодня, 12:36
,
Когда то (давно - ещё на 8.0 или 8.1 - обычные формы) у клиентов наблюдал такое:
сцена 1: Вызывают, говорят: "Документ неправильно работает..."
сцена 2: разбираюсь - в документе не виден реквизит и пользователь соответственно его не заполняет...
сцена 3: в конфигураторе реквизит "виден" и не как его видимость/доступность не регламентируется...
сцена 4: у меня в копии всё "Ок" у клиента не видно...
сцена 5: сцена 6: сцена 7: .... ???? !!!!!!!
сцена Х: случайно на рабочем месте ГлавБуха открываю "проблемный" документ - реквизит "виден и доступен". Обегаю рабочие места - реквизита нет...
.... ???? !!!!!!!
В итоге оказалось - "Norton Antivirus" (на всех рабочих местах кроме ГлавБуха он стоял). Причем во всех остальных местах аналогичные реквизиты работали нормально, проблемы были только в одном документе...
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua