Имя: Пароль:
1C
1С v8
Запрос ко временной таблице в цикле, косяк или нет ?
0 nunzio
 
21.09.12
17:13
Уважаемые гуру подскажите тупому)
Запрос ко временной таблице в цикле это серьезный косяк или нет ?) А то надо по быстрому сделать обработку (не одноразовую), а на ум кроме как сабж в заголовке ничего не приходит.
1 France
 
21.09.12
17:14
да
2 France
 
21.09.12
17:14
нет
3 ДенисЧ
 
21.09.12
17:14
Если одноразовая - хоть Перейти ставь...
4 France
 
21.09.12
17:14
а зачем?
5 ДенисЧ
 
21.09.12
17:14
А если не - то косяк.
6 nunzio
 
21.09.12
17:15
(3) Не одноразовая) Будет частенько исполняться)
7 ДенисЧ
 
21.09.12
17:15
(6) Чем чаще, тем убойней косяк...
8 Ненавижу 1С
 
гуру
21.09.12
17:17
РПЦ не одобряет
9 Bilion
 
21.09.12
17:18
Запрос в цикле - всегда косяк))))
10 DrShad
 
21.09.12
17:21
(0) напиши коммент "// да простит меня читающий сие, ибо грешен" и спокойно юзай цикл
11 rphosts
 
21.09.12
17:22
(0) попробуй сформулировать нафига тебе цикл
12 pumbaEO
 
21.09.12
17:23
(10) +1 Марь Ивановна совратила.
13 nunzio
 
21.09.12
17:23
Что тогда подскажете ? Есть рс Настройка прав доступа, рлс по подразделениям и подразделениям организаций. При обмене возможно ситуация когда добавляется новое подразделение или меняется орг или фин структура. Соответственно надо обновить права для тех подразделений, где стоит вид наследования "распространить для подчиненных". Пока на ум приходит только выбрать 1 запросом все записи, где стоит "распространить для подчиненных", 2 запросом выбрать в вт справочники подразделения и подразделения организаций и в цикле для каждой строчки из первого запроса выбрать данные из вт 2 запроса. Мб кто-нибудь подскажет более приемлемый алгоритм ?)
14 Нуф-Нуф
 
21.09.12
17:23
(10) +1
15 nunzio
 
21.09.12
17:24
И почему запрос ко временной таблице это косяк ? К бд ведь обращения нет ) Или все-таки есть ?
16 DrShad
 
21.09.12
17:26
(15) а ВТ где?
17 ДенисЧ
 
21.09.12
17:27
(15) есть
18 ДенисЧ
 
21.09.12
17:27
(16) В уме :-)
19 rphosts
 
21.09.12
17:27
(15)а как ты думаешь где хранится временная таблица?

(13) 2 запроса это не цикл
20 rphosts
 
21.09.12
17:29
+(19) не обязтельно в цикле - пдай результат первого запрос ана вход второго или как временную таблицу или как таблицу значений или как параметр (в отбором В )
21 nunzio
 
21.09.12
17:29
(19) в оперативной памяти, не ?
22 john_ddd
 
21.09.12
17:29
(13)загрузи эту временную таблицу в запрос и в запросе все делай
23 Bilion
 
21.09.12
17:30
ИМХО, Можно выбрать все одним запросом, да обойти иерархически)
24 pumbaEO
 
21.09.12
17:31
(21) у тебя не часто будет меняться орг.структура, я бы сделал фоновым заданием в дальнейшем, а обмен пускай идет.
25 nunzio
 
21.09.12
17:32
(24) а подробней если можно ?) на данном этапе довольно часто) не каждый день конечно, но чехарда идет, особенно в фин.структуре.
26 nunzio
 
21.09.12
17:34
(21) не в оперативной, во временной sql печаль)
27 pumbaEO
 
21.09.12
17:40
Если говорить про подразделения: у тебя по тысяче подразделений и столько же пользователей (групп доступа) ?

Цыклом по запросу проиграешь, выгрузи все в ТЗ и не мучайся.
28 nunzio
 
21.09.12
17:49
(27)Выгружаю в тз подразделения и подразделения организаций, запросом получаю данные из рс Настройка прав доступа, и для каждой строчки выборки результата запроса формирую циклом из тз подразделений список иерархически подчиненных элементов ? Так ?)
29 pumbaEO
 
21.09.12
17:51
Да, и не забудь сделать кэш, дабы лишний раз не обращаться к запросу.
30 nunzio
 
21.09.12
17:53
(29) Спс, пошел гуглить про кэш)
31 pumbaEO
 
21.09.12
17:56
(30) кэш имелось ввиду или соответствие или ТЗ с сохраненным значением иерархи, сначала проверяешь в соответствии если нет, делаешь запрос.
32 Bilion
 
21.09.12
18:11
(30) -)))))