Меню

1с цвет фона таблицы формы



Как раскрасить строки табличной части по некоторому условию?

В 1С Предприятии 8.2 к табличной части можно применить такое же условное оформление, как и к динамическому списку. Но в отличие от динамического списка, где настройка списка доступна и в пользовательском режиме, сделать это можно только в режиме конфигуратора или из встроенного языка. Для этого нужно использовать свойство УсловноеОформление формы.

Например, нам требуется оформить строки табличной части приходной накладной так, чтобы строки с суммой больше 30000 были выделены желтым фоном, а ячейки Товар и Количество строк табличной части с количеством больше единицы были выделены красным текстом.

Выполним условное оформление интерактивно. Создадим форму документа ПриходнаяНакладная , выделим корень элементов формы (строку Форма ) и откроем ее свойства. В строке УсловноеОформление нажмем ссылку Открыть .

В появившемся окне Настройка условного оформления нажмем кнопку Добавить.

Сначала укажем Оформление для выделения полей. Нажмем кнопку выбора в поле Оформление и установим желтый цвет фона.

Затем укажем условие, при наступлении которого будет применяться оформление, то есть когда фон строк табличной части будет желтым. Нажмем кнопку выбора в поле Условие и в появившемся окне добавим Новый элемент отбора . Для этого нажмем на кнопку Добавить и укажем в графе Левое значение – поле табличной части Объект.Товары.Сумма , в графе Вид сравнения – Больше , а в графе Правое значение выберем 30000 .

Затем укажем список оформляемых полей. В отличии от оформления динамического списка, построенного на системе компоновки данных, если мы хотим выделить полностью строку, здесь нужно перечислить все поля строки табличной части.

Нажмем кнопку выбора в поле Оформляемые поля , затем нажмем Добавить и добавим поочередно все поля табличной части в список оформляемых полей.

Затем создадим еще одно условие для полей табличной части Товар и Количество , чтобы цвет текста этих полей был красным, в случае если значение в поле Количество больше единицы.

Таким образом, мы добились требуемого оформления табличной части формы документа ПриходнаяНакладная .

Заметим, что подобным образом можно оформить не только строки табличной части, но и все поля документа.

Демонстрационный пример находится в каталоге 1CITS/EXE/FAQ/КакРаскраситьСтрокиТабличнойЧасти.dt. Пример выполнен на версии платформы 8.2.9.356.

По условию можно оформить также и строки списка документов или других объектов конфигурации. Это делается через УсловноеОформление списка. Подробнее смотрите в вопросе Как раскрасить строки списка по некоторому условию?

Источник

Условное оформление управляемой формы в 1С

Условное оформление формы в 1с 8 служит для управления видимостью, доступностью, цветом элементов таблиц управляемой формы (а также оно используется в СКД и динамических списках). Удобство его использования заключается в том, что вы один раз задаете условие по которому должно меняться оформление вашей формы. После этого при работе пользователя с формой, при срабатывании условия оформление будет меняться автоматически. Не нужно использовать события формы и писать лишний код.

Следует заменить, что условное оформление форм работает только в конфигурациях использующих управляемое приложение (Бухгалтерия 3.0, ЗУП 3.0/3.1, Управление торговлей 11 и т.п.)

Условное оформление 1с. Интерактивная настройка

Еще один плюс условного оформления — его можно настроить не написав ни строчки кода. Для этого в форме необходимо:

  • Открыть свойства формы -> вкладка оформление -> УсловноеОформление Открыть;
  • Откроется таблица Настройка условного оформления;
  • В первом столбце необходимо выбрать оформление (или сразу несколько);
  • Во втором столбце задать условие, по которому будет срабатывать выбранное оформление;
  • С третьем столбце необходимо выбрать элементы формы на которые будет действовать выбранное оформление.
Читайте также:  Заполните таблицу географическое положение санкт петербурга достоинство недостатки

Обратите внимание, что условное оформление действует только на колонки таблиц формы. Другие элементы формы вы тоже можете выбрать в колонке Оформляемые поля, но это не даст никакого результата.

Условное оформление формы. Пример интерактивной настройки

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

Форма обработки выглядит так:

Настроим следующее условное оформление данной формы: при установке реквизита СкрытьКолонку1 в значение Истина, в таблице форме скрывать реквизит Колонка1.

  • Откроем настройку условного оформления формы;
  • Добавим в таблицу новую строку;
  • В колонке Оформление нажмем на кнопку с тремя точками и выберем параметр Видимость, значение Нет;
  • В колонке Условие нажмем на кнопку с тремя точками, в открывшемся окне добавим новый отбор. Пропишем туда следующие значения: Левое значение — СкрытьКолонку1, Вид сравнения — Равно, Правое значение — Да;
  • В колонке Оформляемые поля нажмем на кнопку с тремя точками, в открывшемся окне добавим новый элемент, и выберем значение ТаблицаФормыКолонка1;
  • В итоге у нас должна получиться настройка условного оформления, такая же как на следующем рисунке;
  • Нажмем кнопку Ок, сохраним нашу обработку и запустим ее в режиме 1С Предприятие;
  • При установке флажка Скрыть колонку 1, будут происходить следующие изменения в оформлении формы.

