| 
    
        
     
     | 
    
  | 
Подскажите с запросом. | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        sapravka    
     06.04.14 
            ✎
    20:24 
 | 
         
        Если что то не так - прошу сильно не ругать!
 
        Делаю запрос, сначала конечно его делал в консоли запросов - там данные отбираются! Вот сам запрос: Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ | Контрагенты.ОсновнойДоговорКонтрагента.Дата КАК ДатаДоговора, | Контрагенты.ОсновнойДоговорКонтрагента.Номер КАК НомерДоговора, | Контрагенты.НаименованиеПолное КАК ПолноеНаименованиеОрганизации, | Контрагенты.ОсновноеКонтактноеЛицо.КонтактноеЛицо КАК ДиректорОрганизации, | Контрагенты.ИНН КАК ИННПокупателя, | Контрагенты.КПП КАК КПППокупателя, | Контрагенты.ОсновнойБанковскийСчет.Банк.Код КАК БикПокупателя, | Контрагенты.ОсновнойБанковскийСчет.НомерСчета КАК РасчетныйСчет, | Контрагенты.ОсновнойБанковскийСчет.Банк КАК НаименованиеБанка, | Контрагенты.ОсновнойБанковскийСчет.Банк.КоррСчет КАК КорСчет, | Контрагенты.ОсновноеКонтактноеЛицо.КонтактноеЛицо.Фамилия КАК Фамилия, | Контрагенты.ОсновноеКонтактноеЛицо.КонтактноеЛицо.Имя КАК Имя, | Контрагенты.ОсновноеКонтактноеЛицо.КонтактноеЛицо.Отчество КАК Отчество |ИЗ | Справочник.Контрагенты КАК Контрагенты |ГДЕ | Контрагенты.Ссылка = &ТекущийДокумент"; ЗапросДоговорной = Запрос.Выполнить().Выбрать(); А потом делаю в конфигураторе, сохранил и там ошибка чтения данных: http://волгалаб.рф/1c/118.jpg Подскажите, в чем может быть проблема?  | 
|||
| 
    1
    
        GANR    
     06.04.14 
            ✎
    20:27 
 | 
         
        (0) ВыборкаДоговорной.Следующий() надо-бы попробовать     
         | 
|||
| 
    2
    
        lex1972    
     06.04.14 
            ✎
    20:30 
 | 
         
        Посмотрите что содержится в параметре "ТекущийДокумент" для этого в отладчике выведите в табло "ЭтотОбъект.Ссылка" и посмотрите результат.     
         | 
|||
| 
    3
    
        sapravka    
     06.04.14 
            ✎
    20:33 
 | 
||||
| 
    4
    
        GANR    
     06.04.14 
            ✎
    20:35 
 | 
         
        (3) Такой запрос с таким параметром в принципе ничего вернуть не может.     
         | 
|||
| 
    5
    
        sapravka    
     06.04.14 
            ✎
    20:36 
 | 
         
        (4) а в чем ошибка, подскажите!     
         | 
|||
| 
    6
    
        wendy    
     06.04.14 
            ✎
    20:40 
 | 
         
        Если это внешняя печатная форма, то надо не ЭтотОбъект.Ссылка, а СсылкаНаОбъект     
         | 
|||
| 
    7
    
        sapravka    
     06.04.14 
            ✎
    20:41 
 | 
         
        (6) не не внешняя     
         | 
|||
| 
    8
    
        GANR    
     06.04.14 
            ✎
    20:41 
 | 
         
        (5) типы данных разные     
         | 
|||
| 
    9
    
        ДенисЧ    
     06.04.14 
            ✎
    20:42 
 | 
         
        Выбираешь из контрагентов, а ссылку даёшь на договор.     
         | 
|||
| 
    10
    
        sapravka    
     06.04.14 
            ✎
    20:44 
 | 
         
        (8) а поподробнее, пожалуйста: где и что именно!!!     
         | 
|||
| 
    11
    
        sapravka    
     06.04.14 
            ✎
    20:45 
 | 
         
        (9) А где именно:
 
        Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка); текст запроса Контрагенты.Ссылка = &ТекущийДокумент"; И где из контрагентов на договор?  | 
|||
| 
    12
    
        GANR    
     06.04.14 
            ✎
    20:52 
 | 
         
        (10) Вот картинка http://ximage.ru/data/imgs/1396802964.jpg и вот картинка http://ximage.ru/data/imgs/1396803110.jpg     
         | 
|||
| 
    13
    
        sapravka    
     06.04.14 
            ✎
    21:36 
 | 
         
        (12) Ну вот поправил:
 
        Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ | ДоговорыКонтрагентов.Дата КАК ДатаДоговора, | ДоговорыКонтрагентов.Номер КАК НомерДоговора, | ДоговорыКонтрагентов.Владелец.НаименованиеПолное КАК ПолноеНазваниеОрганизации, | ДоговорыКонтрагентов.Владелец.ОсновноеКонтактноеЛицо.КонтактноеЛицо КАК ДиректорПокупатель, | ДоговорыКонтрагентов.Владелец.ИНН КАК ИННПокупателя, | ДоговорыКонтрагентов.Владелец.КПП КАК КПППокупателя, | ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.НомерСчета КАК РасчСчет, | ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.Банк.Наименование КАК НазваниеБанка, | ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.Банк.КоррСчет КАК КорСчет, | ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.Банк.Код КАК БИК, | ДоговорыКонтрагентов.Владелец.Наименование КАК СокращенноеНазваниеПокупателя, | ДоговорыКонтрагентов.Владелец.ОсновноеКонтактноеЛицо.КонтактноеЛицо.Фамилия КАК ФамилияДиректора, | ДоговорыКонтрагентов.Владелец.ОсновноеКонтактноеЛицо.КонтактноеЛицо.Имя КАК ИмяДиректора, | ДоговорыКонтрагентов.Владелец.ОсновноеКонтактноеЛицо.КонтактноеЛицо.Отчество КАК ОтчествоДиректора |ИЗ | Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов |ГДЕ | ДоговорыКонтрагентов.Ссылка = &ТекущийДокумент"; ЗапросДоговорной = Запрос.Выполнить().Выбрать(); Но все равно выходит ошибка чтения данных: http://волгалаб.рф/1c/120.jpg и http://волгалаб.рф/1c/120.jpg  | 
|||
| 
    14
    
        sapravka    
     06.04.14 
            ✎
    21:37 
 | 
         
        вернее вот:
 
        http://волгалаб.рф/1c/121.jpg  | 
|||
| 
    15
    
        GANR    
     06.04.14 
            ✎
    22:10 
 | 
         
        (14) Почти, далее смотрим (2) - нужно обойти выборку из результата запроса. Короче, пробуем
 
        Запрос = Новый Запрос; Запрос.Текст = <см. (14)>; Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл Сообщить(Выборка.ФамилияДиректора); КонецЦикла;  | 
|||
| 
    16
    
        GANR    
     06.04.14 
            ✎
    22:12 
 | 
         
        Ну уж конструкция (15) - более рваного баяна просто в жизни не видел.     
         | 
|||
| 
    17
    
        lex1972    
     07.04.14 
            ✎
    08:06 
 | 
         
        Поставь точку останова после оператора "Выборка.Следующий()", я смоделировал ситуацию, посмотри на скрине.
 
        http://yadi.sk/d/v9-i4So0LvcCr  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |