gifts2017

v7. Печать таблицы значений, СпискаЗначений, Структуры

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

Отличие этого решения от аналогичных - печать списка значений + структуры.
Форматирование - управляемое. Вывод заголовков колонок - управляемый.

 

 

 

 

 

Добавить в глобальном модуле. Вызов обработки и обоработка расшифровки

//--------------------------------------------------------------------------------
// Данные - таблица значений, список, структура
Процедура глПечатьТаблицыЗначений(Данные, Заголовок = "",Форматировать = 2,ФорматЗаголовковКолонок = "",РазделительДробнойЧасти = ".") Экспорт 
    //Параметр: Форматировать
 //Форматировать = 1 - по значению параметра колонки ширина или авто
 //Форматировать = 2 - авто
 //Форматировать = ? - не форматировать 
 
 //Параметр: ФорматЗаголовковКолонок
 //ФорматЗаголовковКолонок = 1 - название колонки + заголовок
 //ФорматЗаголовковКолонок = 2 - название колонки
 //ФорматЗаголовковКолонок = ? - Заголовок
 
 СписокПараметров = СоздатьОбъект("СписокЗначений");
 СписокПараметров.Установить("Данные",      Данные);
 СписокПараметров.Установить("Заголовок",     Заголовок); 
 СписокПараметров.Установить("Форматировать",    Форматировать);  
 СписокПараметров.Установить("РазделительДробнойЧасти",  РазделительДробнойЧасти);
 СписокПараметров.Установить("ФорматЗаголовковКолонок",  ФорматЗаголовковКолонок);
 
 
 ОткрытьФормуМодально("Обработка.ПечатьТаблицыЗначений", СписокПараметров);
 
КонецПроцедуры // глПечатьТаблицыЗначений()

 

//--------------------------------------------------------------------------------
Процедура ОбработкаЯчейкиТаблицы(Расшифровка, СтандартнаяОбработка, Таблица, Адрес=0)
 
 Если ТипЗначенияСтр(Расшифровка) = "СписокЗначений" Тогда
  Если Расшифровка.Получить("ПечатьТаблицыЗначений") = "Расшифровка" Тогда
   ЗнРасшифровка      = Расшифровка.Получить("Расшифровка");
   ЗнРасшифровкаТипЗначенияСтр  = ТипЗначенияСтр(ЗнРасшифровка);
   Если (ЗнРасшифровкаТипЗначенияСтр = "ТаблицаЗначений")
   или (ЗнРасшифровкаТипЗначенияСтр  = "СписокЗначений")
   или (ЗнРасшифровкаТипЗначенияСтр  = "Структура") Тогда
    
    СтандартнаяОбработка = 0;    
    
    глПечатьТаблицыЗначений(ЗнРасшифровка, ,Расшифровка.Получить("Форматировать"));
    Возврат;
   Иначе      
    Расшифровка    = ЗнРасшифровка;
   КонецЕсли;
  КонецЕсли;
 КонецЕсли;
 
 
 СтандартнаяОбработка = 1;

 
КонецПроцедуры       

 

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

Наименование Файл Версия Размер Кол. Скачив.
ПечатьТаблицыЗначений
.1246734284 16,50Kb
25.09.09
62
.1246734284 16,50Kb 62 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Александр Рытов (Арчибальд) 06.07.09 16:39
2. Сергей Чуян (Собеседник) 06.07.09 16:57
1cpp (2.x)
3. Дополнительные классы компоненты
Назначение
Данный класс предназначен,
для имитирования структуры данных других языков.
Структура является динамическим объектом, что означает возможность
программного управления количеством и названиями свойств структуры.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа