|
Статусы заказов покупателей. Прошу помощи по реализации. | ☑ | ||
---|---|---|---|---|
0
Alexey87
17.07.13
✎
09:07
|
Добрый день.
Есть следующая задача: автоматически рассчитывать статусы заказов покупателей и выделять их цветом в зависимости от статуса. Меня интересует как оптимальнее всего сделать реализацию. Встречал, например, такую реализацию: статусы для заказов рассчитываются в форме списка документов "Заказ покупателя" при получении данных и тут же пишутся в регистр сведений/реквизит документа. В итоге все ужасно тормозит. Считаю данную реализацию неоптимальной. Сам склоняюсь к следующему: для каждого из документов цепочки - Заказ покупателя, Заказ поставщику, Поступление товаров, Резервироавние и т.д. во время проведения и отмены проведения рассчитывать статусы заказов покупателей, относящихся к этой цепочке. Но здесь возникает следующая проблема: например, при отмене проведения документа "Поступление товаров" мы должны знать движения этого документа, чтобы видеть статусы каких заказов пересчитывать(т.к. сами заказы покупателей не хранятся ни в реквизитах, ни в табличных частях документа). С другой стороны, для корректного расчета самого статуса заказа покупателя запросом мы уже не должны получать движения, созданные поступлением товаров. Вобщем, прошу совета по оптимальной реализации у вас. |
|||
1
drcrasher
17.07.13
✎
09:09
|
(0) ут11 в руки.
форма списка документов Заказ клиента. но там уф+динамический список и "раскраска" генерится в запросе списка. |
|||
2
ДенисЧ
17.07.13
✎
09:10
|
в регламенте считать кажудю минуту и писать в реквизит.
|
|||
3
Alexey87
17.07.13
✎
09:12
|
(2)это было моей идеей №3, но здесь смущает следующее:
- считать только невыполненные заказы покупателей? - например пользователь распровел то же поступление товаров, а статус поменяется только через, например, полминуты. А ему нужно, чтобы цвет изменился тут же. |
|||
4
Лодырь
17.07.13
✎
09:14
|
(3) За распроведение поступления товаров отрывать руки.
|
|||
5
Alexey87
17.07.13
✎
09:16
|
(4)ну кто не ошибается...исправили, потом снова провели, все это одним днем.
Без отмены проведения поступления все понятно, т.к. в остальных документах цепочки заказ покупателя является либо реквизитом шапки, либо реквизитом ТЧ. Хотелось бы предусмотреть все. |
|||
6
Лодырь
17.07.13
✎
09:20
|
(5) Мы сделали так: завели регистр "Заказы ожидающие обработки", в подписке на событие проведении/отмене проведения документов запихиваем в регистр заказы которых это касается, а потом в фоновом режиме их обсчитываем.
Кто исправляет собственные ошибки - те могут и подождать минуту пока их заказ обсчитается. Как правило принципиальной срочности нет. |
|||
7
Hmster
17.07.13
✎
09:24
|
есть периодический регистр сведений. если есть движения по регистру выше текущего документа то запрет на отмену проведения и изменение - только так решили возню со статусами
а вообще все зависит от народа - в другом месте сделали реквизит в заказе и ручками ставили кто что хотел, причем никаких запретов не было, кроме административного и журнала регистрации |
|||
8
mikecool
17.07.13
✎
09:25
|
(3) добавь кнопку принудительного обновления списка, кому не нарвится скорость - пусть жамкает
|
|||
9
Alexey87
17.07.13
✎
10:09
|
(6)хорошая идея, но есть нюанс, опять с тем же поступлением товаров: думается мне, что в подписке на событие при отмене проведения "поступления товаров" уже будет не видно движений документа, соответственно, список статусов заказов покупателей к расчету уже будет не определить.
|
|||
10
Лодырь
17.07.13
✎
12:06
|
(9) Кто мешает анализировать ПередЗаписью()?
|
|||
11
Alexey87
17.07.13
✎
12:35
|
(10)выходит для отмены проведения ПередЗаписью() нужно анализировать заказы для расчета статусов, а в подписке изменять статусы этих заказов.
|
|||
12
Лодырь
17.07.13
✎
12:39
|
(11) Сделай подписку перед записью. Тебе нужно отследить те заказы которые уже были затронуты ДО изменения документа, а по результатам проведения проанализировать что было затронуто ПОСЛЕ изменения. Соответственно объединение множеств этих заказов и запихать в регистр, поскольку они все подлежат анализу.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |