| 
    
            
         
         | 
    
  | 
Выбо данных первого пакета запроса | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        falselight    
     04.02.20 
            ✎
    17:34 
 | 
         
        Запрос       = Новый Запрос;
 
        Запрос.Текст = " |ВЫБРАТЬ | КонтактныеЛицаПартнеров.Наименование КАК КонтактноеЛицоИсполнителя |ПОМЕСТИТЬ ВТ_КонтактноеЛицоИсполнителя |ИЗ | Справочник.КонтактныеЛицаПартнеров КАК КонтактныеЛицаПартнеров |ГДЕ | КонтактныеЛицаПартнеров.Владелец = &Контрагент |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ПоступлениеУслугПрочихАктивовРасходы.НомерСтроки КАК ПечНомПП, | ПоступлениеУслугПрочихАктивовРасходы.Содержание КАК ПечУслуга, | ""Шт."" КАК ПечЕдИзм, | ПоступлениеУслугПрочихАктивовРасходы.Количество КАК ПечКолво, | ПоступлениеУслугПрочихАктивовРасходы.Цена КАК ПечЦена, | ПоступлениеУслугПрочихАктивовРасходы.Сумма КАК ПечСумма |ИЗ | Документ.ПоступлениеУслугПрочихАктивов.Расходы КАК ПоступлениеУслугПрочихАктивовРасходы |ГДЕ | ПоступлениеУслугПрочихАктивовРасходы.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Ссылка", ПоступлениеУслуг.Ссылка); Запрос.УстановитьПараметр("Контрагент", ПоступлениеУслуг.Контрагент); ТаблицаРасходов = Запрос.Выполнить().Выгрузить(); // Для Каждого СтрокаРасходов Из ТаблицаРасходов Цикл Строка.Параметры.Заполнить(СтрокаРасходов); ТабличныйДокумент.Вывести(Строка); КонецЦикла; // // *** ПОДВАЛ В одном запросе делаю выборку. В подвал мне нужно вывести данные нулевого пакета, но ничего не получается. Подскажите почему? // ВыборкаКЛИсполнителя = МассивРезультатов[0].Выбрать(); Если ВыборкаКЛИсполнителя.Следующий() Тогда Подвал.Параметры.ПечРасшифровкаИсп = ВыборкаКЛИсполнителя.КонтактноеЛицоИсполнителя; КонецЕсли;  | 
|||
| 
    1
    
        falselight    
     04.02.20 
            ✎
    17:35 
 | 
         
        В режиме предприятия смотрю, выборка есть, а тут не выбирает ((((
 
        Что то видимо не так делаю.  | 
|||
| 
    2
    
        dka80    
     04.02.20 
            ✎
    17:37 
 | 
         
        Либо использовать менеджер временных таблиц и из него получать данные временной таблицы, либо использовать ВыполнитьПакет, но тогда временную таблицу тебе нужно будет еще раз выбрать в запросе     
         | 
|||
| 
    3
    
        falselight    
     04.02.20 
            ✎
    17:38 
 | 
         
        (2) Я это делаю
 
        МассивРезультатов = Запрос.ВыполнитьПакет(); // ВыборкаКЛИсполнителя = МассивРезультатов[0].Выбрать(); Если ВыборкаКЛИсполнителя.Следующий() Тогда Подвал.Параметры.ПечРасшифровкаИсп = ВыборкаКЛИсполнителя.КонтактноеЛицоИсполнителя; КонецЕсли;  | 
|||
| 
    4
    
        falselight    
     04.02.20 
            ✎
    17:39 
 | 
         
        (2) Но в (3) нет результата ((((( В предприятии есть выборка. А тут пишет что количество о, Что количество это колонка, я не пойму пока как правильно сделать.     
         | 
|||
| 
    5
    
        dka80    
     04.02.20 
            ✎
    17:39 
 | 
         
        ВыполнитьПакетСПромежуточнымиДанными     
         | 
|||
| 
    6
    
        pechkin    
     04.02.20 
            ✎
    17:40 
 | 
         
        не нужна тут временная таблица     
         | 
|||
| 
    7
    
        dka80    
     04.02.20 
            ✎
    17:40 
 | 
         
        А ВыполнитьПакет:
 
        Результатом выполнения запроса на создание временной таблицы будет результат с одной колонкой и одной строкой, содержащей количество записей, помещенных в созданную временную таблицу.  | 
|||
| 
    8
    
        falselight    
     04.02.20 
            ✎
    17:40 
 | 
         
        (5) За место
 
        МассивРезультатов = Запрос.ВыполнитьПакет(); // ? То есть не ВыполнитьПакет ?  | 
|||
| 
    9
    
        falselight    
     04.02.20 
            ✎
    17:40 
 | 
         
        (7) А как её выборку то получить?     
         | 
|||
| 
    10
    
        dka80    
     04.02.20 
            ✎
    17:40 
 | 
         
        МассивРезультатов    = Запрос.ВыполнитьПакетСПромежуточнымиДанными()     
         | 
|||
| 
    11
    
        dka80    
     04.02.20 
            ✎
    17:41 
 | 
         
        +6 действительно, зачем временная таблица?     
         | 
|||
| 
    12
    
        falselight    
     04.02.20 
            ✎
    17:43 
 | 
         
        (11) Зачем вот это       |ПОМЕСТИТЬ ВТ_КонтактноеЛицоИсполнителя ??
 
        Так если я не помещу в ВТ_ , как я пакетами сделаю выборку то?  | 
|||
| 
    13
    
        falselight    
     04.02.20 
            ✎
    17:45 
 | 
         
        МассивРезультатов    = Запрос.ВыполнитьПакетСПромежуточнымиДанными();
 
        // ВыборкаКЛИсполнителя = МассивРезультатов[0].Выбрать(); Если ВыборкаКЛИсполнителя.Следующий() Тогда Подвал.Параметры.ПечРасшифровкаИсп = ВыборкаКЛИсполнителя.КонтактноеЛицоИсполнителя; КонецЕсли; Тогда в Если не заходит, выборка не срабатывает  | 
|||
| 
    14
    
        dka80    
     04.02.20 
            ✎
    17:46 
 | 
         
        (12) убери эту бяку   |ПОМЕСТИТЬ ВТ_КонтактноеЛицоИсполнителя
 
        и делай через МассивРезультатов = Запрос.ВыполнитьПакет()  | 
|||
| 
    15
    
        falselight    
     04.02.20 
            ✎
    17:49 
 | 
         
        (14) Убрал, закомментировал точнее, но выборки нет ( В Если не заходит     
         | 
|||
| 
    16
    
        falselight    
     04.02.20 
            ✎
    17:53 
 | 
         
        ПоступлениеУслуг = МассивСтруктур[0].Док;
 
        УстановитьПривилегированныйРежим(Истина); ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент.АвтоМасштаб = Истина; ТабличныйДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Портрет; ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_АктВыполненныхРабот"; ДляМакета = РеквизитФормыВЗначение("Объект"); Макет = ДляМакета.ПолучитьМакет("АктВыполненныхРабот"); //Для Каждого ПоступлениеУслуг Из МассивОбъектов Цикл // // *** ШАПКА Шапка = Макет.ПолучитьОбласть("Шапка"); // Шапка.Параметры.ПечНомерАкта = ПоступлениеУслуг.Номер; Шапка.Параметры.ПечДатаАкта = Формат(ПоступлениеУслуг.Дата,"ДФ=dd.MM.yyyy"); // // ЗАКАЗЧИК // СведенияЗ = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ПоступлениеУслуг.Организация, ПоступлениеУслуг.Дата); РеквизитыЗ = "ПолноеНаименование,ИНН,КПП,ЮридическийАдрес,Телефоны,"; Шапка.Параметры.ПечЗаказчик = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияЗ, РеквизитыЗ); // // ИСПОЛНИТЕЛЬ // СведенияИ = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ПоступлениеУслуг.Контрагент, ПоступлениеУслуг.Дата); РеквизитыИ = "ПолноеНаименование,ИНН,КПП,ЮридическийАдрес,Телефоны,"; Шапка.Параметры.ПечИсполнитель = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияИ, РеквизитыИ); // ТабличныйДокумент.Вывести(Шапка); // // *** СТРОКА Строка = Макет.ПолучитьОбласть("Строка"); // Запрос = Новый Запрос; Запрос.Текст = " |ВЫБРАТЬ | КонтактныеЛицаПартнеров.Наименование КАК КонтактноеЛицоИсполнителя //|ПОМЕСТИТЬ ВТ_КонтактноеЛицоИсполнителя |ИЗ | Справочник.КонтактныеЛицаПартнеров КАК КонтактныеЛицаПартнеров |ГДЕ | КонтактныеЛицаПартнеров.Владелец = &Контрагент |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ПоступлениеУслугПрочихАктивовРасходы.НомерСтроки КАК ПечНомПП, | ПоступлениеУслугПрочихАктивовРасходы.Содержание КАК ПечУслуга, | ""Шт."" КАК ПечЕдИзм, | ПоступлениеУслугПрочихАктивовРасходы.Количество КАК ПечКолво, | ПоступлениеУслугПрочихАктивовРасходы.Цена КАК ПечЦена, | ПоступлениеУслугПрочихАктивовРасходы.Сумма КАК ПечСумма |ИЗ | Документ.ПоступлениеУслугПрочихАктивов.Расходы КАК ПоступлениеУслугПрочихАктивовРасходы |ГДЕ | ПоступлениеУслугПрочихАктивовРасходы.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Ссылка", ПоступлениеУслуг.Ссылка); Запрос.УстановитьПараметр("Контрагент", ПоступлениеУслуг.Контрагент); ТаблицаРасходов = Запрос.Выполнить().Выгрузить(); // Для Каждого СтрокаРасходов Из ТаблицаРасходов Цикл Строка.Параметры.Заполнить(СтрокаРасходов); ТабличныйДокумент.Вывести(Строка); КонецЦикла; // // *** ПОДВАЛ Подвал = Макет.ПолучитьОбласть("Подвал"); // Подвал.Параметры.ПечИтого = ТаблицаРасходов.Итог("ПечСумма"); Подвал.Параметры.ПечБезНДС = ""; Подвал.Параметры.ПечВсего = ТаблицаРасходов.Итог("ПечСумма"); Подвал.Параметры.ПечСумма = РаботаСКурсамиВалют.СформироватьСуммуПрописью(ТаблицаРасходов.Итог("ПечСумма"), ПоступлениеУслуг.Валюта); Подвал.Параметры.ПечНДС = "Ноль рублей 00 коп."; // МассивРезультатов = Запрос.ВыполнитьПакет(); // ВыборкаКЛИсполнителя = МассивРезультатов[0].Выбрать(); Если ВыборкаКЛИсполнителя.Следующий() Тогда Подвал.Параметры.ПечРасшифровкаИсп = ВыборкаКЛИсполнителя.КонтактноеЛицоИсполнителя; КонецЕсли;  | 
|||
| 
    17
    
        falselight    
     04.02.20 
            ✎
    17:55 
 | 
         
        Вот это, с установленным параметром выбирает в режиме предприятия, почему нет выборки, через ВыбратьПакет?
 
        ВЫБРАТЬ КонтактныеЛицаПартнеров.Наименование КАК КонтактноеЛицоИсполнителя ИЗ Справочник.КонтактныеЛицаПартнеров КАК КонтактныеЛицаПартнеров ГДЕ КонтактныеЛицаПартнеров.Владелец = &Контрагент  | 
|||
| 
    18
    
        dka80    
     04.02.20 
            ✎
    17:57 
 | 
         
        Запрос.УстановитьПараметр("Контрагент", ПоступлениеУслуг.Контрагент);  - видимо не тот же контрагент, что и &Контрагент в режиме предприятия ты задаешь     
         | 
|||
| 
    19
    
        falselight    
     04.02.20 
            ✎
    18:02 
 | 
         
        (18) Я проверял тот же.     
         | 
|||
| 
    20
    
        falselight    
     04.02.20 
            ✎
    18:06 
 | 
         
        (18) Смотрю. Там путаница Партнер или Контрагент .     
         | 
|||
| 
    21
    
        falselight    
     04.02.20 
            ✎
    18:07 
 | 
         
        Да, тип партнер отбирает, контрагента же нет.
 
        Не совсем знаю все эти махинации. Поправлю сейчас на партнера в коде.  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |