Таблицы на управляемых формах: создание, расширение, управление.
Разработка - Работа с интерфейсом
Добрый день!
Сегодня предлагаю дамам и господам из Парижу разобраться с тем, как программно управлять управляемыми формами. Как создать таблицу значений, как создать колонки, как ее заполнить, как вывести ее на форму, как разрешить или запретить изменение, как расширить колонки уже имеющейся на форме таблицы... Ну,
поехали!
Итак, унас есть форма и запрос, результат которого выгружен в таблицу. Например, так:
Запрос = Новый Запрос("ВЫБРАТЬ * ИЗ Справочник.Банки");
Таблица = Запрос.Выполнить().Выгрузить();
Выведем таблицу на управляемую форму
Наша основная задача номер РАЗ - вывести результат запроса на управляемую форму.
Для этого нам нужно:
- Создать реквизит типа "ТаблицаЗначений".
- Создать реквизиты с типом значения, соответствующим типу колонки таблицы, для каждой колонки, подчиненные таблице.
- Создать элемент формы типа "ТаблицаФормы" для таблицы.
- Создать элементы формы для колонок типа "ПолеФормы".
Таким образом код у нас будет такой:
// добавим таблицу: сначала саму таблицу, потом колонку.
Реквизиты = Новый Массив;
Реквизиты.Добавить(Новый РеквизитФормы("ТаблицаНаФорме", Новый ОписаниеТипов("ТаблицаЗначений")));
Для Каждого Ст ИЗ Таблица.Колонки Цикл
Реквизиты.Добавить(Новый РеквизитФормы(Ст.Имя, Ст.ТипЗначения, "ТаблицаНаФорме"));
КонецЦикла;
// добавим реквизиты на форму
ИзменитьРеквизиты(Реквизиты);
// добавим элементы формы
Таб = Элементы.Добавить("ТаблицаНаФорме", Тип("ТаблицаФормы"));
Таб.ПутьКДанным = "ТаблицаНаФорме";
// запретим менять положение строк и сами строки, отключим командную панель
Таб.ИзменятьСоставСтрок = Ложь;
Таб.ИзменятьПорядокСтрок = Ложь;
Таб.ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиЭлементаФормы.Нет;
Для Каждого Ст ИЗ Таблица.Колонки Цикл
Рек = Элементы.Добавить("Колонка" + Ст.Имя, Тип("ПолеФормы"), Таб);
Рек.Вид = ВидПоляФормы.ПолеНадписи;
Рек.ПутьКДанным = "ТаблицаНаФорме" + "." + Ст.Имя;
Рек.Заголовок = Ст.Имя;
КонецЦикла;
// заполним таблицу
ЗначениеВРеквизитФормы(Таблица, "ТаблицаНаФорме");
Здесь мы создаем реквизиты, содержащие таблицу и колонки таблицы. Далее создаем элементы и прописываем для них путь к реквизитам формы. Т.е. у нас всегда создается и реквизит формы, который хранит значение, и элемент формы, который это значение отображает. В этом вся суть. При этом если Вы хотите создать группу формы, то реквизит формы вам не нужен - достаточно создать элемент формы типа "ГруппаФормы", после чего в поле "Вид" прописать соответствующтий вид элемента (Группа, Закладка, ...).
Данный код выводит на управляемую форму результат запроса. Но если вдруг в результате запроса у Вас будут элементы, типы которых не могут быть выведены на форму, то 1С будет ругаться. К таким элементам относятся хранилища значений, уникальные идентификаторы и, на сколько я знаю, другие таблицы значений (т.е. при выборке табличных частей у нас возникнут проблемы). Это нужно учитывать при создании реквизитов. При этом, если реквизит таблицы имеет тип "ТаблицаЗначений", то для его тоже нужно будет создать колонки. Также следует иметь ввиду, что имена элементов формы должны быть уникальными, при этом имена реквизитов должны быть уникальны внутри своих родителей (т.е. может существовать две разные таблицы с одинаковыми наименованиями колонок, но в пределах одной таблицы имена колонок должны отличаться).
Добавим колонку в таблицу документа
Теперь давайте посмотрим, как можно расширить уже имеющуюся таблицу формы.
Допустим, мы хотим добавить колонку в таблицу выданных авансов авансового отчета как-нибудь так:

Для этого просто напишем в процедуре ПриСозданииНаСервере такой вот код:
// добавим реквизит
МассивРеквизитов = Новый Массив;
МассивРеквизитов.Добавить(Новый РеквизитФормы("Колонка1", Новый ОписаниеТипов("Строка"), "Объект.ВыданныеАвансы", "Колонка 1", Ложь));
ИзменитьРеквизиты( МассивРеквизитов );
Элт = Элементы.Добавить("Колонка1", Тип("ПолеФормы"), Элементы.ВыданныеАвансы);
Элт.Вид = ВидПоляФормы.ПолеВвода;
Элт.ПутьКДанным = "Объект.ВыданныеАвансы.Колонка1";
Следует, однако, иметь ввиду, что заполнять данную колонку придется при каждом открытии документа, а данные для нее сохранять в отдельном хранилище, например, регистре сведений с документом и номером строки в качестве измернеий, и значением в ресурсе.
ТОП-6 инструментов для разработчика 1С
Подборка лучших инструментов для разработчика 1С включает Toolkit, DCT, OneDebugger, PrintWizard, DataFormWizard и Infostart MCP. Любой инструмент со скидкой 20% при покупке от двух решений.
Вступайте в нашу телеграмм-группу Инфостарт
Управляемая форма реквизиты таблица значений
Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
См. также
Работа с интерфейсом Анализ учета Мониторинг 1С:Предприятие 8 1С 8.3 1C:Бухгалтерия 1С:Бухгалтерия 3.0 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:Зарплата и Управление Персоналом 3.x 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 Платные (руб)
Создайте свой функциональный интерфейс в любой конфигурации 1С с помощью расширения Infostart Dashboard. Настраивайте панели виджетов с метриками, индикаторами и показателями на начальном экране. Узнайте возможность внедрения подсистемы у себя в конфигурации с помощью бесплатной обработки "Анализ внедрения подсистемы 1С Infostart Dashboard"!
31720 руб.
27.03.2025 92251 69 44
Консолидация данных Работа с интерфейсом Разработчик Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 1C:ERP Узбекистан Беларусь Кыргызстан Россия Казахстан Платные (руб)
Знакомая ситуация? Пользователи, особенно менеджеры, уверены: отборов много не бывает. Идут пожелания добавить в форму списка еще один быстрый фильтр, еще два, еще пять... В итоге интерфейс превращается в нагромождение полей отбора, а потребность в «самом главном» отборе, который «вот прямо сейчас нужен», все равно не закрыта. Универсальное расширение, которое решает эту проблему элегантно и технологично. С его помощью в любую форму списка можно легко добавить панель настраиваемых кнопок-закладок, каждая из которых применяет сложный фильтр-запрос, а так же показывает актуальное количество элементов в реальном времени.
6088 руб.
17.10.2025 3643 3 0
Разработка Инструментарий разработчика Работа с интерфейсом Адаптация типовых решений Нейросети 1C:Бухгалтерия 1C:ERP 1С:ЗУП 1С:КА 1С:УНФ 1С:УТ 1С:Розница 1С:ДО 1С:ERP Управление предприятием 2 Платные (руб)
Разработка "Дизайнер форм 1С" реализована в виде расширения 1С и является универсальным инструментом для разработки прототипа форм с целью демонстраций, технических заданий и т.д. Без участия разработчика с возможностью экспорта в файл внешней обработки и генерации формы используя искусственный интеллект.
36600 руб.
28.08.2025 10324 2 2
Работа с интерфейсом Разработчик Стажер 1С:Предприятие 8 Бесплатно (free)
Это инструкция по дизайну форм в среде 1С. Гайд охватывает рекомендации и стандарты для оптимизации пользовательского интерфейса. В гайде содержатся указания по использованию элементов интерфейса, включая как основные, так и продвинутые аспекты. Предоставляются также примеры и антипримеры для наглядного понимания принципов дизайна
20.08.2024 57367 mrXoxot 44
Работа с интерфейсом Разработчик 1С:Предприятие 8 Бесплатно (free)
Пример простого и симпатичного прогресс-бара в динамическом списке, без картинок, используя редактирование запроса.
27.05.2024 29978 smielka 39
Инструментарий разработчика Работа с интерфейсом Разработчик 1С 8.3 Абонемент ($m)
Подходит для создания web-страниц для замены управляемых форм 1С, красивых отчетов, интерфейса мобильного приложения на платформе 1С и для простых страниц веб-сайтов.
1 стартмани
10.04.2023 19451 190 acces969 31
Работа с интерфейсом Разработчик 1С:Предприятие 8 1C:Бухгалтерия Бесплатно (free)
Питничная фантазия на возможности в разработке интерфейсов формы с помощью Платформы 1С - делаем свою подсказку. Публикация содержит готовую библиотеку программного формирования данной подсказки.
12.08.2022 16936 top_1c 39
Работа с интерфейсом Разработчик 1С:Предприятие 8 1C:Бухгалтерия Абонемент ($m)
"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.
1 стартмани
05.07.2022 17947 kalyaka 8
Если бы сделали всеобъемлющее руководство, привели нюансы с какими багами предстоит встретиться на разных платформах, про удаление и т.д.
А так... В чем новость?
Желательно с кодом. Заранее спасибо!
Зачем использовать конструкцию "ИзменитьРеквизиты(, УдаляемыеРеквизиты)", если выше элемент с формы уже удален строкой: "Элементы.Удалить(Элементы.Найти(ЭлементСписка.Представление))"?!
Тогда и "СписокЗначенийСРеквизитами" не нужен.
Может не так понял...
// добавим реквизиты на форму
ИзменитьРеквизиты(Реквизиты, _УдаляемыеРеквизиты_); !?
При эдаком тренде скоро Сообщить("Hello, world") будет "выбором экспертов" на ИС...
Ну и по сути.
1. Если задача "номер РАЗ" это вывести результаты - поместите на форму поле табличного документа и вывалите всё туда, хоть через построитель отчёта, хоть через СКД. Возни меньше на порядок.
2. Если уж упомянули про добавление подчинённых реквизитов к объектам "ДанныеФормыКоллекция", связанным с объектами БД, особенно с основным реквизитом формы, то уж распишите нормально, когда этот кэш сбрасывается и когда нет. И как сериализуется, и как передаётся, итд. А то, знаете, фраза "заполнять данную колонку придется при каждом открытии документа" это далеко-о-о не всё, что придётся делать)))
1. Если задача "номер РАЗ" это вывести результаты - поместите на форму поле табличного документа и вывалите всё туда, хоть через построитель отчёта, хоть через СКД. Возни меньше на порядок.
2. Если уж упомянули про добавление подчинённых реквизитов к объектам "ДанныеФормыКоллекция", связанным с объектами БД, особенно с основным реквизитом формы, то уж распишите нормально, когда этот кэш сбрасывается и когда нет. И как сериализуется, и как передаётся, итд. А то, знаете, фраза "заполнять данную колонку придется при каждом открытии документа" это далеко-о-о не всё, что придётся делать)))
Ух-ты, мы вышли из бухты (с)
1. Да, возни меньше, но: а) не на порядок; б) СКД и построитель, конечно, посредством обработки событий табличного документа тоже редактируемы, но возни с этим, как Вы сами сказали, на тот самый порядок больше...
2. Всегда "этот кеш сбрасывается", ничего не надо сериализовать, с передачей и так кому надо - разберутся. А коли что не поняли - спросите, подскажем!
3. Да, азы - это главное. Войти в АТ где-то к тридцати пяти все хотят, а рыться в архивах лениво. Именно по этому (и я об том уже не раз говорил, возможно даже Вам лично) народ такие статьи крайне любит, а авторов холит и лелеет.
4. Завидуйте молча.
2. Теперь не понял - это статья с разжёвыванием для начинающих, или заметки профи? Или просто подлянка из серии "дальше сами разбирайтесь"?
3. Ага. Статьи из серии "hello world". Кстати, что такое "АТ"?
4. Я не завидую, я огорчён: спрос рождает предложение; такими темпами мы рискуем превратить ИС в песочницу для студентов, а на то и других ресурсов полно, вот хоть devtrain.
p.s. к сведению: в разных релизах 1С методы преобразования данных формы в значение и обратно очень по-разному обходятся с "добавленными" реквизитами, а уж КопироватьДанныеФормы чего творил, аж страшно было. Особенно 8.3.7 этим отличается.
2. Так не стесняйся - спроси прямо.
3. АТ - это типа АйТи. Я считал, что все это песенку слышали. Не?
4. Огорчайтесь молча - это ж должно было подавить Вашу ранимую психику. Поплакаться в жилетку - это полезно бывает.
пысы: преобразования данных формы в значения и обратно работают прямо у тех, у кого руки из нужного места растут. У иных могут быть проблемы - но это руки, хотя вина 1С тут тоже есть - не может толком обучить своих специалистов по платформе.
Поясню для понимающих: последний год я нахожу внятные ответы на свои вопросы где угодно, только не на ИС. Потому что ИС подобными публикациями всё более напоминает песочницу. Давайте я выложу, например, как динамически подключается условное оформление. Это ооочень сложная штука, конечно, и у большинства нет возможности глянуть реализацию БСП, так что будет бешеный спрос))) А потом через пару лет возникнет действительно серьёзный вопрос, и мне не придётся даже надеяться найти ответ на ИС. Так, что ли?
Ладно, оффтопим. А вот по теме публикации могу одно сказать: неполно, очень неполно и не совсем точно.
А ДАВАЙТЕ, МЫ ТОЛЬКО ЗА!
ЗЫ: Я уже давно не ищу что-либо на Инфостарте - я тут пишу. Некоторые простые вещи пишу потому, что у коллег возникают вопросы, я пытаюсь получить требуемый им результат и то, что у меня получается, выкладываю. Заметьте, я все, что мне надо, всегда в дебаггере нахожу, но не все же такие. Вот для тех, кому лень рыться в дебаггере, я и пишу свои статейки (последние две по крайней мере, остальные куда сложнее).
Если же посмотреть на Ваши статьи, то можно таких вот велосипедов кучу найти. И то, что у них рейтинг ниже плинтуса - это не моя вина. А есть и хорошие статьи - и это тоже не моя заслуга, так ведь? Ну вот и не нойте тут, а трудитесь.
Я сделал замечания по статье, а Вы (вероятно, не найдя достойного ответа) всё норовите на личность перейти. Ай-ай.
Если бы я гнался за рейтингом, я бы ещё лет семь назад вывалил бы кучу своих наработок и айда. Мои публикации в основном вынужденные, либо life-эмоции. Желай я рейтинга, я б их, наверное, в "лайф" не вносил, верно?))) Так это не статьи, это именно заметочки с личной позицией, навроде того срача про асинхронность или передачу клиент-сервер.
Я вообще не понимаю, зачем делать обучающие статьи, если есть ИТС, дев-трейн и тому подобное, я вообще не понимаю, с какой радости я должен делиться тем, что сам изучил и потратил своё время, с кем-то ещё. Чтобы пионеры халявили и не умели сами? Нетушки, мне потом такие сотрудники не будут нужны. Единственный раз, когда я сделал такую статью, грешен, это когда про XPath - сам себе антисклерозник соорудил, примерно как Трактор в своё время. Ну хотите, её тоже во вне-рейтинговую перекину?
Если человек сам, носом, ползком по шпалам, не пролопатит некую тему - раз, два, десять, - он так и останется "одинэснегом", а не программистом-разработчиком. Спрашивают тут на собеседовании у одного: как будете решать такую задачу. А он мне и говорит: "на инфостарте скачаю". Вот и нафига, спрашивается, поощрять лень?
Вы уж определитесь, что хотите.
Процедура СоздатьТаблицуНаФорме(ТаблицаИсточник, ИмяТаблицыНаФорме, ПостфиксИмениКолонки = "")
// добавим таблицу: сначала саму таблицу, потом колонку.
Реквизиты = Новый Массив;
Реквизиты.Добавить(Новый РеквизитФормы(ИмяТаблицыНаФорме, Новый ОписаниеТипов("ТаблицаЗначений")));
Для Каждого Ст ИЗ ТаблицаИсточник.Колонки Цикл
Реквизиты.Добавить(Новый РеквизитФормы(Ст.Имя, Ст.ТипЗначения, ИмяТаблицыНаФорме));
КонецЦикла;
// добавим реквизиты на форму
ИзменитьРеквизиты(Реквизиты);
// добавим элементы формы
Таб = Элементы.Добавить(ИмяТаблицыНаФорме, Тип("ТаблицаФормы"));
Таб.ПутьКДанным = ИмяТаблицыНаФорме;
// запретим менять положение строк и сами строки, отключим командную панель
Таб.ИзменятьСоставСтрок = Ложь;
Таб.ИзменятьПорядокСтрок = Ложь;
Таб.ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиЭлементаФормы.Нет;
Для Каждого Ст ИЗ ТаблицаИсточник.Колонки Цикл
Рек = Элементы.Добавить("Колонка" + Ст.Имя + ПостфиксИмениКолонки, Тип("ПолеФормы"), Таб);
Рек.Вид = ВидПоляФормы.ПолеНадписи;
Рек.Заголовок = Ст.Заголовок;
Рек.ПутьКДанным = ИмяТаблицыНаФорме + "." + Ст.Имя;
КонецЦикла;
// заполним таблицу
ЗначениеВРеквизитФормы(ТаблицаИсточник, ИмяТаблицыНаФорме);
КонецПроцедуры Показать// добавим таблицу: сначала саму таблицу, потом колонку.
Реквизиты = Новый Массив;
Реквизиты.Добавить(Новый РеквизитФормы(ИмяТаблицыНаФорме, Новый ОписаниеТипов("ТаблицаЗначений")));
Для Каждого Ст ИЗ ТаблицаИсточник.Колонки Цикл
Реквизиты.Добавить(Новый РеквизитФормы(Ст.Имя, Ст.ТипЗначения, ИмяТаблицыНаФорме));
КонецЦикла;
// добавим реквизиты на форму
ИзменитьРеквизиты(Реквизиты);
// добавим элементы формы
Таб = Элементы.Добавить(ИмяТаблицыНаФорме, Тип("ТаблицаФормы"));
Таб.ПутьКДанным = ИмяТаблицыНаФорме;
// запретим менять положение строк и сами строки, отключим командную панель
Таб.ИзменятьСоставСтрок = Ложь;
Таб.ИзменятьПорядокСтрок = Ложь;
Таб.ПоложениеКоманднойПанели = ПоложениеКоманднойПанелиЭлементаФормы.Нет;
Для Каждого Ст ИЗ ТаблицаИсточник.Колонки Цикл
Рек = Элементы.Добавить("Колонка" + Ст.Имя + ПостфиксИмениКолонки, Тип("ПолеФормы"), Таб);
Рек.Вид = ВидПоляФормы.ПолеНадписи;
Рек.Заголовок = Ст.Заголовок;
Рек.ПутьКДанным = ИмяТаблицыНаФорме + "." + Ст.Имя;
КонецЦикла;
// заполним таблицу
ЗначениеВРеквизитФормы(ТаблицаИсточник, ИмяТаблицыНаФорме);
КонецПроцедуры
Не работает твой код
// добавим элементы формы
Таб = Элементы.Добавить("ТаблицаНаФорме", Тип("ТаблицаФормы"));
Таб.ПутьКДанным = "ТаблицаНаФорме";{ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(253)}: Ошибка при установке значения атрибута контекста (ПутьКДанным)
Таб.ПутьКДанным = "ТаблицаНаФорме";
по причине:
Недопустимое значение
Недопустимое значение
Т.е. есть элементы формы, которые вы создаёте в:
Таб = Элементы.Добавить("ТаблицаНаФорме", Тип("ТаблицаФормы"));А есть реквизиты формы, на который вы ссылаетесь:
Таб.ПутьКДанным = "ТаблицаНаФорме";Т.о. в этот момент должен существовать реквизит формы "ТаблицаНаФорме"
&НаСервере
Процедура СоздатьНаСервере()
// Создаём и заполняем таблицу значений
ТипМагазин = Новый ОписаниеТипов("СправочникСсылка.ПодразделенияОрганизаций");
ТипЧисло = Новый ОписаниеТипов("Число",,, Новый КвалификаторыЧисла(15, 2, ДопустимыйЗнак.Любой));
ТипДата = Новый ОписаниеТипов("Дата",,,, Новый КвалификаторыДаты(ЧастиДаты.Дата));
Цель = Новый ТаблицаЗначений;
Цель.Колонки.Добавить("Магазины", ТипМагазин, "Название магазина");
Цель.Колонки.Добавить("Показатель", ТипЧисло, "Сумма");
Цель.Колонки.Добавить("ДатаСобытия", ТипДата, "Дата события");
Добавление = Цель.Добавить();
Добавление.Магазины = Справочники.ПодразделенияОрганизаций.НайтиПоНаименованию("iBox Галерея", Истина);
Добавление.Показатель = 3500;
Добавление.ДатаСобытия = Дата('20220401');
// Создаём таблицу на форме
ТФ = Новый ОписаниеТипов("ТаблицаФормы");
РеквизитыТаблицы = Новый Массив;
// В массив добавляется РеквизитФормы, в котором создаётся сам реквизит с типом "ТаблицаФормы"
РеквизитыТаблицы.Добавить(Новый РеквизитФормы("ТаблицаНаПробнойФорме", ТФ));
// Далее необходимо добавить в тот же массив параметры этой таблицы
Для каждого К Из Цель.Колонки Цикл
РеквизитыТаблицы.Добавить(Новый РеквизитФормы(К.Имя, К.ТипЗначения, "ТаблицаНаПробнойФорме", К.Имя));
КонецЦикла;
ИзменитьРеквизиты(РеквизитыТаблицы);
КонецПроцедуры
&НаКлиенте
Процедура Создать()
СоздатьНаСервере();
КонецПроцедуры
Показатьуже вылазит следующая ошибка.
{ВнешнийОтчет.ТренировкаДобавленияСтолбцовВТаблицуНаФорме.Форма.Хиндзё.Форма(33)}: Ошибка при вызове метода контекста (ИзменитьРеквизиты)
ИзменитьРеквизиты(РеквизитыТаблицы);
по причине:
Недопустимый тип реквизита. Имя: "ТаблицаНаПробнойФорме"
Вроде сделал всё калькой с примера автора статьи, но не пойму, в чём дело. :(
Я не понимаю, что я путаю. Я сначала создал таблицу значений. Затем накидал туда данные в одну строчку.
А вот после я, перебирая столбцы ТЗ, сообщаю их параметры массиву, как показано у Вас в примере.
И вот команда ИзменитьРеквизиты() у меня возвращает описанную выше ошибку.
Вроде бы код тот же, сделан под кальку
ТФ = Новый ОписаниеТипов("ТаблицаФормы");на
ТФ = Новый ОписаниеТипов("ТаблицаЗначений");и всё понеслось!
Спасибо за очень полезную статью!!! По работе очень нужно!
У вас для загрузки ТЗ в таблицу на форме применяется процедура:
ЗначениеВРеквизитФормы(Таблица, "ТаблицаНаФорме");Есть же более стандартная процедура:
ЭтотОбъект.ТаблицаНаФорме.Загрузить(Таблица);Подскажите, пожалуйста, есть ли существенная разница между этими двумя способами?
Использование Вами ЗначениеВРеквизитФормы чем то обусловлено, или так исторически сложилось?
Загрузить (Load)
Синтаксис:
Загрузить(<Таблица>)
Параметры:
<Таблица> (обязательный)
Тип: ТаблицаЗначений.
Таблица значений, откуда загружается табличная часть. Колонки таблиц совмещаются по именам.
Описание:
Загружает табличную часть из таблицы значений. При этом все прежние строки табличной части удаляются. При загрузке значения в колонках табличной части заполняются значениями из колонок таблицы значений с совпадающими именами.
Загрузить (Load)
Синтаксис:
Загрузить(<Таблица>)
Параметры:
<Таблица> (необязательный)
Тип: ТаблицаЗначений.
Таблица значений, откуда загружается табличная часть.
Описание:
Загружает данные коллекции из таблицы значений.
Все элементы коллекции будут удалены.
В коллекцию будут добавлены строки из таблицы значений и заполнены значениями в совпадающих по идентификаторам колонках.
Вот в справке пишут, что при Загрузить() колонки тоже должны совпадать. Ну, и практика подтверждает )
А строго или не строго - не совсем понятно, что Вы в это понятие вкладываете? Кроме имен и типы?
О, понял, спасибо!
Т.е. загрузятся те колонки которые соответсвуют источнику, пусть и не полный набор.
И останутся те, кторых нет в источнике.
А при ЗначениеВРеквизитФормы должно быть полное соответсвие.
Ну, при прочих равных - полное соответсвие колонок - можно еще заморочится сравнением быстродействия )
ЗначениеВРеквизитФормы(Таблица, "ТаблицаНаФорме");
Не могу понять что эта строчка делает, ведь мы предварительно создали сам реквизит таблицы на форме и элемент формы для отображения, разве этого не достаточно чтобы сформировать пустую таблицу и дальше с ней работать? Пробовал в обработке, без этой строчки все создалось и дает заполнять.
И еще подскажите, как сделать выводимую информацию в виде "гиперссылки"(кликабельной)?
Вы можете заказать платную консультацию или разработку у автора. Будет создан приватный заказ на «Бирже заказов» для автора.
№ 574802
Создание 10.01.17 19:48
Обновление 10.01.17 19:48
Просмотры 165115
Загрузки 0
Рейтинг
133
Комментарии 51
Код открыт Не указано
Рубрики Работа с интерфейсом
Кому Разработчик
Тип файла Нет файла
Платформа 1С:Предприятие 8
Конфигурация Универсальные
Операционная система Не имеет значения
Страна Не имеет значения
Отрасль Не имеет значения
Налоги Не имеет значения
Вид учета Не имеет значения
Доступ к файлу Бесплатно (free)