Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Печатная форма отчета

v7: Печатная форма отчета
Я
   prochor
 
22.01.13 - 15:04
Ситуация такая.
Есть отчет "Акт сверки".
Бух печатает акт для одного клиента, следом - для второго.
Никогда на это не обращал внимания, но для новой бухини это актуально.
Оказывается, что для акта создается только одно окно печатной формы, и последующее обращение к этому отчету просто замещает в этом окне печатную форму, а не создает новое окно с печатной формой.
Я смог объяснить?
Естественно, я сравнил модуль этого отчета и других.
Никакой разницы. Но в тех отчетах, сколько отчет не запускай, создается новое окно для печатной формы.
Что это может быть?
 
 
   Deon
 
1 - 22.01.13 - 15:05
А там по названию, вроде, ищет
   Deon
 
2 - 22.01.13 - 15:05
заголовка окна, в смысле
   1Сергей
 
3 - 22.01.13 - 15:06
Акт сверки - это отчет? А почему не док?
   Надсмотрщик
 
4 - 22.01.13 - 15:06
(0) У мена на всю группу можно сформировать сразу
   Надсмотрщик
 
5 - 22.01.13 - 15:07
(3) Со снеговиком не путай
   Надсмотрщик
 
6 - 22.01.13 - 15:10
+ (4) А на печать только галки нужным поставить, и...
   aka AMIGO
 
7 - 22.01.13 - 15:16
(0) можешь выложить этот отчет?
только бухии у меня нет, но посмотрю в другой конфе
   aka AMIGO
 
8 - 22.01.13 - 15:17
+7 или в мыло
   aka AMIGO
 
9 - 22.01.13 - 15:41
всё, посмотрел у бушек, не надо ничего выкладывать
АктСверки работает нормально, правда, бухия 546
что при повторном нажатии на кнопку "печать" для одного контрагента, что для тут-же введенного нового, без закрытия/открытия формы - всё печатается в новых окнах

по алгоритму:
Таб = СоздатьОбъект("Таблица"); этот оператор в теле процедуры Печать(), так что таблица создается каждый раз заново.
Возможно, в новой бухии что-нибудь переделали, и там вместо присваивания при каждом входе в Проц.Печать стоит Обновить() или Очистить..
 
короче что-нибудь такое:
    Если (ТипЗначенияСтр(Т) <> "Таблица")ИЛИ(Обновить=0) Тогда
           Т = СоздатьОбъект("Таблица");
    Иначе
         Т.Очистить();
    КонецЕсли;

Здесь Т - объявлена в модуле, а не в процедуре
а в акте - Таб, объявлена в процедуре

разбирайся :)
   prochor
 
10 - 22.01.13 - 16:26
+9 - именно так, правда я не стал разбираться, почему именно в этом отчете Т = СоздатьОбъект("Таблица"); отрабатывает только при первом запуске, я просто убрал это условие, оставив принудительное создание объекта Таблица.

всем спасибо!
 
 Рекламное место пустует

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует