![]()  |  
 
 Выбрать элементы справочника в ТЗ без запроса  Доброе время суток ! Помогите советом, коллеги !  Есть файловая база. Необходимо выбрать из справочника элементы по определенному реквизиту в ТЗ (то есть их несколько) Запрос можно не предлагать, ибо он, к сожалению, работает дольше чем простой перебор... ЗЫ: Объясню, чтобы было понятно... Есть справочник с несколькими реквизитами ну например Артикул, Цвет, размер Задача : Выбрать в ТЗ только тот товар что имеет определенную сцепку Артикул+Цвет, без учета размера. Я подумал что можно через 2 ТЗ - сначала в 1ТЗ выбрать по Артикулу, а затем по второму -из 1ТЗ уже по цвету. Спасибо заранее !  |  
 
 Спр.ВыбратьЭлементы();  Пока Спр.ПолучитьЭлемент()=1 Цикл Если Спр.ЭтоГруппа()=1 Тогда Продолжить КонецЕсли; Если (Спр.Артикул=ВыбАртикул)и(Спр.Цвет=Цвет) Тогда ТЗ.НоваяСтрока(); ...  |  
 
 [quote=VASH;39159669]Запрос можно не предлагать, ибо он, к сожалению, работает дольше чем простой перебор[/quote]  Предлагаю разместить каталог пользователя на том же компьютере, на котором он запускает 1С.  |  
 
 странно как то запрос работает медленнее ;)) не верю   что то не так в запросе имхо или имеется перед выполнить конструкция вида Запрос.ВключитьSQL ЗЫ да просто достаточно прописать темпы в короткий путь в ярлыке запуска 1С C:\1Cv77\BIN\1cv7s.exe /TD:\All_temp\каталогтемпа\  |  
 
 Ребят, это терминальник, так что (2) - все Ок.   Про (3) не знал, обязательно посмотрю. Пока все решено, спасибо (1) ! И всем спасибо !  |  
 
 тупо обычная ТЗ.  потом превращаем ее в индексированную ТЗ (1с++) одной строчкой кода, создавая индекс артикул+цвет. А как гворил Аристотель - имеем индекс - имеем всё!  |  
 
 можно попробовать ВыбратьЭлементыПоРеквизиту(<?>,,,)  и среди найденного перебирать по остальным реквизитам  |  
 
 [quote=Зелёный тролль;39163634]ВыбратьЭлементыПоРеквизиту[/quote]  Вот эту функцию я и вспоминал. Спасибо ! Однако уже решил по другому и результат устраивает :) Приступил кследующей задаче. Но все равно всем спасибо :)  |  
| Текущее время: 18:06. Часовой пояс GMT +3. |