|
Выдать сообщение в модуле регистра накопления при отмене записи. | ☑ | ||
---|---|---|---|---|
0
Snikers_OLD
25.12.13
✎
04:38
|
Доброго времени.
УПП , MSSQL Необходимо проверять записи регистра на определенное условие и в случае невыполнения Отказ = Истина, а также Выдавать сообщение о причине отказа. Столкнулся с проблемой - сообщение выводится только если Отказ не равен ИСТИНА, т.е. если отказ = истина сообщения не выводятся, хотя в отладчике строки с сообщениями проходит. На регистрах сведений и бухгалтерии все прокатывает. |
|||
1
Wobland
25.12.13
✎
05:44
|
какая интересная особенность одного из видов регистров
|
|||
2
kosts
25.12.13
✎
06:19
|
(0) Хотя бы код выложил для затравки...
|
|||
3
Snikers_OLD
25.12.13
✎
13:17
|
Процедура _РегистрыНакопленияПередЗаписьюПриЗаписи(Источник, Отказ, Замещение) Экспорт
Если Отказ Тогда Возврат; КонецЕсли; Если ТипЗнч(Источник) = Тип("РегистрНакопленияНаборЗаписей.ЗатратыБухгалтерскийУчет") или ТипЗнч(Источник) = Тип("РегистрНакопленияНаборЗаписей.НезавершенноеПроизводствоБухгалтерскийУчет")Тогда #Если НЕ ВнешнееСоединение Тогда тзДвижений = Источник.Выгрузить(); мПодразделений_НеМВЗ = ПроверитьПодразделениеНа_Условие(тзДвижений,Отказ); Если Отказ Тогда Для каждого Подразделение Из мПодразделений_НеМВЗ Цикл Сообщить("Подразделение затрат "+СокрЛП(Подразделение)+" не относится к МВЗ.", СтатусСообщения.Важное); КонецЦикла; КонецЕсли; #КонецЕсли КонецЕсли; КонецПроцедуры Просто мне кажется это малр |
|||
4
Snikers_OLD
25.12.13
✎
13:17
|
Просто мне кажется это мало что даст.
|
|||
5
dj_serega
25.12.13
✎
13:19
|
(4) Попробуй через "Новый СообщениеПользователю".
|
|||
6
ale-sarin
25.12.13
✎
13:20
|
Уже сначала это стоит. Дальше то не пойдет.
Если Отказ Тогда Возврат; КонецЕсли; |
|||
7
1Сергей
25.12.13
✎
13:22
|
Надо не сообщить, а ВызватьИсключение
|
|||
8
ale-sarin
25.12.13
✎
13:24
|
+6 туплю
|
|||
9
Галахад
гуру
25.12.13
✎
13:29
|
(8) Почему?
|
|||
10
ale-sarin
25.12.13
✎
13:34
|
(9) Если сначала отказ ложь, то ниже истиной может стать.
|
|||
11
Галахад
гуру
25.12.13
✎
13:37
|
(10) Да нету же ниже отказов. Или это не ве
|
|||
12
Галахад
гуру
25.12.13
✎
13:37
|
сь код?
|
|||
13
Defender aka LINN
25.12.13
✎
13:39
|
В мПодразделений_НеМВЗ пусто, че тут думать?
|
|||
14
ale-sarin
25.12.13
✎
13:46
|
(11) Тут может поменяться
мПодразделений_НеМВЗ = ПроверитьПодразделениеНа_Условие(тзДвижений,Отказ); |
|||
15
ale-sarin
25.12.13
✎
13:48
|
+14 Видимо там отказ в истину ставится, а мПодразделений_НеМВЗ пустой, как (13) говорит.
|
|||
16
Snikers_OLD
25.12.13
✎
15:28
|
(15)(14) не внимательно читали первый пост. Я отладчиком прохожу. Все строки проходит. Так вот если отказ(искуственно) поставить в ложь то сообщения вываливаются, а если отказ = истина вываливается только ошибка что не могу записать.
|
|||
17
Kvestin
25.12.13
✎
15:34
|
(0), (7) все верно написал. Используйте ВызватьИсключение.
|
|||
18
Snikers_OLD
25.12.13
✎
17:22
|
(17) использовал тоже самое
|
|||
19
Snikers_OLD
25.12.13
✎
17:24
|
Точнее ошибку можно посмотреть в диалоге ошибки (по кнопке подробнее), а хотелось бы, чтоб внизу.
|
|||
20
Kvestin
25.12.13
✎
17:28
|
(19) С Сообщить() на стороне сервера сплошные костыли стали начиная с какой-то версии 8.2.
Долго копал в свое время и нашел рекомендацию 1С по поводу ВызватьИсключение. |
|||
21
Snikers_OLD
25.12.13
✎
18:34
|
(20) Спасибо.
Но мне это не подходит, даже не знаю теперь что делать. Думал простенько замутить проверку, чтоб во всех документах не лопатить, буду через косвенные регистры бухгалтерии наверно делать. |
|||
22
dj_serega
25.12.13
✎
18:35
|
(21) А вместо "Сообщить()" пробовал "СообщениеПользователю"?
|
|||
23
Snikers_OLD
25.12.13
✎
22:29
|
(22) Разве "СообщениеПользователю" это не управляемые формы?
|
|||
24
dj_serega
25.12.13
✎
22:36
|
(23) Где-то с год назад на ОП использовал. Правда только свойство "текст".
|
|||
25
dj_serega
25.12.13
✎
22:37
|
(23) Ну и вырезка с СП:
"В управляемых формах, в случае выполнения просмотра сообщения, выполняется следующий механизм обработки: " Скорее всего не писали бы первыые три слова, если бы было только для УП. Ну и примечания нет :) А вообще лучше проверить =) |
|||
26
Kvestin
26.12.13
✎
09:01
|
(0) Проверил на (8.2.18.104) в режиме УФ и обычного приложения сообщение при записи регистра накопления выводится и в случае Отказ = Истина и Отказ = Ложь.
В случае отказа дополнительно выводится сообщение, что не удалось сделать запись в регистре. Поэтому остается 2 варианта: - глюк конкретного релиза - проверяйте код Я за 1 вариант. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |