Как в 1С добавлять на форму списка различные колонки
Обновим 1С с гарантией сохранности базы
Поможем с 1С 24/7, без выходных
Установим сервисы 1С бесплатно
Оперативно решим любые задачи по 1С
Любой документ в 1с имеет определенную форму. Если нам необходимо ее изменить, например добавить для видимости колонку, то сделать это можно следующим способом:
1) Заходим в документ и в правом верхнем углу нажимаем на кнопку «Еще».
2) В появившемся списке выбираем «Изменить форму».
3) В открывшейся окне настройки формы проверяем проставленные «V» — возможно у нужного поля галочка не стоит.
Если ее нет, то проставляем и нажимаем «Ок» (Для примера добавим в «Тип»).
Также можно расположить колонки в нужно порядке. Для этого повторно заходим в «Настройка формы» (п.1, 2) и воспользуемся синими стрелочками. Нужно выделить строчку, которую нужно переместить и нажимаем на нужную стрелочку («Вверх», «Вниз» в зависимости от того куда его нужно переместить колонку на форме- правее или левее).
Для примера переместим «Тип» сразу за колонкой «Номенклатура».
Если в списке нет нужного реквизита, то можно воспользоваться кнопкой «Добавить поля», но это работает не всегда — там где возможно кнопка будет активна.
Для примера выведем на форму «Вид номенклатуры». Для этого открываем «Настройка формы» (п.1, 2), выбираем строчку «Номенклатура» и нажимаем «Добавить поля».
В появившемся списке ставим галочку возле «Вид номенклатуры» и нажимаем «ОК».
В списке «Настройка формы» появится соответствующая строчка. Нажимаем «ОК».
Программное создание колонок в табличном поле с полем ввода Флажок (чекбокс) (1С 8.2)
Допустим, из какой-либо таблицы нам необходимо сделать быстрый ввыбор каких-то данных, для этого обычно используют флажок (чекбокс). Причем данные в этой таблице могут варьироваться, следовательно, нам необходимо создавать данные строки програмно.
1. Табличное поле создается программно следующим образом
2. Оформление ячеек с флажками (чекбоксами) для колонок
3. Описание взаимосвязи выбора ячеек по колонке
Скачать файлы
Специальные предложения
Обновление 13.01.16 21:24
Операционная система Не имеет значения
Код открыт Не указано
См. также
FormCodeGenerator Программная доработка форм. Часть 2 (Режим работы «Режим сравнения форм») на примере ERP 2.5 Промо
Данная публикация является продолжением описания функционирования обработки «FormCodeGenerator » в режиме сравнения форм и генерирования кода на основании сравнения. Подходит для перевода уже доработанных форм с интерактивной доработки на программную. Данный режим работы обработки снизит издержки при дальнейших обновлениях конфигураций.
21.12.2020 9847 27 huxuxuya 11
Интерактивная справка по объектам 1С (подключаемое расширение)
База знаний, подключаемая к объектам основной базы. Пополняется интерактивно, формируется в виде статей прямо в 1С (текст, картинки, таблицы, ссылки). Есть возможность прикрепления файлов, привязки к объектам 1С, возможности рейтинга и комментирования пользователями.
29.09.2020 15554 82 sapervodichka 45
Конвейер проверки качества кода
Jenkinsfile для выполнения проверки качества кода. Собирает информацию с АПК, EDT и BSL-LS. Сопоставляет ошибки с гит-репозиторием, выгруженным ГитКонвертором. Отправляет в Сонар.
04.09.2019 37617 27 Stepa86 46
Вам нравятся запросы в 1С?
Речь не только о том, что простейший запрос с «легальным» оформлением растянется на пол-экрана, речь еще обо всем, что нужно написать «в нагрузку» к тексту запроса. Все эти «Новый Запрос», «УстановитьПараметр» и последующие пляски с обработкой результата. Пора с этим заканчивать!
03.07.2019 28306 7 m-rv 91
[Расширение] Контроль отрицательных остатков по регистру бухгалтерии при проведении Промо
Расширение позволяет без изменений конфигурации проверять остатки по регистру бухгалтерии при проведении каждого документа и запрещает проведение при появлении отрицательных остатков после проведения.
17.08.2015 54692 170 ekaruk 32
Отправка электронной почты с помощью локального почтового клиента из 1С, развернутой под удаленным рабочим столом
Решение для интерактивной (нажал-отредактировал) отправки электронных писем и печатных форм через почтовый клиент (Thunderbird, Outlook) находящийся на локальном компьютере, из конфигурации 1С, развернутой под удаленным рабочим столом (RDP, remote-app). Подходит также для локального развертывания 1С. Представлен пример быстрой интеграции с конфигурациями «Управление торговлей 10.3», «Управление производственным предприятием 1.3», «Комплексная автоматизация 1.1», «Бухгалтерия предприятия 2.0».
21.09.2018 31031 24 stvorl 1
Работа с публикациями «Инфостарт»
Работа с рублевыми публикациями на сайте «Инфостарт»: ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.
13.09.2018 29088 14 RocKeR_13 16
HTTP Сервисы: Путь к своему сервису. Часть 3
Продолжение статьи «HTTP Сервисы: Путь к своему сервису. Часть 2». В предыдущих частях мы использовали только Get, в этой части поговорим о других методах и длительных операциях.
27.08.2018 55309 68 dsdred 17
ВСТАВИТЬ В Справочник.Номенклатура (Код, Наименование) ЗНАЧЕНИЯ («001», «Новый товар») Промо
Вас не обманывают ваши глаза, это запрос на изменение данных! И это работает без прямого доступа к БД, регистрации и смс.
01.06.2018 37220 96 m-rv 58
Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции
09.08.2018 36870 31 informa1555 30
Работа с данными выбора
17.07.2018 68037 25 kalyaka 17
1С 8.3 : Как добавить дополнительную вычисляемую колонку в табличной части управляемой формы
Реализация на платформе 1С: Предприятие 8.1
В начале коротко о том, как добавить дополнительную колонку в табличное поле на платформе 1С 8.1. Предположим, что у нас есть некий документ с табличной частью “Товары” (с колонками “Номенклатура” и “Количество”) и нам нужно вывести дополнительную колонку “Цена”, которая бы содержала данные реквизита “Цена” элементов справочника “Номенклатура”, выбранных в строках табличной части. Для этого нам достаточно добавить в форме документа новую колонку “Цена” в табличное поле, содержащее данные табличной части документа и написать следующий код в обработчике события “ПриПолученииДанных” этого табличного поля:
Хочу обратить внимание на то, что строки табличного поля обрабатываются порциями, по мере прокрутки списка.
Реализация на платформе 1С: Предприятие 8.2
На платформе 8.2 с использованием управляемых форм решение данной задачи потребует бóльших усилий. Это связано с тем, что за счет своей клиент-серверной ориентированности в платформе 8.2 в управляемом режиме отсутствуют некоторые привычные возможности – например, у табличного поля отсутствуют обработчики событий “ПриПолученииДанных” и “ПриВыводеСтроки”, которые мы могли бы использовать для этих целей в 1С 8.1 или 8.2 в обычных формах.
Пусть в нашей конфигурации есть документ “ВводОстатковДолга” с табличной частью “Контрагенты” (с колонками “Контрагент” и “Сумма”). В свою очередь у справочника “Контрагенты” есть реквизит “ИНН”, значение которого необходимо выводить в строках табличного поля.
Откроем управляемую форму документа, добавим новую колонку “ИНН” реквизита “Контрагенты” и перенесём её на закладку “Элементы” (для отображения в форме).
Откроем палитру свойств поля “КонтрагентыКонтрагент” и добавим обработчик события “ПриИзменении”
Табличное поле
Дополнительная вычисляемая или текстовая колонка в табличной части, списке, журнале
Как добавить дополнительную колонку в табличном поле?
Добавляете колонку, а все вычисления реализуются с помощью события ПриВыводеСтроки табличного поля:
Код 1C v 8.х
С помощью этого события можно выводить не только текст, но также флажки и картинки, например:
Картинка:
Код 1C v 8.х
Флажки:
Код 1C v 8.х
Еще можно менять цвет фона и текста, шрифт и другие характеристики оформления:
Код 1C v 8.х
Можно также управлять доступностью отдельных строк и ячеек табличного поля:
Код 1C v 8.х
Обычно колонка должна быть рассчитываемой, или зависимой от данных, поэтому нужно задействовать второй параметр ДанныеСтроки. Этот механизм можно использовать для отображения остатков товаров в форме подбора, текущих цен, долга контрагента, другой информации по строкам.
Но здесь нужно быть осторожным! Событие ПриВыводеСтроки вызывается довольно часто при перерисовке табличного поля. Поэтому процедура должна отрабатывать довольно быстро, чтобы не тормозить вывод списка. Если в ней происходит обращение к базе данных, то вывод может резко замедлиться.
Похожие FAQ
Еще в этой же категории
Программное создание таблицы значений с условным оформлением 12
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Поле выбора
Работаем с таблицей значений программно
ТаблицаЗначений — это программный объект встроенного языка, позволяющий строить произвольные наборы данных в памяти компьютера, отображать их в табличном виде, а также программно и интерактивно манипулировать ими (добавлять, редактировать, удалять и сортировать).
Таблицы состоят из строк и колонок. Строки располагаются вниз по вертикали, а колонки — вправо по горизонтали. Строки и колонки имеют индексы, по которым к ним можно обращаться напрямую (начинаются с 0). Кроме этого, к колонкам можно обращаться по идентификатору.
Пересечения строк и колонок образуют ячейки, в которых содержатся значения. Тип значения определяется типом значения колонки.
Таблица значений является полностью динамическим объектом, т.е. Вы можете манипулировать не только строками таблицы, добавляя и удаляя их, но и колонками.
Создание таблицы значений
Как и большинство объектов встроенного языка, новая таблица значений может быть создана с помощью оператора Новый :
Колонки таблицы значений
Прежде чем начать работу с таблицей значений, необходимо создать структуру колонок. Каждая колонка характеризуется следующими свойствами:
Для того, чтобы определить наличие колонки с нужным именем используется метод Найти():
Перебор колонок выполняется следующим образом:
Для удаления колонки используется метод Удалить():
Свойства колонки таблицы значений
Имя | Тип | Описание |
---|---|---|
Имя | Строка | символьный идентификатор колонки, по которому к ней можно обращаться из кода |
Заголовок | Строка | строковое представление колонки на форме |
ТипЗначения | ОписаниеТипов | свойство органичивает пространство доступных значений, которые можно указать в данной колонке |
Ширина | Число | ширина колонки на форме (выражается в количестве символов) |
Методы коллекции колонок таблицы значений
Вставить() | Вставляет новую колонку в указанную позицию коллекции |
Добавить() | Добавляет новую колонку в конец коллекции |
Количество() | Возвращает количество колонок в коллекции |
Найти() | Ищет колонку в коллекции по имени |
Очистить() | Удаляет все колонки из коллекции |
Сдвинуть() | Сдвигает колонку влево или вправо |
Удалить() | Удаляет колонку из коллекции |
Строки таблицы значений
С колонками разобрались. Давайте теперь разберемся со строками. Строки таблицы значений можно программно добавлять и удалять, перемещать и сортировать, а также выполнять операции поиска и отбора.
Добавление и удаление строк
И только теперь мы можем заполнить строку данными. Для этого обращаемся к ячейкам строки, указывая идентификаторы колонок через точку:
Обратите внимание, что каждая СтрокаТаблицыЗначений ссылается на таблицу значений с помощью метода Владелец():
Перебор строк таблицы значений
Поиск строк
В отличие от платформы 1С:Предприятие 7.7 в 8-ке расширен функционал работы с таблицей значений. Поиск можно выполнять не только по значению в колонке (в этом случае будет возвращена первая найденная строка), но и по набору свойств (в этом случае возвращается массив строк):
Все методы таблицы значений:
Вставить() | Вставляет строку на указанное место |
ВыбратьСтроку() | Позволяет интерактивно выбрать строку в диалоговом окне |
ВыгрузитьКолонку() | Выгружает значения ячеек указанной колонки в массив значений |
Добавить() | Добавлет новую строку в таблицу значений |
ЗагрузитьКолонку() | Загружает значения в ячейки указанной колонки из массива |
ЗаполнитьЗначения() | Заполняет ячейки указанных колонок определенным значением |
Индекс() | Возвращает индекс строки таблицы значений |
Итог() | Возвращает просуммированный итог по колонке таблицы значений |
Количество() | Возвращает количество строк в таблице значений |
Найти() | Выполняет поиск строки по значению |
НайтиСтроки() | Выполняет поиск строк по указанным параметрам |
Очистить() | Очищает строки таблицы значений |
Получить() | Возвращает строку по ее индексу |
Свернуть() | Выполняет сжатие строк и колонок таблицы значений |
Сдвинуть() | Сдвигает строку вверх или вниз по таблице |
Скопировать() | Создает новую таблицу значений копированием текущей |
СкопироватьКолонки() | Создает новую пустую таблицу значений путем копирования колонок текущей таблицы |
Сортировать() | Выполняет сортировку строк таблицы значений по указанным колонкам |
Удалить() | Удаляет строку таблицы значений |
Иерархию свойств и типов значений, связанных с таблицей значений, схематически можно представить в виде дерева: