Имя: Пароль:
1C
1С v8
Выбор из разных справочников при установке галочки
0 Aleks291086
 
07.02.13
11:06
Добрый день!
Ситуация следующая. В форме документа поле ввода "Транспортное средство", Тип реквизита Справочник.Ссылка.ТранспортныеСредства.
Помимо справочника ТранспортныеСредства есть справочник ПривлеченныеТранспортныеСредства.
Как сделать, чтобы при установке галочки "Привлеченка" (Булево, Истина/Ложь) в форме документа, выбор был из справочника ПривлеченныеТранспортныеСредства, а при отсутствии галочки выбор был из справочника ТранспортныеСредства???
1 Wobland
 
07.02.13
11:07
Если Галка Тогда
Текст="один";
Иначе
Текст="другой";
2 mikecool
 
07.02.13
11:08
(1) можно и одним запросом обойтись
3 Wobland
 
07.02.13
11:08
а, тут не запрос? реквизит составного типа с присвоением пустого значения нужного типа по галке нужен
4 ZanderZ
 
07.02.13
11:08
"В форме документа поле ввода "Транспортное средство", Тип реквизита Справочник.Ссылка.ТранспортныеСредства" - поменять на составной тип и указать еще "ПривлеченныеТранспортныеСредства" ну и потом уже установкой свойств
5 Wobland
 
07.02.13
11:09
(2) можно. но уже без конструктора ;)
6 Aleks291086
 
07.02.13
11:09
Я новичек в программировании... Можно в примере?
7 Wobland
 
07.02.13
11:09
(6) разрешаю пока помолчать и подумать
8 mikecool
 
07.02.13
11:10
(5) можно и конструктором )
9 mikecool
 
07.02.13
11:11
левое соединение по &Параметр = 1
...
левое соединение по &Параметр = 2
и т.п.
10 Reset
 
07.02.13
11:14
(9) Зачем запрос? Я понял что решается через (3)
11 Wobland
 
07.02.13
11:17
(10) решается вообще без галки - составным типом реквизита
12 Aleks291086
 
07.02.13
11:34
Составной тип реквизита есть. Дает выбрать конкретный справочник из которого будет выполняться ввод данных.
Теперь надо не выбирать из справочников, а чтоб автоматически при проставлении галочки выбирал справочник ПривлеченныеТС.
Так понимаю свойства поля галочки, при изменении: и тут прописать код. Во тут затруднение...
13 Wobland
 
07.02.13
11:35
(12) облегчение в (3)
14 Aleks291086
 
07.02.13
11:50
Процедура ПривлеченкаПриИзменении(Элемент)
Если Объект.Привлеченка=Истина  тогда
       Объект.ОсновноеТС.
Как дальше выбрать определенный справочник?
15 Wobland
 
07.02.13
11:56
(14) ...с присвоением пустого значения нужного типа
16 Wobland
 
07.02.13
11:57
и сравнение с булевским литералом - моветон
17 Godofsin
 
07.02.13
11:57
(16) фигня =)
18 Aleks291086
 
07.02.13
12:10
Я спрашивал что ставить после Объект.ОсновноеТС.

Объект.ОсновноеТС.СправочникСсылка.ПривлеченныеТС() не работает
19 banco
 
07.02.13
12:10
Объект.ОсновноеТС = ОписаниеТипаПривлеченка.ПривестиЗначение(Объект.ОсновноеТС);
20 Aleks291086
 
07.02.13
13:08
Сделал так. Но пишет ошибку Переменная не определена Описаниетипов("Справончикссылка.ПривлеченныеТС")

Процедура ПривлеченкаПриИзменении(Элемент)
   
//    Если Объект.Привлеченка=Истина  тогда
    ДопустимыеТипы= Новый Описаниетипов("Справончикссылка.ПривлеченныеТС");
иначе
ДопустимыеТипы = Новый Описаниетипов("Справончикссылка.ТранспортныеСредства");
КонецЕсли;    
Объект.ОсновноеТС = ДопустимыеТипы.ПривестиЗначение(Объект.ОсновноеТС);
КонецПроцедуры
21 Aleks291086
 
07.02.13
13:09
Сделал так. Но пишет ошибку Переменная не определена Описаниетипов("Справончикссылка.ПривлеченныеТС")

Процедура ПривлеченкаПриИзменении(Элемент)
   
   Если Объект.Привлеченка=Истина  тогда

    ДопустимыеТипы= Новый Описаниетипов("Справончикссылка.ПривлеченныеТС");
иначе
ДопустимыеТипы = Новый Описаниетипов("Справончикссылка.ТранспортныеСредства");
КонецЕсли;    
Объект.ОсновноеТС = ДопустимыеТипы.ПривестиЗначение(Объект.ОсновноеТС);
КонецПроцедуры
22 Wobland
 
07.02.13
13:09
(20) что же делать? попробуй спранвочик тогда
23 Aleks291086
 
07.02.13
13:10
(20) что же делать? попробуй спранвочик тогда

Какой спранвочик??
24 Wobland
 
07.02.13
13:11
(23) справончик -> спранвочик

хотя, переменную ты так не увидишь всё равно
25 Aleks291086
 
07.02.13
13:12
А в чем же ошибка то?
Вроде все так
26 Aleks291086
 
07.02.13
13:13
А в чем же ошибка?
Вроде все так...
27 Wobland
 
07.02.13
13:14
(21) у меня Синтаксических ошибок не обнаружено!
но справончик мне не нравится
28 DexterMorgan
 
07.02.13
13:16
"Справончикссылка" =)
29 DexterMorgan
 
07.02.13
13:17
Думаю следующая ошибка будет : Переменная не определена Описаниетипов("Справончикссылка.ТранспортныеСредства")
30 Wobland
 
07.02.13
13:19
(29) да врёт он про переменную
31 Aleks291086
 
07.02.13
15:21
Работает, только при выборе ТС курсор автоматически ставиться на список Выбор типа данных соответственно Транспортные средста или ПривлеченныеТС. Выбирать приходиться справочник и оттуда выбирать.

А вот чтобы не появлялся список "выбор типа данных", как сделать? Чтоб автоматом появлялся тот справочник, который нужен
32 Шапокляк
 
07.02.13
15:23
(31) Да что ж у вас все так туго? Сказали же - при установке флажка записывай в реквизит пустое значение нужного справочника и обновляй форму.
33 Aleks291086
 
07.02.13
16:09
(31) Да что ж у вас все так туго?
Да потому что пришлось заняться 1С, программиста нету у нас в компании.

Сказали же - при установке флажка записывай в реквизит пустое значение нужного справочника и обновляй форму.

Процедура ПривлеченкаПриИзменении(Элемент)
   
   Если Объект.Привлеченка=Истина  тогда

    ДопустимыеТипы= Новый Описаниетипов("Справончикссылка.ПривлеченныеТС");
иначе
ДопустимыеТипы = Новый Описаниетипов("Справончикссылка.ТранспортныеСредства");
КонецЕсли;    
Объект.ОсновноеТС = ДопустимыеТипы.ПривестиЗначение(Объект.ОсновноеТС);

Объект.ОсновноеТС="";

КонецПроцедуры


Так? Добавил Объект.ОсновноеТС="";
34 Aleks291086
 
07.02.13
16:09
(33) Так? Добавил Объект.ОсновноеТС="";
35 Aleks291086
 
07.02.13
16:11
Извините заранее за глупые вопросы...
36 Aleks291086
 
07.02.13
16:12
А то мы данные не можем внести в базу
37 Aleks291086
 
07.02.13
17:52
объект.ОсновноеТС = справочники.ПривлеченныеТС.ПустаяСсылка();

Ошибка, переменная не определена
38 Wobland
 
08.02.13
09:03
(37) нету Справочников на клиенте, да?