Вход | Регистрация

Форумы на Кубань.Ру


1С:Предприятие ::

Метки:

Цвета в Таблице

Ø
Я
   Ferrum
22.11.04 - 13:50
Клиент хочет чтоб значение на печатной форме отличались по цвету
Каким образом можно это сделать через ЦветТекста()?
Если не сложно прошу приветси примре такого отчёта
 
 
   Uno
1 - 22.11.04 - 14:00
А глянуть в любой конфе слабо? или нормально вопрос сформулировать?
   Ferrum
2 - 22.11.04 - 15:41
2(1) - не видел в конфах такого примера.
вот дргуая формулировка.
есть печатная форма.
выводятся секции
с полями клиент - сумма.
хочется видеть разный цвет цифр в поле сумма. например
клиент1 - сумма синим цветом
клиент2 - сумма зеленным цветом
   Берсеркер
3 - 22.11.04 - 15:52
(2) Самый простой путь - сделать отдельные секции для каждого цвета.
Самый красивый - устанавливать цвета секции после вывода. Но это долше по времени разработки
   Ferrum
4 - 22.11.04 - 16:01
2(3) вот и хочу сделать самым красивым.
простенький пример привести можете?
в ЖКК я не нашёл примера
   Берсеркер
5 - 22.11.04 - 16:12
(4) Самый "красивый" - это красивый код :)
Для юзверя это без разницы.
Ну а пример... создаем две (или больше) идентичных секции, различающихся только цветом текста/фона. Напр. КлиентСиний, КлиентКрасный. Цвет задается в свойствах клетки таблицы.
А при выводе отчета
Если Запрос.Клиент.Сумма >10000 Тогда Таб.ВывестиСекцию.КлиентСиний
ИначеЕсли Запрос.Клиент.Сумма >20000 Тогда Таб.ВывестиСекцию.КлиентКрасный.....
   Uno
6 - 22.11.04 - 16:13
Чтото вроде
Процедура ПриОткрытии()
  Стр=1;
  Тз=СоздатьОбъект("ТаблицаЗначений");
  Тз.Загрузить(Форма.Параметр);
  ТЗРасчетнойСебестоимости=0;
  Тз.ВыбратьСтроки();
  Пока Тз.ПолучитьСтроку()=1 Цикл
    Стр=Стр+1;
    Таблица.Область("R"+Стр+"C1").Значение=Тз.Товар;
    Таблица.Область("R"+Стр+"C1").Доступность(0);
    Если Тз.Товар.ЭтоГруппа()=1 Тогда
      Таблица.Область("R"+Стр+"C1").ЦветФона(200,200,200);
    Иначе
      Таблица.Область("R"+Стр+"C2").Значение=Тз.РсОлд;
      Таблица.Область("R"+Стр+"C2").УстановитьТип(Тз.РсОлд);
      Таблица.Область("R"+Стр+"C2").Формат("Ч15.2");
   		Таблица.Область("R"+Стр+"C2").Доступность(0);
  
      Таблица.Область("R"+Стр+"C3").Значение=Тз.Рс;
      Таблица.Область("R"+Стр+"C3").НазначитьТип("Число",15,2);
      Таблица.Область("R"+Стр+"C3").Формат("Ч15.2");
   		Таблица.Область("R"+Стр+"C3").Доступность(1);
   		Таблица.Область("R"+Стр+"C3").Редактирование(1);
   	КонецЕсли;
  КонецЦикла;
КонецПроцедуры
Только вместо ЦветФона напишишь что тебе надо.
   Ferrum
7 - 22.11.04 - 16:36
2(6) - то что я хотел ! Спасибо!
   Ferrum
8 - 25.11.04 - 09:51
2(7)погорячился... по идее точто надо, но при попытке
Табл.Область() меня 1с посылает подальше. нет такого метода у тебя. в чём хохма?
   Mihasya
9 - 25.11.04 - 10:03
Т = СоздатьОбъект("Таблица")
...
Пока .. Цикл
  Т.ВывестиСекцию(...);
  Т.Область("R"+Т.высотаТаблицы()+"С1").ЦветТекста(255);
КонецЦикла;
...
Так должно работать.
   Ferrum
10 - 25.11.04 - 10:12
2(9) - спасибо, разобрался я в чём дело, не так переменную назвал. но вариант с высотой таблицы неплох. буду использовать
 
  Рекламное место пустует



Список тем форума

Форум Территория 1С

  Рекламное место пустует
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс, 1996 г.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует