|
Как выбрать определенные элементы коллекции | ☑ | ||
---|---|---|---|---|
0
rosalin
04.04.14
✎
16:26
|
есть функция
Функция СформироватьНаименование(КоллекцияЗначенийСвойств) Экспорт Строка = ""; Для каждого ЭлементКоллекции Из КоллекцияЗначенийСвойств Цикл Если ЗначениеЗаполнено(ЭлементКоллекции.Значение) Тогда Строка = Строка + ЭлементКоллекции.Значение + ", "; КонецЕсли; КонецЦикла; Строка = Лев(Строка, СтрДлина(Строка) - 2); Если ПустаяСтрока(Строка) Тогда Строка = "<Свойства не назначены>"; КонецЕсли; Возврат Строка; КонецФункции Наименование формируется из значений через запятую, как можно отобрать только определенные свойства , значения которых попадут в наименование |
|||
1
barrgand
04.04.14
✎
16:31
|
(0) Кто определяет эти свойства? По каким критериям отбирать эти свойства?
|
|||
2
rosalin
04.04.14
✎
16:37
|
перечень свойств сразу прописать в функции например свойство "1.04 Резьба:"
|
|||
3
Wobland
04.04.14
✎
16:47
|
предлагаю программировать
|
|||
4
SUA
04.04.14
✎
16:55
|
Функция СформироватьНаименование(КоллекцияЗначенийСвойств, МассивНужныхСвойств) Экспорт
Строка = ""; Для каждого ЭлементКоллекции Из КоллекцияЗначенийСвойств Цикл Если ЗначениеЗаполнено(ЭлементКоллекции.Значение) И МассивНужныхСвойств.Найти(ЭлементКоллекции.Свойство)Тогда Строка = Строка + ЭлементКоллекции.Значение + ", "; КонецЕсли; КонецЦикла; Строка = Лев(Строка, СтрДлина(Строка) - 2); Если ПустаяСтрока(Строка) Тогда Строка = "<Свойства не назначены>"; КонецЕсли; Возврат Строка; КонецФункции |
|||
5
SUA
04.04.14
✎
16:55
|
как-то так
|
|||
6
barrgand
04.04.14
✎
16:59
|
(2) Так передавай в коллекцию "1.04 Резьба:", будет только "1.04 Резьба:"
|
|||
7
rosalin
04.04.14
✎
17:23
|
Ребята сильно не пинайте, но разъясните как я могу в функции указать МассивНужныхСвойств, можно примерно как это будет выглядеть из пару свойств
|
|||
8
SUA
04.04.14
✎
17:26
|
(7)
0. определить какие свойства нужны (фиксированный список или признак) 1. добавить их в массив (хоть вручную - поиском по наименованию если совсем лень) |
|||
9
rosalin
04.04.14
✎
17:33
|
нужен фиксированный список, укажу вручную , просто я не понимаю как будет это в модуле
|
|||
10
SUA
04.04.14
✎
17:40
|
массив=новый массив;
массив.добавить(первоесвойство); массив.добавить(второесвойство); можно больше) можно вместо параметра прям в процедуре сформировать |
|||
11
rosalin
04.04.14
✎
19:14
|
Функция СформироватьНаименование(КоллекцияЗначенийСвойств, МассивНужныхСвойств) Экспорт
МассивНужныхСвойств = Новый Массив; МассивНужныхСвойств.добавить("1.00 вн №.:"); МассивНужныхСвойств.добавить("1.04 Резьба:"); Строка = ""; Для каждого ЭлементКоллекции Из КоллекцияЗначенийСвойств Цикл Если ЗначениеЗаполнено(ЭлементКоллекции.Значение) И МассивНужныхСвойств.Найти(ЭлементКоллекции.Свойство) Тогда Строка = Строка + ЭлементКоллекции.Значение + ", "; КонецЕсли; КонецЦикла; Строка = Лев(Строка, СтрДлина(Строка) - 2); Если ПустаяСтрока(Строка) Тогда Строка = "<Свойства не назначены>"; КонецЕсли; Возврат Строка; КонецФункции при создании наименование выходит ошибка ?? ((( |
|||
12
Wobland
04.04.14
✎
19:25
|
(11) наверное, да
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |