|   |   | 
| 
 | Условие по элементу выборки ↓ (Волшебник 06.03.2024 21:36) | ☑ | ||
|---|---|---|---|---|
| 0
    
        SeniorJunior 05.03.24✎ 23:43 | 
        Доброго всем вечера!
 Имеется запрос: ВЫБРАТЬ НачислениеЗарплатыНачисления.Ссылка.МесяцНачисления КАК МесяцНачисления, НачислениеЗарплатыНачисления.Ссылка.Дата КАК Дата, НачислениеЗарплатыНачисления.Сотрудник КАК Сотрудник, НачислениеЗарплаты.Организация КАК Организация ИЗ Документ.НачислениеЗарплаты.Начисления КАК НачислениеЗарплатыНачисления ГДЕ НачислениеЗарплатыНачисления.Ссылка = &Ссылка И далее суть в том, что когда выбираем необходимый документ, из него необходимо получить организацию и в зависимости от того какая организация, выполнить определенные действия. Т.е. в моем понимании должно выглядеть примерно так: РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(); Пока Выборка.Следующий() Цикл Если Выборка.Организация = "Ромашка ООО" Тогда ................... ИначеЕсли Выборка.Организация = "Роза ООО" Тогда ................... и т.д. Но так выдает ошибку. Отладчик показывает, что Выборка.Организация - Справочникссылка.организации. Нид хелп | |||
| 1
    
        Builder 06.03.24✎ 00:10 | 
        жжжесть :)
 Ну тогда уж как то так: Если Выборка.Организация.Наименование = "Ромашка ООО" Тогда .... или лучше так уж... Если Выборка.Организация.Код = "0001" Тогда А лучше освоить КОГДА в запросе | |||
| 2
    
        Garykom гуру 06.03.24✎ 00:32 | 
        НачислениеЗарплаты.Организация.Наименование КАК ОрганизацияНаименование
 или НачислениеЗарплаты.Организация.Код КАК ОрганизацияКод Если Выборка.ОрганизацияНаименование = "Ромашка ООО" Тогда или Если Выборка.ОрганизацияКод = "0001" Тогда Но да, лучше https://www.koderline.ru/expert/narabotki/article-vybor-kogda-togda-v-konfiguratsii-sistemy-1s-predpriyatie/ | |||
| 3
    
        Garykom гуру 06.03.24✎ 00:46 | 
        (2)+ суть что намного быстрей вытащить сразу результат запроса Строку
 и ее сравнивать не дергая Наименование или Код по ссылке справочника, да еще в цикле А через КОГДА можно заполнение полей в запросе (или условий ГДЕ) сделать вариативным по нужному условию Например привязаться к некоему реквизиту Организации | |||
| 4
    
        Garykom гуру 06.03.24✎ 00:42 | 
        (3)+ И да желательно сокращать количество обращений через "."  запросах
 Используя ЛЕВОЕ СОЕДИНЕНИЕ например: ВЫБРАТЬ Документ.МесяцНачисления КАК МесяцНачисления, Документ.Дата КАК Дата, Начисление.Сотрудник КАК Сотрудник, Организация.Ссылка КАК Организация, Организация.Код КАК ОрганизацияКод, Организация.Наименование КАК ОрганизацияНаименование ИЗ Документ.НачислениеЗарплаты.Начисления КАК Начисление ЛЕВОЕ СОЕДИНЕНИЕ Документ.НачислениеЗарплаты КАК Документ ПО Начисление.Ссылка = Документ.Ссылка ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Организации КАК Организация ПО Документ.Организация = Организация.Ссылка ГДЕ Начисление.Ссылка = &Ссылка | |||
| 5
    
        Ненавижу 1С гуру 06.03.24✎ 08:22 | 
        (0) для чего такие условия вы делаете?     | |||
| 6
    
        Волшебник 06.03.24✎ 08:25 | 
        (4) Лучше точки, чем левые соединения. С точками запрос лучше читается     | |||
| 7
    
        Ненавижу 1С гуру 06.03.24✎ 08:40 | 
        (6) согласен, но это пока реквизит связи не составного типа     | |||
| 8
    
        chelentano 06.03.24✎ 08:48 | 
        (0) Какую ошибку то выдаёт?     | |||
| 9
    
        Garykom гуру 06.03.24✎ 11:04 | 
        (6) Внутри запросов точки один фиг разворачиваются в неявные соединения
 (7) угу https://its.1c.ru/db/metod8dev/content/2662/hdoc и проще запрос читается/понимается/допиливается когда много полей | |||
| 10
    
        SeniorJunior 06.03.24✎ 15:34 | 
        (5) Это для макета отчета, хочу чтоб в зависимости от компании указанной в выбранном документе была соответствующая шапка макета. Когда загоняю конструкцию в цикл, тогда все работает, но шапку печатает несколько раз. Возможно есть вариант сделать это без цикла?     | |||
| 11
    
        Волшебник 06.03.24✎ 15:38 | 
        (9) Один фиг, но точки лучше     | |||
| 12
    
        Builder 06.03.24✎ 15:38 | 
        (10) А цикл зачем? 
 Ну и начни с алгоритма на бумаге, похоже проблема в этом. | |||
| 13
    
        SeniorJunior 06.03.24✎ 15:41 | 
        (12) По другому не понимаю как из запроса получить данные и обратиться/использовать один конкретный реквизит.     | |||
| 14
    
        Волшебник 06.03.24✎ 15:45 | 
        У Вас запрос по одному документу, где организация в шапке, значит условие будет такое:
 Если ДокСсылка.Организация = Орг1 Тогда | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |