Консультация № 144878
24.09.2008, 14:10
0.00 руб.
0 7 2
Как сделать так, чтобы при проведении документа (Если позиция документа больше позиции точки актуальности), точкаактуальности не сдвигалась.

Обсуждение

Неизвестный
25.09.2008, 09:24
общий
это ответ
Здравствуйте, Оксана/kasy!

Я повторю свой ответ на Ваш вопрос 144727с уточнением. Полная цитата моего ответа в Приложении.

Вам нужно в модуле формы документа создать процедуру, которая будет вызывать метод документа Провести() с параметром 0 (
0 - проводить документ без сдвига ТА
). Например,

Код:
Процедура ПроведениеДокумента()
Провести(0);
КонецПроцедуры //ПроведениеДокумента

И затем в формуле кнопки "Провести" этого документа указать ссылку на эту процедуру. (Свойстыва кнопки, вкладка "Дополнительно", поле "Формула").

Успехов!
С уважением, Владимир.

Приложение:
Здравствуйте, Оксана/kasy!

Если меняется позиция документов при проведении, значит включена опция Новые документы проводить после ТА (в реальном времени). чтоб позиция документа при проведении не менялась снимите это флажок или программно определить способ проведения методом документа Провести(<Режим> ).

Где <Режим> - число 0, 1, 2, или 3.
0 - проводить документ без сдвига ТА;
1 - проводить непроведенный документ реальным временем (со сдвигом ТА);
2 - перепроводить проведенный документ реальным временем (со сдвигом ТА);
3 - проводить любой (непроведенный, проведенный) документ реальным временем (со сдвигом ТА).

Если этот метод применяется в Модуле формы документа непосредственно к документу локального контекста, то данный метод отрабатывает те же действия, как интерактивное нажатие пользователем кнопки с формулой ''#Провести''. В этом случае, если параметр <Режим> опущен, то документ проводится в режиме, соответствующем установкам системы меню Сервис-Параметры.
(подробнее в описании встроенного языка)
Неизвестный
26.09.2008, 05:13
общий
это ответ
Здравствуйте, Оксана/kasy!
Для этого нужно вручную двинуть точку актуальности. Или назад, но лучше вперед.
Я рекоммендую Операции- управление оперативными итогами - открыть период-
Нужно открыть еще один период, чтобы было с запасом. И на вопрос Изменить точку Актуальности ответить Да.
Обратите внимание, что у меня, в конфигурации есть в модуле проведения такой код:
Если ИтогиАктуальны() = 0 Тогда
Рег.ВременныйРасчет();
ВремРегистры.Актуальность(1);
ВремРегистры.РассчитатьРегистрыНа(ТекущийДокумент());
КонецЕсли;
то есть если проводится документ со сдвигом ТА, то он безболезненно пропускает тяжелые времяемкие вычисления -
а никто не будет спорить, что комманда РассчитатьРегистрыНа(ТекущийДокумент()); может выполняться десятки секунд даже на самых мощных процессорах.
Таким образом, при проведении со сдвигом ТА сильно экономится время.
Механизм сдвига ТА пытается сделать так, чтобы большинство новьвводимых документов пропускали эти вычисления.
Кроме того, не забывайте следить, чтобы последовательность была в восстановленном состоянии. Последовательность нужно восстанавливать, она следит, чтобы не было отрицательных партий, перекосов в себестоимости и, как следствие, она следит, чтобы счет "Себестоимость реализации" был в актуальном, а не перекошенном состоянии.
Я упомянул про последовательность, потому что она, во время восстановления штатными средствами, тоже двигает ТА.
Неизвестный
26.09.2008, 20:47
общий
Да, кстати, после ТА невозможно выполнить комманду РассчитатьРегистрыНа
Как следствие, документ может не проводиться, не попадать в отчет, и т.д.
Неизвестный
29.09.2008, 09:12
общий
[26.09.2008, 19:47]
Да, кстати, после ТА невозможно выполнить комманду РассчитатьРегистрыНа
Как следствие, документ может не проводиться, не попадать в отчет, и т.д.
-------
Шахрайчук Владимир Анатольевич, Специалист

Проведенный документ ведь не может быть после ТА?
Поэтому он и не делает никаких движений (они отключены бывают, например, когда двигают ТА назад или перепроводят документы штатными средствами) и соответственно, не попадает в отчеты, основанные на движениях.
или я чего-то на понял?
Неизвестный
29.09.2008, 10:19
общий
Я поняла. Спасибо.
Неизвестный
30.09.2008, 22:44
общий
То Владимир Лазурко
Проведенный документ ведь не может быть после ТА?
Может. При этом пиктограмма документа в журнале документов по форме та же (птичка), но серенькая (неактуальный). Пиктограмма по цвету похожа на операцию в статусе "Выключены проводки"
Проводки и операции такой документ имеет. Движения регистров имеет наполовину. Движения регистров имеют записи в файле RAxxxx.dbf но не имеют записей в файле RGxxxx.dbf,
поэтому невозможно к остаткам этих движений обратиться посредством комманды Рег.РассчитатьРегистрыНа(...), но (не проверял, но кажется, можно) обратиться через Рег.ВыбратьДвижения(...)
Если я не прав, пишите.
Неизвестный
03.10.2008, 09:53
общий
2 Шахрайчук Владимир Анатольевич:

Спасибо за разъяснения. Не знал (или забыл и упустил из виду).
Форма ответа