|
Аналог "В иерархии". Спасите от говнокодинга.
| ☑ |
0
МешочекЗнаний
01.11.19
✎
08:15
|
Приветствую уважаемые.
Пример: в запросе можно указать "В иерархии" и будут выбраны все подчинённые счета бух учёта.
Есть ли аналог "В иерархии" не для языка запросов, а для стандартного языка 1С. Я полагаю есть вариант лучше чем:
Если Запись.СчетКт = ПланыСчетов.Хозрасчетный.НДСприПриобретенииОсновныхСредств ИЛИ
Запись.СчетКт = ПланыСчетов.Хозрасчетный.НДСпоПриобретеннымНематериальнымАктивам ИЛИ ... Тогда
|
|
1
Dmitry1c
01.11.19
✎
08:17
|
Ты можешь результат запроса выгрузить в массив, а затем проверять, есть ли твое значение в массиве
|
|
2
МешочекЗнаний
01.11.19
✎
08:20
|
(1) Хорошо придумано. Возьму на заметку.
|
|
3
catena
01.11.19
✎
08:21
|
ПланСчетовОбъект.<Имя плана счетов>.ПринадлежитЭлементу (ChartOfAccountsObject.<Имя плана счетов>.BelongsToItem)
ПланСчетовОбъект.<Имя плана счетов> (ChartOfAccountsObject.<Имя плана счетов>)
ПринадлежитЭлементу (BelongsToItem)
Синтаксис:
ПринадлежитЭлементу(<Элемент>)
Параметры:
<Элемент> (обязательный)
Тип: ПланСчетовСсылка.<Имя плана счетов>.
Счет, для которого определяется принадлежность.
Возвращаемое значение:
Тип: Булево.
Истина - счет подчинен другому счету; Ложь - в противном случае.
Если в качестве параметра указать сам счет, то Ложь.
Описание:
Определяет подчиненность счета другому счету (элементу) с учетом всех уровней иерархии.
Доступность:
Сервер, толстый клиент, внешнее соединение.
Примечание:
Определяет подчиненность непосредственно на момент вызова метода путем последовательного считывания всех вышестоящих элементов.
Пример:
Если Объект.ПринадлежитЭлементу(ЭлементСсылка) Тогда
Сообщить("Принадлежит");
КонецЕсли;
|
|
4
МешочекЗнаний
01.11.19
✎
08:24
|
(3) Похоже это то что я искал. Сейчас проверю. Спасибо!
|
|
5
РазДва
01.11.19
✎
08:49
|
(0) В запросе вариант с кучей равно или "в списке" лучше, чем в иерархии. Так все типовые сделаны. Счет в иерархии в запросе - считается говнокодингом.
|
|