Условное оформление 8.3. Пример программной настройки

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

В модуле формы создадим серверную процедуру, назовем ее УстановитьУсловноеОформление и сразу же допишем ее вызов в процедуре ПриСозданииНаСервере.

Весь следующий код будем писать в процедуре УстановитьУсловноеОформление. Нам необходимо добавить новый элемент условного оформления формы, для этого используем стандартную коллекцию формы УсловноеОформление.

Также как и в интерактивном варианте, нам необходимо в созданном элементе заполнить оформления, условия и поля. Для того чтобы указать поле мы должны создать поле компоновки данных с именем колонки на которую будет распространяться оформление. Если полей несколько, добавляем нужное количество полей компоновки данных. Для отборов создаем элементы отбора компоновки данных и заполняем для них левое значение, правое значение и вид сравнения. Для того, чтобы задать нужные оформления заполним значения параметров доступных оформлений. В нашем примере получается следующий код:

Таким образом мы создали оформление для второй колонки таблицы. Для третьей колонки оно делается аналогичным образом, поэтому не будем на нем подробно останавливаться. Итоговый код процедуры УстановитьУсловноеОформление будет выглядеть следующим образом:

Напомню, что скачать обработку написанную на основе разобранных примеров можно Здесь.

Источник

1С 8.x : Как программно изменить текст, цвет, фон ячейки или области табличного документа?

Ниже приведено несколько полезных шаблонов кода по работе с табличным документом:

Читайте также:  Расположение желез внутренней и смешанной секреции таблица

Код 1C v 8.х Код 1C v 8.х Код 1C v 8.х Код 1C v 8.х

Для того, чтобы появилась возможность использовать свойство «Значение», необходимо явно присвоить свойству ячейки «СодержитЗначение» значение Истина или установить флажок «Содержит значение» в палитре свойств.

Для ячейки, у которой установлен признак «СодержитЗначение», можно задать тип значения, размещаемого в ячейке.

Следующий фрагмент демонстрирует, как можно управлять этими свойствами из встроенного языка://задаем нужный тип с помощью объекта «ОписаниеТипов»

Для ячейки табличного документа можно задавать формат вывода данных. Для этого используется свойство «Формат», которое содержит форматную строку. Приемы работы с форматной строкой полностью совпадают с функцией Формат()

Элемент управления в табличном документе

Для ячейки, у которой установлен признак «СодержитЗначение», можно также задать элемент управления, который будет использоваться для редактирования этого значения.

Элемент управления можно назначить через палитру свойств или из встроенного языка с помощью метода «УстановитьЭлементУправления()». Чтобы проверить в программе, установлен ли элемент управления для конкретной ячейки, можно использовать свойство «ЭлементУправления», которое возвращает элемент управления, назначенный для ячейки.

Элементы управления, встроенные в ячейку, отображаются только при входе в режим редактирования значения. На приведенном ниже рисунке редактируемая ячейка обведена овалом и в ней отображается флажок:

Ниже показан пример установки элемента управления типа «Флажок» из встроенного языка://задаем нужный тип с помощью объекта «ОписаниеТипов»

Для элементов управления, расположенных в табличном документе, расширяется набор свойств, методов и событий:

Разберем самые важные свойства и методы:

Свойство «ВстроенВЯчейку» имеет тип «булево» и говорит о том, что элемент управления встраивается в ячейку или просто привязывается к ней, о чем было рассказано выше.

Свойство «Видимость» позволяет показать или скрыть элемент управления.

Свойство «Значение» предоставляет доступ к значению, которое редактируется в элементе управления. Оно используется только для элементов управления, поддерживающих связь с данными.

Метод «Расположить» позволяет разместить элемент управления в конкретной области ячеек табличного документа. Именно этот метод был использован в вышеприведенном примере.

Источник

Изменение цвета фона ячейки табличного поля при выборе

столкнулась с проблемой выделения цветом ячейки, не могу обратиться к ячейке, чтобы изменить ее цвет.
Следующий код выделяет цветом строку в которой выделена ячейка и колонку, причем когда колонка уже выделена один раз, и она приобретает новый цвет, обратно белой она не становится

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Изменение заднего фона ячейки таблицы и цвета ссылки
Здравствуйте. Уважаемые знатоки, у меня возник вопрос, который я, как уже понял, решить не всилах.

