Имя: Пароль:
1C
1C 7.7
v7: Слетает ТА при обмене УРБД
0 bogdan
 
07.06.12
07:24
Долги искал, не нашел как бороться, прошу помощи.
Суть проблемы: каждые минут 10-15 делается обмен РИБ. Иногда при обмене - ТА оказывается позже последнего проведенного документам (одного или нескольких), соответственно проведенные документы которые после ТА - зеленая галочка и ошибка при попытке проведения нового "Существуют более ранние проведенные документы".

Подскажите, как бороться с этим явлением? Чтобы не было проведенных документов после ТА.

Как я понял - так происходит, по той причине, что пока выполняется обмен (вместе с обменом прилетает ТА), юзеры успевают провести документ.
1 bogdan
 
07.06.12
07:25
Не "Долги", а "Долго".

Как редактировать - не знаю.
2 Mikeware
 
07.06.12
07:26
Не работать будущим временем.
3 SnarkHunter
 
07.06.12
07:28
Пусть ТА с обменом не прилетает...
4 bogdan
 
07.06.12
07:29
(3) Как?
5 ЧеловекДуши
 
07.06.12
07:30
Бу га га, Неудачник :)

...В качестве решения проблемы, передвинь точку ТА, на конец периода :)...
И при достижении конца периода ТА, двигай её дальше :)
6 ЧеловекДуши
 
07.06.12
07:31
(4)Это не ТА не попадает, это все дело в том, что в Центер или перефирии, разные временные полюса :)
7 big
 
07.06.12
07:53
(5) то есть работать задним числом? Шутку понял ))
8 1Сергей
 
07.06.12
08:09
(6) +1
9 Mikeware
 
07.06.12
08:10
Может, просто когда обмен летит в ЦБ, ТА чуть-чуть сносит эфирным ветром?
10 bogdan
 
07.06.12
11:51
(2) Что подразумевается под "будущим временем"? Завтра? Есть запись документов на завтра, которая в 99.9% случаев записывается по времени 12:00:00, естественно когда наступает завтра - большинство документов записывается и проводится после 12:00:00, но это рашаемо, просто руки еще не дошли. Не думаю, что это влияет, или Вы знаете обратное? Проведения на завтра - нет.
11 bogdan
 
07.06.12
11:52
(3) И все-же, как? Изменять файлы обмена?
12 bogdan
 
07.06.12
11:54
(5) Именно так и попробовал сделать, но вылезла другая проблема. При ТА в будущей дате - документы сегодня проводятся со временем, с которым записан документ. И при проведении время не меняется на текущее. Если подскажете, как это решить - это будет решением вопроса. Подскажете?
13 bogdan
 
07.06.12
11:54
(6) Нет. Один пояс. Это точно.
14 bogdan
 
07.06.12
11:55
(9) Это шутка?
15 bogdan
 
07.06.12
14:28
Вверх.

Гуру v7, отзовитесь.
16 1Сергей
 
07.06.12
15:06
(15) чудес не бывает. При обмене в УРБД ТА сдвигается на последний проведённый документ в выгрузке (если, конечно, он дальше ТА)
17 Z1
 
07.06.12
15:13
(16) ничего 1с не сдвигает.

(1)что делать было сказано в 5. Только 5 надо делать для все пб и цб.
18 Z1
 
07.06.12
15:14
в 17 опечатка ( свои посты править нельзя )
(1) (1)что делать было сказано в 5. Только 5 надо делать для всех пб и цб.
19 1Сергей
 
07.06.12
15:15
(17) я с этим УРБД уже 8 лет работаю. Если в выгрузке есть проведённый документ дальше ТА на загружающей базе, то ТА сдвигается на этот документ
20 ЧеловекДуши
 
07.06.12
15:15
(13)Тогда, ДНК, вы не догоняете, разница в секунде, в часе. :)
21 Mikeware
 
07.06.12
15:18
(18) в (17) - не опечатка, а глупость.
22 akaBrr
 
07.06.12
15:21
в (5) похоже шутка
23 akaBrr
 
07.06.12
15:22
ответ в (2), запрети проведение будущим периодом
24 Z1
 
07.06.12
15:24
Можете проверить. то что вы называете сдвигом идет изменение числа та в текущем
периоде.

сделайте тест
в переф базе сдвиньте тa на три месяца вперед.
проведите в ней документ за авнгуст.
сделайте обмен с цб
и посмотрите что с та будет в цб
25 1Сергей
 
07.06.12
15:24
(24) сдвинется на этот документ
26 Mikeware
 
07.06.12
15:25
(24) спасибо, не надо. я таких "тестов" наделался - у меня 6 перифериек....
27 Z1
 
07.06.12
15:26
(25) проверь
никуда она не сдвинеться
для этого надо пересчитать все rg для
новых периодов
а вот это можно делать только монопольно
28 1Сергей
 
07.06.12
15:39
(27) проверил. Всё сдвигается
29 bogdan
 
07.06.12
17:08
(15) Про чудеса - это понятно. Но часто и не догадываешься, какие еще могут быть варианты решения проблемы. Вот эти варианты и ищу. Я понимаю, что мало шансов управлять сдвигом ТА при обмене РИБД. Может быть есть вариант, когда ТА в конце месяца, чтобы при проведении документ менял время на текущее?
30 Mikeware
 
07.06.12
17:09
(29) работай текущим временем. И синхронизируй время на всех ИБ.
31 bogdan
 
07.06.12
17:12
(17) Все таки сдвигает. И это факт, не очень хочется спорить, но доказать не особо сложно, можно привести фрагмент файла обмена.
Если в (5) - ответ, тогда еще раз повторю проблему, которая возникает при таком решении - при проведении документ не меняет время на текущее. Т.е. записали документ 15:03:05, а когда проводим в 16:05:04, время документа остается 15:03:05. А когда ТА в текущем дне - все нормально, время меняется на 16:05:04 (понятно, что в модуле нужно прописать метод ПроводитьПослеТА() ).
32 bogdan
 
07.06.12
17:16
(20) А нормально объяснить, без "пальцев", никак?
Я в начальном посте написал причину, по которой так иногда происходит. Или вы считаете, что так не бывает? (В середине обмена успели провести документ).

Я допускаю, что между серверами (терминалки), время может отличатся на секунды и это может влиять, это проверю еще раз.
33 bogdan
 
07.06.12
17:16
(23) Я уже писал, у меня нет проведения будущей датой, только запись.
34 Mikeware
 
07.06.12
17:18
(32) если документ проведут в середине обмена, то все равно пишедшие документы (если работа везде ведется текущим временем) будут "сзади" текущего времени.
35 bogdan
 
07.06.12
17:19
(24) (27)
Если передвинуть на день или больше - при проведении текущим днем ТА не двинется, для этого нужен монопольный режим. Но если ТА двигается в течении дня - она по всем базам разлетается.
36 bogdan
 
07.06.12
17:26
(30) (34)
Я конечно попрошу админа очень тщательно этот момент отладить. Но хочу понять.
Я был уверен, что получается таким образом.
На периферийной базе проводят документ и двигается ТА на 16:05:04, файл уходит на ЦБ и в ЦБ начинается загрузка.
Загрузка начинается в 16:05:52
Т.е. после окончания загрузки ТА должно встать на 16:05:04, т.к. в загрузке определенное количество документов, ей нужно время, чтобы загрузить информацию. В этот момент 16:05:55 юзер успевает провести документ.
Загрузка заканчивается в 16:05:58.
Как я понимаю эту ситуацию, по итогу мы получаем ТА на 16:05:04, и проведенный документ на 16:05:55, этот документ встает после ТА, помечается зеленой галкой, и не дает сдвигать ТА.
Так? Или что не правильно?

Меня смущает одно, блокируется ли таблица документов на весь сеанс загрузки файла обмена или на каждый документ из файла обмена, если на весь сеанс обмена - то что я написал не получится, если на каждый документ отдельная блокировка (мне это кажется более правдоподобным), то такая ситуация может быть.
37 Mikeware
 
07.06.12
18:01
(36) разнести по времени выгрузку и загрузку - не мешало бы. попробуй грузить минуты через три-четыре после получения файла.
за механизм блокировки не скажу -  лень трейсить процесс.
Собственно, блокировка-то нужна только для изменеия итогов (в остальные таблицы можно писать не опасаясь коллизий.)
38 bogdan
 
07.06.12
18:54
(37) логика есть...
получается, получили файл, и потом минуты через 3-4 запускаем обмен. 99 % что за 3-4 минуты, ТА уйдет дальше чем ТА периф. базы и когда при загрузке будет получена ТА периф. базы - ТА должна остаться ЦБ.
В общем - понятно, какие меры нужно предпринять, чтобы свести эту ситуацию на нет.
Спасибо.
39 Mikeware
 
07.06.12
18:59
(38) отпишись о результатах. Интересно.
у мнея автообмен крутится в режиме :00, :30 - обмен на ЦБ. :15, :45 - обмен на ПБ. За 7 лет такой ситуации не наблюдал.
("более ранние" бывали только из-за отвала клиентов внутри ИБ)
40 bogdan
 
07.06.12
19:03
Ок.
Уже второй раз в практике сталкиваюсь с такой ситуацией. Но если раньше были ЦБ и ПБ, и такое возникало раз в квартал, то сейчас раз в месяц, иногда чаще. Но правда сейчас ЦБ и 5 ПБ.
41 Mikeware
 
07.06.12
19:11
(40) у меня 6 ПБ непосредственно от ЦБ (ну и в глубине еще две - "снежинка"). Такой ситуации не наблдалось