|
Программная установка свойства "ВыборПоВладельцу". | ☑ | ||
---|---|---|---|---|
0
Saval1986
16.02.16
✎
17:52
|
1С 8.2. НЕ УФ. Заранее прошу прощения за нубский вопрос. Задача тривиальная: есть табличное поле в диалоговой форме. Заполняется поле программно (т.е. изначально колонок в табличном поле нет). При заполнении табличного поля в определенном режиме в нем появляется 2 колонки: "Контрагент", "Договор". Хочу связать 2 данные колонки по владельцу. Как это правильно сделать? Я это реализовал с помощью события "Выбор" (для табличного поля).
Код, прописанный в событии: Если Колонка.Имя = "Договор" Тогда Колонка.ЭлементУправления.ВыборПоВладельцу = ВыбраннаяСтрока.Контрагент; КонецЕсли; Но что-то мне подсказывает, что этот способ неверный. Заранее спасибо. |
|||
1
Cyberhawk
16.02.16
✎
18:12
|
Почему неверный, то что нужно:
Расширение поля ввода справочника (Catalog text box extension) ВыборПоВладельцу (ChoiceByOwner) Использование: Чтение и запись. Описание: Тип: СправочникСсылка. Содержит ссылку на элемент-владелец для поля ввода подчиненного справочника. Данное значение будет использовано при выборе элемента. |
|||
2
Mort
16.02.16
✎
19:11
|
(0) Тыщу лет назад занимался этим вопросом. Не взлетело.
|
|||
3
Saval1986
17.02.16
✎
08:39
|
(1) Скажем так, он - верный, но отчасти. А смысл в том, что при ручном добавлении строки, когда строка ещё не записана, происходит следующий глюк: выбрали контрагента, а при выборе договора событие "Выбор" не срабатывает. Вот такая вот странность. Может быть стоит заполнять это свойство сразу после выбора контрагента...но опять же по мне какое-то неоднозначное решение.
Т.е. если бы колонки были отображены на форме - не вопрос: один раз настроил связь, и все поехало. Такое же у меня было ощущение и при программной реализации - написал в одном месте пару строк и все. А здесь получается - добавь в одном событии одно, потом в другом событии ещё вот это пропиши...короче бред. Может мне это кажется странным потому что я с 8-кой общаюсь редко. Допускаю такой вариант =) |
|||
4
НЕА123
17.02.16
✎
08:46
|
ВыбраннаяСтрока - это кто?
|
|||
5
Saval1986
17.02.16
✎
09:04
|
(4) Намекните пожалуйста не так тонко. Каким образом здесь выручит ВыбраннаяСтрока? Это спасет от того, что событие "Выбор" в описанном случае не срабатывает? Или нужно воспользоваться другим событием?
|
|||
6
hhhh
17.02.16
✎
09:34
|
(3) при выборе контрагента строка уже записана.
|
|||
7
Saval1986
17.02.16
✎
09:47
|
(6) Нет, не записана. Если во время редактирования договора нажать Esc - строка исчезнет. именно в данной ситуации событие "Выбор" не срабатывает.
|
|||
8
НЕА123
17.02.16
✎
09:58
|
(4)
я про то, что лучше так Колонка.ЭлементУправления.ВыборПоВладельцу = Элемент.ТекушиеДанные.Контрагент; (0) Если Врег(Колонка.Имя) = Врег("Договор") Тогда |
|||
9
Saval1986
17.02.16
✎
10:03
|
Возможно, не буду спорить, но описанную проблему это не решает
|
|||
10
hhhh
17.02.16
✎
10:26
|
(9) философский вопрос, если вы очень редко программируете в 8ке, зачем придумывать такую нереальную фигню? Выдумывать какие-то программные заполнения элементов форм. Пользуйтесь теми же приемами, что и все.
|
|||
11
Saval1986
17.02.16
✎
10:30
|
(10) Как все - связывание колонок через диалоговую форму? А редкость программирования разве исключает интерес к реализации?
|
|||
12
Saval1986
17.02.16
✎
10:33
|
(10) смысл моей задачи - отобразить данные пользователю, которые он может отредактировать, а затем создать документы на основании этих данных. Отображение данных и редактирование происходит в табличном поле. В нем то и создаются колонки: "Контрагент", "Договор".
|
|||
13
hhhh
17.02.16
✎
10:50
|
(11) просто тупо сделайте таб поле визуальное, всё там сделайте как надо там с владельцами. И просто тупо включайте и выключайте видимость этот таблицы. Или видимось колонок.
|
|||
14
НЕА123
17.02.16
✎
11:04
|
||||
15
Saval1986
17.02.16
✎
11:10
|
Всем спасибо, сделаю (13)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |