Имя: Пароль:
1C
1С v8
Подскажите, что нужно прописать в запросе?
,
0 sapravka
 
31.03.13
20:46
Здравствуйте!
Я новичок в программировании, поэтому нужна помощь зала!!!
Собственно история такая:
Написал небольшой запрос - из документа основание берется несколько значений, а теперь необходимо написать в конструкторе запроса на закладке условия – условие, что бы данные брались из документа основания!!!
Подскажите, пожалуйста, какое условие необходимо прописать, что бы в документе потомке (в модуле которого, и написан данный запрос) брались данные из документа основания!
1 Лефмихалыч
 
31.03.13
20:50
показывай запрос
2 sapravka
 
31.03.13
20:56
(1) Вот Делаю в Модуле объекта документа ПлатежноеПоручениеИсходящее:


Запрос = Новый Запрос;
   Запрос.Текст =
    "ВЫБРАТЬ
    |    ЗарплатаКВыплатеОрганизаций.ВыплатаДепонентов КАК ВыплатаДепонентов1
    |ИЗ
    |    Документ.ЗарплатаКВыплатеОрганизаций КАК ЗарплатаКВыплатеОрганизаций
    |ГДЕ
    |    ЗарплатаКВыплатеОрганизаций.ДокументОснование = &Ссылка";
       Запрос.УстановитьПараметр("Ссылка", Ссылка);
       Выборка = Запрос.Выполнить().Выбрать();
       Выборка.Следующий();
3 Лефмихалыч
 
31.03.13
21:02
ВЫБРАТЬ
Основание.Ссылка, Основание.Дата
ИЗ Документ.ТипДокументаОснованияЯЗупПоверхностноЗнаюСамНапишиНужныйТип как Основание
ГДЕ Ссылка = &ДокументОснование


Запрос.УстановитьПарамтер("ДокументОснование", ДокументОснованиеИЛиКакТамРеквизитНазван)
4 sapravka
 
31.03.13
21:17
(3) Что то не получается...
Вот есть докумет основание:
Документ.ЗарплатаКВыплатеОрганизаций
У него есть реквизит:
ВыплатаДепонентов

Как к документу основанию обратиться из другого докумета потомка?
5 EugeniaK
 
31.03.13
21:30
(4)Через точку
ИмяДокументаПотомка.ДокументОснование.ИмяНужногоРеквизита

В конструкторе запросов разверни ссылку на документОснование
6 EugeniaK
 
31.03.13
21:33
Запрос = Новый Запрос;
   Запрос.Текст =
    "ВЫБРАТЬ
    |    ПлатежноеПоручениеИсходящее.ДокументОснование.ВыплатаДепонентов КАК ВыплатаДепонентов1
    |ИЗ
    |    ПлатежноеПоручениеИсходящее КАК ПлатежноеПоручениеИсходящее
    |ГДЕ
    |    ПлатежноеПоручениеИсходящее.Ссылка = &Ссылка";
        Запрос.УстановитьПараметр("Ссылка", Ссылка);
        Выборка = Запрос.Выполнить().Выбрать();
       Выборка.Следующий();
7 EugeniaK
 
31.03.13
21:37
(2) Или в твоем запросе заменить ссылку на ссылку на документОснование
Запрос.УстановитьПараметр("Ссылка", ДокументОснование);
8 sapravka
 
31.03.13
21:43
(6) Я когда поставил данный запрос вышла вот эта ошибка:

{Документ.ПлатежноеПоручениеИсходящее.МодульОбъекта(724)}: Ошибка при вызове метода контекста (Выполнить)
        Выборка = Запрос.Выполнить().Выбрать();
по причине:
{(4, 5)}: Таблица не найдена "ПлатежноеПоручениеИсходящее"
<<?>>ПлатежноеПоручениеИсходящее КАК ПлатежноеПоручениеИсходящее

Подскажите, как её обойти?
9 Jonny_Khomich
 
01.04.13
08:20
(8) Каким реквизитом связан твой документ и документ основание? Такой и подставляю в параметры запроса.
10 Лефмихалыч
 
01.04.13
08:22
я бы порекомендовал какого-нибудь Радченко прочитать со сквозным примером прежде, чем неистово тыкать в небо пальцем
11 cw014
 
01.04.13
08:52
(10) Или порекомендовать отойти от компьютера и позвать программиста
12 Mad88
 
01.04.13
09:24
А документ основание откуда берется?
13 Mad88
 
01.04.13
10:27
Запрос = Новый Запрос;
   Запрос.Текст =
    "ВЫБРАТЬ
    |    ЗарплатаКВыплатеОрганизаций.ВыплатаДепонентов КАК ВыплатаДепонентов1
    |ИЗ
    |    Документ.ЗарплатаКВыплатеОрганизаций КАК ЗарплатаКВыплатеОрганизаций
    |ГДЕ
    |    Документ.ЗарплатаКВыплатеОрганизаций = &Ссылка";
     
  Запрос.УстановитьПараметр("Ссылка", Объект.ДокументОснование);
  Выборка = Запрос.Выполнить().Выбрать();
  Выборка.Следующий();