Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Макет + Таблица значений + выделение цветом          
SanSay Подменю пользователя
сообщение 22.11.13, 13:08
Сообщение #1

Говорящий
***
Группа: Пользователи
Сообщений: 55
Из: Наб.Челны
Спасибо сказали: 1 раз
Рейтинг: 0

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

макет:

данные вставляются так:
//до этого была создана таблица значений
Для НомерСтроки = 0 По МояТЗ.Количество() - 1 Цикл
    ОбластьДетали.Параметры.Заполнить(МояТЗ[НомерСтроки]);
    ТабДок.Вывести(ОбластьДетали);
КонецЦикла;


и вопрос:
можно ли в итоговой таблице в столбце "Баллы", где параметр "БаллыИнд" проверить значение и например если больше 20, то эту ячейку покрасить в какойнить цвет?

Petre Подменю пользователя
сообщение 22.11.13, 13:16
Сообщение #2

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9

Можно.


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

Ardi Подменю пользователя
сообщение 22.11.13, 14:18
Сообщение #3

Живет на форуме
***********
Гений телепатии и социального моделирования
Группа: Пользователи
Сообщений: 4121
Из: Киев
Спасибо сказали: 957 раз
Рейтинг: 0

Если по простому - то можно сделать 2 варианта строки итогов в макете.


Signature
Услуги 1С программиста 8.2, 7.7 (Плохо, дорого, очередь). Киев.

SanSay Подменю пользователя
сообщение 22.11.13, 14:32
Сообщение #4

Говорящий
***
Группа: Пользователи
Сообщений: 55
Из: Наб.Челны
Спасибо сказали: 1 раз
Рейтинг: 0

Цитата(Petre @ 22.11.13, 15:16) *
Можно.

а можно поподробнее

Цитата(Ardi @ 22.11.13, 16:18) *
Если по простому - то можно сделать 2 варианта строки итогов в макете.

да, точно, можно... чет сам не додумался... но правильнее как нить иначе, т.к. в моем случае нужно одну ячейку выделить, но возможно понадобится выделять несколько ячеек или разными цветами в зависимости от значения ячейки, а создавать 5-10, а то и больше вариантов строк - не серьезно

подскажи плиз вариант без создания разных строк

Petre Подменю пользователя
сообщение 22.11.13, 16:00
Сообщение #5

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9

Цитата(SanSay @ 22.11.13, 14:32) *
а можно поподробнее

Куда уж подробнее того, что вы описали?
Берем табличный документ, обходим определенные ячейки, проверяем значение и раскрашиваем в нужный цвет.
Также можно сразу анализировать значение из тз и раскрашивать ячейку макета в нужный цвет (в этом варианте раскрашивать надо будет всегда: и в особый цвет, и в автоцвет).
Делать два макета проще и быстрее, но лично для меня как-то не идейно...


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

SanSay Подменю пользователя
сообщение 22.11.13, 16:24
Сообщение #6

Говорящий
***
Группа: Пользователи
Сообщений: 55
Из: Наб.Челны
Спасибо сказали: 1 раз
Рейтинг: 0

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

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

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

Ardi Подменю пользователя
сообщение 22.11.13, 16:25
Сообщение #7

Живет на форуме
***********
Гений телепатии и социального моделирования
Группа: Пользователи
Сообщений: 4121
Из: Киев
Спасибо сказали: 957 раз
Рейтинг: 0

Перед выводом области можно раскрасить эту область.


Signature
Услуги 1С программиста 8.2, 7.7 (Плохо, дорого, очередь). Киев.

Petre Подменю пользователя
сообщение 22.11.13, 16:44
Сообщение #8

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9

Цитата(SanSay @ 22.11.13, 16:24) *
в момент заполнения строк я знаю как узнать значение любого столбца, но я не знаю как в этот момент определить активную ячейку чтобы закрасить ее

Что значит "активную ячейку"?
Если таблица динамическая, один раз обходим макет и ищем нужный параметр, запоминаем номер колонки (я надеюсь, параметр в рамках одной таблицы может находиться только в одной колонке biggrin.gif ), и раскрашиваем его...


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

Vofka Подменю пользователя
сообщение 23.11.13, 12:52
Сообщение #9

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

ТабличныйДокумент.Область(параметры см. в СП).ЦветФона = ...

SanSay Подменю пользователя
сообщение 23.11.13, 20:52
Сообщение #10

Говорящий
***
Группа: Пользователи
Сообщений: 55
Из: Наб.Челны
Спасибо сказали: 1 раз
Рейтинг: 0

Цитата(Petre @ 22.11.13, 18:44) *
Что значит "активную ячейку"?
Если таблица динамическая, один раз обходим макет и ищем нужный параметр, запоминаем номер колонки (я надеюсь, параметр в рамках одной таблицы может находиться только в одной колонке biggrin.gif ), и раскрашиваем его...

что значит "ищем нужный параметр"?
вот так обхожу весь итоговый отчет:
    ДокументРезультат=ЭлементыФормы.ПолеТабличногоДокумента;
    Для а = 1 по 60 Цикл //строки
        Для к = 1 по 10 Цикл //столбцы

        КонецЦикла;
    КонецЦикла;

и что тут нужно прописать чтобы найти нужный параметр?

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

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

Цитата(Vofka @ 23.11.13, 14:52) *
ТабличныйДокумент.Область(параметры см. в СП).ЦветФона = ...

Vofka, может не заметил, у меня "именнованная область" и узнать адрес ячеек, где она сформируется я не могу
это я ща про "ТабДок.Область("R2C2:R3C5");"
если я не правильно понял, что Вы мне намекал... то намекни еще раз

в идеале мне бы чтото типо
ТабличныйДокумент.Область("МояОбласть","R1C1:R1C5").ЦветФона = ...;
но чтобы нумеровка строк и столбцов была не с начала Табличного документа, а только внутри моей области

Короче вопрос пока остается открытым.

или чтото типо такого
ТабДок.МояОбласть("R1C1:R1C5").ЦветФона = Зеленый;

Vofka Подменю пользователя
сообщение 24.11.13, 11:17
Сообщение #11

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

SanSay, советую ознакомиться с правилами. Если ещё раз кому-то тыкните - я вас забаню.

alex040269 Подменю пользователя
сообщение 24.11.13, 12:00
Сообщение #12

Крутой
Иконка группы
Группа: Местный
Сообщений: 1626
Из: Гуляйполе
Спасибо сказали: 236 раз
Рейтинг: 0

SanSay, ПолучитьОбласть() возвращает ТабличныйДокумент. Перед выводом его можно покрасить.


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

SanSay Подменю пользователя
сообщение 24.11.13, 14:59
Сообщение #13

Говорящий
***
Группа: Пользователи
Сообщений: 55
Из: Наб.Челны
Спасибо сказали: 1 раз
Рейтинг: 0

alex040269, мне нужно покрасить лишь один из нескольких параметров в области, а не всю область.
Покрасить всю область не проблема.

Vofka Подменю пользователя
сообщение 26.11.13, 10:17
Сообщение #14

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

Есть область, именуемая Область1. Нужно раскрасить 3-ю колонку в этой области. Пишем:

ТабДок = Новый ТабличныйДокумент;
Макет = ПолучитьМакет("Макет");

Область = Макет.ПолучитьОбласть("Область1");
Для а=1 По 10 Цикл
    Область.Область(1, 3, 1, 3).ЦветФона = WebЦвета.ЖелтоЗеленый;
    ТабДок.Вывести(Область);
КонецЦикла;

ТабДок.Показать();


Радуемся полученному результату smile.gif .

Цикл в данном примере для наглядности.

Спасибо сказали: SanSay,

SanSay Подменю пользователя
сообщение 26.11.13, 20:55
Сообщение #15

Говорящий
***
Группа: Пользователи
Сообщений: 55
Из: Наб.Челны
Спасибо сказали: 1 раз
Рейтинг: 0

Цитата(Vofka @ 26.11.13, 12:17) *
...
    Область.Область(1, 3, 1, 3).ЦветФона = WebЦвета.ЖелтоЗеленый;

...

великолепно! Тема закрыта... наконец )
Всем спасибо.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 27.04.24, 1:31
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!