|
Проведение через кнопку "Провести и закрыть" | ☑ | ||
---|---|---|---|---|
0
Popkorm
02.12.20
✎
13:39
|
Вообщем сделал условие по дате документа ПередЗаписью и Призаписи
https://clip2net.com/s/4a3E9wl заходим в ОбработкуПроведения: https://clip2net.com/s/4a3EelL в ЭтотОбъект дата измененная, а в самой ссылке дата старая. Документ новый, еще не записан, если нажму провести без закрытия, мой алгоритм срабатывает, если через кнопку "Провести и закрыть" дата не меняется. Своих подписок нет. Есть какие нибудь соображения? |
|||
1
hhhh
02.12.20
✎
13:44
|
(0) в ПриЗаписи нельзя, вы чего? ПередЗаписью.
|
|||
2
acht
02.12.20
✎
13:53
|
(0) > в самой ссылке дата старая. Документ новый, еще не записан
Взаимоисключающие пункты. Ну и Формат(Дата(2020, 12, 02, 9, 0, 0), "ДЛФ=T") равен "9:00:00" а не тому, что ты ожидаешь |
|||
3
Popkorm
02.12.20
✎
13:54
|
(1) конечно делал сначала перед записью, потом начал экспериментировать ПриЗаписи, но сам факт что в обработки проведения в ссылке дата не изменилась
|
|||
4
Fragster
гуру
02.12.20
✎
13:56
|
(0) конфигуратор получает данные не в той транзакции, что происзодит запись, по этому до момента фиксации транзакции с уровнем блокировки "read committed" ты будешь видеть предыдыщие значения ссылки. внутри же кода все будет ок, например если в коде в обработке проведения сделать
лДата = Ссылка.Дата а в конфигураторе в табло вывести лДата - там будет уже новая дата |
|||
5
Popkorm
02.12.20
✎
13:59
|
(2) Формат Это же условие
Если Формат(ЭтотОбъект.Дата, "ДЛФ=T") <> "09:00:00" Тогда ЭтотОбъект.Дата = НачалоДня(ЭтотОбъект.Дата)+32400; КонецЕсли; https://clip2net.com/s/4a3GfzC |
|||
6
fisher
02.12.20
✎
14:02
|
А что стоит в свойстве формы "АвтоВремя"?
|
|||
7
Popkorm
02.12.20
✎
14:10
|
||||
8
Popkorm
02.12.20
✎
14:18
|
||||
9
Ненавижу 1С
гуру
02.12.20
✎
14:19
|
(5) Если Формат(ЭтотОбъект.Дата, "ДЛФ=T") <> "09:00:00" Тогда
это говнокод, конечно |
|||
10
acht
02.12.20
✎
14:20
|
(5) Это условие выполнятся всегда, т-щ "программист".
|
|||
11
fisher
02.12.20
✎
14:24
|
(7) Попробуй "Не использовать". Только установку времени все равно перенеси в "ПередЗаписью"
|
|||
12
fisher
02.12.20
✎
14:26
|
"...для варианта АвтоВремя = НеИспользовать при открытии берется рабочая дата (если она отличается от текущей) или текущая дата вместе со временем, а для остальных вариантов установка времени откладывается на момент записи документа"
|
|||
13
Fragster
гуру
02.12.20
✎
14:29
|
||||
14
Popkorm
02.12.20
✎
14:32
|
(11) после 6 сообщения я поставил "Не использовать" , без результатно
|
|||
15
Popkorm
02.12.20
✎
14:34
|
(13) оценил ваш сарказм, но (8) в отладке показал что в ссылке старая дата
|
|||
16
Fragster
гуру
02.12.20
✎
14:38
|
(15) в ПриЗаписи и в ОбработкаПроведения в базе внутри открытой транзакции уже новые данные, если, конечно, кто-то альтернативно одаренный в этих обработчиках данные не изменил сам руками (платформа этого не делает). А из вне этой транзакции - либо ожидание, либо старые данные, в зависимости от уровня изоляции, о чем я в (8) и написал
|
|||
17
fisher
02.12.20
✎
14:51
|
(14) А программное изменение времени обратно в ПередЗаписью перенес? В ПриЗаписи оно не сохранится.
|
|||
18
Popkorm
02.12.20
✎
14:59
|
(17) да, я из передЗаписью не убирал, пройдя отладкой по всем процедурам и придя к процедуре ПриЗаписи, образуется ссылка со старым временем.
В (16) парень донес техническими терминами, но напрямую не хочет говорить куда копать, отправляет в (8), но и на том спасибо. |
|||
19
fisher
02.12.20
✎
15:36
|
(18) Это он тебе про получение данных в табло. И то я с этим не готов согласиться. А проверять лень.
Исходной твоей проблемы это не касается - только представления информации в отладчике. |
|||
20
Popkorm
02.12.20
✎
17:29
|
(19) протестил на другом документе "Перемещение товаров", нет таких проблем
|
|||
21
Popkorm
03.12.20
✎
10:01
|
Апну разок
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |