В какое значение можно установить свойство серии кодов

Методическая рекомендация (полезный совет)
Длины кодов (номеров) объектов конфигурации задаются в зависимости от их прикладного смысла.
- Необходимость применения кодов (номеров) объектов конфигурации определяется из их прикладного смысла. Основания для применения кодов (номеров):
1.1. Пользователям предстоит работать со списками, содержащими большое количество элементов.
Пример: справочник Номенклатура.1.2. Искать данные по коду (номеру) удобнее, чем по другим свойствам.
Например, справочник Статьи расходов. Пользователю проще запомнить код, чем каждый раз вчитываться в название статьи. Кроме того, названия статей могут меняться.1.3. Код имеет прикладной смысл, продиктованный спецификой автоматизируемой области.
Например, код справочника Единицы измерения соответствует коду единицы измерения в ОКЕИ, код справочника Номера ГТД соответствует номеру грузовой таможенной декларации и т.д. - Необходимость применения автонумерации объектов конфигурации отсутствует в следующих случаях:
2.1. Код используется как краткое представление элемента данных в виде строки.
Например, для справочника Пользователи автонумерация не применяется, т.к. в коде хранится краткое имя пользователя (логин).2.2. Код (номер) получается из внешних источников (т.н. входящие данные).
Например, это все классификаторы.
Другой пример – справочник Номера ГТД, код которого вводится исходя из данных входящих документов. - Длина кода (номера) устанавливается в зависимости от его прикладного назначения и метода получения (ввода):
3.1. Для объектов с автонумерацией длина кода (номера) выбирается, исходя из потенциального количества всех объектов, хранимых в базе данных;
объектов, относящихся к определенному периоду (для документов и бизнес-процессов);
или объектов, относящихся к определенному владельцу (иерархические и подчиненные справочники, задачи).
При этом в длине номера необходимо учитывать длину префиксов нумерации, например, префикс информационной базы, префикс организации, если это предусмотрено конфигурацией и т.п.При разработке типовых конфигураций рекомендуемыми, но не обязательными к применению являются длины кодов (номеров) из следующего ряда: 3, 5, 9, 11. При этом в длине номера необходимо учитывать длину префиксов нумерации, например, префикс информационной базы, префикс организации, если это предусмотрено конфигурацией и т.п.
Если в конфигурации используется подсистема Префиксация объектов из Библиотеки стандартных подсистем, то совокупную длину (с учетом префикса) номеров документов и кодов справочников рекомендуется устанавливать не менее 11 символов (11, 13, 15, …). Подробнее см. документацию к подсистеме “Префиксация объектов” на ИТС.
3.2. Для объектов, в которых код используется как краткое представление элемента данных в виде строки (см. п. 2.1) длина кода устанавливается достаточной для хранения краткого строкового представления объектов исходя из прикладного смысла кода.
3.3. Для объектов, в которых код (номер) получается из внешних источников (см. п. 2.2), длина кода (номера) зависит от этого источника.
3.4. Рекомендуется устанавливать допустимую длину кода (номера) объектов переменной.
В случае если прикладное решение рассчитано на работу с данными, которые могут вводиться параллельно из нескольких мест (в рамках РИБ, в других программах), в нем должна быть реализована возможность автоматической префиксации объектов конфигурации, для которых выполняются следующие условия:
– используется строковый код (номер),
– используется автонумерация,
– данные, соответствующие области, в пределах которой коды (номера) должны быть уникальными, могут вводиться параллельно из нескольких мест (узлов РИБ, программ) и впоследствии консолидироваться, например, в результате выполнения синхронизации данных. Пример такой области для большинства видов документов – организация и период.
При использовании в конфигурации Библиотеки стандартных подсистем реализовать данное требование позволяет подсистема Префиксация объектов.
Источник
В данном разделе рассматриваются особенности работы механизма автонумерации на примере справочника.
Что такое автонумерация и зачем она нужна?
Автоматическая нумерация элементов справочников позволяет устанавливать во вновь создаваемых элементах уникальные коды. При этом создаваемые коды элементов последовательно увеличиваются.
Формирование нового уникального кода справочника зависит от того, как у справочника настроены серии кодов:
- во всем справочнике – в процессе формирования нового кода для элемента справочника будет сформирован код, уникальный во всем справочнике;
- в пределах подчинения – в процессе формирования нового кода для элемента справочника будет сформирован код, уникальный в пределах иерархии элемента (элементы, имеющие одного и того же родителя будут иметь различные коды, элементы, имеющие разных родителей могут иметь одинаковые коды);
- в пределах подчинения владельцу – в процессе формирования нового кода для элемента справочника будет сформирован код, уникальный в пределах подчинения (элементы, имеющие одного и того же владельца будут иметь различные коды; элементы, имеющие различных владельцев могут иметь одинаковые коды).
Последовательное увеличение кодов элементов справочника в процессе автонумерации будет происходить таким образом, чтобы создаваемый код справочника соответствовал настройке серии кодов.
Рассмотрим пример. Пусть есть справочник: иерархический, иерархия элементов, серии кодов – в пределах подчинения, автонумерация – включена.
Добавим в справочник первый элемент:
На рисунке видно, что автоматическая нумерация элементов справочника началась с 000001.
Добавим в справочник второй элемент:
Добавим в него еще один элемент, который будет дочерним для второго элемента:
На рисунке видно, что в процессе автоматического формирования кода для нового элемента справочника была учтена настройка серии кодов: код для третьего элемента уникален только в пределах элементов, родителем которых является второй элемент.
Одной из особенностей автонумерации является использование лидирующих нулей. Это необходимо для того, чтобы поиск и сортировка по коду (номеру) работали эффективно. Для этого используется индекс базы данных по полю код (или номер). Использование индекса требует упорядоченной последовательности с точки зрения базы данных. Поэтому 1С:Предприятие 8 в процессе автоматического формирования новых кодов (номеров) всегда использует лидирующие нули.
Обеспечить правильную сортировку, например, документов по их номеру без использования лидирующих нулей невозможно. Например, пусть у нас есть документы со строковыми номерами “Док11” и “Док3”. В этом случае документ с номером “Док3” будет идти после документа с номером “Док11”, что неправильно.
Работа с префиксом кода справочника в процессе автонумерации
Установка префикса при формировании нового номера кода элемента имеет смысл только в том случае, если код элемента является строкой.
Для того чтобы при формировании нового кода (номера) устанавливать префикс, можно воспользоваться обработчиком события При установке нового кода. Это событие возникает в тот момент, когда начинается формирование нового кода, например нового кода элемента справочника. Синтаксис описания этого обработчика следующий:
ПриУстановкеНовогоКода(<Стандартная обработка>, <Префикс>),
где:
- <Стандартная обработка> – признак выполнения стандартной (системной) обработки события. Если в теле процедуры-обработчика установить данному параметру значение Ложь, стандартная генерация нового кода производиться не будет;
- <Префикс> – префикс, который будет использоваться для генерации кода.
Рассмотрим следующий пример. Пусть есть конфигурация для распределенной информационной базы, в которой с помощью префиксов обеспечивается формирование уникальных кодов справочников в каждом из узлов. Формирование такого уникального кода можно сделать так:
Копировать в буфер обмена
// Процедура обработчик события ПриУстановкеНовогоКода
// Подменяет префикс кода на предопределенный для данной ИБ
//
Процедура ПриУстановкеНовогоКода(СтандартнаяОбработка, Префикс)
Префикс = ПолучитьПрефиксНомера();
КонецПроцедуры // ПриУстановкеНовогоКода(СтандартнаяОбработка, Префикс)
где “ПолучитьПрефиксНомера” – экспортируемая функция общего модуля, возвращающая значение некоторой константы. При этом значение константы для каждого из узлов должно быть свое:
Копировать в буфер обмена
// Выдает префикс нового номера
//
// Возвращаемое значение:
// Строка – Префикс нового номера
//
Функция ПолучитьПрефиксНомера() Экспорт
Возврат Константы.ПрефиксНомеров.Получить();
КонецФункции // ПолучитьПрефиксНомера()
Наряду с использованием обработчика события При установке нового кода можно использовать метод объекта справочника УстановитьНовыйКод(). В параметре метода может быть передан нужный префикс – в этом случае среди кодов, имеющих данный префикс, будет найден максимальный, и новый код будет установлен как следующий от найденного максимального. Если префикс опущен – будет найден имеющийся максимальный код и новый код будет получен за счет увеличения правой числовой части найденного максимального. Нечисловая часть будет оставлена без изменений.
Следует учитывать, что если код элемента справочника является числом, префикс, возвращаемый из обработчика события При установке нового кода, использоваться не будет.
Поддержка автонумерации другими объектами метаданных
Кроме справочника, автонумерацию поддерживают следующие объекты метаданных:
- Документ;
- План видов характеристик;
- Бизнес-процесс;
- Задача.
Для документа, бизнес-процесса и задачи установку нового номера можно обработать в обработчике события При установке нового номера.
Для плана видов характеристик установку нового кода можно обработать в обработчике события При установке нового кода.
Источник
Справочники 1С — специализированный объект древа метаданных, который служит для хранения статичной информации справочного характера. Например, в типовых конфигурациях можно увидеть следующие виды: Контрагенты, Номенклатура, Сотрудники, Основные средства и т.д. Информация в справочниках, как правило, часто не изменяется. Справочники в дальнейшем используются практически во всех объектах учета как разрез учета или справочная информация.
Справочники в конфигураторе 1С 8
Ниже мы рассмотрим настройку и проектирование справочника из конфигуратора на примере справочника «Номенклатура».
Вкладка «Основные»
На вкладке «Основные» указывается имя, синоним, представление объектов, описание назначения.
Вкладка «Иерархия справочника»
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания – попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
Здесь устанавливается иерархичность справочника.
Иерархия в 1С 8.3 бывает двух типов — «групп и элементов» и «элементов«. Отличается тем, что в первом случае родителем (папкой) может быть только папка (группа), а во втором случае родителем может быть и элемент.
«Размещать группы сверху» — флаг отвечает за отображение групп в форме списка.
Также в настройках можно ограничить количество групп иерархии справочника соответствующей настройкой.
Вкладка «Владельцы»
Справочник может быть подчинен другому справочнику. С точки зрения конфигурирования 1С 8.3 это значит, что у подчиненного элемента становится обязательным реквизит «Владелец». Пример такой связи справочников в типовых конфигурациях «Номенклатура — Единицы Измерения», «Контрагенты-Договоры Контрагентов».
Владельцем справочника могут также быть следующие объекты метаданных: планы обмена, планы видов характеристик, планы счетов, планы видов расчета.
Вкладка «Данные»
Самая важная вкладка с точки зрения программиста. На ней указываются реквизиты справочника.
У справочника есть набор стандартных реквизитов, которые не редактируются программистом 1С 8.2, список их можно увидеть, нажав кнопку «Стандартные реквизиты»:
Остановлюсь на каждом подробнее:
- ЭтоГруппа — реквизит с типом булево, показывающий, группа это или элемент. Доступен только в иерархическом справочнике. Обратите внимание, значение этого реквизита невозможно изменить в режиме 1С: Предприятие.
- Код — реквизит, тип число или строка (как правило строка). Номер, присваиваемый системой автоматически. Как правило, рассчитывается как (предыдущий код + 1). Рекомендую использовать именно строковый тип, потому как сортировка числовых значений происходит не так, как нужно. Можно использовать как представление справочника в списке и в полях ввода. Как правило, используется для поиска элемента при вводе по строке. Если Вам нужно убрать поле Код, укажите в длине строки ноль.
- Наименование — реквизит, обязательный к заполнению, строкового типа. Максимальная длина строки — 150 символов. Можно использовать как представление справочника в списке и в полях ввода. Как правило, используется для поиска элемента при вводе по строке. Если Вам нужно убрать поле Наименование, укажите в длине строки ноль.
- Родитель — реквизит, имеющий тип СправочникСсылка.<ИмяТекущегоСправочника>. Доступен только в иерархическом справочнике. Указывает на вышестоящего родителя в иерархии. Если Элемент или Группа находятся в корне справочника, указывается значение Справочник.<ИмяТекущегоСправочника>.ПустаяСсылка.
- Владелец — ссылка на элемент-владелец текущего элемента (группы) справочника. Доступен только в подчиненном справочнике 1С.
- ПометкаУдаления — реквизит с типом булево. Отвечает за отображение «пометки удаления» в системе. Помеченный на удаление элемент считается непригодным к использованию, однако на нём могут оставаться старые движения в документах.
- Ссылка — поле строкового типа. В этом реквизите хранится уникальный идентификатор объекта — GUID. То, что в системе мы видим в визуальном отображении под название «ссылка», — это всего лишь представление объекта. Невозможно изменить.
- Предопределенный — тип булево, отображает, является ли элемент предопределенным, об этом позже. Невозможно изменить.
На вкладке «Данные» так же указывается представление справочника в системе, до версии 8.2.16 представление могло быть лишь Кодом или Наименованием. В свежих версиях платформы (начиная с 8.3) представление можно описать самостоятельно в модуле менеджера с помощью обработчика «ОбработкаПолученияПредставления».
Вкладка «Нумерация»
Здесь указываются настройки справочника по части нумерации. Рекомендуется использовать именно автонумерацию. Контроль уникальности — флаг, который помогает, если нужно, сделать код уникальным. Если с установленным флагом Вы попытаетесь записать элемент справочника с неуникальным кодом, в 1С Вы получите сообщение «Код справочника стал неуникальным».
Серия кодов — определяет, как нумеровать справочник, можно ввести нумерацию справочника в разрезе владельца. Например, у контрагента «Рога и копыта» будет иметься своя нумерация договоров — «1, 2, 3» и тд.
Вкладка «Формы»
Тут описываются формы для справочника. Если конфигурация запускается как в обычном, так и управляемом режиме, тогда вкладок с формами по умолчанию будет две: «основные» и «дополнительные» — для обычного и управляемого приложения разные.
На этой странице есть немаловажное свойство справочника — «Ввод по строке«. Это очень удобная функция 1С 8, позволяющая при заполнении данных в поле ввода не заходить в справочник, а набрать его наименование, код или т.п. и выбрать из выпадающего списка нужный элемент. Выглядит это так:
Вкладка «Прочее»
На вкладке можно получить быстрый доступ к основным модулям справочника — модулю объекта и модулю менеджера.
На странице можно также определить список предопределенных элементов справочника. Это элементы, которые невозможно удалить в режиме Предприятия. К предопределенным элементам можно обратиться в конфигураторе напрямую, по имени, например: Справочники.Номенклатура.Услуга.
На этой вкладке также определяется режим блокировки — автоматический или управляемый. Использование полнотекстового поиска, а также справочная информация о справочнике, доступная в режиме 1С: Предприятия.
Читайте также и другие статьи по конфигурированию 1С.
Минивидео, как работать со справочниками:
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.
Источник
24.09.09 – 13:48
Добрый день уважаемые коллеги!
Занимаюсь подготовкой к профу. Попался такой вопрос:
В какое значение можно установить свойство “Серии кодов” объекта конфигурации “Справочник”?
Ответы:
1.Во всем справочнике
2.В пределах подчинения
3.В пределах подчинения владельцу
4.Верны все указанные ответы
5.Верны ответы 1 и 2
Не знаю, ответа. Что за такое св-во Серии кодов, первый раз про него слышу.
Разъясните кто знает. За ответы премного благодарен.
1 – 24.09.09 – 13:51
Вариант 4. Закладка нумерация в справочнике.
2 – 24.09.09 – 13:52
Ну то бишь как генерируются коды новых элементов справочника.
3 – 24.09.09 – 13:56
(1) спасибо, наставил на путь истинный..
4 – 24.09.09 – 15:54
не понятный точно вопрос по профу:
Выбор типа значения основного реквизита приводит
1.К изменению поведения формы
2.К появлению дополнительных свойств, методов и событий формы (расширений формы)
3.К изменению контекста модуля формы
4.Верны ответы 1 и 2
5.Верны ответы 1, 2 и 3
Какого реквизита 0_о, не понятно.
Кстати 1С-ниги специально что ли такие неодназначные вопросы задают, денег наверное надо
5 – 24.09.09 – 15:58
у формуДокумента документы есть документОбьект ответ 4
6 – 24.09.09 – 15:59
походу)
7 – 24.09.09 – 15:59
(6) нет, ответ 5
8 – 24.09.09 – 16:00
что за развод?
9 – 24.09.09 – 16:00
(8) дак и я про то
10 – 24.09.09 – 16:04
основной реквизит формы…? Как при изменении его типа, может измениться контекст модуля формы, бред какой то…..
11 – 24.09.09 – 16:04
собирание лавандосов..млин
12 – 24.09.09 – 16:05
ответ 5, 100%
13 – 24.09.09 – 16:05
фсе правильно в модуле формаЭлемнта Справочник нельза определить обработчик проведения и заполнения
14 – 24.09.09 – 16:06
можно установить:
1.Во всем справочнике
2.В пределах подчинения
3.В пределах подчинения владельцу
15 – 24.09.09 – 16:08
Для хранения данных, которые редактируются в форме, предназначены реквизиты формы. Один из реквизитов может быть назначен основным реквизитом формы. При этом поведение формы изменяется в соответствии с типом этого реквизита. Кроме изменения поведения формы, происходит изменение контекста модуля формы. Наряду с методами и свойствами формы, в нем становятся доступны методы и свойства объекта, являющегося значением основного реквизита. Вследствие такого объединения контекстов формы и объекта могут возникать конфликты имен методов и свойств. Методы и свойства формы имеют приоритет над методами и свойствами объекта. Обращение к свойству объекта можно осуществлять через имя основного реквизита формы.
Рассмотрим следующий пример.
Есть форма с двумя реквизитами: ДокументОбъект, Реквизит1. Реквизит ДокументОбъект является основным реквизитом и имеет в свою очередь реквизиты с именами Реквизит1, Реквизит2. Тогда обращение к реквизитам в модуле формы будет осуществляться следующим образом:
Реквизит1 = 12;// Обращение к реквизиту формы
Реквизит2 = 34;// Неявное обращение к реквизиту реквизита ДокументОбъект
ДокументОбъект.Реквизит1 = 56;// Явное обращение к реквизиту реквизита ДокументОбъект
ДокументОбъект.Реквизит2 = 78;// Явное обращение к реквизиту реквизита ДокументОбъект
Есть форма с двумя реквизитами: ДокументОбъект, Реквизит1. Реквизит ДокументОбъект является основным реквизитом и имеет в свою очередь реквизиты с именами Реквизит1, Реквизит2. Тогда обращение к реквизитам в модуле формы будет осуществляться следующим образом:
Реквизит1 = 12;// Обращение к реквизиту формы
Реквизит2 = 34;// Неявное обращение к реквизиту реквизита ДокументОбъект
ДокументОбъект.Реквизит1 = 56;// Явное обращение к реквизиту реквизита ДокументОбъект
ДокументОбъект.Реквизит2 = 78;// Явное обращение к реквизиту реквизита ДокументОбъект
16 – 24.09.09 – 16:14
(15)забей на анализ, тупо зазубри, ответы то есть?
я тоже поначалу пытался вникать в смысл и понять почему иногда ответ не такой как я считаю, потом забил, половина вопросов бредятина и ахинея…
17 – 24.09.09 – 16:18
(16)да, присутствует такое в некоторых вопросах.
ответы есть
думаю если зазубрить, дак смысл от этого всего.
Приходиться разбираться с такими вот непонятными вопросами, а иначе как профа здать ?
18 – 24.09.09 – 16:28
(17)смысл от профа допуск к спецу…по крайней мере для меня…морщить лоп и терзаться в сомнениях из за идиотов в 1с себя не уважать…
19 – 24.09.09 – 16:29
(18) точно…допуск к спецу
20 – 24.09.09 – 16:30
(18) будем зубрить некоторые вопросы, уговорил
21 – 24.09.09 – 16:32
(20)сам завтра сдаю, 400 из 670 зазубрил уже
22 – 24.09.09 – 16:34
а почему из 670 их чтоли ограниченное число ?
скинуть можешь твои вопросы ?
23 – 24.09.09 – 16:36
(22)я решил что с января 2008 по сентябрь 2009 с ИТС которые были вполне достаточно…могу скинуть в почту
24 – 24.09.09 – 16:37
(23) давай, буду признателен
alexmalsg1@rambler.ru
25 – 24.09.09 – 16:40
26 – 24.09.09 – 16:41
(25) спасибо
27 – 24.09.09 – 17:38
(23)Если не сложно скинете мне тоже
pal_vas@mail.ru
Видал вакуху ☝️?! Как хочешь, но у нас можно заработать больше, и в офис ездить не надо!
Заполняй анкету
Источник