Имя: Пароль:
1C
1С v8
Вывод области в новый табличный документ из табличного документа
0 1C_Patriot
 
02.03.12
18:04
Здравствуйте, встала задача произвести экспорт в excel, область строки  отчета. Посоветуйте как сделать
1 1C_Patriot
 
02.03.12
18:14
ветка ты должна жить...
2 Reset
 
02.03.12
18:30
Хрен пойми что надо, вдруг угадаю.

ТДДляЭксель=Новый ТабличныйДокумент;
ТДДляЭксель.Вывести(ИсходныйТД.Область("R1C1:R2C2"));
ТДДляЭксель.Записать(ИмяФайла,ТипФайлаТабличногоДокумента.XLS);
3 1C_Patriot
 
02.03.12
18:34
(2), нам не известны координаты типа "R1C1:R2C2"
4 1C_Patriot
 
02.03.12
18:38
вот что получается, правда не реботает
   ТаблицаЭкспорт = Новый ТабличныйДокумент;        
   ТаблицаЭкспорт.Вывести(ЭлементыФормы.ПолеТабличногоДокументаРезультат.ПолучитьОбласть("Детали"));
   ТаблицаЭкспорт.Показать();
5 Reset
 
02.03.12
18:38
(3) Нам тем более ;)
6 Reset
 
02.03.12
18:39
(4) Я подозреваю, что в твоем таб. доке нет области с таким именем. (Не путай с макетом)
7 1C_Patriot
 
02.03.12
18:42
(6), область есть проверял следующим образом


   Для Каждого ТекущаяОбласть Из ЭлементыФормы.ПолеТабличногоДокументаРезультат.Области Цикл
       Если Найти(ТекущаяОбласть.Имя, "Детали") > 0 Тогда
           ТекущаяОбласть.Очистить(); // правда удаляется последняя строка данной области
       КонецЕсли;
   КонецЦикла;
8 Reset
 
02.03.12
18:43
Кстати да, если область к выводу всего одна, можно сократить запись до

ИсходныйТД.ПолучитьОбласть(1,1,1,10).Записать(ИмяФайла,ТипФайлаТабличногоДокумента.XLS);
9 1C_Patriot
 
02.03.12
18:49
(8), работает но это аналогично таб.вывести(ИсходныйТД), а мне нужна определенная область которую не прописать начальной строкой и конечной, потому что это не статика. Имеем только имя "Детали"
10 Reset
 
02.03.12
18:53
Попробовал с именем - работает.
11 1C_Patriot
 
02.03.12
18:57
(10), попробовал неработает
12 Reset
 
02.03.12
18:58
Выражайся яснее - "неработает" - что значит?
13 Reset
 
02.03.12
18:58
Что за область "Детали"?
14 1C_Patriot
 
02.03.12
19:00
немного дополнительной инфы. отчет который формируется универсальными средствами, выводиться на форму в элемент управления "документ результат" вот теперь оттуда надо выгружать только строки без шапки в эксель.

Детали как я понял это область той самой строки,вот
15 Reset
 
02.03.12
19:00
Догадываюсь по (7) - это строка "табличной части".
Ну то есть выведется в эксель последняя строка (т.е. последнее появление "имени"). А что надо?
16 Reset
 
02.03.12
19:01
Если (15) верно, то никуда тебе не деться от указания адреса like (8) or (2)
17 Reset
 
02.03.12
19:01
(16) Ну то есть если нужно весь список выводить
18 Reset
 
02.03.12
19:03
(14) "Без шапки" - ну и какие проблемы. Шапка обычно статична.
19 1C_Patriot
 
02.03.12
19:06
(18) прошу код, ибо я отупел
20 1C_Patriot
 
02.03.12
19:08
все поумнел, сейчас сам напишу
21 Reset
 
02.03.12
19:10
Собтвенно, просто же
xxxОбласть(ВысотаШапкиССтроках+1,1)  
и все
22 Reset
 
02.03.12
19:11
ушел
Надеюсь, получиться у тебя.
23 DrShad
 
02.03.12
19:14
Тогда уж xxxОбласть(ВысотаШапкиССтроках+1,1, ТЧ.Количество(), ШиринаШапкиВСтолбцах)
24 Reset
 
02.03.12
19:16
(23) 3,4й параметры не обязательные - про необходимость отрезания подвала ничего не говорилось, только шапку :)
Просто выведется все, начиная с левого угла.
Но, в общем случае, согласен, конечно.
25 DrShad
 
02.03.12
19:17
+(23) ну и не забыть ВысотуШапки в третьем параметре
26 Reset
 
02.03.12
19:17
(24) Прогнал. Пятница. (23) - верно полность во всех случаях)
27 Reset
 
02.03.12
19:18
(26) С учетом (25) ;p
28 DrShad
 
02.03.12
19:18
(24) что не говорилось об обрезании подвала, еще не означает что выводить подвал правильно, а если немного потелепатировать, то сдается мне что ТЧ нужна в Эксель, чтоб кому-то передать по электронке и на той стороне смогли ее загрузить
29 Reset
 
02.03.12
19:20
(28) Согласен. Ошибка на самом деле еще в том, что (21) только 1 ячейку выведет.
Ну пятница у меня, говорю.
30 1C_Patriot
 
02.03.12
19:20
сделал следующим образом


   Для Каждого ТекущаяОбласть Из ЭлементыФормы.ПолеТабличногоДокументаРезультат.Области Цикл
       Если Найти(ТекущаяОбласть.Имя, "Детали") = 0 Тогда
           ТекущаяОбласть.Видимость = Ложь;
       КонецЕсли;
   КонецЦикла;
   
   ТаблицаЭкспорт = Новый ТабличныйДокумент;    
   ТаблицаЭкспорт.Вывести(ЭлементыФормы.ПолеТабличногоДокументаРезультат);
   ТаблицаЭкспорт.Записать("C:\temp\t1.xls",ТипФайлаТабличногоДокумента.XLS);

правда, нужно еще додумать чтобы в эксель не выгружались кнопки группировок 1 и 2
31 1C_Patriot
 
02.03.12
19:22
(28) все таки есть телепаты на свете.

P.S прошу не обижатся
32 DrShad
 
02.03.12
19:24
(31) да ладно, я же не патриот