Имя: Пароль:
1C
1C 7.7
v7: Печать двух печатных форм
0 Vet1310
 
25.08.11
08:03
Не пойму где ошибка, как выбрать исходной таблицей ту которая мне нужна?

Процедура ПриОткрытии()
   ПриЗаписиПерепроводить(1);
КонецПроцедуры  
   
Процедура ПечатьРеестра()        
         Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Таблица");
   Таб.ВывестиСекцию("Шапка");    
            //  
   СЗ = СоздатьОбъект("СписокЗначений");
   СЗ.ДобавитьЗначение("Печать Реестр");
   СЗ.ДобавитьЗначение("Печать Реестр 1");
   Табл = 0;
   Результат = СЗ.ВыбратьЗначение(Табл,,,,1);
   Если Результат <> 1 Тогда
       Возврат;
   КонецЕсли;
   
   Если Табл = "Печать Реестр" Тогда
       Таб.ИсходнаяТаблица("Таблица");
   ИначеЕсли Табл = "Печать Реестр 1" Тогда
       Таб.ИсходнаяТаблица("Таблица1");
   КонецЕсли;
1 Escander
 
25.08.11
08:04
исходную указывают до первого вывода
а у вас сначало:
   Таб.ВывестиСекцию("Шапка");    
а потом
  Если Табл = "Печать Реестр" Тогда
       Таб.ИсходнаяТаблица("Таблица");
   ИначеЕсли Табл = "Печать Реестр 1" Тогда
       Таб.ИсходнаяТаблица("Таблица1");
   КонецЕсли;
2 filh
 
25.08.11
08:08
(0) А что выводится постоянно Таблица?
3 Vet1310
 
25.08.11
08:14
(2) Да
4 zak555
 
25.08.11
08:15
кто такой г@вноКод пишет ?
5 Kookish
 
25.08.11
08:16
В клюшках нет возможности выводить в печатную форму из нескольких макетов. Выводить разные секции из одного - сколько угодно. Из нескольких не получится. Вывод: соедините макеты в один и выводите на здоровье.
6 Kookish
 
25.08.11
08:18
Или выбирать исходную таблицу ДО вывода каких-либо данных в табличный документ. В нашем случа%uu044D%0это Шапка.
7 zak555
 
25.08.11
08:19
Процедура ПечатьРеестра()
   
   СЗ = СоздатьОбъект("СписокЗначений");
   СЗ.ДобавитьЗначение("Таблица", "Печать Реестр");
   СЗ.ДобавитьЗначение("Таблица1","Печать Реестр 1");
   ИмяТаблицы = "";
   Результат = СЗ.ВыбратьЗначение(ИмяТаблицы,,,,1);
   
   Если Результат <> 1 Тогда
       Возврат;
   КонецЕсли;
   
   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица(ИмяТаблицы);
   
   //фигачим дальше
КонецПроцедуры
8 andrewks
 
25.08.11
08:21
(5) это враньё
9 zak555
 
25.08.11
08:22
(8) с этого места по-подробнее =)
10 andrewks
 
25.08.11
08:24
(9)

Таб=СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Макет1");
//фигачим
Таб.ИсходнаяТаблица("Макет2");
//фигачим дальше

один минус - ширина колонок, ессесно, становится единой. поэтому макеты надо грамотно нарисовать
11 zak555
 
25.08.11
08:25
(10) в конце Показать ?
12 andrewks
 
25.08.11
08:25
(11) ога
13 Ёпрст
 
25.08.11
08:39
(5) Обкурился ?
14 Ёпрст
 
25.08.11
08:41
(0) Купи у ДенисЧ СП  и читай вниматочно:

ВыбратьЗначение(<Значение>,<Заголовок>>,<Позиция>,<Таймаут>,<СпособВыбора>)
Назначение:
Открыть окно для интерактивного выбора значения из списка.
!!!!!!!!!!!!!!Возвращает!!!!!!!!!!!!1:  -1 (минус единица) - закончилось время <Таймаут> ожидания отклика пользователя, 1 - если выбор произведен, 0 - иначе.
15 Ёпрст
 
25.08.11
08:42
+14 чорт, не туда посмотрел, за (14) звиняюсь.
16 Vet1310
 
25.08.11
08:44
сделал как в (7) , только одна таблица выводится
17 Ёпрст
 
25.08.11
08:46
(16) а сколько надо ?
У тебя в коде вообще нет вывода таблицы, только назначение исходного макета.
18 Escander
 
25.08.11
08:52
(16) делаем 2 таблицы, типа:
   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Таблица");
   Таб2 = СоздатьОбъект("Таблица");
   Таб2.ИсходнаяТаблица("Таблица1");

выводим в обе всё что нужно а в конце
Таб.Показать("","");  
Таб2.Показать("","");
19 Vet1310
 
25.08.11
08:52
Надо 2.Чтобы можно было использовать 2 печатные формы по выбору - например реестр и реестр1 Я создал уже Таблица и Таблица1. Таблица - реестр. Таблица1 - реестр1. К кнопке печать прикрутил СЗ.

Дайте пожалуйста пример как в коде вывести таблицу.
20 Ёпрст
 
25.08.11
08:56
(19)


   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Первая");
   Таб.ВывестиСекцию("СекцияИзПервойТаблицы");

   Таб.ИсходнаяТаблица("Вторая");
   Таб.ВывестиСекцию("СекцияИзВторойТаблицы");
   Таб.Показать("Ну ни хрена себе..");
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой