|
Не сворачивается табличная часть у документа | ☑ | ||
---|---|---|---|---|
0
Tolstiy Beremenniy
03.10.18
✎
09:09
|
Нужно свернуть табличную часть у документа.
Либо выгрузить её в таблицу значений и свернуть. Но вижу у табличной части тоже есть такой метод. Но выходит ошибка в отладчике. Показатели.Свернуть("Должность, Сотрудник", "КбаллФакт, КдисФакт") Обращение к процедуре объекта как к функции!!!! Но я же как процедуру её вызываю. Я помню такую ошибку, но сейчас забыл как её обойти. Подскажите пожалуйста!!!! |
|||
1
Cool_Profi
03.10.18
✎
09:11
|
Когда ты зовёшь процедуру из "Вычислить выражение" в отладчике, она пытается вызваться как функция. Вот тебе и ошибка.
|
|||
2
НЕА123
03.10.18
✎
09:13
|
Показатели - это кто и откуда?
|
|||
3
ВРедная
03.10.18
✎
09:16
|
(0) Покажи остальной код сверху с начала процедуры, в которой ты сворачиваем табличную часть
|
|||
4
Tolstiy Beremenniy
03.10.18
✎
09:49
|
(2) Показатели это табличная часть объекта.
(1) Я так и думал что это отладчика коллизия!!!! Хоть и не явная. (3) Я вот так сделал. -> ТзПоказатели = Показатели.Выгрузить(); ТзПоказатели.Свернуть("Должность, Сотрудник", "КбаллФакт, КдисФакт"); Движения.С05_СправкиПоПоказателямПремирования.Записывать = Истина; Для Каждого ТекСтрокаПоказатели Из ТзПоказатели Цикл Движение = Движения.С05_СправкиПоПоказателямПремирования.Добавить(); Движение.Период = Дата; Движение.Организация = Организация; Движение.Подразделение = Подразделение; Движение.Сотрудник = ТекСтрокаПоказатели.Сотрудник; Движение.Кбалл = ТекСтрокаПоказатели.КбаллФакт; Может можно было и тч докумнета так же свернуть!!!! |
|||
5
unregistered
03.10.18
✎
09:54
|
(0) А где ты это делаешь? Не на форме случайно? Ты уверен, что "Показатели" - это табличная часть, а не коллекция данных формы?
|
|||
6
НЕА123
03.10.18
✎
09:54
|
(4)
в ТЧ колонок больше, скорее всего. |
|||
7
Tolstiy Beremenniy
03.10.18
✎
09:58
|
(5) В модуле объекта, это проведение документа.
(6) Ну я использую же те которые мне нужны. Свернуть нужно по должности и Сотруднику, а по КбаллФакт и КдисФакт просуммировать. Так вот что получилось. Размерность поля КдисФакт число (1.1). пО ИЗОБРАЖЕНИЮ ДОЛЖНО БЫТЬ 0,9 + 0,9 - 1,8, ТАК? http://joxi.ru/krD6DdlTE5KjW2 |
|||
8
Tolstiy Beremenniy
03.10.18
✎
09:59
|
(7) Даже 0,9 ни на что не изменилось.
Так и осталось. Не хватает размерности? Почему суммирование не произвелось? |
|||
9
unregistered
03.10.18
✎
10:01
|
(7) > я использую же те которые мне нужны
Так нельзя. Из справки по методу Свернуть объекта Табличная часть: Важно! Оба списка колонок должны покрывать всю табличную часть. Списки колонок не должны пересекаться. |
|||
10
НЕА123
03.10.18
✎
10:02
|
(7)
>Ну я использую же те которые мне нужны. в СП смотрел? последний пост Загрузка запроса в дерево значения на форме для ввода данных |
|||
11
unregistered
03.10.18
✎
10:04
|
(7) К слову. Менять данные объекта (документа) в момент проведения нельзя.
Все манипуляции с данными (дозаполнение и очистка реквизитов, сворачивание табличных частей и т.п.) должно делаться ПередЗаписью. В обработке проведения данные документа должны только читаться. |
|||
12
Tolstiy Beremenniy
03.10.18
✎
10:07
|
(11) То есть там в принципе это не работает?
Или так не делается. Тут дело в том что у документа дерево значений. При проведении и открытии докумнета оно помещается и извлекается из служебной таблицы значений. По которой я и делаю проведение. Тогда если нужно сворачивать таблицу для проведения, нужно сделать ещё одну служебную? Где данные уже будут свернуты и подготовлены для проведения? |
|||
13
hhhh
03.10.18
✎
10:07
|
(11) не вводите парня в заблуждение. Ничего там нет про "должны покрывать всю табличную часть"
|
|||
14
hhhh
03.10.18
✎
10:08
|
(11) ТаблицаЗначений (ValueTable)
Свернуть (GroupBy) Синтаксис: Свернуть(<КолонкиГруппировок>, <КолонкиСуммирования>) Параметры: <КолонкиГруппировок> (обязательный) Тип: Строка. Имена колонок, разделенные запятыми, по которым необходимо группировать строки таблицы значений. <КолонкиСуммирования> (необязательный) Тип: Строка. Имена колонок, разделенные запятыми, по которым необходимо суммировать значения в строках таблицы значений. Описание: Осуществляет свертку таблицы значений по указанным колонкам группировки. Строки, у которых совпадают значения в колонках, указанных в первом параметре, сворачиваются в одну строку. Значения этих строк, хранящиеся в колонках, указанных во втором параметре, накапливаются. Важно! Списки колонок не должны пересекаться. Колонки, не вошедшие ни в один из списков колонок, после выполнения метода удаляются из таблицы значений. |
|||
15
Tolstiy Beremenniy
03.10.18
✎
10:08
|
(11) Куда их помещать то перед записью?
Так как в первой служебной таблице они должны быть как есть, для извлечения и помещения туда. А визуально выводятся в дерево значений! |
|||
16
hhhh
03.10.18
✎
10:10
|
(15) проверьте самое основное, точно у вас это колонка "КдисФакт" типа число. Может это у вас не число.
|
|||
17
Tolstiy Beremenniy
03.10.18
✎
10:11
|
(14) Я считал что в КолонкиСуммирования должна быть сумма
КолонокГруппировок. Свернуть(<КолонкиГруппировок>, <КолонкиСуммирования>) А в (7) видно что суммирования не было. Хотя должно быть по должности и Сотруднику. 0,9+ 0,9 = 0,18 или 1,8, или 0,1. |
|||
18
Tolstiy Beremenniy
03.10.18
✎
10:12
|
||||
19
НЕА123
03.10.18
✎
10:14
|
(13)(14)
В ТЧ "должны покрывать всю табличную часть". в (0) про ТЧ. |
|||
20
Tolstiy Beremenniy
03.10.18
✎
10:18
|
(19 ) в (4) я уже сворачиваю таблицу значений!
|
|||
21
lodger
03.10.18
✎
10:18
|
(18) Паша, читай СП внимательнее.
|
|||
22
НЕА123
03.10.18
✎
10:21
|
число (1.1) маловато будет.
|
|||
23
Tolstiy Beremenniy
03.10.18
✎
10:21
|
Наверное в самом деле я сделаю табличную часть ещё одну
служебную. Назову её для проведения. И при формирования первой служебной части, где хранятся данные дерева значений буду формировать её. В свернутом виде. По ней и делать проведение! |
|||
24
Tolstiy Beremenniy
03.10.18
✎
10:22
|
(22) Да так в Тз написали. Я делал не задумывался. А сейчас
вон оказывается такая размерность не идет никуда. |
|||
25
hhhh
03.10.18
✎
10:26
|
(19) в (4) на которую вы отвечаете
ТзПоказатели = Показатели.Выгрузить(); ТзПоказатели.Свернуть("Должность, Сотрудник", "КбаллФакт, КдисФакт"); |
|||
26
Tolstiy Beremenniy
03.10.18
✎
10:28
|
(25) То есть оно и не должно свернуться????????
|
|||
27
hhhh
03.10.18
✎
10:31
|
(26) должно. увеличьте размерность, чего вы уперлись? сто байт хотите сэкономить? там наверняка диск 10 террабайт, ваши сто байт эти никто не оценит.
|
|||
28
Lexey_
03.10.18
✎
10:34
|
(21) он не Паша, он Андрей(Ливингстар)
|
|||
29
ZDenis
03.10.18
✎
10:38
|
с разрядностью (1,1) - 0,9 это максимум что может быть
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |