1с список значений текущее значение. Кадровый учет и Классификаторы

1с список значений текущее значение. Кадровый учет и Классификаторы
1с список значений текущее значение. Кадровый учет и Классификаторы

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

Возможности динамических списков в 1С

Предназначение данного типа заключается в отображении информации из любых таблиц БД, независимо от ее типа. Механизм был создан на основе СКД и обладает аналогичными возможностями. Но это не означает, что обязательно придется писать запрос на языке 1С, хотя эта возможность есть и ей нужно пользоваться. Вы можете просто указать таблицу, информация из которой вас интересует и 1С самостоятельно сформирует простейший запрос.

Чтобы посмотреть, как формируется динамический список и какие данные он показывает, необходимо открыть управляемые формы, где он расположен, в конфигураторе: в перечне реквизитов через контекстное меню открыть его свойства и обратить внимание на пункт «ПроизвольныйЗапрос». Если галка отсутствует, то параметр «Основная таблица» отражает таблицу БД, откуда берутся данные. В ином случае, динамический список отражает данные произвольного запроса, который можно увидеть, открыв настройку списка.

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

Еще одно полезное свойство динамического списка открывается при щелчке на надпись «Настройка списка». Это меню позволяет даже при использовании стандартного набора полей сделать информацию более доступной и понятной конечным пользователям. Вне зависимости от того, произвольный запрос или нет, вы увидите вкладку «Настройки», где сможете указать:

  • Отбор динамического списка;
  • Группировки;
  • Сортировку;
  • Оформление.

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

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

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



ВЫБРАТЬ НоменклатураПеречень.Наименование КАК Наименование, ТоварыНаСкладахОстатки.Склад КАК Склад, ТоварыНаСкладахОстатки.КоличествоОстаток КАК КоличествоОстаток ИЗ Справочник.Номенклатура КАК НоменклатураПеречень ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(&ТекухцаяДата,) КАК ТоварыНаСкладахОстатки ПО НоменклатураПеречень.Ссылка = ТоварыНаСкладахОстатки.Номенклатура ГДЕ

Так как в нашем запросе использовался параметр «ТекущаяДата», то нам необходимо задать его значение перед тем, как пользоваться обработкой. Для этого в модуле формы в процедуре «ПриСозданииНаСервере» стандартной командой присвоим ему функцию «ТекущаяДатаСеанса». Также нам необходимо вывести динамический список на управляющую форму и изменить порядок полей для наглядности. Перетаскиваем реквизит «ОстаткиНоменклатуры» в элементы формы (левая верхняя часть) и синими стрелками изменяем порядок полей в таблице на форме.

&НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) ОстаткиНоменклатуры.Параметры.УстановитьЗначениеПараметра("ТекутаяДата",ТекущаяДатаСеанса()) КонецПроцедуры


Уже на этом этапе мы можем в 1С открыть нашу внешнюю обработку и увидеть, что динамический список работает. Мы можем смотреть остатки, создавать номенклатуру и группы, осуществлять поиск. Часто заказчики просят добавить возможность выбирать дату, на которую они будут видеть остатки. В случае формы с динамическим списком это обеспечивается за счет дополнительного поля и установки параметров с его помощью.

Добавляем реквизит «ДатаОстатков» типа «Дата» и переносим его в элементы формы. В событиях поля создаем событие «ПриИзменении» и прописываем код по установке параметра «ТекущаяДата», использующегося в динамическом запросе. Чтобы при открытии формы пользователь сразу понимал, на какую дату он видит остатки, внесем небольшие изменения в процедуру «ПриСозданииНаСервере».



&НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) ДатаОстатков = ТекущаяДатаСеанса(); ОстаткиНоменклатуры.Параметры.УстановитьЗначениеПараметра("ТекущаяДата", ДатаОстатков); КонецПроцедуры &НаКлиенте Процедура ДатаОстатковПриИзменении(Элемент) ОстаткиНоменклатуры.Параметры.УстановитьЗначениеПараметра("ТекущаяДата",ДатаОстатков); КонецПроцедуры

В результате наша форма Динамический список может отражать остатки на любую дату.

Мы рассмотрели только малую часть возможностей этого инструментария, но и этого уже достаточно, чтобы понять удобство такого типа, как динамический список. Подобный механизм используется для множества задач, но наиболее часто его встречают в типовых конфигурациях в управляемых формах:

  1. Подбора;
  2. Списков.

Чтобы получить динамический список и его запрос в типовых управляемых формах, разработчику необходимо в конфигураторе открыть нужную форму. В разделе реквизитов найти реквизит с типом данных «ДинамическийСписок» (чаще всего он выделен жирным шрифтом). В его свойствах находится текст запроса, отборы и другие настройки.

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

Перед вами откроется список позиций справочника, имеющий многоуровневую иерархическую структуру.

В этой статье мы пошагово рассмотрим всю инструкцию по начальному заполнению номенклатуры в 1С 8.3 на примере

Для удобства использования этого справочника в 1С Бухгалтерия используются группы (папки). В них объединяется номенклатура, имеющая общие признаки. В каждой группе в свою очередь доступно создание подгрупп (по аналогии с файловой системой на компьютере). Количество уровней иерархии задается программистом, но изначально ограничений не предусмотрено.

Создадим новую группу. В форме списка справочника «Номенклатура» нажмите на кнопку «Создать группу».

Укажите наименование создаваемой группы. Так же можно заполнить ее вид, но не обязательно.

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

Создание новой номенклатурной позиции

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

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

При необходимости заполните остальные реквизиты:

  • Поля «Вид номенклатуры» и «Входит в группу» заполняются автоматически из данных той группы, в которой создается новая номенклатурная позиция. При необходимости их можно изменить.
  • Значение в поле «Единица» является единицей хранения остатков данной номенклатуры.
  • Налоговая ставка, указанная в реквизите «% НДС» при необходимости может быть изменена уже при формировании документов.
  • «Цена продажи» по умолчанию указывается в документах продажи. Данную настройку можно изменить, нажав на гиперссылку «?» рядом с данным полем.
  • В разделе «Производство» можно указать статью затрат данной номенклатурной позиции, и ее спецификацию (для готовой продукции), проще говоря состав.
  • В зависимости от особенностей номенклатуры, заполняются остальные разделы, такие как «Алкогольная продукция» и «Импортный товар».

После того, как вы заполнили карточку создаваемой номенклатуры, ее нужно записать.

Что такое вид номенклатуры в 1С 8.3 и как их настроить

Для того чтобы настроить виды номенклатуры, нажмите на соответствующую гиперссылку в форме списка справочника «Номенклатура».

Виды номенклатуры необходимы для разделения номенклатурных позиций. Каждому виду можно задать свой . Очень важно не допускать наличие дублей в данном справочнике, что может привести к неправильной работе счетов учета номенклатуры.

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

Счета учета номенклатуры в 1С 8.3

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

В стандартной конфигурации 1С Бухгалтерия 3.0 данный регистр уже заполнен. Но при необходимости его можно скорректировать вручную.

Счета учета можно настроить:

  • по конкретной номенклатурной позиции;
  • по номенклатурной группе;
  • по виду номенклатуры;
  • по складу;
  • по типу склада;
  • по организации;
  • по всей номенклатуре, указав в качестве значения, пустую ссылку.

Если для конкретной номенклатуры и для ее были настроены разные счета учета, то счет будет браться из номенклатуры. В таких случаях укрупненные счета имеют меньший приоритет.

Установка цен номенклатуры

У одной номенклатуры может быть несколько цен. Они различаются типами, например, оптовая цена, розничная цена и т. п.

Зайдите в карточку элемента справочника «Номенклатура» и перейдите по гиперссылке «Цены».

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

Смотрите также видео про номенклатуру:

Статья продолжает цикл «Первые шаги в разработке на 1С».

В конфигурации на платформе «1С:Предприятие» при выводе информации наиболее часто используются таблицы, которые отображают различные информационные списки. Работа с такими списками может происходить как в форме списка, так и в форме элемента (обработки).

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

Применимость

В статье рассматривается Управляемый интерфейс в варианте «Версии 8.2» конфигурации, разработанной на платформе 1C 8.3.4.482.

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

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

Кроме того, в актуальной версии платформы добавились новые возможности поиска в списках.

Настройка форм и возможности работы со списками

Для элементов управляемых форм существует возможность изменять видимость и некоторые другие свойства. Для этих целей в управляемой форме в меню Все действия служит пункт Изменить форму .

После нажатия данной команды появится окно «Настройка формы».

В появившемся окне с помощью галочек можно изменять видимость некоторых реквизитов. При этом форма автоматически масштабируется.

Можно изменять порядок реквизитов. Добавлять новую группу и помещать в нее некоторые реквизиты (элементы), определяя вариант их группировки (горизонтальная, вертикальная).

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

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

Важным свойством является возможность добавления на форму новых полей. Это становится возможным через реквизиты ссылочного типа.

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

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

Для возврата к стандартным настройкам в окне «Настройка формы» в меню Все действия следует выбрать пункт Установить стандартные настройки .

Кроме настройки форм в управляемом интерфейсе существует возможность настройки списков (элементов справочников, документов).

В форме списка в меню Все действия содержится специальная команда Настроить список .

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

На рисунке представлена форма для редактирования отбора.

Отбор можно производить по нескольким полям. В этом случае по умолчанию отбор будет работать по условию И. Можно также использовать условия ИЛИ и НЕ.

Для использования условия ИЛИ (НЕ) нужно с помощью команды Сгруппировать условия добавить соответствующую группу (Группу ИЛИ, Группу НЕ).

На рисунке представлена форма для определения полей сортировки.

Возможна настройка группировки. На рисунке в качестве поля для группировки выбран Контрагент .

На очередном рисунке представлено, как будет выполняться группировка.

Можно произвольным образом раскрасить список или применить другие элементы условного оформления (выделение шрифтами, определенное форматирование) по заданному условию, а также выделить список оформляемых полей.

На рисунке представлен результат условного оформления фоном поля Сумма .
Когда сумма > 100000.

Следует отметить, что существует возможность просмотра справочников в режиме иерархии.

Иерархический просмотр справочников возможно настраивать через пункт Режим просмотра в меню Все действия . Можно выбрать один из вариантов: Иерархический список , Список , Дерево .

Также имеется возможность настраивать собственную группировку элементов справочников по некоторым реквизитам.

Например, можно сгруппировать номенклатуру по поставщику. Пример аналогичен тому, где мы рассматривали группировку документов «Реализация товаров и услуг» по контрагентам.

Удобная возможность – множественное выделение в списках с последующим выполнением групповых действий (проведение, отмена проведения, снятие пометки удаления).

Выделение объектов в списке осуществляется с удержанием клавиши Shift или Ctrl .

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

Для поиска по значению в текущей колонке достаточно спозиционировать курсор на нужной колонке и нажать на кнопку Найти в командной панели. Появится окно, в котором следует также нажать на кнопку Найти .

Для повышения конкретизации поиска можно использовать флажок Искать в найденном .

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

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