Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: УФ после выбора из списка задать вопрос - не работает
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
AnryMc
Точно не мой день...

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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


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

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

AnryMc @ Сегодня, 14:02 необходимо зарегистрироваться для просмотра ссылки ,


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

необходимо зарегистрироваться для просмотра ссылки
AnryMc
Цитата(AnryMc @ 11.04.24, 14:03) необходимо зарегистрироваться для просмотра ссылки
По отдельности работает, вместе - нет!!!


Если вынести в отдельную процедуру (через кнопку на форме) - работает...
Если выполнять после выбора из списка - НЕ РАБОТАЕТ!!!
denis84
AnryMc @ Вчера, 16:35 необходимо зарегистрироваться для просмотра ссылки ,


Вам не задавалося питання?
alexxbely
AnryMc @ Вчера, 15:13 необходимо зарегистрироваться для просмотра ссылки ,
В мене ваша обробка працює так, як вам потрібно - в процедуру ПослеОтветаНаВопрос приходить КодВозвратаДиалога.Да
denis84
AnryMc @ Вчера, 16:35 необходимо зарегистрироваться для просмотра ссылки ,
Працює - платформа 8.3.16.1148, конфігурація Business automation software for accounting CORP, edition 2.1 (2.1.9.2)
AnryMc
Цитата(denis84 @ 12.04.24, 9:26) необходимо зарегистрироваться для просмотра ссылки
Працює - платформа 8.3.16.1148


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

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

icon_cuss.gif icon_cuss.gif

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

alexxbely
AnryMc @ Сегодня, 10:01 необходимо зарегистрироваться для просмотра ссылки ,
перевірив на 8.3.12.1529 - працює
AnryMc
alexxbely @ Сегодня, 14:00 необходимо зарегистрироваться для просмотра ссылки ,

на 8.3.15.1700 - не работает - после выбора значения всё...
(в файловом и SQL -вариантах)
alexxbely
AnryMc @ 12.04.24, 14:25 необходимо зарегистрироваться для просмотра ссылки ,
спробував на 8.3.15.1700 файлова - працює, як треба...
навіть не знаю, що це може бути. наче ж простіше код не вигадаєш
AnryMc
Цитата(alexxbely @ 15.04.24, 7:59) необходимо зарегистрироваться для просмотра ссылки
спробував на 8.3.15.1700 файлова - працює, як треба...


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

05071.gif

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

- всё равно НЕ РАБОТАЕТ!!!!!
TohaMonster
Чудеса какие-то аж интересно посмотреть. Нашел ближайший релиз 8.3.15.1830. Выкачаю - попробую. 8.3.15.1700 не нашел. Если сможете, куда-то залейте; посмотрим.
Может быть какая-то дурацкая проблема типа кеша?
AnryMc
TohaMonster @ Сегодня, 10:00 необходимо зарегистрироваться для просмотра ссылки ,

Пробовал в копии базы на другой машине...
TohaMonster
На 8.3.15.1830 сработало как часы
А, ну, посмотрел выше: пан alexxbely проверил и на 1700.
Что-то тут не то
AnryMc
TohaMonster @ Сегодня, 12:36 необходимо зарегистрироваться для просмотра ссылки ,

Когда то (давно - ещё на 8.0 или 8.1 - обычные формы) у клиентов наблюдал такое:

сцена 1: Вызывают, говорят: "Документ неправильно работает..."
сцена 2: разбираюсь - в документе не виден реквизит и пользователь соответственно его не заполняет...
сцена 3: в конфигураторе реквизит "виден" и не как его видимость/доступность не регламентируется...
сцена 4: у меня в копии всё "Ок" у клиента не видно...
сцена 5: сцена 6: сцена 7: .... ???? !!!!!!!
сцена Х: случайно на рабочем месте ГлавБуха открываю "проблемный" документ - реквизит "виден и доступен". Обегаю рабочие места - реквизита нет...
.... ???? !!!!!!!

В итоге оказалось - "Norton Antivirus" (на всех рабочих местах кроме ГлавБуха он стоял). Причем во всех остальных местах аналогичные реквизиты работали нормально, проблемы были только в одном документе...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.