- В этой теме 1 ответ, 2 участника, последнее обновление 3 часа, 49 минут назад сделано .
Просмотр 1 ветки ответов
Просмотр 1 ветки ответов
- Для ответа в этой теме необходимо авторизоваться.
Программирование и администрирование в 1С
База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как в переменную Группа записать результат из ГруппаУслуг или ГруппаТоваров?
ГруппаУслуг = Таблица.Найти(ВыборкаДетальныеЗаписи.СубконтоУслуги, «Субконто»);
ГруппаТоваров = Таблица.Найти(ВыборкаДетальныеЗаписи.СубконтоТовары, «Субконто»);
Как занести в перменную Группа то, что нашли либо услуги либо товары
Если нужно в переменную Группа записать результат поиска либо в ГруппаУслуг, либо в ГруппаТоваров (т.е. если ГруппаУслуг не пустое/не Неопределено, то взять его, иначе взять ГруппаТоваров), то делайте так:
|
1 2 3 4 5 6 7 8 9 10 |
Группа = Неопределено; ГруппаУслуг = Таблица.Найти(ВыборкаДетальныеЗаписи.СубконтоУслуги, "Субконто"); ГруппаТоваров = Таблица.Найти(ВыборкаДетальныеЗаписи.СубконтоТовары, "Субконто"); Если ГруппаУслуг <> Неопределено Тогда Группа = ГруппаУслуг; ИначеЕсли ГруппаТоваров <> Неопределено Тогда Группа = ГруппаТоваров; КонецЕсли; |
Если нужно, чтобы при наличии обеих значений приоритет был у услуг — так и сделано. Если приоритет другой — поменяйте порядок условий.
—
Если Таблица.Найти возвращает строку таблицы, то Группа будет эта строка. Если нужно конкретное поле из найденной строки, например "Группа", то:
|
1 2 3 4 5 |
Если ГруппаУслуг <> Неопределено Тогда Группа = ГруппаУслуг.Группа; ИначеЕсли ГруппаТоваров <> Неопределено Тогда Группа = ГруппаТоваров.Группа; КонецЕсли; |
—
Если нужно просто взять первое не пустое значение, можно короче:
|
1 2 3 4 |
Группа = ГруппаУслуг; Если Группа = Неопределено Тогда Группа = ГруппаТоваров; КонецЕсли; |
—
Так будет корректно и понятно.