Работа с табличным отчетом
03.03.2005
16:35
#1
"Помогите пожалуйста, вроде делаю всё как у Усикова и Бартеньева написано, и в описании встроенного языка от 1С тоже ответов не нашел.
Существует внешний отчет, у него в табличной части имеется "Таблица1" с секцией "Шапочка".
для простоты помещаем на форму одну кнопку с процедурой СформироватьОтчет и "реквизит диалога" идентификатор - текстик, процедура, вызываемая при нажатии enter после ввода текста ВводТекста().
Вопрос вот в чем - непонятны условия для вызова табличной части находящейся в табличной части самой внешней обработки. И если кто знает расскажите как вызвать таблицу из процедуры связанной с элементом формы "реквизит диалога".
вот непонятно, то ли еще существует какое то позиционирование для самой формы, и потому таблица не всегда видна."
Существует внешний отчет, у него в табличной части имеется "Таблица1" с секцией "Шапочка".
для простоты помещаем на форму одну кнопку с процедурой СформироватьОтчет и "реквизит диалога" идентификатор - текстик, процедура, вызываемая при нажатии enter после ввода текста ВводТекста().
Вопрос вот в чем - непонятны условия для вызова табличной части находящейся в табличной части самой внешней обработки. И если кто знает расскажите как вызвать таблицу из процедуры связанной с элементом формы "реквизит диалога".
| Код |
|---|
<br><br>Процедура СформироватьОтчет() //ПОДВЯЗАНА НА КНОПКУ<br><br>Табличка=СоздатьОбъект("Таблица");<br><br>Табличка.ИсходнаяТаблица("Таблица1"); <br><br>Табличка.ВывестиСекцию("Шапочка");<br><br>Табличка.Опции(0,0,0,0);<br><br>Табличка.ПараметрыСтраницы(2,100);<br><br>Табличка.ТолькоПросмотр(1);<br><br>Табличка.Показать("Пример"); <br><br>//при нажатии на кнопку эта процедура работает и таблица находится<br><br>КонецПроцедуры <br><br><br><br>//Процедура СформироватьОтчет1();<br><br>//СформироватьОтчет();<br><br>//конецПроцедуры<br><br><br><br>Процедура ВводТекста() //ПОДВЯЗАНА на реквизит формы "РЕКВИЗИТ ДИАЛОГА" для ввода текста<br><br>Сообщить(Текстик); //идентификатор для реквизита формы "РЕКВИЗИТ ДИАЛОГА" <br><br>//Любое из нижеследующего в этой процедуры включить - работать не будет<br><br><br><br>//СформироватьОтчет1();<br><br><br><br> //СформироватьОтчет();<br><br><br><br> //Табличка=СоздатьОбъект("Таблица");<br><br>//Табличка.ИсходнаяТаблица("Таблица1"); <br><br>//Табличка.ВывестиСекцию("Шапочка");<br><br>//Табличка.Опции(0,0,0,0);<br><br>//Табличка.ПараметрыСтраницы(2,100);<br><br>//Табличка.ТолькоПросмотр(1);<br><br>//Табличка.Показать("Пример"); <br><br>конецПроцедуры<br><br><br><br>Процедура ПриОткрытии() <br><br>//Если раскомментировать далее то работает - таблицу выводит<br><br>//Табличка=СоздатьОбъект("Таблица");<br><br>//Табличка.ИсходнаяТаблица("Таблица1"); <br><br>//Табличка.ВывестиСекцию("Шапочка");<br><br>//Табличка.Опции(0,0,0,0);<br><br>//Табличка.ПараметрыСтраницы(2,100);<br><br>//Табличка.ТолькоПросмотр(1);<br><br>//Табличка.Показать("Пример"); <br><br>Форма.ИспользоватьСлой("Основной,Слой1");<br><br>//Если раскомментировать далее то работает - таблицу выводит<br><br>//Табличка=СоздатьОбъект("Таблица");<br><br>//Табличка.ИсходнаяТаблица("Таблица1"); <br><br>//Табличка.ВывестиСекцию("Шапочка");<br><br>//Табличка.Опции(0,0,0,0);<br><br>//Табличка.ПараметрыСтраницы(2,100);<br><br>//Табличка.ТолькоПросмотр(1);<br><br>//Табличка.Показать("Пример"); <br><br>КонецПроцедуры <br><br><br><br> // если раскомментировать далее, то "Файл таблица1 не найден" <br><br> //Табл=СоздатьОбъект("Таблица");<br><br>//Табл.ИсходнаяТаблица("Таблица1"); <br><br>//Табл.ВывестиСекцию("Шапочка");<br><br>//Табл.Опции(0,0,0,0);<br><br>//Табл.ПараметрыСтраницы(2,100);<br><br>//Табл.ТолькоПросмотр(1);<br><br>//Табл.Показать("Пример");<br><br> |
вот непонятно, то ли еще существует какое то позиционирование для самой формы, и потому таблица не всегда видна."
04.03.2005
06:38
#2
Вообще работа с таблицама в 1С построена не фонтан.
Тут дело в том, что есть ограничения. по крайней мере для внешних отчетов.
Например, если вызывается процедура обработки реквизита
в данном случае ("ВводТекста()"), то открытие окна для таблицы не возможно.
Не знаю с чем это связано. Не знаю что и как у них там внутри, но вот так.
Если попытаться сделать внешнюю печатную форму для чего-нить, то тут тоже столько же проблем.
Может это из того, что, как сказано, в документации внешние отчеты рекомендуются для отладочных целей...вот оно так и есть.
Тут дело в том, что есть ограничения. по крайней мере для внешних отчетов.
Например, если вызывается процедура обработки реквизита
в данном случае ("ВводТекста()"), то открытие окна для таблицы не возможно.
Не знаю с чем это связано. Не знаю что и как у них там внутри, но вот так.
Если попытаться сделать внешнюю печатную форму для чего-нить, то тут тоже столько же проблем.
Может это из того, что, как сказано, в документации внешние отчеты рекомендуются для отладочных целей...вот оно так и есть.
04.03.2005
10:48
#4
Почему единственный?
Если подумать, то можно и как-нить без этого обойтись.
Смотря что надо. Вот недавно к одному документу прикручевал новую таблицу, из-за того, что не хотелось трогать общие таблицы - решил сделать внешнюю печатную форму, так у меня те же *** получилась и ни в какую... так я просто добавил в документ 2-е строчки и он стал вызывать мою обработку, а там уж все путём сделал.
Смотря что надо сделать. Стоит подумать сначала, может как-нить и по-другому сделать можно. А думаю, что всегда можно.
Если что интересует можно писать на daedal@hotmail.ru - отвечу.
Если подумать, то можно и как-нить без этого обойтись.
Смотря что надо. Вот недавно к одному документу прикручевал новую таблицу, из-за того, что не хотелось трогать общие таблицы - решил сделать внешнюю печатную форму, так у меня те же *** получилась и ни в какую... так я просто добавил в документ 2-е строчки и он стал вызывать мою обработку, а там уж все путём сделал.
Смотря что надо сделать. Стоит подумать сначала, может как-нить и по-другому сделать можно. А думаю, что всегда можно.
Если что интересует можно писать на daedal@hotmail.ru - отвечу.
Итоги в бухгалтерииПустые строки в печатной форме Счет-фактура выданные (1С Бухгалтерия)???? Хелп!!!
Читают тему
(гостей: 1)