|
Подписки на события. Как проконтролировать отказ | ☑ | ||
---|---|---|---|---|
0
Zixxx
30.11.14
✎
19:37
|
Для справочника использую событие подписки "ПриЗаписи", в момент которого справочник переносится в удаленную базу с идентификатором текущей базы. Проблема заключается в том что в Модуле формы справочника если в событии "ПриЗаписи" не заполнен вес происходит Отказ = Истина и объект не записывается.
Из-за этого происходит дублирование справочников, так как обмен идет по уникальным идентификаторам. Как решит этот момент, у кого какие мысли? |
|||
1
shuhard
30.11.14
✎
19:54
|
(0) и объект не записывается, Из-за этого происходит дублирование справочников, так как обмен идет по уникальным идентификаторам.
одна из обезьянок врёт |
|||
2
Zixxx
30.11.14
✎
20:01
|
(1) Посмотри мои темы там я тебе один раз уже написал что ты животное, вроде ты не против был
|
|||
3
Zixxx
30.11.14
✎
20:08
|
Собственно в событии ПриЗаписи есть уже ссылка следовательно и ID, событие ПриЗаписи в подписке выполняется первым, событие ПриЗаписи в модуле формы выполняется вторым и отменяет запись объекта.
|
|||
4
hhhh
30.11.14
✎
20:11
|
заполнить вес еще не предлагали?
|
|||
5
Zixxx
30.11.14
✎
20:19
|
(4) Не подойдет, справочников много, могут в другом справочнике в форме сделать отказ, не надежно получается
|
|||
6
Zixxx
30.11.14
✎
20:41
|
Есть дурацкий совсем вариант в подписке ПриЗаписи помещать ссылку в регистр сведений, а по этому регистру идти регламентным заданием, смысл регламентного задания перезаписать объект, если успешно перезаписан тогда указываем статус обработан. Все что обработано уйдет в обмен, то что не обработано, есть ошибка блокировки, в дальнейшем просто исчезнет из базы само собой по правилу описанному в (3)
|
|||
7
GedKo
30.11.14
✎
20:44
|
(6) транзакцию в удаленной базе не?
послезаписи не? |
|||
8
Zixxx
30.11.14
✎
20:45
|
(7) 1С не поддерживает распределенные транзакции, следовательно нет. У справочника есть подписка ПослеЗаписи?
|
|||
9
Zixxx
30.11.14
✎
20:48
|
(7) Да и самое интересное что транзакция закрывается в подписке ПриЗаписи, ебъект можно использовать как ссылка, записать его в регистр и он там будет. А вот после события ПриЗаписи в модуле формы, объект перестанет существовать и например в том регистре в который мы его записали на его месте будет <Объект не найден>
|
|||
10
GedKo
30.11.14
✎
20:58
|
(9) ты это еще в модуль формы пихаешь? ой-ой-ой...
зы. а зачем онлайн обмен нужен? рег.задание и вуаля. |
|||
11
Zixxx
30.11.14
✎
21:08
|
(10) Я ничего в модуль формы не пихаю, как есть так есть, пишу совместимо. Онлайн или офлайн не имеет значения, если в событии ПриЗаписи модуля формы будет предупреждение пользователю после которого идет отказ и пользователь уйдет домой то ты получишь тоже самое что и в (0). Просто на онлайн обмене это проявиться может с большей вероятностью
|
|||
12
Zixxx
30.11.14
✎
21:33
|
С планами обмена та же песня. Предположим что пользователю при записи система выдала предупреждение, если он ответит нет будет Отказ = Истина. Пользователь получил предупреждение и пошел по своим делам. В этот момент происходит чтение изменений для РБД и записи улетают в другую базу. Пользователь приходит и нажимает "нет". Получаем ситуацию когда в источнике нет данных а в приемнике есть.
|
|||
13
Zixxx
30.11.14
✎
21:40
|
Получаем следующее... При использовании обменов данными не рекомендуется использовать в событии МФ ПриЗаписи Отказ = Истина.
А в каких ситуациях бывает потребность сделать отказ при записи а не перед записью? |
|||
14
Andrewww123
01.12.14
✎
02:35
|
Посмотрел в УТ 11, нигде в "ПриЗаписи" отказ не устанавливается. Это логично, потому как отказ в результате проверки заполненности реквизитов нужно устанавливать в "ПередЗаписью"
|
|||
15
Поpyчик-4
01.12.14
✎
07:27
|
(14) ОбработкаПроверкиЗаполнения
|
|||
16
Мимохожий Однако
01.12.14
✎
07:42
|
(0)Ты бы не стеснялся, а показал код, указал конфигурацию. Не все здесь телепаты.
|
|||
17
Zixxx
01.12.14
✎
07:47
|
(16) Что именное тебе не понятно?
|
|||
18
Галахад
гуру
01.12.14
✎
07:55
|
Для кого планы обмена придумали?
|
|||
19
DrZombi
гуру
01.12.14
✎
08:06
|
(0) Откажись от обработчика. И пиши там же , где и При записи происходит отказ.
У 1С Обработчик мертворожденный... Лучше по старинке, как 1С 7.7 |
|||
20
DrZombi
гуру
01.12.14
✎
08:07
|
(1) Почему? Смотря, что первым отрабатывает. Либо При записи в модуле справочника, либо обработчик событий :)
|
|||
21
ifso
01.12.14
✎
08:30
|
суть топика ради (2) ?)
|
|||
22
User_Agronom
01.12.14
✎
08:39
|
(0)...справочник переносится в удаленную базу...
...Модуле формы справочника если в событии "ПриЗаписи" не заполнен вес происходит Отказ = Истина и объект не записывается... Если мой телепат понял правильно, тогда проверку заполнености веса нужно перенести в модуль объекта. |
|||
23
Zixxx
01.12.14
✎
09:23
|
(18) С планами обмена будет такой же баг если не учитывать то что в (13)
|
|||
24
Zixxx
01.12.14
✎
09:24
|
(22) Главное чтобы потом некоторые особи из (1) не наплодили гемороя. А так можно сделать как и в (13)
|
|||
25
Kalambur
01.12.14
✎
10:03
|
овнкод изначально, ибо не было этого топика, будь проверка веса в ПередЗаписью
|
|||
26
Zixxx
02.12.14
✎
12:46
|
(25) Собственно вопрос, кто и с какой целью мог возвести Отказ в Истину ПриЗаписи, почему не ПередЗаписью и если это есть в ПриЗаписи то для чего?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |