![]() |
|
Как правильно проверять регистры при проведении документа? | ☑ | ||
---|---|---|---|---|
0
DTX 4th
18.12.19
✎
20:45
|
Допустим есть регистр сведения: СтатусыОсновныхСредств
Измерение: -ОС Ресурс: -Статус При проведение документа нужно проверить, что такое ОС ещё не принималось к учету (нет записей в регистры), или статус в регистре равен "Ожидается принятие". Видится такое условие: СтатусыОсновныхСредств.СрезПоследних(ДатаДокумент) пустой или Статус = "Ожидается принятие" Но появляется проблема. Проводим документ февралём, копируем, проводим январём. Срез последних пуст, документ проводится. Если убрать дату из среза, январский документ не проведётся, но если мы сделаем в марте документ, который меняет статус ОС на "В работе", то мы не сможем перепровести февральский документ. Делать две проверки? |
|||
1
Cyberhawk
18.12.19
✎
20:47
|
В типовых разделяют оперативное проведение он неоперативного. Но это шаткая дорожка.
|
|||
2
Cyberhawk
18.12.19
✎
20:48
|
Если тебе надо чтоб всякие контроли работали всегда (в т.ч. и при неоперативном) - делай
|
|||
3
Cyberhawk
18.12.19
✎
20:49
|
Альтернативный вариант - запретить проведение если есть другие документы проведенные будущей датой
|
|||
4
Fragster
гуру
18.12.19
✎
20:50
|
Сделать последовательность и сразу переформировывать движения для восстановления той самой последовательности, если не получилось - не давать проводить
|
|||
5
Cyberhawk
18.12.19
✎
20:52
|
Вообще подхода как минимум два, определяются сугубо прикладной логикой: во главе угла либо текущий документ, либо свершившийся факт глобально. Т.е. давать проводить текущий по принципу "после нас хоть потоп", либо держать контроль на всей временной оси
|
|||
6
DTX 4th
18.12.19
✎
20:56
|
(1) Чем поможет неоперативное проведение? Тип отключить там проверки?
(4) Перепроводить все документы после? На это может потребоваться не один час. Или сделать обработку, которая будет двигать только мой регистр? (5) Юзеры колотят документы, не заморачиваясь.. |
|||
7
hhhh
18.12.19
✎
21:07
|
(6) какой еще час, если у вас по этому ос 2-3 документа.
|
|||
8
ДенисЧ
18.12.19
✎
21:31
|
(6) @Юзеры колотят документы, не заморачиваясь@
Тут рядом посоветовали железную палку. Деревянная, видите ли, слишком быстро изнашивается. И знаешь... Я с ними согласен... |
|||
9
DTX 4th
18.12.19
✎
22:19
|
(7) ОС я для примера взял, чтобы не слишком заморачиваться с объяснениями
|
|||
10
palsergeich
18.12.19
✎
22:22
|
(4) Нинада последовательность, от них по максимуму отказываются.
ИМХО разделять опер и не опер контуры правильнее |
|||
11
DTX 4th
18.12.19
✎
22:25
|
(10) Можно поподробнее?
(8) Человеческий фактор никуда не денется.. |
|||
12
palsergeich
18.12.19
✎
22:26
|
(10) Ну и прикинь при условном ос систорией прийдется пару сотен, а то и тысяч документов перепроводить, нафиг никомутакой учет не сдался
|
|||
13
palsergeich
18.12.19
✎
22:30
|
(11) А что там рассказывать? Надо брать конкретную задачу и разбирать.
Конкрентно в примере из шапки можно решить в лоб. Документом меняется реквизит документ Ввода у ОС. При отмене проведения - соответственно убирается. И чекается только наличие или отсутствие значения в реквизите. Можно сделать то же самое и на РС. Это и будет не оперативный контур. Когда какие то значимые события обособляются. И все ситуации со сдвигами по оси времени вперед назад закрыты. СтатусыОсновныхСредств.СрезПоследних(ДатаДокумент) |
|||
14
palsergeich
18.12.19
✎
22:31
|
(13) СтатусыОсновныхСредств.СрезПоследних(ДатаДокумент) эта строчка попала случайно
|
|||
15
DTX 4th
18.12.19
✎
23:08
|
(13) А оперативного не будет?
Идею понял |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |