1с поле списка добавить
Настрою вашу 1С. Опыт с 2004 года. Подробнее →
Смотрите видео инструкцию по этой статьей на моём Ютуб-канале (отмотайте видео на 4 мин 56 сек):
Добавление нового поля в форму документа
Некоторые клиенты меня просят в документы добавлять дополнительные поля, к примеру, не раз просили в документ «Заказ клиента» добавить флаг «Договор подписан». Эту задачу можно сделать очень просто и не нужен конфигуратор.
Откроем форму любого документа «Заказ клиента», нажимаем кнопку «Еще» и выбираем пункт «Изменить состав дополнительных реквизитов».
Далее нажимаем «Добавить» - «Новый»
В поле «Наименование» вписываем название нового поля, в моем случае это будет «Договор подписан» и тип значения выбираем «Булево», потому что это будет флаг, при желании можно выбрать и другой тип значения, например, ссылку на какой-нибудь справочник.
Нажимаем «Записать и закрыть».
И у нас в документе «Заказ клиента» на закладке «Дополнительно» внизу появилось новое поле (флаг) – «Договор подписан».
Вывод нового поля в форму списка документов
Для того, чтобы новые поля появились и в форме списка документов, открываем список документов и нажимаем кнопку «Еще» - «Изменить форму».
В списке «Элементы формы» найдем «Ссылка», кликнем по ней левой кнопкой мыши и сверху нажмем кнопку «Добавить поля».
Далее выбираем наше новое поле, в моем случае это «Договор подписан (Список заказов клиентов)».
Нажимаем ОК и еще раз ОК.
Теперь в форме списка документов мы можем наблюдать новую колонку с новым полем.
Смотрите видео презентацию этой статьи (отмотайте видео на 4 мин 56 сек):
Добавляем дополнительное поле в документ-список
Решим следующую задачу: в списке документов "Заказы поставщику" нам необходимо добавить новую колонку "Остаток по заказу", которая будет отображать остаток для документа в регистре накопления "Заказы поставщику" на текущую дату.
Реализовать это нужно в конфигурации "Управление производственным предприятием" версии 1.3.
Неверный путь
Рассмотрим самый "очевидный" путь, он же самый простой. Большинство начинающих программистов делают именно так. У табличного поля формы, которое привязано к реквизиту формы с типом "ДокументСписок" есть событие "ПриВыводеСтроки". В нем напишем Запрос к остаткам по заказу для выводимой строки и полученный результат присвоим ячейке текущей строки в колонке "Остаток". Вот так будет выглядеть код обработчика события "ПриВыводеСтроки":
Дело сделано! Задача решена! Но! Событие "ПриВыводеСтроки" вызывается для каждой строки отдельно. То есть, если в список выводится 30 строк, то запрос будет формироваться столько же раз! Может есть другой путь?
Оптимальное решение
Другой путь есть. Оптимальное решение кроется в использовании события "ПриПолученииДанных". Это событие вызывается один раз, когда происходит получение порции данных списком документов. В контексте этого события нам доступны данные, которые получила платформа. Поэтому мы можем их обработать одним запросом. Вот программный код обработчика "ПриПолученииДанных" для решения этой задачи:
Результат работы такой же, как и для варианта с использованием события "ПриВыводеСтроки", но есть одно НО.
Обращайте внимание
Самое главное отличие заключается в скорости работы. Вот сравнение времени выполнения для обоих вариантов решения задачи:
При использовании "ПриВыводеСтроки" время формирования списка выполняется дольше практически в четыре раза! Не смотря на это, не рекомендую добавлять подобные поля в список документов, поскольку, в любом случае, это потребует дополнительных ресурсов серверной машины. Лучше используйте отчеты.
Значительная часть информации, связанной с учетом или ведением бухгалтерии, хранится в виде списков. Эта традиция заведена уже очень давно и табличная информация воспринимается уже как нечто само собой понятное. Списки могут быть разными и представлены могут быть различными способами.
Программные продукты от 1С предлагают свою версию реализации списков. Это стандартный механизм для всех продуктов от 1С. Очень полезно научиться работать со списками в этой среде. Знания будут полезны как бухгалтерам, так и абсолютно всем, кто так или иначе, вынужден работать в программах от 1С.
Начнем по порядку.
1. Дату можно не вбивать полностью
Можно не вбивать текущую дату каждый раз. Просто введите сегоднящнее число в соответствующее поле и нажмите Enter. Программа сама допишет отсутствующую информацию. Это не ахти насколько важные знания, но если вы работаете с большим потоком документов, то этот лайфхак значительно ускорит обработку данных. Ведь каждый раз тратятся драгоценные секунды.
2. Функция "вывести список" - начальная сортировка
Нажимаем кнопку "Ещё" и находим опцию "Вывести список". Нажимаем на этот пункт и перед нами открывается панель настройки. Эта панель позволяет галочками указать, какие данные нужно сохранить в результирующем списке, который мы, например, хотим вывести на печать.
После такой сортировки, на выходе мы получим таблицу со всеми выбранными данными. Эту таблицу можно распечатать или использовать любым способом.
3. Быстрый отбор
Если нам нужно получить данные по какому-то контрагенту, то можно использовать простой способ сортировки. Достаточно кликнуть правой кнопкой по наименованию партнера или контрагента и выбрать опцию "Найти". В результате, система предложит вам сводную таблицу со всеми данными, отвечающими поставленному запросу. Это называется быстрый отбор. Очень полезная на практике функция. Кстати говоря. результат отбора будет висеть над всей таблицей как закладка. Его можно закрыть крестиком.
4. Сортировка данных
Ещё одна очень полезная функция - это сортировка данных внутри сводной таблицы. На самом деле штука довольно стандартная, но пользу. безусловно, имеет.
Обратите внимание, что колонки имеют шапки с названиями, которые можно кликать. Кликайте по нужному столбцу и произойдет сортировка в установленном порядке. Это очень удобно, когда нужно выполнить сортировку по одному из параметров.
5. Изменить форму
Если перейти во вкладку "ещё", то там вы увидите закладку изменить форму. Появляется форма настройки.
Тут можно поубирать галочками лишние пункты или добавить что-то новое. Благодаря этому можно сделать список более компактным. Здесь же можно изменить стиль и форму отображения объектов.
У некоторых пунктов возможно расширить набор полей. используя справочник. Там, где это возможно. появляется зеленый плюсик рядом с надписью добавить поле в конструкторе формы. Там есть много интересных и полезных полей. Например, можно вытащить поле ИНН и т.п.
Здесь же можно сформировать удобный быстрый отбор. Просто кликните по вкладке, как показано на рисунке. а в появившемся наборном поле введите нужного контрагента (или любую другую информацию, соответствующую выбранному полю). Впоследствии, программа выведет подборку, аналогичную быстрому подбору.
6. Подборка документов по признаку
С помощью опции настройка списков можно не только сформировать удобную для прочтения форму или упорядочить данные, но и сделать выборку по признаку. Например, вывести все документы, которые нужно подписывать. Очень полезная функция. которая значительно сократит рутинную обработку стандартных документов.
Настроить эту функцию очень просто. Переходите во вкладку "ещё", выбирайте настройку списков. Тут выбираем вкладку отбор, как показано на картинке выше и в итоге получаем отсортированные данные, где подобраны все неподписанные документы.
7. Группировка
Данные можно не только сортировать, но и группировать. Иногда группировка внутри списка бывает очень и очень полезной. поскольку позволяет работать сразу с несколькими важными параметрами. Для того, чтобы выполнить группировку, нужно в уже знакомой нам вкладке "ещё", выбрать соответствующий раздел.
После выполнения группировки все данные будут отсортированы по группам. Можно сделать, например. группировку по контрагенту, как указано на рисунке выше. Это позволит нам выполнить удобную подборку всех данных, которые будут объединены в сводный перечень данных. Так можно в одном раскрывающемся списке увидеть и долги, и неподписанные документы, и другое.
8. Изменить форму внутри документа
Менять можно не только общий список, но и конкретный документ. Перейдем в уже известный нам раздел, там выберем "изменение формы".
Настройка формы позволяет открыть или спрятать ненужные нам пункты. Обратите внимание, что мы работаем не просто со списком, а с папками. Пункты будущего списка можно перемещать из папки в папку, а затем выводить в нужном поле.
В этой статье начнем разбирать основные элементы управляемой формы 1С 8.3. Управление формой осуществляется посредством различных элементов формы, которые расположены иерархически на закладке Элементы конструктора формы. Самым главным элементом является сама форма, которая расположена вверху иерархии элементов, а остальные элементы ей подчинены.
Добавление элементов на форму
Делается это достаточно просто: необходимо выделить элемент Форма в окне Элементы конструктора формы и нажать на кнопку «Добавить». После этого откроется окно, в котором необходимо выбрать нужный тип элемента
После выбора, элемент нужного появится в окне Элементы.
Элемент управляемой формы Поле
Разберем элемент управляемой формы Поле. Этот элемент нужен для ввода информации на форме. А также для отображения какой-либо информации. После того, как Вы добавите этот элемент на форму, справа откроется палитра свойств элемента формы. Пока Вас должны интересовать два свойства – ПутьКДанным и Вид.
В свойстве ПутьКДанным разработчик может связать элемент формы с нужным реквизитом формы. Обратите внимание, что после того, как был добавлен элемент Поле ввода на форму он не отобразился на самой форме. Это произошло потому, что наш новый элемент не связан с реквизитом формы. Для примера я создал на форме обработки несколько реквизитов с разными примитивными типами и один реквизит с ссылочным типом.
Здесь и далее используется конфигурация, созданная в книге «Программировать в 1С за 11 шагов»
Теперь свяжем наш недавно добавленный элемент формы с одним из реквизитов, для этого выберем нужный реквизит с свойстве элемента ПутьКДанным.
После этого заполнятся свойства ПутьКДанным и Вид, а сам элемент отобразится в представлении формы.
Обратите внимание на свойство элемента Вид. При помощи этого свойства определяется функциональность поля ввода. Можно выбрать различные значения этого свойства.
В зависимости от выбранного значения будет определятся функционал. На рисунках выше выбрано значение – поле ввода, т.е. мы можем вводить какие-либо значения в это поле ввода, а если выбрать значение поле надписи, то ни чего вводить мы не сможем.
Этот значение свойств Вид поля ввода удобно выбирать, когда нужно просто показать справочную информацию пользователю.
Теперь добавим новый элемент формы с типом Поле ввода и свяжем его с реквизитом РеквзитДата посредством уже знакомого нам свойства ПутьКДанным
Как Вы видите вид поля ввода поменялся, а так же поменяется возможный выбор значений свойства Вид.
Таким образом, делаем вывод – функциональность поля ввода зависит от типа реквизита.
Для реквизита с типом Булево будут доступны следующие значения свойства Вид.
А для реквизита с ссылочным типом будут доступны иные значения свойства Вид.
Более подробно работа с элементами формы на практичных примерах дается в книге «Основы разработки в 1С:Такси. Разработка управляемого приложения за 12 шагов».
Эта книга подойдёт тем, кто уже начал программировать и испытывает определенные сложности с этой темой и тем, кто уже давно программирует, но ни разу еще не работал с управляемыми формами 1С
- Без сложных технических терминов;
- Более 600 страниц практического материала;
- Каждый пример сопровождается рисунком (скриншот);
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
Если Вам помог этот урок решить какую-нибудь проблему, понравился или оказался полезен, то Вы можете поддержать мой проект, перечислив любую сумму:
можно оплатить вручную:
Вступайте в мои группы:
One thought on “ Элементы управляемой формы 1С 8.3. Поле ввода ”
Огромное спасибо, за отличную публикацию! побольше бы таких сайтов как у Вас!
Читайте также: