Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
24 Май 2018, 15:06
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Вывод на печать  (Прочитано 4901 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Fateev_max

  • *
  • Сообщений: 41
  • РЕПУТАЦИЯ: 1
  • КПД: 2%
  • Регистрация: 2010-09-21
  • Сайт: 
Есть справочник контрагентов необходимо вывести его на печать.Этот справочник вывел средствами конструктора.У каждого контрагента есть договора размещенные в справочнике ДоговорыКонтрагента.Необходимо еще выводить для справочника контрагентов его договора. Как обойти эти договора?
Пробывал так
Пока Выборка1.Следующий() Цикл
     Если Выборка1.Владелец=Выборка.Наименование
      Тогда
      Элемент.Параметры.ДоговорыКонтрагентов=Выборка1.Наименование;
       
   ТабДок.Вывести(Элемент);    



Процедура Печать(Элемент)
   //{{_КОНСТРУКТОР_ПЕЧАТИ_СПИСОК(Печать)
   // Данный фрагмент построен конструктором.
   // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
   ТабДок = Новый ТабличныйДокумент;
   Макет = Справочники.Контрагенты.ПолучитьМакет("Печать");
   // Заголовок
   Область = Макет.ПолучитьОбласть("Заголовок");
   ТабДок.Вывести(Область);
   // Шапка
   Область = Макет.ПолучитьОбласть("Шапка");
   ТабДок.Вывести(Область);
   Выборка = Справочники.Контрагенты.ВыбратьИерархически();
   Выборка1 = Справочники.ДоговорыКонтрагентов.Выбрать();
   Группа = Макет.ПолучитьОбласть("Группа");
   Элемент = Макет.ПолучитьОбласть("Элемент");
   Пока Выборка.Следующий() Цикл
      
      Если Выборка.ЭтоГруппа Тогда
         Группа.Параметры.Заполнить(Выборка);
         ТабДок.Вывести(Группа);
      Иначе
      
         Элемент.Параметры.Код=Выборка.Код;
         Элемент.Параметры.Наименование=Выборка.Наименование;
         Элемент.Параметры.Адрес=Выборка.Адрес;
         Элемент.Параметры.ИНН=Выборка.ИНН;
         
                  ТабДок.Вывести(Элемент);
         
      Пока Выборка1.Следующий() Цикл
     Если Выборка1.Владелец=Выборка.Наименование
      Тогда
      Элемент.Параметры.ДоговорыКонтрагентов=Выборка1.Наименование;
       
   ТабДок.Вывести(Элемент);    
     Иначе
                КонецЕсли;
         КонецЦикла;
   
         КонецЕсли;         
                
        КонецЦикла;

   ТабДок.ОтображатьСетку = Ложь;
   ТабДок.Защита = Истина;
   ТабДок.ТолькоПросмотр = Истина;
   ТабДок.ОтображатьЗаголовки = Ложь;
   ТабДок.Показать();
   //}}_КОНСТРУКТОР_ПЕЧАТИ_СПИСОК
КонецПроцедуры


Оффлайн markantonio

  • *
  • Сообщений: 18
  • РЕПУТАЦИЯ: 4
  • КПД: 22%
  • Регистрация: 2010-12-07
  • Сайт: 
  • Профессия: Программист 1С
Re: Вывод на печать
« Ответ #1: 08 Дек 2010, 12:09 »
Пока Выборка.Следующий() Цикл
Если Выборка.ЭтоГруппа Тогда
Группа.Параметры.Заполнить(Выборка);
ТабДок.Вывести(Группа);
Иначе
Элемент.Параметры.Заполнить(Выборка);
ТабДок.Вывести(Элемент);

Выборка1 = Справочники.ДоговорыКонтрагентов.Выбрать(,Выборка);

Пока Выборка1.Следующий() Цикл
//.................................
//.................................
КонецЦикла;


КонецЕсли;
КонецЦикла;

Оффлайн Fateev_max

  • *
  • Сообщений: 41
  • РЕПУТАЦИЯ: 1
  • КПД: 2%
  • Регистрация: 2010-09-21
  • Сайт: 
Re: Вывод на печать
« Ответ #2: 09 Дек 2010, 10:33 »
Процедура Печать(Элемент)
   //{{_КОНСТРУКТОР_ПЕЧАТИ_СПИСОК(Печать)
   // Данный фрагмент построен конструктором.
   // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
   ТабДок = Новый ТабличныйДокумент;
   Макет = Справочники.Контрагенты.ПолучитьМакет("Печать");
   // Заголовок
   Область = Макет.ПолучитьОбласть("Заголовок");
   ТабДок.Вывести(Область);
   // Шапка
   Область = Макет.ПолучитьОбласть("Шапка");
   ТабДок.Вывести(Область);
   Выборка = Справочники.Контрагенты.ВыбратьИерархически();
   Группа = Макет.ПолучитьОбласть("Группа");
   Элемент = Макет.ПолучитьОбласть("Элемент");
   Пока Выборка.Следующий() Цикл
      
      Если Выборка.ЭтоГруппа Тогда
         Группа.Параметры.Заполнить(Выборка);
         ТабДок.Вывести(Группа);
      Иначе
      
         Элемент.Параметры.Код=Выборка.Код;
         Элемент.Параметры.Наименование=Выборка.Наименование;
         Элемент.Параметры.Адрес=Выборка.Адрес;
         Элемент.Параметры.ИНН=Выборка.ИНН;
         
                  ТабДок.Вывести(Элемент);
      Выборка1 = Справочники.ДоговорыКонтрагентов.Выбрать(,Выборка);   
      Пока Выборка1.Следующий() Цикл
     Элемент.Параметры.ДоговорыКонтрагентов=Выборка1.Наименование;
   ТабДок.Вывести(Элемент);    
            КонецЦикла;

                 КонецЕсли;   
         КонецЦикла;
   
   ТабДок.ОтображатьСетку = Ложь;
   ТабДок.Защита = Истина;
   ТабДок.ТолькоПросмотр = Истина;
   ТабДок.ОтображатьЗаголовки = Ложь;
   ТабДок.Показать();
   //}}_КОНСТРУКТОР_ПЕЧАТИ_СПИСОК
КонецПроцедуры

Выдает ошибку {Справочник.Контрагенты.Форма.ФормаСписка(30)}: Ошибка при вызове метода контекста (Выбрать): Несоответствие типов (параметр номер '2')
      Выборка1 = Справочники.ДоговорыКонтрагентов.Выбрать(,Выборка);   


Оффлайн markantonio

  • *
  • Сообщений: 18
  • РЕПУТАЦИЯ: 4
  • КПД: 22%
  • Регистрация: 2010-12-07
  • Сайт: 
  • Профессия: Программист 1С
Re: Вывод на печать
« Ответ #3: 09 Дек 2010, 11:39 »
Выборка1 = Справочники.ДоговорыКонтрагентов.Выбрать(,Выборка.Ссылка);

попробуй.

Оффлайн Fateev_max

  • *
  • Сообщений: 41
  • РЕПУТАЦИЯ: 1
  • КПД: 2%
  • Регистрация: 2010-09-21
  • Сайт: 
Re: Вывод на печать
« Ответ #4: 10 Дек 2010, 12:01 »
Добавил в выборку отбор по владельцу Выбрать(,выборка.Ссылка);
Договор начал выводится.Допустим Сидоров Договор 111.
Затем договор выводится у руданова ,хотя у руданова нет этого договора.


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
165 Сообщений
alex0402
78 Сообщений
oleg-x
69 Сообщений
AIFrame AIFrame
63 Сообщений
buketov.av buketov.av
47 Сообщений
wise wise
39 Сообщений
ilyay ilyay
37 Сообщений
KOI8-R
36 Сообщений
Анюта17
33 Сообщений
Alter
29 Сообщений

* Кто онлайн

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal