Имя: Пароль:
1C
1С v8
УФ не работает Вопрос() при проверке перед проведением документа
,
0 fox1234
 
10.02.16
16:39
Мне нужно вставить проверку перед проведением документа с подтверждением пользователя

Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
    Если Проведен = Ложь и РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда

        Если Флаг = 1  Тогда
            Режим = РежимДиалогаВопрос.ДаНет;
            Если ВОпрос("Вы хотите внести номера в реестр повторно?",Режим,0) = КодВозвратаДиалога.Нет Тогда
                Отказ = Истина;
                Возврат;
            КонецЕсли;
            
         КонецЕсли;
    КонецЕсли;    
КонецПроцедуры

Выдает ошибки, что переменная не определена РежимДиалогаВопрос.ДаНет и КодВозвратаДиалога.Нет, функция Вопрос() не определена.

Переделываю с немодальными окнами

Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
    Если Проведен = Ложь и РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда

        Если Флаг = 1  Тогда
            
             Оповещение = Новый ОписаниеОповещения("ПослеЗакрытияВопроса",ЭтотОбъект);    

            ПоказатьВопрос(Оповещение,"Вы хотите внести номера в реестр повторно?",
            РежимДиалогаВопрос.ДаНет,0, КодВозвратаДиалога.Нет, "" );
         КонецЕсли;
    КонецЕсли;    
КонецПроцедуры


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

    КонецЕсли;    
КонецПроцедуры
        
пишет Тип не определен (ОписаниеОповещения)
подскажите как можно это сделать?
1 Garykom
 
гуру
10.02.16
16:40
пи-пи-пи...ь
2 Kamelot
 
10.02.16
16:44
ПередЗаписью() - где это процедура? в каком модуле?
3 Cyberhawk
 
10.02.16
16:45
На сервере не может быть никакого вопроса и обработок оповещения
4 fox1234
 
10.02.16
16:45
(2) в модуле документа
5 Cyberhawk
 
10.02.16
16:45
Делай все что тебе надо в форме документа
6 fox1234
 
10.02.16
16:46
(3) дак а как мне проверку добавить? в каком месте ее вставлять?
7 Cyberhawk
 
10.02.16
16:46
(6) В ДНК
8 fox1234
 
10.02.16
16:46
(5) в какой процедуре это делать?
9 Mort
 
10.02.16
16:46
1. Забыл "&наКлиенте" перед "Процедура ПередЗаписью"
2. Отказ надо делать в перед "ПоказатьВопрос"
3. В обработке надо снова вызывать запись


(7) Смишно.
10 Garykom
 
гуру
10.02.16
16:47
(7) Поздно уже...
11 Kamelot
 
10.02.16
16:48
(4)вот... вот... он на сервере компилируется.
12 fox1234
 
10.02.16
16:49
(7) оценила юмор) у вас же тут это любимое занятие
13 ptiz
 
10.02.16
16:51
(12) Запусти обработкой групповое перепроведение. Тоже посмеешься.
14 Cyberhawk
 
10.02.16
16:53
(12) Раз оценил, то не составит труда еще раз перечитать данные здесь ответы... и задать новый вопрос поконкретнее
15 fox1234
 
10.02.16
16:54
(9) добавила "&наКлиенте" перед "Процедура ПередЗаписью", проверка вообще теперь не срабатывает, не заходит в эту процедуру
16 Garykom
 
гуру
10.02.16
16:54
(13) дык см (1) у меня просто от такого очередного "вопроса" в (0) слова пропали

(12) обращайтесь еще
17 fox1234
 
10.02.16
16:55
(14) я ж глупая девушка, можно побольше снисхождения))) и УФ вижу впервые
18 igork1966
 
10.02.16
16:56
(16) майн-гот...  а ничего что обработчики событий должны быть привязаны к соответствующим элементам
19 Mort
 
10.02.16
16:56
(15) А теперь все это *** тащи в модуль формы документа.
20 hhhh
 
10.02.16
16:56
(17) Проверять нужно в модуле формы
21 fox1234
 
10.02.16
16:56
(16) для меня ничего лишающего дара речи в (0) нет)))
22 hhhh
 
10.02.16
17:00
(21) ну, допустим, пользователь уйдет курить, а у него на экране вопрос будет 20 минут, а вся остальная фирма во главе с директором, будет сидеть, ожидать, когда он вернется. И материть некую фокс всеми известными словами.
23 HardBall
 
10.02.16
17:00
Ну чьто вы так.
ПередЗаписью(Отказ, ПараметрыЗаписи)
24 Garykom
 
гуру
10.02.16
17:00
(21) а понимаете что ваш код при любом проведении (когда не проведен) всегда будет спрашивать?

неважно, новый док или старый отменили проведение и снова проводим?
25 fox1234
 
10.02.16
17:00
(19) перенесла в модуль формы, но в эту процедуру не заходит теперь
26 Garykom
 
гуру
10.02.16
17:01
27 Cyberhawk
 
10.02.16
17:02
(17) Обычно чаще снисхождение к женскому полу здесь проявляется к тем, кто свое фото добавил в профиль
28 fox1234
 
10.02.16
17:02
(24) почему?     Если Проведен = Ложь и РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда

У меня же есть условие, что только непроведенный документ проверять
29 Mort
 
10.02.16
17:03
(21) Есть ряд паттернов над которыми разного качества специалисты очень смиются.
Например, над интерактивными операциями в серверных процедурах, над чтением полей через точку, над указанием в коде явных отсылок на пользовательские объекты конкретной БД. Обычно смиются те, кто только недавно обнаружил ошибочность данных подходов и сам недавно так делал.

(25) А события к форме Пушкин будет вязать?
30 fox1234
 
10.02.16
17:05
(26) отличный анекдот
31 HardBall
 
10.02.16
17:06
&НаКлиенте
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)
    
    Если ПараметрыЗаписи.РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда
        
        Если Остаток > 0 И Объект.ИтогоИзрасходовано <> 0 Тогда
            
            ТекстВопроса = НСтр("ru = 'Полученные авансы превышают расходы. Сумма полученных авансов будет скорректирована. Продолжить?'");
            Ответ = Вопрос(ТекстВопроса, РежимДиалогаВопрос.ДаНет, , КодВозвратаДиалога.Да);
            Если Ответ = КодВозвратаДиалога.Нет Тогда
                Отказ = Истина;
            КонецЕсли;
                
        КонецЕсли;
        
    КонецЕсли;
    
КонецПроцедуры
32 hhhh
 
10.02.16
17:09
(31) юморист? Это же модальное окно.
33 fox1234
 
10.02.16
17:12
(29) А события к форме Пушкин будет вязать?
А как это сделать?
34 hhhh
 
10.02.16
17:13
(33) так же как и в обычных формах. Щелкаешь по форме, справа вылезают свойства, там список событий.
35 Garykom
 
гуру
10.02.16
17:15
(29) кто то "смиются", а кто то просто сильно удивляется количеству таких людей
36 fox1234
 
10.02.16
17:18
всем спасибо
37 HardBall
 
10.02.16
17:24
(32) Тю и шо& :-0
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший