Вывести Таблицу

Тема в разделе "1C и всё что с ней связано", создана пользователем 9AAAA, 15 июл 2011.

  1. 9AAAA

    9AAAA Гость

    Создаю отчет, хочу вывести для него таблицу, просто ради примера как это делается
    Посмотрел на мисте на простых примерах
    На форме есть два поля типа дата ни с чем не связанных
    Ход мыслей следующий
    В отчете есть три секции с одноименными названиями
    Код (Text):
     таб=создатьобъект("Таблица")
    Таб.ВывестиСекцию("Шапка")
    Таб.ВывестиСекцию("ЩапкаТаблицы")
    Таб.ВывестиСекцию("Докум")
     
  2. KiR

    KiR НЕ шибка опытный програмер)
    1C Team

    Регистрация:
    11 сен 2007
    Сообщения:
    1.581
    Симпатии:
    0
    и в чем, собственно, проблема заключается?
     
  3. alxrie

    alxrie Гость

    Цикл - очень полезная штука. Например, если есть таблица с секциями

    Шапка:: Таблица умножения

    и

    Строка:: м*1 м*2 м*3 ... м*10
    (разумеется, все ячейки объявлены как Выражение)

    то

    Таб = СоздатьОбъект("Таблица");

    Таб.ВывестиСекцию("Шапка");

    Для м=1 По 10 Цикл
    Таб.ВывестиСекцию("Строка");
    КонецЦикла;

    выведет таблицу умножения.

    (А если использовать ещё и ПрисоединитьСекцию() - то станет вообще прекрасно. Ну а Область() - тут можно просто чудеса творить).
     
  4. 9AAAA

    9AAAA Гость

    Таблица при нажатии на кнопку сформировать не выводится
     
  5. alxrie

    alxrie Гость

    А что указано в формуле кнопки "Сформировать"?
    Там должен быть вызов процедуры, которая создаст таблицу.
    А в конце этой процедуры должно быть

    Таб.Показать();

    (если переменная для таблицы называется Таб).

    Перед Таб.Показать() можно ещё поиграться с режимами таблицы (при помощи методов ТолькоПросмотр(), Опции() и т.д.).
     
  6. Allexei

    Allexei Well-Known Member

    Регистрация:
    2 май 2008
    Сообщения:
    322
    Симпатии:
    0
    Как пример "универсальная функция формирования таблиц для посмотреть просто так":
    Код ( (Unknown Language)):
    //---------------------------------------------------------------------------
    //Функция УниверсальнаяФункцияПечати(Макет, Таблица, ТаблицаДляПечати, Секция)
    //Вспомогательная функция для печати таблицы значений
    //Параметры:
    //      Макет        - объект типа макет
    //      Таблица       - таблица которую печатаем
    //      ТаблицаДляПечати - поле табличного документа в которое будет выведен результат
    //      Секция         - секция макета
    Функция УниверсальнаяФункцияПечати(Макет, Таблица, ТаблицаДляПечати, Секция)

    //Выведим шапку+
    СекцияВыведена= Ложь;
    Для Каждого ТекКолонка Из Таблица.Колонки Цикл
    Секция.Параметры.Значение= ТекКолонка.Имя;
    Если НЕ СекцияВыведена Тогда
    ТаблицаДляПечати.Вывести(Секция);
    СекцияВыведена= Истина;
    КонецЕсли;
    ТаблицаДляПечати.Присоединить(Секция);
    КонецЦикла;
    //Выведим шапку-

    //Выведит тело+
    Для Каждого ТекСтрока Из Таблица Цикл
    СтрокаВыведена= Ложь;
    Для Каждого ТекКолонка Из Таблица.Колонки Цикл
    Секция.Параметры.Значение= ТекСтрока[ТекКолонка.Имя];
    Если НЕ СтрокаВыведена Тогда
    ТаблицаДляПечати.Вывести(Секция);
    СтрокаВыведена= Истина;
    КонецЕсли;
    ТаблицаДляПечати.Присоединить(Секция);
    КонецЦикла;
    КонецЦикла;
    //Выведим тело-

    ТаблицаДляПечати.Показать();
    ТаблицаДляПечати.ОтображатьСетку= Ложь;
    КонецФункции
    Кидаешь в процедуру обработки нажатия кнопки данную функцию с заполненными параметрами и все гуд :rolleyes:
    Если надо могу пример выложить как это дело с помощью макета компоновки данных вывести- будет намного красивее.
     
  7. 9AAAA

    9AAAA Гость

    Спасибо дело в том, что я не указывал Таб. Показать()
     
Загрузка...

Поделиться этой страницей