Измененние цвета фона поля (поля со списком) при редактировании
Здравствуйте. Помогите пожалуйста реализовать следующюю задумку: имеется форма с полями (полями.

Изменение цвета фона при клике?
Нужно при нажатии на «li» изменять цвет фона на красный, потом если нажимаю на другой, то там.

У колонок нет названий? Разве такое возможно? Как тогда ты их добавляешь без имени?

Добавлено через 1 минуту
У табличного поля тип значения не таблица значений?

Покажи, как ты заполняешь табличное поле.

Вложения

InfoBase6.rar (15.6 Кб, 69 просмотров)

по задаче шапки быть не должно

Добавлено через 48 секунд
нет цвет ячейки должен поменяться при активизации ячейки

Добавлено через 25 секунд
или при выборе.

Читайте также:  Таблица сопротивлений датчика pt1000

решение задачи на самом начальном этапе, сейчас застряла с этим обращением к ячейке, чтобы цвет поменять

Добавлено через 43 секунды
при выполнении события табличного поля «ПриАктивизацииЯчейки»

Ты сначала реши, как он будет меняться, т. е. какие ячейки каким цветом окрасить. Например, ввести какую-то букву в ячейку.

Добавлено через 1 минуту
Привязывать к ПриАктивизацииЯчейки — плохая идея. Человек может просто ткнуть случайно на неё. И опять же, как назад возвращать?

на форме предположим два флажка сделать. 1-й «товар» — если выбран флажок товар, то при изменении ячеек цвет становится красным, 2-й флажок «покупатель» — если выбран он, то ячейки предположим синие будт

Добавлено через 56 секунд
может быть при выборе или получении данных?

Лучший ответСообщение было отмечено Jane_792 как решение

Решение

Лучший ответСообщение было отмечено Jane_792 как решение

Решение

Вложения

InfoBase6.rar (22.0 Кб, 67 просмотров)

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Изменение цвета фона при нажатии кнопки
Привет всем!) Такой вопрос — как в Паскале указать на нажатие определенной кнопки на клавиатуре? .

Изменение цвета строки при выборе чекбокса
Подскажите, как поменять цвет строки при выбранном чекбоксе например на такой цвет .active < .

Изменение цвета select при выборе option
код чужой, сам не программист цель, что бы пр выборе определенных пунктов у шрифта в select был.

Почему изменение фона затрагивает не только изменение фона поля ввода?
Почему изменение фона через BackColor затрагивает не только изменение фона поля ввода в.

Источник

Код Икс Пи :: Лучшие IT-решения для бизнеса

Nav view search

Navigation

  • Главная
  • Прайс
  • Контакты
  • Услуги
  • Заметки
  • Вход

Search

Часто возникает необходимость сделать раскраску таблицы в определенные цвета, например

  • раскрасить строки журнала документа по наличию подчиненных документов
  • раскрасить ячейки в обработке в зависимости от величины «цены», выделить ячейку с наименьшей ценой

В управляемом интерфейсе (УФ), для этого предназначен универсальный механизм «условного оформления». Настройку раскраски можно выполнить в двух вариантах. Первый, в конфигураторе мыщью в форме задать необходимые настройки, второй задать эти же настройки «кодом». Рассмотрим эти варианты.

  1. Задать мышью условное оформление в форме.
    1. Открыть в конфигураторе свойства формы (выделить самый корень слева в окне отображения реквизитов)
    2. Кликнуть в свойства формы в пункт «УсловноеОформление» — «Открыть»
    3. Далее через кнопку «+» добавить необходимое оформление для строк. В первой колонке задается как именно оформлять строку, во второй колонке при каких условиях сработает эта строка оформления, в третьей колонке что именно будет оформлено (если выбрать просто название таблицы, то целиком строка, если выбрать одну из колонок, то соответственно эта колонка).
    4. Результат оформления:
  2. Рассмотрим пример программного оформления строк\ячеек табличного поля.
    1. Например у нас есть таблица, с несколькими однотипными колонками. В каждой колонке есть число, надо выделить ячейку с наименьшим значением.
    2. Оформлять будем сразу после перезаполнения таблицы обработки.
    3. После нажатия кнопки типа «заполнить таблицу», вызываем дополнительную процедуру раскраски:
    4. Данная процедура производит раскраску в строке только той ячейки, которая по своему значению равна значению в другой колонке «ЛучшаяЦена».
    5. Также внизу процедуры есть код, по которому все колонки имена которых начинаются с «ЦенаИнформативная_» закрашиваются в серый цвет.
    6. Результат оформления:

Источник

Adblock
detector