Имя: Пароль:
1C
1С v8
Как указать тип значения в ТЧ?!
0 mzelensky
 
16.08.12
14:02
Доброго всем!
Есть 2 ТЧ в справочнике. В ТЧ-1 указывается поле (наименование поля), а в ТЧ-2 указываются возможные значения данного поля. Проблема в том, что нужно в ТЧ-1 как-то указать тип данных для возможных значений поля в ТЧ-2. Т.е. я пишу в тч-1:

Строка №1 Колонка1= "Покупатель" Колонка2 = "СправочникСсылка.Контрагенты"

и в ТЧ-2 должны выбираться значения ТОЛЬКО из справочника "Контрагенты".

Далее в Тч-1 добавляю строку с данными
Строка №2 Колонка1= "Банк" Колонка2 = "СправочникСсылка.Банки"

и в ТЧ-2 должны выбираться значения ТОЛЬКО из справочника "Банки".


Для колонки ТЗ можно выбрать тип "ТИП ДАННЫХ", а для ТЧ нельзя...как быть?
1 kolanych
 
16.08.12
14:06
Вот почему когда я пуск делаю и по ярлыку две то запускается, а если вот мне к примеру надо не из пуска её то ничего и в красном показывает, а надо ведь чтобы квадратик жёлтенький открывал и там 3 кнопки должно быть?
2 Reset
 
16.08.12
14:07
(1) Зачет
3 mzelensky
 
16.08.12
14:08
(1)(2) хорошо, еще раз объясняю!
4 badboychik
 
16.08.12
14:09
я такое делал когда консоль СКД допиливал
5 le_
 
16.08.12
14:09
(0) В обработке выбора или перед началом выбора анализируй, что у тебя в этой строке ТЧ1 выбрано и открывай соответствующую форму выбора...
6 mzelensky
 
16.08.12
14:10
Есть 2 табличные части ТЧ-1 и ТЧ-2. Они связаны между собой через "отбор" (т.е. встаешь на строку в ТЧ-1 и по этим данным фильтруется ТЧ-2). В ТЧ-1 указывается Наименование поля, а в ТЧ-2 указываются возможные значения.

Мне нужно как-то хранить ТИП ДАННЫХ в колонке ТЧ-1.
7 lEvGl
 
гуру
16.08.12
14:10
лучше чем скриншот показывает не объяснишь, чем gif тем более )
8 Reset
 
16.08.12
14:10
(3) В ТЧ2 обрабатывай событие начало выбора и подсовывай соответвенно форму выбора
9 mzelensky
 
16.08.12
14:11
(8) вопрос не в этом, подсунуть нужную форму я могу.

Мне нужно ХРАНИТЬ ТИП ДАННЫХ!
10 badboychik
 
16.08.12
14:12
(9) и в чем проблема? Не заметил что ли в окне выбора типа такой тип данных как "Тип данных"? )))
11 le_
 
16.08.12
14:13
(9) Зачем?..
12 badboychik
 
16.08.12
14:13
(10) а если точнее то "ОписаниеТипов"
13 Рэйв
 
16.08.12
14:13
(9)Составной тип сделать никак?
14 mzelensky
 
16.08.12
14:14
(10) для ТЧ не заметил. Для ТЗ можно, а для ТЧ как?
15 mzelensky
 
16.08.12
14:14
(11) НУЖНО!!!

В последующем будет формироваться загрузка данных и мне нужно знать какого типа эти данные (приходят они как строка).
16 badboychik
 
16.08.12
14:14
ищи да обрящешь, а я домой
17 le_
 
16.08.12
14:15
(15) Ну, храни тип данных строкой.
18 Reset
 
16.08.12
14:16
Оказывается, ТС не знал, что у реквизитов ТЧ можно задавать тип и уже наваял УПП 3, где все реквизиты с типом Строка10
19 Рэйв
 
16.08.12
14:16
(15)У меня стойкое ощущение, что ты делаешь какую-то херню.
20 mzelensky
 
16.08.12
14:17
(19) у меня стойкое ощущение ,что народ кроме как постебаться ничего не может.
21 olegves
 
16.08.12
14:19
(15) в загрузке данных из строки типа и формируй Описание типа для загружаемого значения
22 mzelensky
 
16.08.12
14:20
Еще раз....мне нужно чтобы в ТАБЛИЧНОЙ ЧАСТИ пользователь мог выбрать ТИП ДАННЫХ!!! НЕ ТАК что выбираешь тип данных ,а затем ему открывался соответствующий справочник (если тип данных справочник), а просто ТИП данных и ВСЕ!!!

Так как это делается в плане видов характеристик. Есть характеристика, у нее есть предопределенный реквизит "ТИП ДАННЫХ", где можно указать ТОЛЬКО "ТИП ДАННЫХ", который и будут принимать значения данной характеристики. НУ ЧТО НЕ ПОНЯТНОГО???
23 Reset
 
16.08.12
14:20
(21) Помогаешь автору заново изобрести XML? :)
24 Рэйв
 
16.08.12
14:20
(15)>>В последующем будет формироваться загрузка данных и мне нужно знать какого типа эти данные (приходят они как строка).

что мешает включить в загрузку их тип?

ТипЗнч(ЧтоТо)  еще вроде никто не отменял
25 Reset
 
16.08.12
14:21
Ладно, я осознал, что только троллю тут, умолкаю)
26 mzelensky
 
16.08.12
14:22
(24) я говорю ,что НЕЛЬЗЯ?! ну что вы начинаете какие-то брудовые предложеняи делать, а можно то, а можно ЭТО...НЕЛЬЗЯ! я конкретно и четко спросил то, что мне нужно. Описал в (0) + (6) + (22)
27 olegves
 
16.08.12
14:22
(0) а для связи ТЧ1 и ТЧ2 кури СвязиПараметровВыбора
28 mzelensky
 
16.08.12
14:23
(27) я это и так делаю! вы не то пытаетесь объяснить!!!
29 mzelensky
 
16.08.12
14:24
(27) ОЧЕНЬ ВНИМАТЕЛЬНО ПРОСТИ (22)!
30 Рэйв
 
16.08.12
14:24
(28)Ты что такой нервный?  Тебе пора уже электричеством лечиться:-)

Не быть тебе программистом. Через месяц общения с юзерами попадешь в психушку.
31 mzelensky
 
16.08.12
14:25
(30) неделя сложная выдалась
32 mzelensky
 
16.08.12
14:25
(30) уж как 3 года работаю.
33 Eugene_life
 
16.08.12
14:26
(32) Сделай справочник "Типы значений реквизитов", добавь в ТЗ. Комфортно и сухо :)
34 mzelensky
 
16.08.12
14:26
(30) а нервничаю т.к. вы вроде как не "юзеры", а проги ... следовательно должны все понимать
35 olegves
 
16.08.12
14:26
(22) заведи справочник с типами - предопределенными значениями (строка) и их выбирай, кто тебе не дает?
36 mzelensky
 
16.08.12
14:27
(33) мне нужны ВСЕ ВОЗМОЖНЫЕ ТИП...количество справочников постоянно растет...и следовательно мне нужно будет постоянно добавлять новые элементы. Как-то не хочется.
37 Aprobator
 
16.08.12
14:28
ТЧ2 должна иметь какую то связь с ТЧ1. К примеру, по номеру строки.
Далее - ключевое: пользователь делает выбор не в ТЧ, а в интерфейсе, конкретно в табличном поле. Соответственно при начале выбора в ТЧ 2 по связи с ТЧ определяем нужный тип разрешенный для конткретной строки и рулим через ОграничениеТипа у ЭлементаУправления.
38 olegves
 
16.08.12
14:28
(36) добавляй обработкой при начале работы 1С по метаданным, если лень руками
39 Eugene_life
 
16.08.12
14:29
(36) тогда в ТЗ добавь поле "образец данных для определения типа значений". Туда добавляй пустое значение нужного типа. В любой момент ТипЗнч тебе вернет что нужно.
40 olegves
 
16.08.12
14:30
+ (38) или при открытии формы вот этой
41 mzelensky
 
16.08.12
14:34
(37) это все круто. И я все это сделаю, но повторяю - ПО МИМА ВСЕГО ЭТОГО, МНЕ НУЖЕН РЕКВИЗИТ В ТЧ-1, КУДА Я ЗАПИШУ ТИП ДАННЫХ ДЛЯ НУЖНЫХ СТРОК В ТЧ-2.
42 aka AMIGO
 
16.08.12
14:36
(41)запиши этот тип в строковый реквизит.
для получения - сконкатенируешь
43 Eugene_life
 
16.08.12
14:37
(42) Это уже было :) Пошло на 2й круг :)
44 Aprobator
 
16.08.12
14:38
(41) да ради бога. Реквизит тип хранилище значений и катай туда описание типа. Это так - очень грубо.
45 aka AMIGO
 
16.08.12
14:38
а нет-ли возможности указать реквизит типа "Справочник" ?
именно неконкретный, чтоб при вызове предлагался выбор
46 aka AMIGO
 
16.08.12
14:38
(43)аааа.. ну ладно :)
47 Aprobator
 
16.08.12
14:40
(45) да было вроде что то типа СправочникСсылка. Но у ТС видно что то свое.
48 mzelensky
 
16.08.12
14:45
(47) не то это все
49 Aprobator
 
16.08.12
14:46
(44) чем не катит?
50 mzelensky
 
16.08.12
14:47
В идеале мне нужно чтобы было как в ТЗ. Там колонке можно задать тип данных "ТИП ДАННЫХ". В этом случае можно указать нужный тип данных И ВСЕ. Это 100% для меня подходит, НО этой фишки НЕТ для ТЧ.
51 Aprobator
 
16.08.12
14:47
а так те формочку не сделать для выбора типа. А мы то тут демагогию развели. Песец.
52 aka AMIGO
 
16.08.12
14:48
(50)значит, для элемента метаданных задается только конкретный тип.. а элемент тз - свободен.
53 mzelensky
 
16.08.12
14:49
(52) я в курсе. и ?
54 mzelensky
 
16.08.12
14:51
(51) наоборот. Мне нужно чтобы ПОЯВИЛАСЬ формочка с выбором типа, где пользователь указывает нужный, и ВСЕ! Далее выбранный тип (типы) записываются в данные определенной ячейки ТЧ.
55 aka AMIGO
 
16.08.12
14:51
(53)желание твое напрямую невыполнимо
ищи обходные пути :)
56 mzelensky
 
16.08.12
14:53
ща попробую немного через Ж**У, может прокатит...
57 Aprobator
 
16.08.12
14:53
(54) млин ну нарисуй колонку в таблице (именно в интерфейсе) с типом неопределено, и кнопка выбора типа нарисуется. Останется только события отработать.
58 mzelensky
 
16.08.12
14:54
(55) почему-то многие мои желания на прямую 1С не выполнимы.... :( Может уменя желания странные?
59 mzelensky
 
16.08.12
14:54
(57) а сохранять их как?
60 mzelensky
 
16.08.12
14:55
(59) + я так уже пробовал. Но мне же эту инфу хранить где-то нужно.

вариант конечно еще одну невидимую ТЧ делать..
61 Aprobator
 
16.08.12
14:55
(59) уже говорил в (44) реквизит ТЧ тип ХранилищеЗначения и в него пишешь описание типа.
62 mzelensky
 
16.08.12
14:58
(61) ммм...а получать его как?!туда-сюда?!
63 Aprobator
 
16.08.12
15:00
(62) если его получать только при работе с интерфейсом надо, то какая нафиг разница то?
64 Aprobator
 
16.08.12
15:01
обед офф. Ушел работать.
65 mzelensky
 
16.08.12
15:04
(63) не только
66 mzelensky
 
16.08.12
15:14
А можно как-то программно управлять доступностью "кнопки выбора" элемента управления ячейки ТЧ?!

Т.е. скажем есть ячейка ТЧ, пользователь нажимает кнопку выбора типа данных, указывает нужный и после этого в ЭТОЙ ЯЧЕЙКЕ кнопку выбора нужно убрать. Оставить только кнопку очистки
67 Рэйв
 
16.08.12
15:24
(66)Убирай.  

ПолеВвода.КнопкаВыбора (TextBox.ChoiceButton)
ПолеВвода (TextBox)
КнопкаВыбора (ChoiceButton)
Использование:

Чтение и запись.
Описание:

Тип: Булево.
Содержит признак наличия/отсутствия кнопки выбора значения в поле.
Истина - кнопка есть.

Доступность:

Толстый клиент.
68 mzelensky
 
16.08.12
15:25
(67) я не могу понять как до нее добраться.
Для простого поля ввода я так делал. А как для конкретной ячейки ТЧ?
69 mzelensky
 
16.08.12
15:26
(68) нашел только как убрать у всей колонки...но мне нужно для конкретной ячейки!
70 mzelensky
 
16.08.12
15:34
ну так???
71 Мимохожий Однако
 
16.08.12
15:35
Поищи в типовых конфигурациях или на ИТС подобное.
72 mzelensky
 
16.08.12
15:39
(71) угу, хороший совет...Аналогично было бы посоветовать поискать рыбешку в океане.
73 Мимохожий Однако
 
16.08.12
15:40
Совет №2. Нажми букву Я в заголовке ветки. Сходу видно минимум 3 варианта решения.
74 mzelensky
 
16.08.12
15:47
(73) ни один вариант не подходит:

Хранилище не подходит
Сохранять в строку не подходит
75 Мимохожий Однако
 
16.08.12
15:49
Не повезло тебе )). ИМХО, поменяй концепцию.
76 acsent
 
