Версия для печати темы (https://pro1c.org.ua/index.php?s=faa2147b4bee7ce3c1f377dd057f93a6&showtopic=67531)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 8.3 _ УФ после выбора из списка задать вопрос - не работает

Автор: AnryMc 11.04.24, 11:50

Точно не мой день...

Задача: Пользователь должен выбрать из списка значение, после чего ему задается вопрос...

КОД: (МойСписок, ВыбранноеПредставление и ВыбранноеЗначение - реквизиты формы)
Начало выполнения - КомандаВыполнить()

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    
    ЗаполнитьМойСписок();
    
КонецПроцедуры

&НаСервере
Процедура ЗаполнитьМойСписок()
    
    Для н = 1 По 10 Цикл
        
        нр = МойСписок.Добавить();
        
        нр.Значение = "Значение_" + СокрЛП(н);
        
        нр.Представление = "Наименование " + СокрЛП(н);
        
    КонецЦикла;
    
КонецПроцедуры

&НаКлиенте
Процедура КомандаВыполнить(Команда)
    
    Оповещение = Новый ОписаниеОповещения("ПослеВыбораИзСписка", ЭтотОбъект);
    МойСписок.ПоказатьВыборЭлемента(Оповещение, "Виберіть, що додається...");

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

&НаКлиенте
Процедура ПослеВыбораИзСписка(ВыбранныйЭлемент, СписокПараметров) Экспорт
    
    Если ВыбранныйЭлемент = Неопределено Тогда
        
        Сообщение = Новый СообщениеПользователю;
        Сообщение.Текст = "Не обрано!";
        Сообщение.УстановитьДанные(ЭтотОбъект);
        Сообщение.Сообщить();
        
    Иначе
        
        ВыбраноеЗначение = ВыбранныйЭлемент.Значение;
        ВыбранноеПредставление = ВыбранныйЭлемент.Представление;
        
        ПродолжимВыполнение();
        
    КонецЕсли;
    
КонецПроцедуры

&НаКлиенте
Процедура ПродолжимВыполнение()
    
    ОписаниеОповещения = Новый ОписаниеОповещения("ПослеОтветаНаВопрос", ЭтотОбъект);
    ПоказатьВопрос(ОписаниеОповещения, "Дайте відповідь що небудь!", РежимДиалогаВопрос.ДаНет, 60);

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

&НаКлиенте
Процедура ПослеОтветаНаВопрос(РезультатВопроса, ДополнительныеПараметры) Экспорт
    
    Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
        
        ПередадимДействиеДальше();
        
    Иначе
        
        Сообщение = Новый СообщениеПользователю;
        Сообщение.Текст = "- - - - -";
        Сообщение.УстановитьДанные(ЭтотОбъект);
        Сообщение.Сообщить();
        
    КонецЕсли;
    
КонецПроцедуры

&НаКлиенте
Процедура ПередадимДействиеДальше()
        
        Сообщение = Новый СообщениеПользователю;
        Сообщение.Текст = "! ! ! ! ! ! ! !";
        Сообщение.УстановитьДанные(ЭтотОбъект);
        Сообщение.Сообщить();
        
КонецПроцедуры


После выбора значения из списка вызывается ПродолжимВыполнение() но отображение вопроса не происходит
В ПослеОтветаНаВопрос() всегда РезультатВопроса = НЕТ

Как это реализовать???

Автор: denis84 11.04.24, 12:18

AnryMc @ Сегодня, 12:50 * ,

&НаКлиенте
Процедура ДопКомплектацияПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)
    
    Отказ = Истина;
    Оповещение = Новый ОписаниеОповещения("ПослеОтветаПользователя", ЭтотОбъект);
    ТекстВопроса = НСтр("ru = 'Для выполнения этой операции необходимо записать документ. Записать?'");
    ПоказатьВопрос(Оповещение, ТекстВопроса, РежимДиалогаВопрос.ДаНет);
    
КонецПроцедуры

&НаКлиенте
Процедура ПослеОтветаПользователя(Ответ, ДополнительныеПараметры) Экспорт
    
    Если Ответ = КодВозвратаДиалога.Да Тогда
        Записать();
        Объект.ДопКомплектация.Добавить();
    КонецЕсли;
    
КонецПроцедуры

Автор: AnryMc 11.04.24, 13:03

denis84 @ Сегодня, 13:18 * ,

Это всё понятно, но после

МойСписок.ПоказатьВыборЭлемента(Оповещение, "Виберіть, що додається...");


перестает раборать,..

По отдельности работает, вместе - нет!!!

AnryMc @ Сегодня, 14:02 * ,


Если подскажите "шару" - выложу внешним файлом...

Автор: AnryMc 11.04.24, 14:13

Пример во внешней обработке

https://pro1c.org.ua/redirect.php?https://fex.net/ru/s/amxfyfs

Автор: AnryMc 11.04.24, 15:35

Цитата(AnryMc @ 11.04.24, 14:03) *
По отдельности работает, вместе - нет!!!


Если вынести в отдельную процедуру (через кнопку на форме) - работает...
Если выполнять после выбора из списка - НЕ РАБОТАЕТ!!!

Автор: denis84 12.04.24, 7:46

AnryMc @ Вчера, 16:35 * ,


Вам не задавалося питання?

Автор: alexxbely 12.04.24, 7:51

AnryMc @ Вчера, 15:13 * ,
В мене ваша обробка працює так, як вам потрібно - в процедуру ПослеОтветаНаВопрос приходить КодВозвратаДиалога.Да

Автор: denis84 12.04.24, 8:26

AnryMc @ Вчера, 16:35 * ,
Працює - платформа 8.3.16.1148, конфігурація Business automation software for accounting CORP, edition 2.1 (2.1.9.2)

Автор: AnryMc 12.04.24, 9:01

Цитата(denis84 @ 12.04.24, 9:26) *
Працює - платформа 8.3.16.1148


...................
У меня 8.3.15.1700

!!!!!!!!!!!!!
Поменять не могу

icon_cuss.gif icon_cuss.gif

Причем не отрабатывает и в файловой и в серверной!


Автор: alexxbely 12.04.24, 13:00

AnryMc @ Сегодня, 10:01 * ,
перевірив на 8.3.12.1529 - працює

Автор: AnryMc 12.04.24, 13:25

alexxbely @ Сегодня, 14:00 * ,

на 8.3.15.1700 - не работает - после выбора значения всё...
(в файловом и SQL -вариантах)

Автор: alexxbely 15.04.24, 6:59

AnryMc @ 12.04.24, 14:25 * ,
спробував на 8.3.15.1700 файлова - працює, як треба...
навіть не знаю, що це може бути. наче ж простіше код не вигадаєш

Автор: AnryMc 15.04.24, 7:54

Цитата(alexxbely @ 15.04.24, 7:59) *
спробував на 8.3.15.1700 файлова - працює, як треба...


Мистика!!!!!!!!!!!!!!!!!!!!!!

05071.gif

Пробовал построить эту цепочку через
ВыполнитьОбработкуОповещения

- всё равно НЕ РАБОТАЕТ!!!!!

Автор: TohaMonster 16.04.24, 9:00

Чудеса какие-то аж интересно посмотреть. Нашел ближайший релиз 8.3.15.1830. Выкачаю - попробую. 8.3.15.1700 не нашел. Если сможете, куда-то залейте; посмотрим.
Может быть какая-то дурацкая проблема типа кеша?

Автор: AnryMc 16.04.24, 10:41

TohaMonster @ Сегодня, 10:00 * ,

Пробовал в копии базы на другой машине...

Автор: TohaMonster 16.04.24, 11:36

На 8.3.15.1830 сработало как часы
А, ну, посмотрел выше: пан alexxbely проверил и на 1700.
Что-то тут не то

Автор: AnryMc 16.04.24, 13:36

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