![]() |
![]() |
![]() |
|
СКД: Программно удалить выбранные поля. Как? (киньте пример) | ☑ | ||
---|---|---|---|---|
0
Ksandr
06.04.10
✎
10:12
|
Понадобилось изменять состав полей в зависимости от роли. Редактировать настройки интерактивно нельзя, т.к. это внешняя печатная форма, предназначенная для анализа партии. Нужно исключить из печати колонки затрат и начальную цену. В Хрусталевой не нашел. Есть как добавить поле, но вот убрать - нету
|
|||
1
Лефмихалыч
06.04.10
✎
10:13
|
Вот я вот тоже ищу какой-нить вариант серебряной пули. Подписался
|
|||
2
XLife
06.04.10
✎
10:16
|
(0) оно?
КоллекцияВыбранныхПолейКомпоновкиДанных (DataCompositionSelectedFieldCollection) Удалить (Delete) Синтаксис: Удалить(<Элемент>) Параметры: <Элемент> (обязательный) Тип: ВыбранноеПолеКомпоновкиДанных, ГруппаВыбранныхПолейКомпоновкиДанных, АвтоВыбранноеПолеКомпоновкиДанных. Удаляемый элемент. Описание: Удаляет элемент из коллекции. |
|||
3
gr13
06.04.10
✎
10:17
|
||||
4
XLife
06.04.10
✎
10:18
|
+(2)
ВыбранноеПолеКомпоновкиДанных (DataCompositionSelectedField) Использование (Use) Использование: Чтение и запись. Описание: Тип: Булево. Содержит признак использования поля. |
|||
5
Ksandr
06.04.10
✎
10:37
|
Честно говоря пока не понял из всего вышенаписанного как мне удалить например поле "Затраты".
По схеме очистить и заполнить заново - это понятно, даже более чем. |
|||
6
Ksandr
06.04.10
✎
10:43
|
Непонятно как сформировать список полей отчета в целом, а не на уровне группировок
|
|||
7
gr13
06.04.10
✎
10:44
|
читаем жкк или жк
|
|||
8
DZENN
гуру
06.04.10
✎
10:50
|
Например так:
Процедура КнопкаВключитьТоварыНажатие(Элемент) МассивПолей = Новый Массив; МассивПолей.Добавить("ТоварНачОст"); МассивПолей.Добавить("ТоварПриход"); МассивПолей.Добавить("ТоварРасход"); МассивПолей.Добавить("ТоварКонОст"); ВыбранныеПоля = КомпоновщикНастроек.Настройки.Выбор.Элементы; УстановитьПоля(ВыбранныеПоля, МассивПолей, Истина); КонецПроцедуры Процедура УстановитьПоля(ВыбранныеПоля, МассивПолей, ВыбИспользование) Для Каждого ВыбранноеПоле Из ВыбранныеПоля Цикл Если ТипЗнч(ВыбранноеПоле) = Тип("ВыбранноеПолеКомпоновкиДанных") Тогда Если МассивПолей.Найти(Строка(ВыбранноеПоле.Поле)) <> Неопределено Тогда ВыбранноеПоле.Использование = ВыбИспользование; КонецЕсли; ИначеЕсли ТипЗнч(ВыбранноеПоле) = Тип("ГруппаВыбранныхПолейКомпоновкиДанных") Тогда УстановитьПоля(ВыбранноеПоле.Элементы, МассивПолей, ВыбИспользование); КонецЕсли; КонецЦикла; КонецПроцедуры |
|||
9
Ksandr
06.04.10
✎
11:06
|
А можно определить Индекс по имени поля?
Чтобы можно было сделать так: Настройки.Выбор.Элементы.Удалить(Индекс)? |
|||
10
Garkin
06.04.10
✎
11:10
|
(0) Имхо.
Принципиально не правильная позиция. В зависимости от роли у пользователя должны быть свои настройки отчета и все. Ненадо по этому поводу изобретать лисапед. |
|||
11
Ksandr
06.04.10
✎
11:15
|
(10) Это не отчет а печатная форма.
|
|||
12
Garkin
06.04.10
✎
11:16
|
(11) Не вижу разницы.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |