Программная установка свойства "ВыборПоВладельцу". #765472


#0 by Saval1986
1С 8.2. НЕ УФ. Заранее прошу прощения за нубский вопрос. Задача тривиальная: есть табличное поле в диалоговой форме. Заполняется поле программно (т.е. изначально колонок в табличном поле нет). При заполнении табличного поля в определенном режиме в нем появляется 2 колонки: "Контрагент", "Договор". Хочу связать 2 данные колонки по владельцу. Как это правильно сделать? Я это реализовал с помощью события "Выбор" (для табличного поля). Код, прописанный в событии: Но что-то мне подсказывает, что этот способ неверный. Заранее спасибо.
#1 by Cyberhawk
Почему неверный, то что нужно: Расширение поля ввода справочника (Catalog text box extension) ВыборПоВладельцу (ChoiceByOwner) Использование: Чтение и запись. Описание: Тип: СправочникСсылка. Содержит ссылку на элемент-владелец для поля ввода подчиненного справочника. Данное значение будет использовано при выборе элемента.
#2 by Mort
Тыщу лет назад занимался этим вопросом. Не взлетело.
#3 by Saval1986
Скажем так, он - верный, но отчасти. А смысл в том, что при ручном добавлении строки, когда строка ещё не записана, происходит следующий глюк: выбрали контрагента, а при выборе договора событие "Выбор" не срабатывает. Вот такая вот странность. Может быть стоит заполнять это свойство сразу после выбора контрагента...но опять же по мне какое-то неоднозначное решение. Т.е. если бы колонки были отображены на форме - не вопрос: один раз настроил связь, и все поехало. Такое же у меня было ощущение и при программной реализации - написал в одном месте пару строк и все. А здесь получается - добавь в одном событии одно, потом в другом событии ещё вот это пропиши...короче бред. Может мне это кажется странным потому что я с 8-кой общаюсь редко. Допускаю такой вариант =)
#4 by НЕА123
ВыбраннаяСтрока - это кто?
#5 by Saval1986
Намекните пожалуйста не так тонко. Каким образом здесь выручит ВыбраннаяСтрока? Это спасет от того, что событие "Выбор" в описанном случае не срабатывает? Или нужно воспользоваться другим событием?
#6 by hhhh
при выборе контрагента строка уже записана.
#7 by Saval1986
Нет, не записана. Если во время редактирования договора нажать Esc - строка исчезнет. именно в данной ситуации событие "Выбор" не срабатывает.
#8 by НЕА123
я про то, что лучше так
#9 by Saval1986
Возможно, не буду спорить, но описанную проблему это не решает
#10 by hhhh
философский вопрос, если вы очень редко программируете в 8ке, зачем придумывать такую нереальную фигню? Выдумывать какие-то программные заполнения элементов форм. Пользуйтесь теми же приемами, что и все.
#11 by Saval1986
Как все - связывание колонок через диалоговую форму? А редкость программирования разве исключает интерес к реализации?
#12 by Saval1986
смысл моей задачи - отобразить данные пользователю, которые он может отредактировать, а затем создать документы на основании этих данных. Отображение данных и редактирование происходит в табличном поле. В нем то и создаются колонки: "Контрагент", "Договор".
#13 by hhhh
просто тупо сделайте таб поле визуальное, всё там сделайте как надо там с владельцами. И просто тупо включайте и выключайте видимость этот таблицы. Или видимось колонок.
#14 by НЕА123
согласен с хз что за событие Выбор ТП. может надо ВыборЗначения... делайте .
#15 by Saval1986
Всем спасибо, сделаю
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С