|
Массив в запросе 🠗 (Волшебник 15.12.2022 16:55) | ☑ | ||
---|---|---|---|---|
0
Underwood
15.12.22
✎
15:00
|
Добрый день! Необходимо получить значения из регистра накопления с отбором по регистратору (отбор по 3 типам документов). Работать решил с массивом...
Подскажите как передать нужное значение (тип документа) в массив. Пытался передать тип документа через функцию ТИП(Документы.ИмяДокумента) Не получается... "ВЫБРАТЬ | РегистПриходРасходСводная.Регистратор КАК Регистратор |ИЗ | РегистрНакопления.РегистПриходРасходСводная КАК РегистПриходРасходСводная |ГДЕ | РегистПриходРасходСводная.Регистратор В(&Массив)"; |
|||
1
Волшебник
модератор
15.12.22
✎
15:01
|
нужно так:
ГДЕ Регистратор ССЫЛКА Документ.Тип1 ИЛИ Регистратор ССЫЛКА Документ.Тип2 ИЛИ Регистратор ССЫЛКА Документ.Тип3 |
|||
2
Волшебник
модератор
15.12.22
✎
15:01
|
ещё хорошо бы регистр переименовать. За "РегистПриходРасходСводная" могут и побить
|
|||
3
Kassern
15.12.22
✎
15:01
|
(0) беда...
РегистПриходРасходСводная.Регистратор В(&Массив)"; - тогда вы должны не тип указывать, а массив из ссылок документов. |
|||
4
pasha_d
15.12.22
✎
15:23
|
ГДЕ ТИПЗНАЧЕНИЯ(Регистратор) В (ТИП(Документ.1), ТИП(Документ.2))
|
|||
5
lodger
15.12.22
✎
16:46
|
ещё так!
ВЫБРАТЬ РегистПриходРасходСводная.Регистратор ИЗ РегистрНакопления.РегистПриходРасходСводная КАК РегистПриходРасходСводная ГДЕ РегистПриходРасходСводная.Регистратор ССЫЛКА Документ.Тип1 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ РегистПриходРасходСводная.Регистратор ИЗ РегистрНакопления.РегистПриходРасходСводная КАК РегистПриходРасходСводная ГДЕ РегистПриходРасходСводная.Регистратор ССЫЛКА Документ.Тип2 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ РегистПриходРасходСводная.Регистратор ИЗ РегистрНакопления.РегистПриходРасходСводная КАК РегистПриходРасходСводная ГДЕ РегистПриходРасходСводная.Регистратор ССЫЛКА Документ.Тип3 |
|||
6
polosov
15.12.22
✎
16:49
|
(1) За такое и побить могут.
Правильный ответ в (5) |
|||
7
Гипервизор
15.12.22
✎
16:51
|
А вдруг у этого регистра всего 4 типа регистратора? )
|
|||
8
RomanYS
15.12.22
✎
16:53
|
(6) типы давно уже доступны в запросах, чем (5) лучше (4)?
|
|||
9
lodger
15.12.22
✎
16:54
|
(7) это в условия задачи не входило. типов может быть от 3 и до бесконечности.
|
|||
10
Волшебник
модератор
15.12.22
✎
16:55
|
Такие запросы не имеют смысла, топлю ветку
|
|||
11
Гипервизор
15.12.22
✎
17:00
|
(8) Ну ссылка это логический оператор, для условий и созданный.
|
|||
12
mikecool
15.12.22
✎
17:02
|
(8) 5 лучше тем, что нет "В"
|
|||
13
Said_We
15.12.22
✎
17:51
|
(12) Зато есть сканирование три раза одной и той же таблицы вместо одного. И текст запроса длиннее. Операция IN () достаточно быстрая, по сравнению с NOT IN(). Поэтому ничего плохого в IN нет.
|
|||
14
kittystark
15.12.22
✎
19:29
|
я за (5), но если возвращаться к постановке ТС, то можно так
ТипЗначения(Регистратор) В ( ТипЗначения(Значение(Документ.РТиУ.ПустаяСсылка)), ТипЗначения(Значение(Документ.ПТиУ.ПустаяСсылка))) |
|||
15
kittystark
15.12.22
✎
19:32
|
а, блин увидел (4)...
|
|||
16
magicSan
16.12.22
✎
07:25
|
(5) походу не многие читают рекомендации 1С ))))
|
|||
17
lodger
16.12.22
✎
08:39
|
(16) 2. С другой стороны, не следует пытаться любой ценой перенести выполнение задачи в СУБД. СУБД обычно оптимизирует и выполняет простые запросы более эффективно, чем сложные.
|
|||
18
Eiffil123
16.12.22
✎
12:47
|
(12) экономия на спичках против снижения скорости чтения запроса программистом
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |