bdd2

Быстрый просмотр данных из переменных типа ТаблицаЗначений, СписокЗначений, ИндексированнаяТаблица, Запрос

Опубликовал aaiivanov (aaiivanov) в раздел Программирование - Инструментарий

Данный 1С++ класс предназначен для программиста - им очень удобно пользоваться при разработке, когда нужно без лишних затей вывести содержимое переменных типа ТаблицаЗначений, СписокЗначений, ИндексированнаяТаблица, Запрос. Поддерживаются итоги по колонке для числовых значений.

Печать значения осуществляется просто:

печтз = СоздатьОбъект("КПечатьТЗ");
печтз.Печать(данные, заголовок);

Результат выводится в объект Таблица, никаких модальных окон, что позволяет вывести ее на принтер, делать стандартный поиск значений, а также с помощью расшифровки поддерживается двойной клик по ячейке.

Подключается класс так:

  1. в файл defcls.prm добавить строчку:
    //#include "КПечатьТЗ.defcls.prm"
  2. файл КПечатьТЗ.defcls.prm положить рядом с defcls.prm
  3. файл КПечатьТЗ.ert положить в ExtForms\Classes\

Также есть функция сохранения результриующей таблицы в файл:

Сохранить(данные, имя_файла_без_расширения, добавить_время_в_имя_файла); , где:

имя_файла_без_расширения - только имя без пути, файл будет сохраняться в каталог пользователя, расширение файла будет mxl;

добавить_время_в_имя_файла - если не 0, то к имени файла будет добавлены дата и время формирования таблицы

Скачать файлы

Наименование Файл Версия Размер
КПечатьТЗ.zip
.zip 10,39Kb
19.09.16
10
.zip 10,39Kb 10 Скачать

См. также

Добавить вознаграждение
Комментарии
1. Имя Фамилия (ShEvOvIcH) 72 21.02.13 23:37 Сейчас в теме
Скачать вашу разработку и немного переделал, чего и вам советую:
1. Добавьте возможность печатать ТЧ документа;
2. Сделайте авто-ширину столбиков, ибо большая ТЗ смотрится не читабельно (если много пустых столбиков либо значения на пару символов). Я у себя реализовал это просчетом максимальной длинны значения в каждом столбике при выводе значений на печать (дабы дважды не проходить ТЗ). После вывода всех строк, выполнял метод Таб.Область(<?>,<?>,<?>,<?>).ШиринаСтолбца(<?>), передавая в ширину значение длинны в каждому столбику. Получилось довольно таки не плохо.
3. Итоги убрал, они противоречили парадигме второго пункта.

+ Несколько, на мой взгляд, недочетов:
1. При использовании итогов вы создаете все столбики с исходной ТЗ, а нужно создавать только те столбики, которые имеют числовой формат;
2. Использовать расшифровку для простых типов данных нет смысла, они лишь мешают и засоряют результирующую таблицу;
3. Нет необходимости использовать отдельную секцию для вывода данных с отрицательным значением. Достаточно установить контроль ячейки: Красный.

А во всем остальном зачет. Взял себе на вооружение.
2. aaiivanov (aaiivanov) 1 22.02.13 07:49 Сейчас в теме
Спасибо за отзыв, хорошие идеи.