|   |   | 
| 
 | Динамический список: программный произвольный запрос с параметрами | ☑ | ||
|---|---|---|---|---|
| 0
    
        mashunka 08.10.12✎ 17:09 | 
        Имеется динамический список с произвольным запросом с параметрами. Он работает, пока тест запроса задан вручную. Если же задать тест запроса с помощью "Список.ТекстЗапроса = ТекстЗапроса", то список выходит пустым. Хотя при просмотре отладчиком все параметры остаются на месте и имеют заполненные значения. 
  Если программно задать текст запроса без параметров, то все работает. Можно, конечно, вставить готовый текст запроса вручную, но текст большой и сложный и его формирует внешняя процедура в зависимости от ряда переданных извне условий. К тому же этот же запрос используется в нескольких других местах, поэтому как бы источник должен быть один, иначе в одном месте поменяют, а в этом несчастном динамическом списке - забудут... Вопрос, соответственно: в чем разница, почему перестает работать? | |||
| 1
    
        mashunka 08.10.12✎ 17:10 | 
        (0) - сорри, в первом предложении не "тест запроса", а "текст", естественно!     | |||
| 2
    
        DrShad 08.10.12✎ 17:15 | 
        а параметры в тексте запроса правильно прописаны? скобки фигурные стоят?     | |||
| 3
    
        mashunka 08.10.12✎ 17:32 | 
        (2) эээ, если я задаю текст запроса вручную, там нет никаких фигурных скобок. То есть, если я программно это делаю, то нужно как-то по особому их задавать? Пример можно? А еще - я после строки  "Список.ТекстЗапроса = ТекстЗапроса" я отладчиком считываю параметры, например, "Список.Параметры.Элементы[0].Значение" - и они все инициализированы. Значит вроде ж как правильно прописаны?     | |||
| 4
    
        DrShad 08.10.12✎ 17:35 | 
        Демонический список работает через СКД
  и что значит [если я задаю текст запроса вручную]? | |||
| 5
    
        mashunka 08.10.12✎ 17:40 | 
        (4) ну вручную - это выделяю список в форме, ставлю флажок "Произвольный запрос", жму "Редактирование списка", туда вставляю запрос. Если программно - то захожу в модуль, с процедуре "ПриСозданииНаСервере" пишу "Список.ТекстЗапроса = НекийТекстЗапроса". Значения Параметров в обоих случаях задаю в модуле в процедуре "ПриСозданииНаСервере" колхозным способом "Список.Параметры.Элементы[0].Значение = Значение1", "Список.Параметры.Элементы[1].Значение = Значение2" и т.п. Так вот, в первом случае работает, во втором - нет...
  пы.сы. Я знаю, что через СКД, не вижу связи с фигурными скобками. Фигурные - это ж { и }? И куда их пихать? | |||
| 6
    
        DrShad 08.10.12✎ 17:42 | 
        (5) ну так вот когда ты делаешь [ставлю флажок "Произвольный запрос", жму "Редактирование списка", туда вставляю запрос] то скобки расставляет платформа, а когда [роцедуре "ПриСозданииНаСервере" пишу "Список.ТекстЗапроса = НекийТекстЗапроса"] то этого она не делает     | |||
| 7
    
        mashunka 08.10.12✎ 17:45 | 
        (6) если я отладчиком считываю текст запроса, который вставила вручную, то там тоже скобок не вижу фигурных... А где примерчик можно посмотреть? Я ж в (3) с этого и начала :) Не знаю я, куда их ставить :(     | |||
| 8
    
        DrShad 08.10.12✎ 17:47 | 
        тогда учите СКД прежде чем с демоническими списками работать     | |||
| 9
    
        mashunka 08.10.12✎ 17:49 | 
        (8) мне казалось, просьба простая - кинуть примером или ссылкой на методические материалы. Хорошо, спасибо и на этом.     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |