8.х Табличное поле. Множественный выбор из разных колонок.

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем ЧКДзержинский, 25 фев 2016.

  1. TopicStarter Overlay
    ЧКДзержинский
    Offline

    ЧКДзержинский Опытный в 1С

    Регистрация:
    7 дек 2006
    Сообщения:
    487
    Симпатии:
    3
    Баллы:
    29
    Всем доброго дня. Нужно организовать выбор из диалогового окна, в котором есть таблица. Выбор будет из разных строк и разных колонок. Если использовать табличное поле и режим множественного выбора, то возможен только множественный выбор в пределах одной колонки. Может есть у кого-нибудь идеи? :confused:
    --- Объединение сообщений, 25 фев 2016 ---
    Обычная форма.
  2. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.549
    Симпатии:
    716
    Баллы:
    204
    Навскидку: Использовать ТабДок, но я не уверен, что можно будет получить выделенные области без разного рода извращений..
  3. TopicStarter Overlay
    ЧКДзержинский
    Offline

    ЧКДзержинский Опытный в 1С

    Регистрация:
    7 дек 2006
    Сообщения:
    487
    Симпатии:
    3
    Баллы:
    29
    Можно без извращения - в обработчике Выбор табличного документа. Так и буду делать. Кстати, в расшифровку ячейки можно записывать разные типы данных, в т.ч. и типа Структура.
  4. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    Кстати, в расшифровку ячейки можно записывать разные типы данных, в т.ч. и типа Структура

    Это уже 100 лет как известно. и Уже все давно используют или массивы или структуры. для того что бы при расшифровки формировать другой отчет.
  5. TopicStarter Overlay
    ЧКДзержинский
    Offline

    ЧКДзержинский Опытный в 1С

    Регистрация:
    7 дек 2006
    Сообщения:
    487
    Симпатии:
    3
    Баллы:
    29
    Рад за вас :). В данном случае это свойство хорошо пригодилось при использовании табличного документа на форме выбора. Т.е. пользователь открывает форму, выбирает необходимые данные и затем в обработке расшифровки считываются данные расшифровок (в моем случае - Структура) и вносятся изменения в документ, из которого открывалась форма выбора. (В случае выбора более одной ячейки и нажатии пользовательской кнопки "Выбрать", считываются данные из свойства ВыделенныеОбласти табличного документа)


    P.S. такой подробный ответ предназначен в первую очередь для тех, кому понадобится реализовать подобное.
    Последнее редактирование: 26 фев 2016
  6. TopicStarter Overlay
    ЧКДзержинский
    Offline

    ЧКДзержинский Опытный в 1С

    Регистрация:
    7 дек 2006
    Сообщения:
    487
    Симпатии:
    3
    Баллы:
    29
    Еще проблема есть. Если выделить несколько ячеек щелчками на каждой из них с удержанием Ctrl, то в массиве ВыделенныеОбласти будут все ячейки. Если же выделить протягиванием мыши, т.е. с удержанием LMB, то в массиве ВыделенныеОбласти будет только первая ячейка области. Та же проблема возникает, если выбрать диапазон с кнопкой Shift.

    Единственный способ решения этой проблемы, который я нашел, это считать свойство ТабДок.ТекущаяОбласть.Имя. Получаем имя вроде "R10C15:R10C17", т.е. в данном случае диапазон из ячеек нескольких колонок. Далее выявляем адрес каждой ячейки диапазона, а затем получаем нужные ячейки через ТабДок.Область("R10C16:R10C16"), ну а получив нужную ячейку, получаем содержимое ее расшифровки.

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