Имя: Пароль:
1C
1С v8
как при выбранном элементе устанавливать отбор
0 LivingStar
 
15.05.14
13:57
в документе поле типа другого документа
при открытии, по ссылке передаю документы для отбора
а как если уже выбран документ, при открытии что бы
открывался список с отбором и на выбранном документе устанавливался курсор?
1 nufnufcheg
 
15.05.14
14:00
посмотри как сделан выбор договора в типовых конфигурациях
2 LivingStar
 
15.05.14
14:15
(1) выбор договора в каком документе?
3 Ymryn
 
15.05.14
14:16
(2) если хочешь конкретики, то возьми Реализацию.
4 LivingStar
 
15.05.14
14:18
(3) сморю её
5 Ymryn
 
15.05.14
14:20
(4) видишь на форме у реквизита договор - поле в свойствах "Связь по владельцу"?
6 Ymryn
 
15.05.14
14:21
блин, извини, посмотрел на пункт раз, а не вчитался в твое изначальное сообщение.
7 LivingStar
 
15.05.14
14:22
(5) ну да он к контрагенту привязан же

а моу документ то сам по себе
8 Ymryn
 
15.05.14
14:26
Если значение выбрано, то открываться форма выбора с позиционированием на значении будет автоматом. Это встроенный функционал.
На тему установки же отборов таже реализация и договор, но процедурка ДоговорКонтрагентаНачалоВыбора.
9 vicof
 
15.05.14
14:26
(7) Может, все-таки в грузчики?
10 LivingStar
 
15.05.14
14:31
(8) позиционирование есть, только вокруг прочие документы
11 Ymryn
 
15.05.14
14:33
(10) Угу, я тебя понял. Посмотри названную мной процедуру, там  если из неё перейти в общий модуль, увидишь как отборы можно ставить.
12 LivingStar
 
15.05.14
14:39
(11) раббираю, спасибо!
13 LivingStar
 
15.05.14
14:55
(11) при установке отбора автоматического позиционирования не будет же уже?
14 Ymryn
 
15.05.14
14:56
(13) должен быть. Если ты правда отбором не исключишь элемент на котором позиционироваться. :)
15 nufnufcheg
 
15.05.14
14:56
(13) попробуй
16 LivingStar
 
16.05.14
11:56
// отбор по организации
        ФормаВыбора.ДокументСписок.Отбор.Организация.ВидСравнения                                = ВидСравнения.Равно;
        ФормаВыбора.ДокументСписок.Отбор.Организация.Значение                                    = СтруктураПараметров.Организация;
        ФормаВыбора.ДокументСписок.Отбор.Организация.Использование                               = Истина;
        ФормаВыбора.ЭлементыФормы.ДокументСписок.НастройкаОтбора.Организация.Доступность         = Ложь;
        // отбор по контрагенты
        ФормаВыбора.ДокументСписок.Отбор.Контрагент.ВидСравнения                                = ВидСравнения.Равно;
        ФормаВыбора.ДокументСписок.Отбор.Контрагент.Значение                                    = СтруктураПараметров.Контрагент;
        ФормаВыбора.ДокументСписок.Отбор.Контрагент.Использование                               = Истина;
        ФормаВыбора.ЭлементыФормы.ДокументСписок.НастройкаОтбора.Контрагент.Доступность         = Ложь;
        // отбор по договору контрагнета
        ФормаВыбора.ДокументСписок.Отбор.ДоговорКонтрагента.ВидСравнения                        = ВидСравнения.Равно;
        ФормаВыбора.ДокументСписок.Отбор.ДоговорКонтрагента.Значение                            = СтруктураПараметров.ДоговорКонтрагента;
        ФормаВыбора.ДокументСписок.Отбор.ДоговорКонтрагента.Использование                       = Истина;
        ФормаВыбора.ЭлементыФормы.ДокументСписок.НастройкаОтбора.ДоговорКонтрагента.Доступность = Ложь;
        //
        // <-
        ФормаВыбора.Открыть();
    Иначе
        ФормаВыбора = Документы.СчетНаОплатуПокупателю.ПолучитьФормуВыбора(, Элемент);
        // отбор по организации
        ФормаВыбора.ДокументСписок.Отбор.Организация.ВидСравнения                                = ВидСравнения.Равно;
        ФормаВыбора.ДокументСписок.Отбор.Организация.Значение                                    = СтруктураПараметров.Организация;
        ФормаВыбора.ДокументСписок.Отбор.Организация.Использование                               = Истина;
        ФормаВыбора.ЭлементыФормы.ДокументСписок.НастройкаОтбора.Организация.Доступность         = Ложь;
        // отбор по контрагенты
        ФормаВыбора.ДокументСписок.Отбор.Контрагент.ВидСравнения                                = ВидСравнения.Равно;
        ФормаВыбора.ДокументСписок.Отбор.Контрагент.Значение                                    = СтруктураПараметров.Контрагент;
        ФормаВыбора.ДокументСписок.Отбор.Контрагент.Использование                               = Истина;
        ФормаВыбора.ЭлементыФормы.ДокументСписок.НастройкаОтбора.Контрагент.Доступность         = Ложь;
        // отбор по договору контрагнета
        Если Элемент.Значение.ДоговорКонтрагента <> СтруктураПараметров.ДоговорКонтрагента Тогда
            Сообщить("ВНИМАНИЕ! Выбранный договор в выбранном документе «счет на оплату покупателю» отличается от выбранного договора в документе «псотупление на расчетный счет» !", СтатусСообщения.Внимание);
            Сообщить("По этому позиционируемый документ отсутствует в списке выбора!", СтатусСообщения.Важное);
        КонецЕсли;
        ФормаВыбора.ДокументСписок.Отбор.ДоговорКонтрагента.ВидСравнения                        = ВидСравнения.Равно;
        ФормаВыбора.ДокументСписок.Отбор.ДоговорКонтрагента.Значение                            = СтруктураПараметров.ДоговорКонтрагента;
        ФормаВыбора.ДокументСписок.Отбор.ДоговорКонтрагента.Использование                       = Истина;
        ФормаВыбора.ЭлементыФормы.ДокументСписок.НастройкаОтбора.ДоговорКонтрагента.Доступность = Ложь;
        //
        ФормаВыбора.ЭлементыФормы.ДокументСписок.ТекущаяСтрока = Элемент.Значение;
        //
        ФормаВыбора.Открыть();
    КонецЕсли;
КонецПроцедуры
Независимо от того, куда вы едете — это в гору и против ветра!