Как в 1с добавить столбец в таблицу
Перейти к содержимому

Как в 1с добавить столбец в таблицу

  • автор:

Добавить колонку с дополнительным реквизитом в список номенклатуры

Допустим, вы завели новый дополнительный реквизит номенклатуры, заполнили его и теперь вам нужно добавить этот реквизит в список. Как это сделать не прибегая к программированию и изменению конфигурации? Рассмотрим в данной статье.

Добавление колонки с дополнительным реквизитом в форму списка справочника в 1С 8.3

Рассмотрим механизм добавления колонки с дополнительным реквизитом на примере конфигурации УТ 11 (подойдет также и для Бухгалтерия 3.0, Розница 2.2, 2.3 и др. конфигураций на управляемых формах).

У нас есть дополнительный реквизит под названием «Категория цветов».

Дополнительный реквизит

Дополнительный реквизит номенклатуры

Нам требуется вывести его в список номенклатуры следующим образом:

Колонка

Колонка с дополнительным реквизитом

Для этого в форме списка номенклатуры нажимаем кнопку «Еще»/ «Изменить форму».

изменить форму

Кнопка изменить форму

Попадаем в настройки формы, тут нам нужно найти таблицу и в ней поле «Ссылка», выделяем его и нажимаем кнопку «Добавить поля». Обратите внимание, что кнопка «Добавить поля» будет неактивна, пока выделены поля не ссылочного типа.

добавить поля

Кнопка добавить поля

После чего откроется окно в котором вы можете выбрать любые реквизиты номенклатуры, в том числе и дополнительные. Выбираем нужный реквизит и нажимаем «Ок».

Выбор

Выбранный реквизит появится в настройках формы. Отмечаем его галочкой и нажимаем «Применить».

Колонка

Вот мы и добавили новую колонку с нашим дополнительным реквизитом в форму списка номенклатуры.

Колонка

Колонка с дополнительным реквизитом

Надеюсь, статья была вам полезна.

А если вы хотите научиться самостоятельно справляться с задачами, с которыми обычно вы обращаетесь к Программистам 1С — приглашаю Вас на мой курс Сам себе Программист 1С

Похожие записи:
    Как добавить дополнительный реквизит в 1С 8.3?В 1С 8.3 появился такой механизм как дополнительные реквизиты. Он.Настройка отчетов в 1С 8.3Если встроенные отчеты вас не устраивают не спешите обращаться за.Отчет «Номенклатура со штрихкодами» для 1С УТ, Розница и БП 8.3 и 8.2В типовых конфигурациях 1С в списке номенклатуры вы не сможете.Как заполнить значения дополнительных реквизитов во всей номенклатуре?Если у вас много номенклатуры, заполнить значения дополнительного реквизита во.
От Программист 1С

Просмотреть все записи от Программист 1С по этой ссылке.

Добавить столбец в таблицу значений

В результат запроса получаю таблицу. Запрос написан не мной и обработку тоже, поэтому влезать в его код не хочу.
Но мне нужно в таблице значений результат добавить еще один столбец, который будет ссылаться на определенный справочник.

Т.е. просто добавить столбец я могу, но ничего не нашел, как добавить столбец со ссылкой. Эту ссылку в таблице я буду заполнять в последующем из справочника.

По теме из базы знаний

  • Заполнение таблицы «Товары» в документе «Поступление товаров и услуг» по табличным данным из Excel, MXL, DBF, TXT
  • Миллионы строк в таблицах 1С? Быстрая реструктуризация — не проблема!
  • OneScript на страже порядка на сервере тестовых баз данных
  • Алгоритм симплекс-метода для решения задачи раскроя
  • Метод Дугласа-Пойкера для эффективного хранения метрик

Найденные решения

2. Octopus 337 22.03.19 08:56 Сейчас в теме

Вот так не работает?

МояТаблица.Колонки.Добавить("ВотТутБудетСсылочныйТип", Новый ОписаинеТипов("СправочникСсылка.Номенклатура");

Как добавить колонку с типом в таблицу значениий 1С 8.3

Для добавления колонки опредленного типа, необходимо передать описание типа в параметр №2 метода Добавить().

Примеры:

Товары = Новый ТаблицаЗначений; //Число Товары.Колонки.Добавить("Цена", Новый ОписаниеТипов("Число")); //Строка неограниченной длины Товары.Колонки.Добавить("Наименование",Новый ОписаниеТипов("Строка")); //Строка длиной 20 символов Товары.Колонки.Добавить("Артикул", Новый ОписаниеТипов("Строка",,,,Новый КвалификаторыСтроки(20))); //Дата Товары.Колонки.Добавить("ДатаСоздания", Новый ОписаниеТипов("Дата")); //Справочник ссылка Товары.Колонки.Добавить("Ссылка", Новый ОписаниеТипов("СправочникСсылка.Номенклатура")); //Перечисление Товары.Колонки.Добавить("СтавкаНДС", Новый ОписаниеТипов("ПеречислениеСсылка.СтавкиНДС")); //Составной тип Типы = Новый Массив; Типы.Добавить(Тип("СправочникСсылка.ТоварныеКатегории")); Типы.Добавить(Тип("СправочникСсылка.ВидыНоменклатуры")); Товары.Колонки.Добавить("Группа", Новый ОписаниеТипов(Типы)); 

Колонки таблицы значений в 1С 8.3 (8.2)

В предыдущей статье мы научились создавать таблицу значений, как в программном модуле, так и на форме, интерактивно.

Но создать таблицу значений, это только малая часть работы, поскольку сама по себе таблица значений нам абсолютно не нужна. Чтобы начать с ней работать, необходимо ее, как минимум, заполнить колонками.

Программное создание колонок таблицы значений в 1С

Программно добавить колонку в таблицу значений 1С просто. Для этого необходимо использовать одно из основополагающих свойств таблиц значений — это свойство Колонки. Данное свойство представляет собой коллекцию значений, в которой хранятся все колонки конкретной таблицы, и имеет тип Коллекция колонок таблицы значений.

У объекта Коллекция колонок таблицы значений существует два метода по созданию новых колонок. Это Добавить и Вставить.

Метод Добавить – добавляет новую колонку в конец коллекции, а метод Вставить – вставляет колонку в нужное место по соответствующему индексу.

ФИО = Новый ТаблицаЗначений ;
ФИО . Колонки . Добавить ( «Фамилия» );
ФИО . Колонки . Добавить ( «Имя» );
ФИО . Колонки . Добавить ( «Отчество» );

В этом примере я использовал самый простой вариант использование метода Добавить: мы указываем только название колонки и всё.

Рассмотрим синтаксис этого метода

Как видно, у данного метода всего четыре параметра.

Параметр Имя — это имя колонки таблицы значений, задается также как и имя переменной. Обязательный параметр.

Параметр Тип имеет тип ОписаниеТипов, задает тип данных, которые будут храниться в колонке, т.е. при помощи этого параметра, мы задаем тип колонки таблицы значений.

Параметр Заголовок имеет тип Строка и задает заголовок колонки, который отобразиться пользователю, если она будет создана программно на форме.

Параметр Ширина имеет тип Число и задает длину колонки(количество символов).

Если мы зададим все параметры, то наше создание колонок будет выглядеть следующим образом.

ОписаниеТиповСтрока = Новый ОписаниеТипов ( «Строка» );
ОписаниеТиповДата = Новый ОписаниеТипов ( «Дата» )

ФИО = Новый ТаблицаЗначений ;
ФИО . Колонки . Добавить ( «Фамилия» , ОписаниеТиповСтрока , «Фамилия» , 50 );
ФИО . Колонки . Добавить ( «Имя» , ОписаниеТиповСтрока , «Имя» , 50 );
ФИО . Колонки . Добавить ( «Отчество» , ОписаниеТиповСтрока , «Отчество» , 50 );
ФИО . Колонки . Добавить ( «ДатаРождения» , ОписаниеТиповДата , «Дата рождения» , 10 );

Метод Вставить имеет следующий синтаксис:

Метод Вставить имеет синтаксис, как и у метода Добавить, но только появился первый параметр Индекс, он указывает тот индекс, на место которого будет вставляться новая колонка.

Доработаем предыдущий код:

ФИО . Колонки . Вставить ( 3 , «ФИО» , ОписаниеТиповСтрока , «ФИО» , 50 );

В нашем случае колонка ФИО встала точно между Отчеством и Датой рождения.

Создание колонок в таблице значений на форме

Если мы создали таблицу значений на управляемой форме 1С 8.3 в виде реквизита формы, то колонки также можно создать интерактивно. Для этого нужно выделить нужный реквизит, и нажать на кнопку «Добавить колонку реквизита».

Кнопка Добавить колонку реквизита

После этого колонка будет создана, и нам нужно задать ей имя, заголовок и тип.

Задаем свойства колонки таблицы на форме

Если таблица значений размещена на управляемой форме в виде элемента формы Таблица, то вновь созданную колонку можно разместить в таблице двумя способами.

Первый способ – перетащить колонку из реквизитов в элементы.

Перетаскиваем колонку из реквизитов формы в элементы

После этого, колонка появиться под таблицей, а сама таблица отобразиться на форме (таблица без колонок на форме не отображается).

Колонка в таблице на форме

Второй способ – создать новое поле «под» таблицей на форме и привязать к нему нужную колонку таблицы значений 1С.

Для того, чтобы создать новое поле, привязанное к таблице на форме 1С, нужно выделить эту таблицу, нажать на кнопку «Добавить» панели управления дерева Элементы, и в открывшемся окне выбрать тип элемента «Поле».

Добавляем новый элемент управляемой формы

После этого нужно задать имя нового поля и связать его с колонкой таблицы значений, используя свойство «ПутьКДанным».

Свойство ПутьКДанным элемента поле управляемой формы

После этого колонка сразу же появиться в таблице на форме 1С.

Колонка в таблице на форме

О работе со строками в таблицах значений читайте в статье по ссылке:
Таблице значений 1С: работа со строками

Более подробно о работе с таблицами значений и другими интересными объектами языка программирования в 1С читайте в моей книге «Программировать в 1С за 11 шагов»

Изучайте программирование в 1С в месте с моей книги «Программировать в 1С за 11 шагов»

  1. Книга написана понятным и простым языком — для новичка.
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Научитесь понимать архитектуру 1С;
  4. Станете писать код на языке 1С;
  5. Освоите основные приемы программирования;
  6. Закрепите полученные знания при помощи задачника;

Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.

  1. Очень доступный и понятный язык изложения
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Поймете идеологию управляемого приложения 1С
  4. Узнаете, как разрабатывать управляемое приложение;
  5. Научитесь разрабатывать управляемые формы 1С;
  6. Сможете работать с основными и нужными элементами управляемых форм
  7. Программирование под управляемым приложением станет понятным

Промо-код на скидку в 15% — 48PVXHeYu


Если Вам помог этот урок решить какую-нибудь проблему, понравился или оказался полезен, то Вы можете поддержать мой проект, перечислив любую сумму:

можно оплатить вручную:

Яндекс.Деньги — 410012882996301
Web Money — R955262494655

Вступайте в мои группы:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *