Имя: Пароль:
1C
 
ТаблицаЗначений : Объявление типов колонок
0 VictorXP
 
11.07.09
16:28
Есть таблица значений:


//
ТабПолучениеДополнительнойИнформации = Новый ТаблицаЗначений;
ТабПолучениеДополнительнойИнформации.Колонки.Добавить("МетодОбмена",,"Метод обмена");
ТабПолучениеДополнительнойИнформации.Колонки.Добавить("Синоним", Новый ОписаниеТипов("Строка"),"Синоним");    
ТабПолучениеДополнительнойИнформации.Колонки.Добавить("ОперацииПолучения",,"Операции получения");
ТабПолучениеДополнительнойИнформации.Колонки.Добавить("ВходящееЗначение",,"Входящее значение");
ТабПолучениеДополнительнойИнформации.Колонки.Добавить("ПутьВложения", Новый ОписаниеТипов("Строка"),"Путь вложения");

//


В этой таблице есть строки вида:


//
НовСтрока_ТабПолучениеДополнительнойИнформации=ТабПолучениеДополнительнойИнформации.Добавить();
НовСтрока_ТабПолучениеДополнительнойИнформации.Синоним="Комментарий";

НовСписоЗн = Новый СписокЗначений;

НовСписоЗн.Добавить("Результат =  СокрЛП(Строк(ВхЗнач.Комментарий))");
НовСтрока_ТабПолучениеДополнительнойИнформации.ВходящееЗначение="ДокументOLE77";
НовСтрока_ТабПолучениеДополнительнойИнформации.ОперацииПолучения=НовСписоЗн;
НовСтрока_ТабПолучениеДополнительнойИнформации.МетодОбмена="OLE";
НовСтрока_ТабПолучениеДополнительнойИнформации.ПутьВложения="Реквизиты";
//



И когда значения этой таблицы значений мы перегружаем в табличное поле:



//
ЭлементыФормы.ТабличноеПолеНастройкаТабСпособПолучДопИнф.Значение=ТабПолучениеДополнительнойИнформации;
ЭлементыФормы.ТабличноеПолеНастройкаТабСпособПолучДопИнф.СоздатьКолонки();
//



...значения колонок "Синоним" и "ПутьВложения" - доступны для редактирования, а "ВходящееЗначение" - нет, хотя в значение этого поля забивается строка.

Вопрос: как уйти от объявления типа колонки и при этом сделать её значения доступными для редактирования в табличном поле?

Прим: понятное дело что для обратной выгрузки из таб поля в таблицу нужно писать процедуру... но это не отностся к данному вопросу...
1 ТелепатБот
 
гуру
11.07.09
16:28
2 73
 
11.07.09
16:34
(0)А чего тип колонки нельзя объявить?
3 VictorXP
 
11.07.09
17:05
Можно, но хотелось бы его оставить произвльным
4 Rie
 
11.07.09
17:10
(3) А почему не составным?
5 VictorXP
 
11.07.09
18:24
А как программно задать составной тип?
6 Коллайдер
 
11.07.09
18:55
нравятся мне типовые дятлоЭснки, пишущие имена переменный через весь экран

ТабличноеПолеНастройкаТабСпособПолучДопИнф

НовСтрока_ТабПолучениеДополнительнойИнформации
7 73
 
11.07.09
19:00
(5) СП читать для начала...

Вот пример оттуда:

// составной тип из строки и ссылки на справочник Номенклатуры.
МассивТипов = Новый Массив;
МассивТипов.Добавить(Тип("СправочникСсылка.Номенклатура"));
МассивТипов.Добавить(Тип("Строка"));
ПараметрыСтроки = Новый КвалификаторыСтроки(20);

ДопустимыеТипы = Новый ОписаниеТипов(МассивТипов, , ПараметрыСтроки);
8 VictorXP
 
12.07.09
01:21
Спасибо 73!
Я согласен что СП читать полезно, но ещё при этом совсем было бы неплохо знать где именно начинать...
9 VictorXP
 
12.07.09
01:23
=> Коллайдер
Безусловно точка зрения алениводофф по данному вопросу является определяющей...
10 hhhh
 
12.07.09
02:25
(9) всё-таки здесь в табличном поле надо искать ошибку, а ты нам таблицу значений подсовываешь.
11 antidot
 
12.07.09
10:43
Можне сделать фиктивный запрос, выгрузить его значения в таблицу значений, тогда колонки приобретут неоходимый тип.

И эта...пиши покомпактнее и вопрос выделяй отдельно, а то непонятно чего тебе надо :)
12 antidot
 
12.07.09
10:45
(11)-Кстати тока что понял, что можно запрос заставить возвращять значения составного типа :)
13 antidot
 
12.07.09
10:46
(12)-ну или хотя-бы попытаться это следать через ОБЪЕДИНЕНИЕ