Имя: Пароль:
1C
1С v8
Помогите реализовать форму списка в документе..
0 FuriKuri
 
09.09.12
19:01
Есть справочник Контрагенты, где есть Табличная часть с договорами контрагента.Требуется в документе при указанном контрагенте, реализовать выбор договора из тех который есть у данного контрагента. Есть в доке поле "ДоговорКонтрагента" при НачалеВыбораИзСписка у меня такая процедура:

Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |    Контрагенты.Наименование,
   |    ДоговорыКонтрагентов.Наименование КАК Договор
   |ИЗ
   |    Справочник.Контрагенты КАК Контрагенты
   |        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
   |        ПО Контрагенты.ДоговораКонтрагентов.Договор = ДоговорыКонтрагентов.Наименование
   |ГДЕ
   |    ДоговорыКонтрагентов.Наименование = &Клиент";
   Запрос.УстановитьПараметр("Клиент",Клиент);
  Элемент.СписокВыбора.ЗагрузитьЗначения(Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Договор"));

НО все равно выдает пустой список. Что не так? или как по другому можно это реализовать?
1 Wobland
 
09.09.12
19:03
ничего не понял. зачем выбирать из двух справочников?
2 FuriKuri
 
09.09.12
19:07
Пробовал еще вот так...

Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |    Контрагенты.Договор,
   |    Контрагенты.Ссылка.Наименование
   |ИЗ
   |    Справочник.Контрагенты.ДоговораКонтрагентов КАК Контрагенты
   |ГДЕ
   |    Контрагенты.Ссылка.Наименование = &Клиент";
   Запрос.УстановитьПараметр("Клиент",Клиент);
  Элемент.СписокВыбора.ЗагрузитьЗначения(Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Договор"));

Тоже пустой..
3 Wobland
 
09.09.12
19:11
в православных типовых выставляется связь по владельцу у поля ввода. ну и соответственно, подчинённость договоров контрагенту
4 m-serg74
 
09.09.12
19:12
"Справочник.Контрагенты.ДоговораКонтрагентов" - что за конфа?
5 FuriKuri
 
09.09.12
19:15
С нуля сам составлял... Учусь пока..
Wobland - извиняюсь, за глупый вопрос.. А подчиненность каким образом и где ставится?
6 Wobland
 
09.09.12
19:15
(5) в свойствах справочника. дубл-клик. пока не поздно, делай сразу по-нормальному
7 m-serg74
 
09.09.12
19:16
т.е. когда создаешь договор, он меняет справочник контрагент?
8 Wobland
 
09.09.12
19:17
(7) кривое проектирование налицо.
автор, сподгляди этот момент с типовых
9 m-serg74
 
09.09.12
19:17
(7) к (5)
10 m-serg74
 
09.09.12
19:17
(8) +++
11 FuriKuri
 
09.09.12
19:33
Установил в справочнике Владельца - Справочник.Контрагенты, на форме дока Для поля выбора Договора установил связь по владельцу.. Все равно выдает пустое..
12 FuriKuri
 
09.09.12
19:39
Программно пробовал даже..


Процедура ДоговорКонтрагентаНачалоВыбора(Элемент, СтандартнаяОбработка)
   Владелец = Клиент.Ссылка;
Элемент.ВыборПоВладельцу = Владелец;
КонецПроцедуры
13 Wobland
 
09.09.12
19:45
(11) а создал договор у контрагента?
14 FuriKuri
 
09.09.12
19:50
В справочнике Контрагенты у меня есть табличная часть, где перечислены его договора...
15 FuriKuri
 
09.09.12
19:51
(13) так же у меня в нем есть Реквизит "Основной договор"
16 Мимохожий Однако
 
09.09.12
20:11
(14) Как называется табличная часть с договорами?
17 FuriKuri
 
09.09.12
20:16
(16) ДоговораКонтрагентов
18 m-serg74
 
09.09.12
20:32
на (7) что?
19 FuriKuri
 
09.09.12
20:35
(18) нет, ничего он не меняет
20 m-serg74
 
09.09.12
20:43
а откуда тогда договора появляются в ТЧ у контров?
21 m-serg74
 
09.09.12
20:50
внимательно (8) почитай и сделай как Wobland советует
22 m-serg74
 
09.09.12
20:51
подгляди этот момент с типовых
23 FuriKuri
 
09.09.12
20:51
а в этом смысле..
Вообщем Есть справочник - ДоговораКонтрагентов, Так же есть справочник Контрагенты (С табличной частью - ДоговораКонтрагентов, в ней договора берутся из одноименного справочника). Есть Документ "Док1" В нем есть реквизиты "Контрагент" и "ДоговорКонтрагента". Нужно при нажатии на "ДоговорКонтрагента" показывался список с договорами только теми, которые есть в табличной части этого Контрагента.
24 FuriKuri
 
09.09.12
20:52
(22) посмотрел, там в справочнике не берутся табличные части. А у меня есть оная
25 m-serg74
 
09.09.12
20:55
Элемент.СписокВыбора.ЗагрузитьЗначения(Клиент.ДоговораКонтрагентов.ВыгрузитьКолонку("Договор"));

а так?
26 m-serg74
 
09.09.12
20:56
но вообще то это заведомо лажа, см. первую строчку в (8)
27 m-serg74
 
09.09.12
21:03
долго отвечаешь, я спать...
28 FuriKuri
 
09.09.12
21:12
(25) Да работает. Спасибо. Я знаю что все кривое.. Я пока просто изучаю методы и прочие основные вещи.