|
как в запросе получить все существующие документы за период? | ☑ | ||
---|---|---|---|---|
0
vde69
13.08.20
✎
09:26
|
Собственно вопрос в том как собрать текст запроса для всех документов?
Понятно, что можно через Метаданные.Документы, но в конфигурации слишком много не используемых видов документов, и не хочется собирать запрос на 500 таблиц когда реально надо 30. Понятно, что можно составить текстовый список нужных и идти по нему, но тогда решение будет не универсальным (при добавлении нового вида документа придется этот список расширять) Можно пробовать фильтрануть по подсистемам, или по пользовательским типам, но и там есть исключения... Как лучше сделать? |
|||
1
Lokli
13.08.20
✎
09:29
|
База файловая или серверная?
|
|||
2
ДенисЧ
13.08.20
✎
09:29
|
По метаданным иди. И нефигу тут выделываться )))
|
|||
3
vde69
13.08.20
✎
09:30
|
(1) прямые запросы не расматриваем, решение должно быть универсальным
|
|||
4
Beduin
13.08.20
✎
09:31
|
Если без метаданных, я бы взял какой-то регистр сведений из типовых(типа ключи учета) и по нему получил все возможные типы.
|
|||
5
polosov
13.08.20
✎
09:31
|
(0) Универсальное решение - динамическое построение запроса по метаданным.
|
|||
6
vde69
13.08.20
✎
09:36
|
(4) этот вариант мне нравится
|
|||
7
Lokli
13.08.20
✎
09:39
|
(3) Как хочешь. :) Тогда получай список документов через метаданные, потом рассчитывай размер таблиц под этими документами и если они не ноль, то формируй к ним запрос.
|
|||
8
acht
13.08.20
✎
09:40
|
(7) > рассчитывай размер таблиц под этими документами
Эт зачем? |
|||
9
PR
13.08.20
✎
09:46
|
(0) Мда
Как бы оно сделать запрос только к тем документам, которые есть в базе, не смотря, есть ли документы в базе Ну, пригласи телепата PS: всякие гадания на кофейной гуще типа запрос ко всяким регистрам может и не прокатить, потому что легко может оказаться так, что документа нигде нет, кроме как в таблице документов |
|||
10
Lokli
13.08.20
✎
09:57
|
Думаю сформированный по метаданным запрос на количество записей в шапках документов будет достаточно быстрым. А на основании этого уже можно сформировать запрос по нужным типам документов за период.
Это будет более правильный вариант, чем в (7). |
|||
11
Garykom
гуру
13.08.20
✎
10:10
|
"ВЫБРАТЬ ПЕРВЫЕ 1 ... " разве не шустрее?
|
|||
12
Garykom
гуру
13.08.20
✎
10:13
|
(11)+ В смысле я бы сначала все по метаданным, затем полный запрос по всем докам (запросы в цикле или можно один с ОБЪЕДИНИТЬ ВСЕ) на первые 1, затем только полученные типы документов делаем за период запрос
|
|||
13
Garykom
гуру
13.08.20
✎
10:14
|
(12) *", затем" = "-"
|
|||
14
lodger
13.08.20
✎
10:23
|
(0) собирать запрос на 500 таблиц все равно придётся.
рецепт в (12) (10) зачем нагружать СУБД расчётом количества, когда нас интересует вообще факт наличия записей в периоде? |
|||
15
acht
13.08.20
✎
10:26
|
(12) А зачем там выбрать первые 1, если ты все равно полезешь туда за данными и получишь пустую выборку? Ты хочешь разделить "документ вообще не используется" от "документов за период нет"?
|
|||
16
Garykom
гуру
13.08.20
✎
10:31
|
(15) угу просто первый попавшийся документ дернуть и если есть значит документ в конфе используется и надо по нему делать за период нужный
причем можно список используемых документов один раз получить и сохранить а все за период много раз делать на его основе |
|||
17
kolts23381
13.08.20
✎
10:35
|
Конфигурацию можно менять? Может сделать журнал по все документам?
|
|||
18
acht
13.08.20
✎
10:40
|
(16) Гм. Ну вот нашелся там какой-нибудь один "Установка параметров учета номенклатуры" 5 летней давности. А за запрашиваемый период их гарантировано не будет.
В общем, пока ТС не расскажет, как он в "слишком много не используемых видов документов" отличает используемые от неиспользуемых, все это телепатия |
|||
19
Вафель
13.08.20
✎
10:42
|
запрос по пустой таблице никакой нагрузки не дает
|
|||
20
vde69
13.08.20
✎
10:55
|
(19) раньше точно было ограничение на количество таблиц в запросе...
|
|||
21
acht
13.08.20
✎
11:14
|
(20) В 2008 скуле уже отменили. 12 лет назад, есчличо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |