Имя: Пароль:
1C
 
ПоказатьВопрос при заполнении табличной части документа (внешней обработкой)
,
0 Den_B12
 
21.11.14
12:55
Всем привет
Есть внешняя обработка заполнения табличной части. Хочу выдавать пользователю сообщение с вопросом очистить таб. часть или нет.
Итак, есть процедура
Процедура ВыполнитьКоманду(ИмяКоманды, ОбъектыНазначения, ПараметрыВыполнения) Экспорт
        
    Если ИмяКоманды = "ЗаполнитьТЧ" Тогда    
        Заполнить(ПараметрыВыполнения);
    КонецЕсли;
        
КонецПроцедуры


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

Дело в том, что ОписаниеОповещения, РежимДиалогаВопрос доступны только на клиенте.
Подскажите плиз
1 Wobland
 
21.11.14
12:58
передавай ответ юзера на сервер
2 Aleksandr N
 
21.11.14
12:59
(0) А что мешает с описания оповещения перейти на сервер?
3 Den_B12
 
21.11.14
13:11
(1) вопрос в том как спросить юзера?
ОписаниеОповещения должно выполняться на клиенте, то есть:

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

но я не могу вызвать эту функцию с:
Процедура ВыполнитьКоманду(ИмяКоманды, ОбъектыНазначения, ПараметрыВыполнения) Экспорт
        
    Если ИмяКоманды = "ЗаполнитьТЧ" Тогда    
        //Заполнить(ПараметрыВыполнения);
        ОчисткаТЧ(ПараметрыВыполнения)
    КонецЕсли;
        
КонецПроцедуры
4 Den_B12
 
21.11.14
13:12
(2) получается наоборот, с сервера не могу уйти на клиента
5 John83
 
21.11.14
13:12
переходишь на сервер, смотришь, нужно ли спрашивать, возвращаешься на клиент, спрашиваешь, идешь опять на сервер
вроде так
6 Den_B12
 
21.11.14
13:15
(5) в процедуре на сервере ВыполнитьКоманду не видна функция на клиенте ОчисткаТЧ