Что такое быстрый выбор и когда его использовать 1с
Я сам новичок в 1С и знаю, как трудно поначалу разобраться в море незнакомой информации и быстро найти нужную для решения какой-либо срочной задачи. Поэтому эту статейку пишу и для себя тоже.
Иногда пользователю нужно быстро отобрать нужные строки в списке по нескольким не точным критериям.
В списках отбор может быть установлен вручную пользователем стандартным способом через контекстное меню списка «Установить отбор и сортировку списка»
Но если отборы часто используемые, то мы можем вынести поля для ввода критериев на форму и устанавливать отборы программно.
1) Рассмотрим установку такого отбора на примере списка справочника Номенклатура.
Открываем в конфигураторе форму списка справочника Номенклатура.
Уменьшим высоту табличного поля «Список».
На освободившееся место над табличным полем разместим 5 элементов:
со следующими именами:
2) фНомер – Булево
3) отбНомер – Строка(20)
4) фНаименование – Булево
5) отбНаименование – Строка(150)
Результат будет выглядеть примерно так:
Сверим список реквизитов формы на закладке «Реквизиты», наши новые обведены красным:
Теперь пишем в модуле формы обработчики событий «При изменении» для флажков и полей ввода.
Для назначения обработчика события элементу формы выбираем мышкой нужный элемент, идем в панель «Свойства» , ищем в разделе «События» событие «ПриИзменении» и щелкаем мышкой по лупе:
И в созданную заготовку процедуры вписываем нужный код:
Вот код этих четырех обработчиков:
// при изменении флажка фНомер
Процедура фНомерПриИзменении ( Элемент )
// если не заполнен Номер для отбора не будем понапрасну дергать Отбор
Если ЗначениеЗаполнено ( отбНомер ) Тогда
УстановитьОтборыФормы ();
КонецЕсли;
КонецПроцедуры
// при изменении поля ввода отбНомер
Процедура отбНомерПриИзменении ( Элемент )
// если не установлен флажок не будем понапрасну дергать Отбор
Если фНомер Тогда
УстановитьОтборыФормы ();
КонецЕсли;
КонецПроцедуры
Процедура фНаименованиеПриИзменении ( Элемент )
// если не заполнено Наименование для отбора не будем понапрасну дергать Отбор
Если ЗначениеЗаполнено ( отбНаименование ) Тогда
УстановитьОтборыФормы ();
КонецЕсли;
КонецПроцедуры
Процедура отбНаименованиеПриИзменении ( Элемент )
// если не установлен флажок не будем понапрасну дергать Отбор
Если фНаименование Тогда
УстановитьОтборыФормы ();
КонецЕсли;
КонецПроцедуры
На двух наших полях ввода включим свойство «КнопкаОчистки».
При очистке поля ввода мы будем сбрасывать соответсвующий флажок и перечитывать отбор:
// при очистке поля ввода отбНомер
Процедура отбНомерОчистка ( Элемент , СтандартнаяОбработка )
фНомер = Ложь;
УстановитьОтборыФормы ();
КонецПроцедуры
// при очистке поля ввода отбНаименование
Процедура отбНаименованиеОчистка ( Элемент , СтандартнаяОбработка )
фНаименование = Ложь;
УстановитьОтборыФормы ();
КонецПроцедуры
Теперь пишем процедуру установки отбора:
Процедура УстановитьОтборыФормы ()
// запомним состояние иерархии
мИерархическийПросмотр = ЭлементыФормы.Список.ИерархическийПросмотр;
Если ( фНомер И НЕ ПустаяСтрока ( отбНомер ))
или ( фНаименование И ЗначениеЗаполнено ( отбНаименование ))
Тогда
// сбросим иерархию
Если ЭлементыФормы . Список . ИерархическийПросмотр Тогда
ЭлементыФормы . Список . ИерархическийПросмотр = Ложь;
КонецЕсли;
// получаем запросом список с установленными критериями отбора
сз = ВернутьСписок ();
// устанавливаем отбор на ссылки, входящие в возвращенный список ссылок
ЭтаФорма . Отбор . Ссылка . ВидСравнения = ВидСравнения . ВСписке ;
ЭтаФорма . Отбор . Ссылка . Значение = сз ;
ЭтаФорма . Отбор . Ссылка . Использование = Истина;
// сбросим отбор
ЭтаФорма . Отбор . Ссылка . Использование = Ложь;
// вернем иерархию взад
Если НЕ мИерархическийПросмотр Тогда
ЭлементыФормы.Список.ИерархическийПросмотр = Истина;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
А теперь пишем функцию, выбирающую запросом ссылки по введенным пользователем критериям и возвращающую как результат список отобранных ссылок:
Функция ВернутьСписок ()
Запрос = Новый Запрос ;
// устанавливаем параметры запроса введенными критериями
Запрос . УстановитьПараметр ( "фНомер" , фНомер );
Запрос . УстановитьПараметр ( "фНаименование" , фНаименование );
Запрос . УстановитьПараметр ( "пНомер" , "%" + СокрЛП ( отбНомер ) + "%" );
Запрос . УстановитьПараметр ( "пНаименование" , "%" + СокрЛП ( отбНаименование ) + "%" );
Результат = Запрос . Выполнить ();
// создаем новый список значений и выгружаем в него колонку «Ссылка» из результата запроса
сз = Новый СписокЗначений ;
сз . ЗагрузитьЗначения ( Результат . Выгрузить (). ВыгрузитьКолонку ( "Ссылка" ));
// возвращаем результат - полученный список зачений
Возврат сз ;
Вот результат отбора по двум критериям:
Взглянем на форму отборов опять для сравнения и видим на ней установленный наш отбор по ссылке:
2) Рассмотрим более сложный пример со справочником «Основные средства».
Размещаем над списком 7 элементов:
Где 1 – это просто метка, а остальные реквизиты имеют следующие типы:
Добавим в модуль списка новую процедуру ЭлементОтбораПриИзменении и впишем в нее следующий код:
Процедура ЭлементОтбораПриИзменении ( Элемент )
УстановитьОтборыФормы ();
КонецПроцедуры
Всем новым элементам (кроме метки, хе-хе) назначаем этот обработчик, чтобы не плодить их тучу однотипных:
Пишем процедуру установки снятия отбора:
мИерархияВкл = ЭлементыФормы . СправочникСписок . ИерархическийПросмотр ;
Если ( флПоИнвНомеру и НЕ ПустаяСтрока ( отбИнвНомер ))
или ( флПоПодразделению и ЗначениеЗаполнено ( отбПодразделение ))
или ( флПоМОЛ и ЗначениеЗаполнено ( отбМОЛ ))Тогда
Если мИерархияВкл Тогда
ЭлементыФормы . СправочникСписок . ИерархическийПросмотр = Ложь;
КонецЕсли;
ЭтаФорма . Отбор . Ссылка . ВидСравнения = ВидСравнения . ВСписке ;
ЭтаФорма . Отбор . Ссылка . Значение = СписокОС ;
ЭтаФорма . Отбор . Ссылка . Использование = Истина;
Иначе
Если ЭтаФорма . Отбор . Ссылка . Использование Тогда
ЭтаФорма . Отбор . Ссылка . Использование = Ложь;
ЭлементыФормы . СправочникСписок . ИерархическийПросмотр = мИерархияВкл ;
КонецЕсли;
КонецЕсли;
И пишем еще одну процедурку получения списка ссылок запросом.
Здесь мы будем получать последние сведения по ОС из регистров сведений:
- Инвентарный Номер из РС ПервоначальныеСведения
- Подразделение и МОЛ из РС МестонахождениеОС.
Запрос = Новый Запрос ;
Если флПоИнвНомеру и НЕ ( флПоПодразделению или флПоМОЛ ) Тогда
// отбор только по инв. номерам только
Запрос . Текст = "ВЫБРАТЬ
| ПервоначальныеСведенияОССрезПоследних.ОсновноеСредство
|ИЗ
| РегистрСведений.ПервоначальныеСведенияОСБухгалтерскийУчет.СрезПоследних(
| &пДата,
| ИнвентарныйНомер ПОДОБНО &пИнвНомер)
|КАК ПервоначальныеСведенияОССрезПоследних" ;
Если флПоПодразделению И ЗначениеЗаполнено ( отбПодразделение ) Тогда
аргУсловие = "МестонахождениеОССрезПоследних.Местонахождение = &пПодразделение"
КонецЕсли;
Если флПоМОЛ И ЗначениеЗаполнено ( отбМОЛ ) Тогда
стрМОЛ = "МестонахождениеОССрезПоследних.МОЛ = &пМОЛ" ;
аргУсловие = ?( ПустаяСтрока ( аргУсловие ), стрМОЛ , аргУсловие + " И " + стрМОЛ );
КонецЕсли;
Если НЕ флПоИнвНомеру Тогда
Запрос . Текст = "ВЫБРАТЬ
| МестонахождениеОССрезПоследних.ОсновноеСредство
|ИЗ
| РегистрСведений.МестонахождениеОСБухгалтерскийУчет.СрезПоследних(&пДата, )
|КАК МестонахождениеОССрезПоследних
|ГДЕ " + аргУсловие ;
Запрос . УстановитьПараметр ( "пИнвНомер" , "%" + СокрЛП ( отбИнвНомер ) + "%" );
Запрос . УстановитьПараметр ( "пДата" , ТекущаяДата ());
Запрос . УстановитьПараметр ( "пПодразделение" , отбПодразделение );
Запрос . УстановитьПараметр ( "пМОЛ" , отбМОЛ );
Результат = Запрос . Выполнить ();
сз = Новый СписокЗначений ;
сз . ЗагрузитьЗначения ( Результат . Выгрузить (). ВыгрузитьКолонку ( "ОсновноеСредство" ));
Теперь добавляем в список две новых колонки МОЛ и Местонахождение без привязки к данным
Установим их свойства «Видимость» в Ложь, чтобы они не светились в списке сразу. Их заполение мы будем обрабатывать в событии ПриПолученииДанных (см. ниже)
В свойстве ЭлементУправления обоим назначаем «Поле ввода»
В обработчик ПриПолученииДанных добавляем код для отображения значений наших добавленных колонок:
Процедура СправочникСписокПриПолученииДанных ( Элемент , ОформленияСтрок )
…
// создаем структуру для получения сведений из регистра
СтруктураОтбора = Новый Структура ;
СтруктураОтбора . Вставить ( "Организация" , Организация );
СтруктураОтбора . Вставить ( "ОсновноеСредство" , ДанныеСтроки . Ссылка );
// будем запрашивать и выводить данные только при видимости наших колонок
Если ОформлениеСтроки . Ячейки . МОЛ . Видимость
или ОформлениеСтроки . Ячейки . Местонахождение . Видимость Тогда
РегистрыСведений . МестонахождениеОСБухгалтерскийУчет . ПолучитьПоследнее (
ОформлениеСтроки . Ячейки . МОЛ . Значение = МестонахождениеОС . МОЛ ;
ОформлениеСтроки . Ячейки . Местонахождение . Значение =
МестонахождениеОС . Подразделение ;
КонецЕсли;
Открываем список ОС, устанавливаем видимость наших новых колонок МОЛ и Местонахождение, вводим критерии отбора и вуаля:
P . S .
Недостаток рассмотренного подхода в том, что если ранее был каким-либо образом установлен отбор по ссылке, то он будет затерт нашим.
Привет, Хабр!
В этой статье мы начнем рассказ о том, как устроена внутри платформа «1С:Предприятие 8» и какие технологии используются при ее разработке.
Нативные приложения
- STL (в частности, строки, контейнеры и алгоритмы)
- множественное наследование, в т.ч. множественное наследование реализации
- шаблоны
- исключения
- умные указатели (собственная реализация)
Компоненты
- Разделение способствует лучшему проектированию, в частности лучшей изоляции кода
- Из набора компонентов можно гибко собирать разные варианты поставки:
- Например, инсталляция тонкого клиента будет содержать wbase, но не будет backend
- а на сервере wbase, наоборот, не будет
- оба варианта будут, конечно, содержать nuke и bsl
- Предоставляет фабричные методы, позволяющие создать класс из другой компоненты зная только его название (без раскрытия реализации)
- Предоставляет инфраструктуру умных указателей с подсчетом ссылок. За временем жизни SCOM-класса не нужно следить вручную
- Позволяет узнать реализует ли объект конкретный интерфейс и автоматически привести указатель на объект к указателю на интерфейс
- Создать объект-сервис, всегда доступный через метод get_service и т.д.
Этот макрос опишет специальный статический класс-регистратор, конструктор которого будет вызван при загрузке компоненты в память.
После это можно создать его экземпляр в другой компоненте:Для поддержки сервисов SCOM предлагает дополнительную, достаточно сложную инфраструктуру. Центральным в ней является понятие SCOM-процесса, который служит контейнером для запущенных сервисов (т.е. выполняет роль Service Locator), а также содержит привязку к локализуемым ресурсами. SCOM процесс привязывается к потоку ОС. Благодаря этому внутри приложения можно вот так получать сервисы:
Более, того переключая логические (SCOM) процессы привязанные к потоку, можно получить практически независимые с точки зрения информационного пространства приложения, выполняющиеся в рамках одного потока. Так устроен наш тонкий клиент, работающий с файловой базой — внутри одного процесса ОС находятся два SCOM-процесса, один связан с клиентом, а второй — с сервером. Такой подход позволяет унифицировать написания кода, который будет работать как на локальной файловой базе, так и в «настоящем» клиент-серверном варианте. Цена за такое единообразие — накладные расходы, но практика показывает, что они того стоят.
На основе компонентной модели SCOM реализована и бизнес-логика и интерфейсная часть 1С: Предприятия.
Пользовательский интерфейс
Кстати, об интерфейсах. Мы не используем стандартные контролы Windows, наши элементы управления реализованы напрямую на Windows API. Для Linux-версии сделана прослойка, работающая через библиотеку wxWidgets.
Библиотека элементов управления не зависит от других частей «1С:Предприятия» и используется нами еще в нескольких небольших внутренних утилитах.За годы развития 1С:Предприятие внешний вид контролов менялся, но серьезное изменение принципов произошло только один раз, в 2009 году, с выходом версии 8.2 и появлением «управляемых форм». Помимо изменения внешнего вида, фундаментально изменился принцип компоновки формы — произошел отказ от попиксельного позиционирования элементов в пользу flow-компоновки элементов. Кроме того, в новой модели элементы управления работают не напрямую с доменными объектами, а со специальными DTO (Data Transfer Objects).
Эти изменения позволили создать веб-клиент «1С:Предприятия», повторяющий С++ логику контролов на JavaScript. Мы стараемся поддерживать функциональную эквивалентность между тонким и веб клиентами. В том случае, когда это невозможно, например, из-за ограничений доступных из JavaScript API (например, возможности работы с файлами очень ограничены), мы часто реализуем нужную функциональность при помощи расширений браузеров, написанных на C++. На данный момент мы поддерживаем Internet Explorer и Microsoft Edge (Windows), Google Chrome(Windows), Firefox (Windows и Linux) и Safari (MacOS).Кроме того, технология управляемых форм используется для создания интерфейса мобильных приложений на платформе 1С. На мобильных устройствах отрисовка контролов реализована с использованием «родных» для операционной системы технологий, но уже для логики компоновки формы и реакции интерфейса используется тот же код, что и в «большой» платформе «1С:Предприятие».
Интерфейс 1С на ОС Linux
Интерфейс 1С на мобильном устройстве
Интерфейс 1С на ОС Windows
Интерфейс 1С — веб-клиентOpen source
Заключение
В статье мы коснулись нескольких основных аспектов разработки платформы «1С: Предприятие». В ограниченном объеме статьи мы затронули лишь некоторые интересные, на наш взгляд, аспекты.
Общее описание различных механизмов платформы можно посмотреть тут.
Какие темы были бы интересны Вам в следующих статьях?Как реализована мобильная платформа 1С?
Описание внутреннего устройства веб-клиента?
Или, может быть, Вам интересен процесс выбора фич для новых релизов, разработки и тестирования?Продолжение одинэсной темы, ответы на книгу Радченко, занятие 2 и 3.
Для чего используется объект конфигурации "Подсистема"?
Подсистема - основной элемент для построения интерфейса 1С:Предприятие. Подсистемы выделяют в конфигурации функциональные части, на которые логически разбивается прикладное решение.Как описать логическую структуру при помощи Подсистем?
При помощи разделения на функциональные части, представляющие собой отдельные предметные области.Как управлять порядком вывода и отображения подсистем в конфигурации?
Правый клик мыши по конфигурации, выбираем команду "Открыть командный интерфейс конфигурации", поменять позиции можно с помощью стрелочек.Управление порядком вывода подсистем.
Что такое окно редактирования объекта конфигурации и в чем его отличие от панели свойств?Окно редактирования - в основном используется для создания новых объектов.
Палитра свойств - не привязано к конкретному объекту конфигурации.Для чего предназначен объект конфигурации Справочник?
Справочник предназначен для работы со списками данных, описания их свойств и структуры.Какие характерные особенности объекта конфигурации Справочник?
Справочник состоит из элементов; Каждый элемент представляет собой отдельную запись в таблице, хранящей информацию из этого справочника;
Элемент также может содержать дополнительную информацию, которая подробнее описывает этот элемент - одинаковый для всех элементов справочника - реквизит; Реквизит также является объектом конфигурации;Для чего используются реквизиты и табличные части справочника?
Реквизиты используются для описания дополнительной информации, описывающей элемент справочника;
Табличная часть используется для описания информации элемента справочника, одинаковой по структуре, но различной по количеству.Зачем нужны иерархические справочники и что такое Родитель?
Иерархические справочники нужны для группировки элементов справочника по какому-либо признаку или принципы. Различаются несколько типов иерархий: иерархия групп и элементов - элемент справочника, представляющий группу - родитель для всех элементов и групп, входящих в эту группу;
Иерархия элементов - родителем является не группой элементов справочника, а непосредственно сам элемент.Зачем нужны подчиненные справочники и что такое Владелец?
Элементы одного справочника могут быть подчинены элементам другого справочника, и в таком случае устанавливается связь один-ко-многим. Так же может быть использована связь один-к-одному, когда каждый элемент подчиненного справочника связан с одним из элементов справочника-владельца.Какие основные формы существуют у справочника?
Форма элемента - для редактирования или создания элемента справочника;
Форма группы - для редактирования или создания группы справочника;
Форма списка - для отображения списка элементов в справочнике;
Форма выбора группы - для выбора одной из группы справочника;Что такое предопределенные элементы справочника?
Элементы справочника, создающиеся в конфигураторе, данные элементы пользователь удалить не может; Служат для хранения информации всегда, независимо от действий пользователя;Чем с точки зрения конфигурации отличается обычный элемент от предопределенного?
На предопределенные элементы могут быть завязаны алгоритмы работы конфигурации, следовательно, система добавляет эти элементы в структуру базы данных сама, без участия пользователя.Как пользователь может отличить обычный элемент от предопределенного?
С помощью пиктограммы
Как создать объект конфигурации справочник и описать его структуру?
Создать новый справочник - структура - на вкладках иерархия, данные, рисунки сюдаПродолжение одинэсной темы, ответы на книгу Радченко, занятие 2 и 3.
Для чего используется объект конфигурации "Подсистема"?
Подсистема - основной элемент для построения интерфейса 1С:Предприятие. Подсистемы выделяют в конфигурации функциональные части, на которые логически разбивается прикладное решение.Как описать логическую структуру при помощи Подсистем?
При помощи разделения на функциональные части, представляющие собой отдельные предметные области.Как управлять порядком вывода и отображения подсистем в конфигурации?
Правый клик мыши по конфигурации, выбираем команду "Открыть командный интерфейс конфигурации", поменять позиции можно с помощью стрелочек.Управление порядком вывода подсистем.
Что такое окно редактирования объекта конфигурации и в чем его отличие от панели свойств?Окно редактирования - в основном используется для создания новых объектов.
Палитра свойств - не привязано к конкретному объекту конфигурации.Для чего предназначен объект конфигурации Справочник?
Справочник предназначен для работы со списками данных, описания их свойств и структуры.Какие характерные особенности объекта конфигурации Справочник?
Справочник состоит из элементов; Каждый элемент представляет собой отдельную запись в таблице, хранящей информацию из этого справочника;
Элемент также может содержать дополнительную информацию, которая подробнее описывает этот элемент - одинаковый для всех элементов справочника - реквизит; Реквизит также является объектом конфигурации;Для чего используются реквизиты и табличные части справочника?
Реквизиты используются для описания дополнительной информации, описывающей элемент справочника;
Табличная часть используется для описания информации элемента справочника, одинаковой по структуре, но различной по количеству.Зачем нужны иерархические справочники и что такое Родитель?
Иерархические справочники нужны для группировки элементов справочника по какому-либо признаку или принципы. Различаются несколько типов иерархий: иерархия групп и элементов - элемент справочника, представляющий группу - родитель для всех элементов и групп, входящих в эту группу;
Иерархия элементов - родителем является не группой элементов справочника, а непосредственно сам элемент.Зачем нужны подчиненные справочники и что такое Владелец?
Элементы одного справочника могут быть подчинены элементам другого справочника, и в таком случае устанавливается связь один-ко-многим. Так же может быть использована связь один-к-одному, когда каждый элемент подчиненного справочника связан с одним из элементов справочника-владельца.Какие основные формы существуют у справочника?
Форма элемента - для редактирования или создания элемента справочника;
Форма группы - для редактирования или создания группы справочника;
Форма списка - для отображения списка элементов в справочнике;
Форма выбора группы - для выбора одной из группы справочника;Что такое предопределенные элементы справочника?
Элементы справочника, создающиеся в конфигураторе, данные элементы пользователь удалить не может; Служат для хранения информации всегда, независимо от действий пользователя;Чем с точки зрения конфигурации отличается обычный элемент от предопределенного?
На предопределенные элементы могут быть завязаны алгоритмы работы конфигурации, следовательно, система добавляет эти элементы в структуру базы данных сама, без участия пользователя.Как пользователь может отличить обычный элемент от предопределенного?
С помощью пиктограммы
Как создать объект конфигурации справочник и описать его структуру?
Создать новый справочник - структура - на вкладках иерархия, данные, рисунки сюдаНа вкладке Иерархия можно выбрать тип иерархии элементов. На вкладке Данные происходит определение реквизитов и табличных частей Для добавления элемента необходимо нажать на кнопку "Создать". Как создать группу справочника?
Через режим 1С:ПредприятиеЕсли данный справочник поддерживает возможность создания групп (иерархический справочник), то будет активна кнопка "добавить группу" Зачем нужна основная конфигурация и конфигурация Базы Данных?
Основная конфигурация - конфигурация для разработчика. Конфигурация Базы Данных - для работы с пользователями.Как изменить конфигурацию Базы Данных?
Никак. Можно только провести обновление до состояния основной конфигурации.Как связаны объекты конфигурации и объекты базы данных?
Объекты конфигурации описывают хранилища, таблицы. А объекты Базы Данных - записи, которые содержатся в этих таблицах.Что такое подчиненные объекты конфигурации?
Реквизиты, табличные части и др.Зачем нужна проверка заполнения реквизитов у справочника?
Чтобы пользователь не мог ввсети пустые или некорректные записи.Что такое быстрый выбор и когда его использовать?
Для выбора элементов не из отдельной формы, а из выпадающего списка, заполненного элементами этого справочника.Как отобразить справочник и определить его представление в различных разделах интерфейса приложения?
Чтобы отобразить - правый клик по справочнику, вкладка "Изменить", вкладка "Подсистемы".
Представление справочника - вкладка "Основные", потом Общие - подсистемы - все подсистемы. сюда рисункиКак отобразить команды создания нового элемента справочника в интерфейсе подсистем?
Общие - подсистемы - все подсистемы - галка "Номенклатура: создать"Как редактировать командрый интерфейс подсистемы?
Общие - подсистемы - все подсистемы. Вверху - поле "Командный интерфейс"Какие стандартные панели используются в интерфейсе приложения, и как выполнить настройку расположения этих панелей в конфигураторе и в режиме «1С:Предприятие»?
Панель разделов; панель команд текущего раздела (если они заданы; содержит команды, соответствующие выделенному разделу; в начале панели расположены команды, позволяющие открыть какие-либо списки, а затем команды, позволяющие создать новые элементы данных, сформировать какой-нибудь отчёт или выполнить обработку); панель инструментов и информационная панель (панель избранного, панель истории, панель открытых. ).
Настройка расположения этих панелей в конфигураторе выполняется следующим образом:
Выделим корень дерева объектов нашей конфигурации, нажатием правой кнопки мыши вызовем контекстное меню и выберем пункт "Открыть интерфейс клиентского приложения". В появившемся окне справа находится список всех стандартных панелей прикладного решения. Перетаскиванием их в левую часть окна или удалением их оттуда настроим желанное отображение панелей.
Настройка расположения сиих панелей в режиме «1С:Предприятие» осуществляется так:
Главное меню -> Вид -> Настройка панелей -> Выделением и перетаскиванием мышью настроим желанное отображение панелей.177 комментариев:
А на последний вопрос))) Такой же лентяй ))
а какой там последний вопрос?
Какие стандартные панели используются в интерфейсе приложения, и как выполнить настройку расположения этих панелей в конфигураторе и в режиме «1С:Предприятие»?
Видимо, книга по 1С 8.2, которую изучал в 2013-ом году Vetetranga, не содержала этого вопроса.
Отвечу за него сейчас:
Панель разделов; панель команд текущего раздела (если они заданы; содержит команды, соответствующие выделенному разделу; в начале панели расположены команды, позволяющие открыть какие-либо списки, а затем команды, позволяющие создать новые элементы данных, сформировать какой-нибудь отчёт или выполнить обработку); панель инструментов и информационная панель (панель избранного, панель истории, панель открытых. ).
Настройка расположения этих панелей в конфигураторе выполняется следующим образом:
Выделим корень дерева объектов нашей конфигурации, нажатием правой кнопки мыши вызывем контекстное меню и выберем пункт "Открыть интерфейс клиентского приложения". В появившемся окне справа находится список всех стандартных панелей прикладного решения. Перетаскиванием их в левую часть окна или удалением их оттуда настроим желанное отображение панелей.
Настройка расположения сиих панелей в режиме «1С:Предприятие» осуществляется так:
Главное меню -> Вид -> Настройка панелей -> Выделением и перетаскиванием мышью настроим желанное отображение панелей.Также он пропустил и 11-ый вопрос к занятию 3 - "Как задать синоним стандартного реквизита?".
Отвечаю на него:
На закладке "Данные" нажмём внизу окна кнопку "Стандартные реквизиты". Выделим в списке нужный реквизит и двойным щелчком мыши откроем его палитру свойств. Установим свойство "Синоним" такое, какое нам нужно.пы сы:
Благодарю за проделанный труд!! (ИльяНН)Спасибо вам, добавил в пост ваш ответ. А я еще в 2013 году лоханулся и купил книгу издательства 2010 года, так что за 6 лет действительно могли набежать изменения)
Этот комментарий был удален автором.
В вопросе: "Какие основные формы существуют у справочника?", не хватает одной формы.
1.Форма элемента
2.Форма группы
3.Форма списка
4.Форма выбора (вот она)
5.Форма выбора группы
(5 форм всего, а у Вас четыре).Как настроить командный интерфейс разделов приложения?
Братан ты лучший
Если срочно нужны средства, Рейтинг кредитов Тогда мфк является быстрым и эффективным союзником в решении возникшей проблемы. Мфк предоставляет возможность оформлять кредиты всем категориям физических лиц. Есть онлайн-регистрация, при этом потребителю не нужно куда-то ехать, и оформлять огромный пакет бумаг. Интернет-сервисы позволяют покупать деньги не позднее, чем через короткое время после регистрации формы. Существует мгновенный обзор анкеты. Практически любой желающий может воспользоваться уникальным и выгодным предложением. Чтобы соответствовать такому правилу, вам необходимо будет соответствовать следующим параметрам: - • Возраст - старше примерно 20 лет; - * гражданство - российская федерация. Все. Никаких дополнительных критериев нет. Некоторые мфк указывают на наличие стабильного дохода и не регрессирующего в размере государства. Но почти никто не потребует от вас наличия корочек, подтверждающих этот статус. Частные предприниматели имеют возможность получить кредит при отсутствии справки о доходах, трудовой книжки и т. Д. Для подписания кредитного договора вам понадобится только паспорт гражданина российской федерации. Ряд учреждений дополнительно запрашивают снилс. Что касается технического оснащения, вам нужна онлайн-почта, банковская карта, смартфон и онлайн-пространства для размещения заказа. Зарабатывать деньги можно после того, как появится альтернативное программное обеспечение компании, и ей будет выдана услуга. Процедура получения занимает не более 12 минут. Существует автоматизированная сеть рассмотрения заявок. Алгоритм проектирования выглядит следующим образом: - 1. Определите методы кредитования. - 2. Отправьте запрос в выбранную мфк. При необходимости предварительно зарегистрируйтесь; - 3. Подпишите электронный договор по электронной почте или в своем офисе; - 4. Получите кредитную карту. Мы оказываем помощь в поиске и приобретении банковских услуг, мы поможем вам заказать подходящую микрофинансовую компанию, в которой вам будет одобрен быстрый кредит и вам гарантированы деньги.
С этого года в нашей стране действуют юридические табу на переплату по кредитам в течение полугода, даже по максимальной ставке по всем кредитам (менее 1% в день). Нововведения оказали наибольшее влияние на более выгодные кредиты для мфо "до зарплаты" - выдача таких кредитов для многих компаний стала "экономически нецелесообразной", отмечают аналитики. В финале участники рынка начали сокращать долю краткосрочных кредитов и увеличивать сроки погашения кредитов. Мфо хотели выдавать больше кредитов, не включая долговое бремя финансирования клиентов Отныне происходит одно, а также в сегменте интернета - компании доработали продукты так, что формально кредиты pdl не считаются кредитами, говорит иван уклеин, директор департамента рейтингов кредитных организаций "эксперт ра": "ни одна мфо не переориентировалась с краткосрочных микрозаймов на долгосрочные продукты с аннуитетными платежами (180-360 дней под 150-200%), после чего на промежуточный продукт (31 - пара месяцев под 365%) с синхронным увеличением счета до ста процентов тысяч рублей. Что при той же ставке позволяет кредитору зарабатывать больше, не отражая такой микрокредит в отчетности как pdl." По данным банка российской федерации, в другом квартале следующего года портфель мфо вырос на семь%, до 286 млрд рублей, что соответствует докризисным уровням текущего года. Развитие рынка происходило и происходит в основном за счет цифровизации и предоставления потребительских микрокредитов онлайн, подчеркивает центральный банк. Такие кредиты сейчас составляют 28 % портфеля, но за квартал портфель среднесрочных онлайн-кредитов вырос на тридцать, а краткосрочных – на 12 %. Всего за один квартал мфо дистанционно заключили семь, восемь миллионов новых договоров - 71 % от общего числа. За 6 месяцев число россиян, имеющих микрозаймы, выросло абсолютно на 20%. Финансы Как отмечает уклейн, такая "номинальная" миграция на пути к среднесрочным кредитам должна вызывать тревогу. "Промежуточные продукты, проще говоря, являются точно такими же pdl с погашением в конце срока, однако теперь это предоставляется на более длительный срок и в очень высокой сумме. С точки зрения макропруденциальных рисков это повышает кредитоспособность заемщиков, поскольку ставка по таким микрозаймам остается близкой к 365 % годовых", - поясняет аналитик. Рбк разослал тему крупнейшим мфо в портфеле потребительских кредитов. Группа "финбридж" (бренды "куш немедленно" и lemon.Онлайн) сообщил, как в другом квартале "они специально не отказались от продуктов pdl", но обновили линейку благодаря среднесрочным кредитам. " Структура спроса меняется, накапливается все больше заемщиков, склонных к большим расходам и долгосрочному финансовому планированию", - пояснил управляющий партнер группы леонид корнилов. По его словам, основной причиной изменения тренда в следующем году является более необычный продукт, и довольно часто компании только сейчас смогли оформить структуру онлайн. Остальные микрофинансовые компании не брали трубку по просьбе рбк. У владельцев есть некоторые вопросы о том, где и можете ли вы использовать займ до зарплаты, У вас может быть возможность посетить нас на нашем портале.
Работа с полем выбора
Элемент управления "Поле выбора" предназначен для хранения и быстрого выбора одного из значений, входящих в его список выбора. Список выбора для поля выбора есть список значений. Значением поля выбора является одно единственное значение, а не весь список выбора.
Установка значения в поле выбора
В Поле выбора можно установить любое значение. В процессе установки значения будет выполнен его поиск среди значений, входящих в список выбора. Если устанавливаемое значение найдено в списке выбора, оно будет сохранено в поле выбора, иначе в поле выбора будет установлено значение "Неопределено". Исключение составляет значение "Неопределено", которое можно установить в поле выбора в любом случае, независимо от того, какие значения при этом хранятся в списке выбора.
Например, если список выбора имеет значениями числа 1, 2 и 3, тогда в поле выбора удастся установить любое из этих значений. При установке других значений, хотя ошибки времени выполнения и не произойдет, они сохранены не будут.
Представление значения, хранящегося в поле выбора
В качестве представления значения, хранящегося в поле выбора, используется представление элемента списка выбора, значение которого эквивалентного значению поля выбора. Если у элемента списка выбора представление не указано, оно формируется в виде текстового представления самого значения. В ситуациях, когда в списке выбора есть несколько одинаковых значений с разными представлениями, будет использоваться первое найденное из этих значений. Представление значения при этом будет сформировано на его основе, как описывалось выше.
Поиск значения в поле выбора по введенному тексту
Поиск значений по тексту осуществляется на основе представлений для элементов списка выбора. Для тех из элементов, в которых представление значения не указано, используется представление самого значения, хранящегося в нем.
Связь поля выбора с данными
Поле выбора можно связывать по данным с выбираемым значением, а не со списком значений. Например, если мы хотим, чтобы в поле выбора можно было выбирать число, и оно было связано по данным со значением некоторого реквизита, типом данных для реквизита должно быть число, а не список значений.
Особенности инициализации и использования списка выбора
Для правильного отображения в поле выбора данных, с которыми он связан, список выбора должен формироваться в теле модуля формы. Формировать список выбора для поля выбора в обработчике любого из событий формы – поздно. Это приведет к тому, что в поле выбора будет установлено значение "Неопределено", хотя в реквизите при этом может быть любое значение.
Такая ситуация возникает из-за того, что данные устанавливаются в элементы управления формы, связанные с ними, в процессе создания формы. А обработчики событий ПередОткрытием(), ПриОткрытии() вызываются после создания самой формы, в процессе инициализации ее визуальной части. Получается, что при создании формы полю выбора поставили некоторое значение в момент, когда его список выбора пустой. При этом, поскольку список выбора пустой, вместо устанавливаемого значения в поле выбора будет сохранено значение "Неопределено".
При смене типа значения (свойство "ТипЗначения") для списка выбора, у которого есть элементы, будет выполнено преобразование их значений к новому типу. Может быть следующая ситуация: после смены типа значения для списка выбора некоторое значение, которое раньше удавалось успешно установить в поле выбора, после смены типа значения установить не получается. Причина такой ситуации в том, что в процессе установки типа значения для списка выбора, успешно устанавливаемое ранее значение было конвертировано в другое значение (в соответствии с новым типом значения). Соответственно, устанавливаемое значение в списке выбора больше найдено не будет.
Использование поля выбора: пример 1
Пусть есть форма, в которой размещены поле выбора (ПолеВыбора1), поле ввода (ПолеВвода1) и создан реквизит (Реквизит1: число, длина = 10, точность = 0). В качестве данных для редактирования в ПолеВвода1 и ПолеВыбора1 стоит реквизит Реквизит1. В теле модуля формы написан следующий код:
Открыв такую форму в режиме 1С:Предприятие, можно видеть, как будут устанавливаться значения в поле выбора:
1. В начальном состоянии поле выбора - пустое, поле ввода содержит значение 0.
2. Выбираем в поле выбора в выпадающем списке строку с надписью "Один": в поле ввода помещается значение 1. Поскольку поле ввода и поле выбора связаны с одним и тем же реквизитом формы, при изменении значения в поле ввода оно устанавливается в поле выбора и наоборот. В данном случае в поле выбора выбрали строку "Один", значение для которой равно 1. Оно и отобразилось в поле ввода.
3. Выбираем в поле выбора в выпадающем списке строку с надписью "Два": в поле ввода помещается значение 2.
Перейдем в поле ввода и попробуем редактировать значения в нем:
1. Введем в поле ввода значение 3 и сойдем с поля ввода. В поле выбора запишется значение 3 и установится значение из соответствующей строки списка выбора поля выбора ("Три").
2. Вернемся в поле ввода и введем в нем значение 4. Перейдем с поля ввода к следующему элементу управления. В поле ввода будет сохранено введенное значение "4", а поле выбора станет пустым. В данном случае введенное в поле ввода значение 4 будет сохранено в связанных с полем ввода данных, после чего выставлено из них в поле выбора. Поскольку поле выбора в списке выбора значения 4 не имеет, оно установлено в поле выбора не будет.
Использование поля выбора: пример 2
Пусть есть форма, в которой размещены поле выбора (ПолеВыбора1), поле ввода (ПолеВвода1) и создан реквизит (Реквизит1: СправочникСсылка.Номенклатура). В качестве данных для редактирования в ПолеВвода1 и ПолеВыбора1 стоит реквизит Реквизит1. В теле модуля формы написан следующий код:
Открыв такую форму в режиме 1С:Предприятие, можно видеть, как будут устанавливаться значения в поле выбора:
1. В начальном состоянии поле выбора и поле ввода - пустые:
2. Выбираем в поле выбора в выпадающем списке строку с надписью "Один": в поле ввода помещается значение. Поскольку поле ввода и поле выбора связаны с одним и тем же реквизитом формы, при изменении значения в поле ввода оно устанавливается в поле выбора и наоборот. В данном случае в поле выбора выбрали строку "Один", значение для которой равно ссылке на на элемент справочника Справочники.Номенклатура.Элемент1. Оно и отобразилось в поле ввода.
3. Выбираем в поле выбора в выпадающем списке строку с надписью "Два": в поле ввода помещается ссылка на элемент справочника Справочники.Номенклатура.Элемент2:
Перейдем в поле ввода и попробуем редактировать значения в нем:
1. Выберем в поле ввода значение Справочники.Номенклатура.Элемент1. В поле выбора запишется значение Справочники.Номенклатура.Элемент1 и установится значение из соответствующей строки списка выбора поля выбора ("Один").
2. Выберем в поле ввода значение Справочники.Номенклатура.Элемент2. В поле выбора запишется значение Справочники.Номенклатура.Элемент2 и установится значение из соответствующей строки списка выбора поля выбора ("Два").
3. Выберем в поле ввода значение Справочники.Номенклатура.Элемент3. В поле выбора значение Справочники.Номенклатура.Элемент3 записано не будет, поскольку оно не было добавлено в список выбора. Значением в поле ввода будет "Неопределено":
Использование поля выбора: пример 3
Пусть есть внешняя обработка, в которой создан реквизит Реквизит1 типа СправочникСсылка.Номенклатура. Во внешней обработке есть две формы: в первой устанавливается значение реквизита и по нажатию на кнопку открывается вторая форма.
В левой колонке - внешний вид первой формы внешней обработки. По нажатию на кнопку "Открыть форму" из поля ввода берется значение и сохраняется в реквизите внешней обработки, после чего открывается вторая форма:
В правой колонке - внешний вид второй формы внешней обработки. В ней размещены поле выбора и поле ввода; они оба связаны с реквизитом внешней обработки Реквизит1 по данным. Приведем текст модуля формы:
Мы видим,. что в модуле формы инициализируется список выбора для поля выбора: поле выбора может принимать значения Справочники.Номенклатура.Элемент1, Справочники.Номенклатура.Элемент2, Неопределено. При этом для двух первых значений явно указаны их представления - "Один" и "Два".
Посмотрим, как будет выглядеть вторая форма в зависимости от того, какое значение сохранено предварительно в реквизите внешней обработки Реквизит1.
Значение реквизита - пустая ссылка:
В данном случае в поле ввода значением будет пустая ссылка на элемент справочника, а в поле выбора - Неопределено . Поскольку в списке выбора для поля выбора пустая ссылка на элемент справочника в значения не входит, ее установить нельзя - при установке значения в виде пустой ссылки поле выбора примет значение Неопределено .
Значение реквизита - одно из значений, имеющихся в списке выбора для поля выбора:
В данном случае и в поле ввода, и в поле выбора значением будет ссылка на Элемент1 справочника. При этом для представления значения поле выбора воспользуется представлением установленного значения из списка выбора - строкой "Один".
Значение реквизита в списке выбора для поля выбора отсутствует:
В данном случае в открываемой форме в поле выбора и поле ввода будет произведена попытка установить в качестве значения ссылку на Элемент3 справочника. В поле ввода такое значение будет нормально установлено, а вот в поле выбора после его установки сохранится значение Неопределено , поскольку ссылка на Элемент3 справочника в значения из списка выбора не входит.
Заметим, что в данном примере в случае переноса инициализации списка выбора для поля выбора в любой из обработчиков событий открываемой формы в каждом из рассмотренных случаев поле выбора будет принимать значение Неопределено , поскольку на момент установки значения в него список выбора будет еще пустой.
Читайте также:
- На что лучше учиться на бухгалтера или программиста 1с
- Для включения драйвера wintun необходимо в файле конфигурации сервера включить параметр
- Вид антивирусных программ которые обнаруживают вирусы путем определения
- Как сделать красивый график в excel
- Как установить программу электронной почты на компьютере бесплатно