16.08.12
15:50
Храни пустую ссылку
77 Лоботряс
 
16.08.12
15:55
Можно попробовать что-то вроде параметра компоновки данных...
78 mzelensky
 
16.08.12
15:55
(76) так и приходится. Но мне не нравится, что выбрав ТИП данных платформа предлагает выбрать определенное значение этого типа! Попытался убрать двумя процедурами:

Процедура ВыгружаемыеДанныеПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
   // Вставить содержимое обработчика.    
   Если ДанныеСтроки.Тип<>неопределено тогда
       ОформлениеСтроки.ячейки.Тип.УстановитьТекст(  Строка( ТипЗнч(ДанныеСтроки.Тип) )  );
   КонецЕсли;
КонецПроцедуры

Процедура ВыгружаемыеДанныеТипНачалоВыбора(Элемент, СтандартнаяОбработка)    
   // Вставить содержимое обработчика.    
   ТД = Элементыформы.ВыгружаемыеДанные.ТекущиеДанные;
   Если ТД<>неопределено И ТД.Тип<>неопределено тогда
       СтандартнаяОбработка=ложь;    
   КонецЕсли;    
КонецПроцедуры


К сожалению, программно убрать кнопку выбора в определенной ячейке не удается.
79 mzelensky
 
16.08.12
15:56
(78) пока ничего лучше придумать не удалось
80 mzelensky
 
16.08.12
15:57
(77) а что мне даст в данном случае "компоновка данных"?
81 Фокусник
 
16.08.12
16:07
(78) "К сожалению, программно убрать кнопку выбора в определенной ячейке не удается"

Если реквизиту присвоить "пустую ссылку нужного типа", то не будет предлагать выбрать тип.
82 Лоботряс
 
16.08.12
16:20
(80) это просто идея, помню где-то видел подобное хранение типов реализованное с помощью СКД. Но это ладно
Вот например в ЗУП есть нечто похожее на то что ты хочешь. Обработка называется "Загрузка данных из табличного документа".
83 hhhh
 
16.08.12
16:28
(79) ну это всё один в один субконто в бухгалтерии. Виды субконто и сами субконто. Что вы велосипед изобретаете, даже уже не смешно.
84 Лоботряс
 
16.08.12
16:30
(83) просто лень думать за ТС
85 mzelensky
 
16.08.12
16:47
(81) да, но будет предлагаться выбрать одно из значений заданного типа! По все той же кнопке.
86 Aprobator
 
16.08.12
21:12
(78) млин, да сделай ты свой список выбора типа. Тот же самый СписокЗначений. Заполнение сделать при открытии формы элементарно. Если тип не составной - писать можно тупо строкой. Во блин проблема - типовой выбор типа не заюзать, так свой не создать.