8.х Получить элемент спраовчника

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем JediAlex, 3 окт 2011.

  1. TopicStarter Overlay
    JediAlex
    Offline

    JediAlex Опытный в 1С

    Регистрация:
    27 авг 2011
    Сообщения:
    140
    Симпатии:
    0
    Баллы:
    26
    Здравствуйте, уважаемые специалисты..Помогите разобраться. Есть форма,в которой присутствуют 2 списка значений. В первом списке выводятся все справочники конфигурации. При выборе иэ этого списка открывается форма списка выбранного справочника и во второй список значений выводятся его реквизиты. На форме также есть 2 поля ввода. Предполагается следующее: в форме списка справочника выбирается элемент ив после списка реквизитов выбирается реквизит, значение которого надо поменять в выбранной записи. Вопрос в следующем: как организовать такой вывод?И соответственно, как изменить значение реквизита, выбранного из списка для выбранной записи?? я пытался получить текущий элемент формы списка справочника вот так:
    Код:
    ТекЭлемент=Форма.ТекущиеДанные;
    
    Получаю ошибку:поле объекта не обнаружено (ТекущиеДанные)
    ТекЭлемент=Форма.ТекущиеДанные;
    . Привожу иллюстрацию работы обработки.

    Вложения:

    • Picture.JPG
      Picture.JPG
      Размер файла:
      228,5 КБ
      Просмотров:
      31
  2. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    не совсем понятно зачем вам это надо? ведь из формы списка справочника можно свободно штатными средствами (скажем так) редактировать элемент? Или у вас какая-то специфическая задача?
  3. vartanet
    Offline

    vartanet Опытный в 1С Команда форума

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    почему вы обращаетесь к форме? надо обращатся к ЭлементыФормы, получить по имени нужный список значений и уже потом через свойства списка значений получить текущую строку.
  4. TopicStarter Overlay
    JediAlex
    Offline

    JediAlex Опытный в 1С

    Регистрация:
    27 авг 2011
    Сообщения:
    140
    Симпатии:
    0
    Баллы:
    26
    Да, здесь задача специфическая... Именно в этом и есть вся суть -начальство требует это все сделать... штатные средства не устраивают. Поэтому получается, что надо эти штатные средства вот так вот сделать самому...
  5. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    тогда может сделать вот так (изврат конечно)

    1. Выбираем справочник и открываем форму списка
    2. Выбираем на форме списка нужный элемент, запоминаем его
    3. Выбираем реквизит и заполняем новое значение на вашей форме
    4. В фоне открываем форму редактирования элемента справочника, изменяем там нужный реквизит и фактически штатными средствами сохраняем его в базе

    попробуйте организовать (сама не пробовала, честно признаюсь, не требовалось такого)
  6. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    Вот тут не понятно: зачем "форма редактирования", если есть ссылка на элемент?
    Код:
    ОбъектСправочника = ЭлементСправочника.ПолучитьОбъект();
    ОбъектСправочника[ИмяРеквизита] = НовоеЗначениеРеквизита;
    ОбъектСправочника.Записать();
    
    
    Остается только придумать где хранить ссылку на выбранный элемент справочника и имя его реквизита.
    Можно:
    1. Реквизиты объекта;
    2. Реквизиты формы;
    3. Экспортные переменные модуля объекта;
    4. Переменные модуля формы.
  7. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    согласна, занесло на повороте малость...

Поделиться этой страницей