|
Остатки в проведенном документе | ☑ | ||
---|---|---|---|---|
0
Borteg
09.04.13
✎
11:58
|
Добрый день! Добавил кнопку заполнения ТЧ остатками взаиморасчетов.
Если документ не проведен то все отлично. Если проведен то остатки учитывают и его движения. Надо записать пустой набор в регистры по которым документ делает движения. Если бы это был модуль объекта то было бы не сложно, но так как получается на форме кнопка с формы управление передаю на сервер (общий модуль) там выполняю запрос возвращаю ТЧ. Получается мне надо в общий модуль передать ссылку, и записать в регистры пустой набор по это регистратору? Сори за глупый вопрос, просто хочу правильно написать все |
|||
1
Borteg
09.04.13
✎
12:12
|
Если Регистратор <> Неопределено тогда
НаборЗаписейРегистра = РегистрыНакопления.ЗарплатаКВыплатеУПр.СоздатьНаборЗаписей(); НаборЗаписейРегистра.Отбор.Регистратор.Установить(Регистратор); НаборЗаписейРегистра.Записать(); КонецЕсли; Решил проблему так.Может кому поможет |
|||
2
Borteg
09.04.13
✎
12:25
|
хм,хитрый момент какой. Если в проведенном документе заполнить Тч а потом просто выйти из него, то документ остается проведенным, но движения уже удалены!Подскажите как можно побороть эту проблему
|
|||
3
Wobland
09.04.13
✎
12:26
|
заполняй свои остатки из реальной таблицы без учёта твоего регистратора
|
|||
4
Maxus43
09.04.13
✎
12:27
|
для этого используют Граница в запросе к остаткам
|
|||
5
Borteg
09.04.13
✎
12:28
|
Граница есть
|
|||
6
В тылу врага
09.04.13
✎
12:29
|
(5) покажи
|
|||
7
Borteg
09.04.13
✎
12:29
|
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ | ЗарплатаКВыплатеУПрОстатки.Сотрудник КАК Сотрудник, | СУММА(ЗарплатаКВыплатеУПрОстатки.СуммаОстаток) КАК НачисленоПоУпр |ИЗ | РегистрНакопления.ЗарплатаКВыплатеУПр.Остатки(&Дата, ) КАК ЗарплатаКВыплатеУПрОстатки | |СГРУППИРОВАТЬ ПО | ЗарплатаКВыплатеУПрОстатки.Сотрудник"; Запрос.УстановитьПараметр("Дата",Новый Граница(Дата,ВидГраницы.Включая)); Результат = Запрос.Выполнить().Выгрузить(); |
|||
8
В тылу врага
09.04.13
✎
12:31
|
Запрос.УстановитьПараметр("Дата",Новый Граница(МоментВремени(),ВидГраницы.Исключая));
|
|||
9
Borteg
09.04.13
✎
12:32
|
Проблема, когда документ проведен и заново его перезаполниить, тогда остаток неправильный с учетом движений самого документа. Когда я добавил очищение регистра перед проверкой остатков получилось что если документ проведен я нажимаю кнопку заполнить, а потом просто закрываю документ, то движения удалены, а документ проведен. Проблема получается в том что я не могу точно отследить будет ли потом перепроведен документ
|
|||
10
hhhh
09.04.13
✎
12:43
|
(9) там еще неприятная вещь, если пользователь дату документа поменяет. Например, дата была 1 апреля, и движения на 1-е апреля, а он поставит дату 2-е апреля, тогда все равно движения попадут. И граница не прокатит, потому что в ней старая дата.
|
|||
11
Borteg
09.04.13
✎
12:44
|
Во нашел) При получении таблицы остатков с указанием параметра период типа МоментВремени, полученного из даты документы и ссылки на документ, данные получаются исключая записи движений самого документа!))
Спасибо что направили в правильное русло) |
|||
12
Borteg
09.04.13
✎
12:44
|
(10) ох е щас попробую))
|
|||
13
Borteg
09.04.13
✎
12:54
|
НУ с моментом времени лады, границу убрал щас оттестируюсь напишу что в итоге получилось.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |