Имя: Пароль:
1C
1C 7.7
v7: Метод ОткрытьПодбор() как задать отбор
,
0 TeoFrast
 
24.08.13
16:02
Метод ОткрытьПодбор() как задать отбор. Т.е. при открытии списка документов программно задать отбор по значению определенного реквизита.
Метод ОткрытьПодбор() вызывается по кнопке из другого документа.
1 Rie
 
24.08.13
16:04
(0) В контексте формы подбора задай отбор.
2 TeoFrast
 
24.08.13
20:08
(1) А можно поподробнее как это сделать?
3 Cthulhu
 
25.08.13
02:09
Перем тКонт;
ОткрытьПодбор("Справочник.<ШоНадо>",,тКонт,<ОдинИлиМногоНадоВыбрать>,<СКакогоНачатьПоказ>);
тКонт.УстановитьОтбор("<ИмяРеквизитаДляОтбора>",<ЗначениеРеквизитаДляОтбора>);
4 TeoFrast
 
25.08.13
09:03
(3) Делаю для документов, выходит ошибка "Неверное имя реквизита" Хотя имена правильные проверял....
5 hhhh
 
25.08.13
09:06
(4) а в реквизите точно стоит флажок Сортировка?
6 Rie
 
25.08.13
09:11
(5) У реквизитов документов такого флажка нет.
7 Rie
 
25.08.13
09:12
(4) Нельзя установить отбор по произвольному реквизиту.
См. общие реквизиты с флажком Отбор и графы отбора.
8 TeoFrast
 
25.08.13
09:45
(7) Добавил новый общий реквизит. Реквизит1, поставил галочку "отбор". Прописываю код:
ОткрытьПодбор("Документ.аРемонтыНаСтороне",,тКонт,1);
тКонт.УстановитьОтбор("Реквизит1",Реквизит1);
Все равно выдает ошибку....Неверное имя реквизита!
9 Rie
 
25.08.13
09:51
(8) "Документ.аРемонтыНаСтороне"
Отбор - только в общем журнале.
10 aka AMIGO
 
25.08.13
10:56
(7) угу, +1. Графы отбора в Журналах, не забыть..
11 TeoFrast
 
25.08.13
11:58
(9) Тогда такой способ мне не подойдет... Я ыб по идее сделал так:
Создать обработку "Выбор документов", на форме обработке расположить таблицу значений. При открытии формы из документа передавать в неё нужные параметры. В модуле формы при открытии получать параметры, делать нужный запрос и заполнять таблицу значений. Затем помечать нужные документы и при закрытии отправлять список выбранных документов обратно в форму документа. А там уже этот список обрабатывать.
Но опыта не хватает, с точки зрения синтаксиса...
Вот проблема не могу понять что не так...
ТЗ_Подбор.Очистить();  
ТЗ_Подбор.НоваяКолонка("Выбрать",,,,,);
ТЗ_Подбор.НоваяКолонка("Документ","Документ.аРемонтыНаСтороне",,,,,,);
    
Док = СоздатьОбъект("Документ.аРемонтыНаСтороне"); Док.ВыбратьДокументы();
Пока Док.ПолучитьДокумент()=1 Цикл
Если Док.tasАвтомобиль = Автомобиль Тогда
ТЗ_Подбор.НоваяСтрока();
ТЗ_Подбор.Выбрать    = 1;
ТЗ_Подбор.Документ      = Док;
КонецЕсли;
КонецЦикла
Передается пустое значение Док...Как можно передать ссылку?
12 Rie
 
25.08.13
12:00
(11) Док.ТекущийДокумент()
И синтаксис тут ни при чём.
13 TeoFrast
 
25.08.13
12:09
(12) Спасибо! Искал бы пол дня...
14 Rie
 
25.08.13
12:13
(13) А документацию почитать - религия не позволяет?