gifts2017

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

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

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

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