Имя: Пароль:
1C
 
Как достучаться до Таблицы?
0 Omskdizel
 
11.02.10
15:02
1С 7.7
Имеется в наличии форма отчета (планирование закупок), к которому снизу прилеплена форма для ввода данных (таблица). Данные там ессно генерируются, чего-то там вводится и считается. Для разных отделов вид этого отчета хочется иметь разный. В частности, в отчете есть столбцы с данными работы филиалов, есть сводные колонки и колонки с данными снабжения (в пути, резерв и т.д.). В снабжении мне надо показывать все, на филиалах показывать только их родную колонку (куда они и забивают данные). Вопрос - как это можно сделать?

На данный момент - при открытии отчета на филиале ничего умнее уменьшения шрифта и пользования метода ШиринаСтолбца() ничего не придумали.

Пробовал достучаться до этого дела через Таблица.ИсходнаяТаблица() - на что получал недвусмысленные маты от интерпретатора (Поле агрегатного объекта не обнаружено). У переменной Таблица похоже тип не Таблица, а СекцияТаблицы. То есть метод Область() в нем работает, а методы объекта типа Таблица не работают.

Вариант с рисованием каждой клеточки тоже не проходит похоже, так как в полях, где заносятся данные есть формулы.

Нижайше прошу всемогущего All помочь в моих скромных потугах :)
1 АЛьФ
 
11.02.10
15:08
Делай для каждого отдела свой отчет.
2 План счетов
 
11.02.10
15:10
Достучаться до таблицы попробуй так:

Таблица.Область("R1C7").Значение;
3 Ёпрст
 
гуру
11.02.10
15:17
(0)
либо всё делать через Пустую таблицу и использовать несколько Таблиц..
Либо несколько отчетов
Либо использовать элемент управления йоксель
Либо йокселем скрывать столбцы/строки
Либо использовть tabledoc.dll
4 Omskdizel
 
11.02.10
15:42
(1) Не хотелось бы, там хитрые формулы, вести синхронно не очень удобственно.
(2) Так я достучусь и, собственно, достукиваюсь до данных таблицы. Саму форму я не подменю и отрисовать не получится, ибо формулы в ячейки программно не запихнуть.
(3)Первый вариант тоже не проходит. Пытаюсь в ПриОткрытии() использовать Таблица.ИсходнаяТаблица("ИмяТаблицы") и при открытии отчета пишет, что файл "ИмяТаблицы" не найден. Про второй вариант написал. Третий с четвертым вряд ли подойдут, из ячейки надо вызывать один из методов отчета. Что такое tabledoc.dll не знаю, пойду посмотрю.
5 Ёпрст
 
гуру
11.02.10
15:44
(4) Не путай Пустую таблицу и РВД..
6 АЛьФ
 
11.02.10
15:44
2(4) Выкинь модуль в текстовик. И веди себе синхронно свои хитрый формулы.
7 Ёпрст
 
гуру
11.02.10
15:45
>>>третий с четвертым вряд ли подойдут, из ячейки надо вызывать один из методов отчета.

Ты не поверишь, но в йокселе это всё есть, + контекстное меню по правой кнопкеи ..еще хренова туча вкусностей..
+ Можно несколько Таблиц на форму покидать.
8 Ёпрст
 
гуру
11.02.10
15:45
9 Omskdizel
 
11.02.10
15:46
(1) Более того, данные эти сохраняются ля обработки следующим отделом и при изменении структуры придется менять все отчеты. Да и если бы удалось формы подсовывать - я бы их не две сделал, данных в таблице очень много - селал бы возможность отдельные столбцы прятать.

И чего было не сделать так, чтобы при ШиринаСтолбца(0) столбец бы просто прятался.
10 Omskdizel
 
11.02.10
15:47
(5) Чего такое РВД?
11 Omskdizel
 
11.02.10
15:50
(8) Занятно. Попробую, спасибо!
12 Ёпрст
 
гуру
11.02.10
15:56
(10) есть 3 типа Таблицы
- обычная, создается через СоздатьОбъект("Таблица")
- Пустая, прилеплена к форме, доступны все методы первой + обращение через Таблица
- РВД (Таблица в Режиме Ввода Данных) , прилеплена к форме, служит для ввода данных, обращение через Таблица + свои методы для работы.

Дык вот метод исходнаяТаблица работает только для первых двух типов, для РВД указывается явно в свойствах формы, какая Таблица будет использоваться.
13 Omskdizel
 
12.02.10
06:29
Я конеш прошу прощения за ламеризм, но тупо не могу найти свежую версию Йокселя. По ссылке Скачать перекидывает на sourseforge где можно скачать 1.1.2 датированную октябрем 08 года, тогда как в истории изменений есть 1.1.25 (25.01.10). Подскажите плиз куда тыкнуть...
14 Omskdizel
 
12.02.10
08:02
Извиняюсь, нашел. В Hotfix'ах лежала.
15 Omskdizel
 
25.02.10
07:54
Пощупал Йоксель, появились вопросы, может подскажет кто :)

1. Правильно ли я понял, что из Фрейма не отловить события редактирования ячейки?
2. Правильно ли я понял, что при использовании объекта ТабличныйДокумент на форме диалога, размер вместе с формой не меняется (так как там идет подмена стандартного объекта 1С, то это недоработка самой 1С)?