|   |   | 
| 
 | Фишка в формировании текста запроса | ☑ | ||
|---|---|---|---|---|
| 0
    
        Vovik 11.09.17✎ 18:42 | 
        Хочу поделится фишкой в формировании текста в запросе.
 Например есть: |ГДЕ +переменная+ | И Заказы.КоличествоОстаток > 0 При правке запроса через конструктор приходится руками это добавлять - но есть удобный способ: |ГДЕ | 1 = 1 | И 2 = 2 | И 3 = 3 | И 4 = 4 | И Заказы.КоличествоОстаток > 0 Если ЗначениеЗаполнено(Контрагент) Тогда Запрос.Текст = СтрЗаменить(Запрос.Текст,"1 = 1","Заказы.Контрагент В ИЕРАРХИИ(&Контрагент)"); КонецЕсли; | |||
| 1
    
        Vovik 11.09.17✎ 18:43 | 
        Интересно почему нет в построителе что то такого что бы сохранялись коменты для свойств и категорий. При каждой правке приходится заново их проставлять.     | |||
| 2
    
        Heckfy 11.09.17✎ 18:44 | 
        А почему только до четырех? Почему не:
 | И 4 = 4 | И 5 = 5 | И 6 = 6 | И 7 = 7 | |||
| 3
    
        Vovik 11.09.17✎ 18:44 | 
        Сколько надо предусмотреть условий столько и делай     | |||
| 4
    
        vi0 11.09.17✎ 18:44 | 
        (1) добро пожаловать в 1с     | |||
| 5
    
        Vovik 11.09.17✎ 18:45 | 
        Это ж пример     | |||
| 6
    
        Fragster гуру 11.09.17✎ 18:50 | 
        автору читать про построитель запросов.
 Ну и про семантику, типа не "1 = 1", а "&_УсловиеКонтрагента" для случаев, когда достаточно возможностей построителя | |||
| 7
    
        Vovik 11.09.17✎ 19:01 | 
        Таких примеров в типовой масса.
 Например модуль печати реализации в ут10 Запрос.Текст = "ВЫБРАТЬ | ВложенныйЗапрос.Номенклатура КАК Номенклатура, | ВЫРАЗИТЬ(ВложенныйЗапрос.Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК ТоварНаименование, | ВложенныйЗапрос.Номенклатура." + ТоварКод + " КАК ТоварКод, - что бы быстро посмотреть конструктором сначала приходиться править " + ТоварКод + " Править запрос, а потом возвращать " + ТоварКод + " А если сразу сделать типа, с последующей заменой текста - то гораздо проще отлаживать ВЫБРАТЬ ВложенныйЗапрос.Номенклатура КАК Номенклатура, ВЫРАЗИТЬ(ВложенныйЗапрос.Номенклатура.НаименованиеПолное КАК СТРОКА(1000)) КАК ТоварНаименование, 0 КАК ТоварКод, | |||
| 8
    
        Йохохо 11.09.17✎ 19:05 | 
        (0) а теперь попади в индекс и удали свой пост     | |||
| 9
    
        Vovik 11.09.17✎ 19:06 | 
        (0) Какой индекс? Как можно удалить свой пост?     | |||
| 10
    
        Йохохо 11.09.17✎ 19:08 | 
        (9) просто попроси в своей ветке     | |||
| 11
    
        Vovik 11.09.17✎ 19:10 | 
        (10) Попроси сам. Не пойму что и зачем тебе надо. 
 Вроде что то я тебе сделал не так своим постом, но что именно не понимаю. | |||
| 12
    
        Йохохо 11.09.17✎ 19:13 | 
        (11) если ни один из оптимизаторов запроса не сработает, ни 1с предприятия ни движка субд, ты получишь самый медленный запрос     | |||
| 13
    
        Vovik 11.09.17✎ 19:17 | 
        (12) Причем тут это? как простое условие типа "1 = 1" замедлит работу? Это чисто удобство для отладки, что бы быстро открывать конструктором.     | |||
| 14
    
        bolder 11.09.17✎ 20:02 | 
        (0) Не понял,всем новизна то?)1с уже давно пишет подобные запросы, которые открываются Прекрасно конструктором. СтрЗаменить  поищите в типовых на УФ.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |