|
v7: Актуальность(1) снова | ☑ | ||
---|---|---|---|---|
0
Медведик
13.12.12
✎
11:31
|
Имеем процедуру, вызываемую из обработки проведения документа с передачей контекста:
Рег = СоздатьОбъект("Регистры"); Если Конт.ИтогиАктуальны() = 0 Тогда Рег.ЗатратыНаПродукцию.ВременныйРасчет(1); Рег.Актуальность(1); Рег.РассчитатьРегистрыНа(Конт.ТекущийДокумент()); КонецЕсли; Реги = Рег.ЗатратыНаПродукцию; ТО = СоздатьОбъект("ТаблицаЗначений"); // Какие-то движения по регистру Конт.Регистр.ЗатратыНаПродукцию.ДвижениеПриходВыполнить(); Реги.УстановитьЗначениеФильтра(ххх, ххх, 1); Реги.ВыгрузитьИтоги(ТО, 1, 1); В итоге работы кода получаю пустую таблицу значений, хотя когда проверяю движения документа после проведения отчетом - итоги есть. Ткните носом, где косяк. З.Ы. Пробовал делать расчет временных итогов "По", рассчитывал итоги системной командой, а не Рег.Рассчитать... - ничего не помогло. |
|||
1
Ёпрст
13.12.12
✎
11:32
|
(0)
Рег.Актуальность(1); устанавливать наадо за пределами условия на актуальность итогов |
|||
2
Медведик
13.12.12
✎
11:39
|
(1)Сделал так:
Рег = СоздатьОбъект("Регистры"); Рег.Актуальность(1); Если Конт.ИтогиАктуальны() = 0 Тогда Не помогло (( |
|||
3
viktor_vv
13.12.12
✎
11:41
|
Может тут проблема еще
Реги.УстановитьЗначениеФильтра(ххх, ххх, 1); Уверен, что есть по значениям фильтра данные? |
|||
4
Медведик
13.12.12
✎
11:43
|
(2) Если выставить Актуальность(1) после расчета - тоже эффекта нет.
(3) Да, отчетом проверяю + глазами смотрю движения, сформированные документом. И да, фильтр накладывается после совершения этих движений. |
|||
5
viktor_vv
13.12.12
✎
11:43
|
И че у тебя там в иксах этих.
|
|||
6
Медведик
13.12.12
✎
11:45
|
(5) накладываются три фильтра на измерения регистра.
ххх1 - имя измерения, ххх2 - значение фильтра, ага. |
|||
7
viktor_vv
13.12.12
✎
11:47
|
(6) Да понятно, я про конкретные значения, может у тебя значение фильтра группа справочника, и с вариантом фильтра 1 оно понятно ничего не даст.
Вот и справшиваю. |
|||
8
Медведик
13.12.12
✎
11:48
|
(7) Нет, там все ровно. Два фильтра - элементы (не группы) справочника, третий - числовое значение (0/1).
|
|||
9
Ёпрст
13.12.12
✎
11:52
|
(4) фильтр убери, для начала
|
|||
10
Медведик
13.12.12
✎
12:01
|
(9) Не совсем понял... Фильтр накладывается после проведения расчета, для выгрузки итогов по необходимой аналитике.
Без фильтра я получу опупенную таблицу, из которой придется перебором отыскивать нужные строки. |
|||
11
viktor_vv
13.12.12
✎
12:02
|
(10) Так ты убери все фильтры, проверь, а потом поочереди добавляй фильтры, поймешь на каком тупит.
|
|||
12
Ёпрст
13.12.12
✎
12:03
|
(10) да блин, без фильтра выгрузи итоги и посмотри, что там есть, просто ТЗ.ВыбратьСтроку().
потом думай. |
|||
13
Медведик
13.12.12
✎
12:03
|
(9) Провел эксперимент - без фильтров в таблицу попадают итоги НА момент начала проведения документа. Т.е. уже сделанные движения - не попадают независимо от фильтра.
|
|||
14
Медведик
13.12.12
✎
12:03
|
(11),(12) Не, коллеги, дело не в фильтре, к сожалению ((
|
|||
15
Ёпрст
13.12.12
✎
12:07
|
(13) попадают
|
|||
16
Ёпрст
13.12.12
✎
12:07
|
приведи весь код
|
|||
17
Медведик
13.12.12
✎
12:08
|
Проверка тэга
<CODE>gdfgfdf </CODE> |
|||
18
Медведик
13.12.12
✎
12:11
|
Коллеги, как корректно код под кат убрать?
|
|||
19
viktor_vv
13.12.12
✎
12:11
|
(13) А это заменил на ПО ?
Рег.РассчитатьРегистрыНа(Конт.ТекущийДокумент()); |
|||
20
Медведик
13.12.12
✎
12:12
|
(19) Пробовал и "На", и "По" - разницы нет ((
|
|||
21
Ёпрст
13.12.12
✎
12:14
|
(19) не надо этого делать
|
|||
22
Ёпрст
13.12.12
✎
12:14
|
больше кода.
|
|||
23
Медведик
13.12.12
✎
12:17
|
За результаты тестов приношу извинения, остались фильтры с другой ветки. Если ВСЕ фильтры убрать, то движения документа в итогах появляются.
Помогите понять, что не так может быть с кодом Реги.УстановитьЗначениеФильтра("Продукция", тПрод, 1); Реги.УстановитьЗначениеФильтра("ГП", 0, 1); Реги.УстановитьЗначениеФильтра("Подразделение", тПодр, 1); , где тПрод и тПодр - элементы справочников, по которым итоги есть! |
|||
24
viktor_vv
13.12.12
✎
12:19
|
(23) Ну так убирай поочереди. Начни с "ГП".
|
|||
25
Ёпрст
13.12.12
✎
12:19
|
(23) в ГП точно числовой реквизит ?
И зачем такое нелепое измерение ? |
|||
26
viktor_vv
13.12.12
✎
12:21
|
И это, а "ГП" это случаем не реквизит ?
|
|||
27
Медведик
13.12.12
✎
12:25
|
(24),(25) Костыль вместо булевого значения. Если по нему фильтр убираю, эффекта нет.
Мысль. У меня цикл с наложением разных значений фильтра на одно измерение. После выполнения Реги.УстановитьЗначениеФильтра("Продукция", тПрод1, 1); Реги.УстановитьЗначениеФильтра("Продукция", тПрод2, 1); будут ли корректно отбираться итоги по тПрод2? |
|||
28
Ёпрст
13.12.12
✎
12:36
|
(27) будут, в твоём случае, будет последний наложеный фильтр
|
|||
29
Медведик
13.12.12
✎
12:37
|
Поборол проблему.
После наложения фильтра по измерению и выгрузки итогов, принудительно снимаю наложенный фильтр - профит. Если накладываю новый фильтр по тому же измерению без снятия предыдущего - они, видимо, накладываются по принципу "И", и я получаю "пустые итоги". |
|||
30
Медведик
13.12.12
✎
12:39
|
(28) Нет, в (29) описал неочевидный рецепт победы. Нюанс клюшек ((
Вам, Ёпрст4, и viktor_vv - спасибо большое! |
|||
31
Медведик
13.12.12
✎
12:49
|
Иллюстрирую проблему для потомков )), т.к. сам я в поиске ее описание не нашел:
1) наложили фильтр по измерению "Номенклатура" со значением Х1, выгрузили итоги - все отлично; 2) НЕ сняли фильтр по измерению "Номенклатура"; 3) наложили фильтр по измерению "Номенклатура" со значением Х2, выгрузили итоги - ПУСТО! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |