|
Выгрузить ТабДок в ТаблицуЗначений | ☑ | ||
|---|---|---|---|---|
|
0
UnAmerican
22.09.08
✎
14:46
|
Задача из серии планирования. Я формирую запросы. Формульно преобразовываю данные. После чего пользователь смотрит на отчет, меняет данные на формочке(в табличном документе) и со следующим нажатием сформировать получает новые данные.
А теперь вопрос: КАК ВЫГРУЗИТЬ ДАННЫЕ ИЗ ТАБЛИЧНОГО ДОКУМЕНТА В ТАБЛИЦУ ЗНАЧЕНИЙ. З.Ы. При помощи *.xml, вариант не очень понравился. |
|||
|
1
Legj
22.09.08
✎
14:47
|
При помощи построителя запроса/отчета
|
|||
|
2
UnAmerican
22.09.08
✎
14:51
|
Гм.. Это объект формы, типа табличный документ)).
|
|||
|
3
UnAmerican
22.09.08
✎
15:04
|
Ну так че, кто-нить, че-нить, конкретное предложит?
|
|||
|
4
UnAmerican
22.09.08
✎
15:19
|
Так скоро и рабочий день закончиться, помогите плиз.
|
|||
|
5
UnAmerican
22.09.08
✎
15:42
|
ап
|
|||
|
6
Rabajaba
22.09.08
✎
15:54
|
Выгрузить (Unload)
Табличная часть Выгрузить (Unload) Вариант синтаксиса: Выгрузить колонки Описание: Выгружает табличную часть в таблицу значений. Если указаны строки и колонки, то только они будут скопированы. Если не указаны - то табличная часть будет выгружена полностью. Синтаксис: Выгрузить(<Строки>, <Колонки>) Параметры: <Строки> (необязательный) Тип: Массив. Массив строк для выгрузки. Если не указан, выгружаются все строки табличной части. <Колонки> (необязательный) Тип: Строка. Список колонок для копирования в формате: "Колонка1, Колонка2...". Если список не задан, то будут скопированы все колонки. Вариант синтаксиса: Выгрузить по отбору Описание: Выгружает табличную часть в таблицу значений. Если указан отбор, то только строки из отбора будут выгружены. Если отбор не указан, то будут выгружены все строки табличной части. Если указаны колонки, то только эти колонки будут выгружены. Иначе, будут выгружены все колонки табличной части. Синтаксис: Выгрузить(<Параметры отбора>, <Колонки>) Параметры: <Параметры отбора> (необязательный) Тип: Структура. Ключ структуры - идентификатор колонки, а значение структуры - значение отбора. <Колонки> (необязательный) Тип: Строка. Список колонок для копирования в формате: "Колонка1, Колонка2...". Возвращаемое значение: Тип: ТаблицаЗначений. Описание: Создает таблицу значений и копирует в нее табличную часть. Имена колонок таблицы значений совпадают с именами колонок табличного поля. Колонка, содержащая номер строки, выгружается в колонку с именем НомерСтроки. Пример: ТаблицаСостава = Состав.Выгрузить(); никак? |
|||
|
7
UnAmerican
22.09.08
✎
15:58
|
Еще раз повторяю выгрузить нужно ТабличныйДокумент (SpreadsheetDocument)
|
|||
|
8
Rabajaba
22.09.08
✎
16:01
|
торможу ...
|
|||
|
9
Rabajaba
22.09.08
✎
16:02
|
Поячеечный перебор тоже никак?
|
|||
|
10
UnAmerican
22.09.08
✎
16:06
|
А как его реализовать когда документ, точнее макеты уже выведены на печать(экран).
Получить строку и табличного документа так и не удалось. Способ должен быть, не зря же оставили возможность редактировать ячейки. Но как их программно получить))??!?!7! |
|||
|
11
Rabajaba
22.09.08
✎
16:09
|
ТабДок вешаем на форму и на форме вешаем кнопку "Преобразовать в таблицу значений". Если ТабДок не на форме, то событий нет ВООБЩЕ.
|
|||
|
12
Rabajaba
22.09.08
✎
16:11
|
Наприме:
ЭлементыФормы.ТабДок.Область(Верх, Лево, Низ, право) Там будет коллекция ячеек, а потом уже из коллекции вытаскиваем, что нужно. |
|||
|
13
UnAmerican
22.09.08
✎
16:14
|
12. Попробую покрутить, если что напишу.
|
|||
|
14
КуплюКровать
22.09.08
✎
16:16
|
(0)Источником данных построителя запроса может быть табличный документ. Поковыряй в этом направлении
|
|||
|
15
КуплюКровать
22.09.08
✎
16:16
|
(0)Источником данных построителя запроса может быть табличный документ. Поковыряй в этом направлении
|
|||
|
16
UnAmerican
22.09.08
✎
16:18
|
Возвращаемое значение:
Тип: ТабличныйДокумент. Область, как новый табличный документ Может я что то не понемаю, но это не как не коллекция ячеек. |
|||
|
17
UnAmerican
22.09.08
✎
16:21
|
14 не пойдет. Ибо это уже отчет, но обычный. Где формулы расчета сложные и зависят от предидущих строк, а такая обработка в построителе практически нереальна.
|
|||
|
18
Rabajaba
22.09.08
✎
16:26
|
да что же вы все такие придирчевые ... какая разница как называть область.область() или коллекция ячеек ... в результате то идет работа с ячейками. карочи вот пример
ОбластьД = ЭлементыФормы.Таб.Область(Ном, 10, Ном, 10); ОбластьП = ЭлементыФормы.Таб.Область(Ном, 12, Ном, 12); Если ТипЗнч(ОбластьП.Расшифровка) = Тип("СправочникСсылка.Контрагенты") Тогда Если ОбластьП.Расшифровка = Справочники.Контрагенты.ПустаяСсылка() Тогда Если СтрЗаменить(ОбластьП.Текст, " ", "") = "" Тогда ОбластьП.Текст = СуммаИтогов; Иначе ОбластьП.Текст = Число(СтрЗаменить(ОбластьП.Текст, " ", "")) + СуммаИтогов; КонецЕсли; Если СтрЗаменить(ОбластьД.Текст, " ", "") = "" Тогда ОбластьД.Текст = СуммаИтогов; Иначе ОбластьД.Текст = Число(СтрЗаменить(ОбластьД.Текст, " ", "")) - СуммаИтогов; КонецЕсли; Возврат; Иначе Если ОбластьП.Расшифровка <> Справочники.Контрагенты.НашиНаправления Тогда флУст = 1; КонецЕсли; КонецЕсли; КонецЕсли; |
|||
|
19
UnAmerican
22.09.08
✎
16:53
|
Спасибо большое Rabajaba, за настовление на правильный путь, в общем мой алгоритм таков:
1. В момент формирования ТабДок в таблицу значений записываем координаты области для не пустых значений. Главнй момент построчно. 2. В момент формирования измененных значений делаем обход Для каждого Строка из ТЗ цикл Получаем область. 3. И вот на этом моменты начинаем работать с данными, которые явно зависят от прошлых строк и текущей строк. |
|||
|
20
UnAmerican
22.09.08
✎
16:56
|
Замечание к 18. Ячеек у мну очень много)). Задача по планированию будущих затрат производственного предприятия. Причем конфигурация личный самопал(н"ое количество прогеров)+УПП. Будем стораться конкурировать с рарусом)))
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |