|
v7: ОбработкаПроведения() - получить итог по регистру с учетом движений документа | ☑ | ||
---|---|---|---|---|
0
Злопчинский
22.01.16
✎
15:18
|
...как получить итог регистра на момент включая проведенный документ - т.е. с учетом записанных движений по документу в этом проведении...
например на ТиС 9.2 Процедура ОбработкаПроведения() ... ... //здесь закончился штатный алгоритм проведения документа //проведение возможно как в ТА, так и задним числом //как здесь получить итоги по Регистр.Покупатели с учетом записанных движений по регистру, типа РассчитатьИтогиПо(ТекущийДокумент()) . ??? |
|||
1
aka AMIGO
22.01.16
✎
15:27
|
так вроде-б и должно получиться.. Закончил запись в регистр -выводи хоть движения, хоть итоги..
Текущий док войдет в их число.. |
|||
2
Злопчинский
22.01.16
✎
15:38
|
(1) как получить итоги?
|
|||
3
Масянька
22.01.16
✎
15:39
|
(0) А зачем в итогах текущий док-т?
|
|||
4
aka AMIGO
22.01.16
✎
15:45
|
(2)
у меня что-то похожее сделано, примерно так (для других, нужных мне, регистров) ТЗИР = СоздатьОбъект("ТаблицаЗначений"); // проверка полной продажи Рег = СоздатьОбъект("Регистры"); РегЗаявки = Рег.Заявки; РегРезервыТМЦ = Рег.РезервыТМЦ; Если ИтогиАктуальны()=0 Тогда Рег.Актуальность(1); Рег.РассчитатьРегистрыНа(ТекущийДокумент()); КонецЕсли; РегЗаявки.ВыгрузитьИтоги(ТЗИЗ,0,1); РегРезервыТМЦ.ВыгрузитьИтоги(ТЗИР,0,1); |
|||
5
trdm
22.01.16
✎
15:47
|
блин, это было даже в одном из заданий экзаменнационных по торговле.
|
|||
6
Злопчинский
22.01.16
✎
15:47
|
(4) Почему
Рег.РассчитатьРегистрыНа(ТекущийДокумент()); а не Рег.РассчитатьРегистрыПО(ТекущийДокумент()); .. ? |
|||
7
Garykom
гуру
22.01.16
✎
15:48
|
(6) потому что ТА
|
|||
8
aka AMIGO
22.01.16
✎
15:48
|
(6) А.. это мне так надо было :)
замени :) |
|||
9
Злопчинский
22.01.16
✎
15:49
|
(5) да. я все понимаю, я - тупой...
но такой код В МОДУЛЕ ПРОВЕДЕНИЯ у меня выдает итоги почему-то на сейчас, а не по текущий документ() (заднее число) |
|||
10
Масянька
22.01.16
✎
15:49
|
(6) ПО - начало, НА - конец.
|
|||
11
Злопчинский
22.01.16
✎
15:49
|
(7) а мну надо на заднее число
|
|||
12
Злопчинский
22.01.16
✎
15:50
|
(10) уверена? не наоборот?
|
|||
13
trdm
22.01.16
✎
15:50
|
(9) а я тоже уже забыл как это делается)
|
|||
14
aka AMIGO
22.01.16
✎
15:51
|
(11) так у мну и считается на заднее.. проверено на 100 рядов, 5 лет работает
|
|||
15
Злопчинский
22.01.16
✎
15:51
|
(4) зачем Рег.Актуальность(1); - если никаких действий по изменению итогов регистра через Рег - не выполняется?
|
|||
16
aka AMIGO
22.01.16
✎
15:51
|
(15) для распальцовки.
|
|||
17
Злопчинский
22.01.16
✎
15:51
|
(14) поможешь в онлайне при необходимости?
|
|||
18
aka AMIGO
22.01.16
✎
15:52
|
(17) Друже, у меня к тимвьюеру перекрыт кислород.
|
|||
19
aka AMIGO
22.01.16
✎
15:53
|
+18 я-б с удовольствием.. :(
|
|||
20
Масянька
22.01.16
✎
15:53
|
(11) Не совсем (я не Бог), но по-моему.
|
|||
21
Злопчинский
22.01.16
✎
15:54
|
(19) понятно, слился...
|
|||
22
aka AMIGO
22.01.16
✎
15:56
|
(21) да нет, ты не понял..
Я не слился, только если вечером, из дому, во субботу, к примеру. Сегодня не могу, ДР у жены. В проблеме вроде как ничего сложного-то и нет.. |
|||
23
Масянька
22.01.16
✎
15:56
|
(21) А вообще посмотри в ТиС: номенклатура для подбора - там по кнопке фильтр можно выставить.
|
|||
24
Масянька
22.01.16
✎
15:56
|
(22) Цветы купил? :)
|
|||
25
Злопчинский
22.01.16
✎
15:57
|
(22) угу, устроит в удобное для тебя время, на выходных наверное у компа буду
|
|||
26
Злопчинский
22.01.16
✎
15:58
|
(23) существенное условие - модуль проведения, транзакция незакрыта еще. подбор в номенклатуре - немножко другое
|
|||
27
Mikeware
22.01.16
✎
15:58
|
(21) так а рассчитатьПо() - не работает?
Ну или в конце концов, РасссчитатьРегистрыНа(СформироватьПозициюДокумента(ТекущийДок, 1)) ? |
|||
28
Злопчинский
22.01.16
✎
15:58
|
(20) РассчитатьРегистрыПо(<?>,);
Синтаксис: РассчитатьРегистрыПо(<ГраницаРасчета>,<ГрафаОтбора>) Назначение: Рассчитать все регистры с установленным флагом временного расчета на конец события. Параметры: |
|||
29
aka AMIGO
22.01.16
✎
15:59
|
(25) угу. Спишемся через почту. Твоя у меня есть.
(24) нет, вечером в метро куплю. |
|||
30
Злопчинский
22.01.16
✎
15:59
|
(27) да блин временный расчет - (провожу ПКО в 29.12.15) - выполняется, а в итогах - то что на сейчас - и это несмотря на то, что времрасчет - выполняется...
|
|||
31
Mikeware
22.01.16
✎
16:00
|
(25) Кстати, да - в сиквельной версии виртуальные таблицы врали, приходилось движения напрямую читать.
|
|||
32
Злопчинский
22.01.16
✎
16:00
|
ладно, ребят, спасибо - покручу еще, да и aka AMIGO обещался помочь.
может просто страшный тупняк на меня напал... |
|||
33
Злопчинский
22.01.16
✎
16:00
|
(31) дбфная база
|
|||
34
Масянька
22.01.16
✎
16:01
|
(28) Ну, вот нашел... Берет или начало дня (или там чего нужно), или конец.
|
|||
35
Масянька
22.01.16
✎
16:01
|
(30) Дык, посмотри в ТиС (23).
|
|||
36
Злопчинский
22.01.16
✎
16:02
|
просто тупо не вижу проблемы. Вроде все должно работает - но фигня получается
|
|||
37
Mikeware
22.01.16
✎
16:02
|
(30)
РегРезервыТМЦ = Рег.РезервыТМЦ; Рег.Актуальность(1); проведение... Рег.РассчитатьРегистрыНа(ТекущийДокумент()); ? (31) знаю, что ты только с ними раотаешь - потому и пишу. |
|||
38
Масянька
22.01.16
✎
16:03
|
(29) Эх, ты... Надо было, блин, с утра... Кофе + цветы в постель :)))
|
|||
39
Mikeware
22.01.16
✎
16:04
|
(38) розы в постель? И залить кофеем? жестоко...
|
|||
40
aka AMIGO
22.01.16
✎
16:05
|
(38)(39) Я уходил - она спала :) Только разбудил поздравить, и убёг на работу.
Договорились с дочкой вечером поздравить :) |
|||
41
ЧеловекДуши
22.01.16
✎
16:14
|
(0) Зачем? :)
|
|||
42
HawkEye
22.01.16
✎
18:33
|
(10) так-то наоборот )))
(0) Актуальность(<?>); Синтаксис: Актуальность(<ФлагАктуальности>) Назначение: Устанавливает флаг актуальности временного расчета. Возвращает текущее состояние флага актуальности временного расчета. Число: 1 - временный расчет поддерживается в актуальном состоянии; 0 - не поддерживается. Параметры: <ФлагАктуальности> - необязательный параметр. Число: 1 - временный расчет поддерживать в актуальном состоянии; 0 - не поддерживать актуальность временного расчета. Если параметр не задан, то метод просто возвращает текущий флаг актуальности, не меняя его. Замечание: Данный метод можно использовать только в модуле проведения документа. Если флаг установлен, то все последующие движения регистров будут изменять итоги временного расчета, и ,значит, итоги регистров временного расчета будут все время (при проведении документа) находиться в актуальном состоянии. |
|||
43
Злопчинский
22.01.16
✎
19:45
|
(42) не хочу лезть в типовой алгоритм
Хочу в конце проведения написать самостоятельный код, не привязанный к предыдущему |
|||
44
HawkEye
23.01.16
✎
19:26
|
(43) ну и?
тогда еще проще... зачем тебе актуальность... перед КонецПроведения Рег = СоздатьОБъект("Регистры"); Остатки = Рег.ОстаткиТМЦ; Рег.РассчитатьРегистрыПо(ТекущийДокумент(),); Остатки.ВыбратьДвиженияДокумента(ТекущийДокумент()); пока Остатки.ПолучитьДвижение() = 1 Цикл или что там тебе надо? |
|||
45
Злопчинский
23.01.16
✎
19:27
|
(44) попробую
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |