Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Автонумерация          
Batchir Подменю пользователя
сообщение 21.03.09, 9:40
Сообщение #1

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1426 раз
Рейтинг: 0

В данном разделе рассматриваются особенности работы механизма автонумерации на примере справочника.

Что такое автонумерация и зачем она нужна?

Автоматическая нумерация элементов справочников позволяет устанавливать во вновь создаваемых элементах уникальные коды. При этом создаваемые коды элементов последовательно увеличиваются.

Формирование нового уникального кода справочника зависит от того, как у справочника настроены серии кодов:
  • во всем справочнике - в процессе формирования нового кода для элемента справочника будет сформирован код, уникальный во всем справочнике;
  • в пределах подчинения - в процессе формирования нового кода для элемента справочника будет сформирован код, уникальный в пределах иерархии элемента (элементы, имеющие одного и того же родителя будут иметь различные коды, элементы, имеющие разных родителей могут иметь одинаковые коды);
  • в пределах подчинения владельцу - в процессе формирования нового кода для элемента справочника будет сформирован код, уникальный в пределах подчинения (элементы, имеющие одного и того же владельца будут иметь различные коды; элементы, имеющие различных владельцев могут иметь одинаковые коды).

Последовательное увеличение кодов элементов справочника в процессе автонумерации будет происходить таким образом, чтобы создаваемый код справочника соответствовал настройке серии кодов.

Работа с префиксом кода справочника в процессе автонумерации

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

Для того чтобы при формировании нового кода (номера) устанавливать префикс, можно воспользоваться обработчиком события При установке нового кода. Это событие возникает в тот момент, когда начинается формирование нового кода, например нового кода элемента справочника. Синтаксис описания этого обработчика следующий:

ПриУстановкеНовогоКода(<Стандартная обработка>, <Префикс>),

где:
<Стандартная обработка> - признак выполнения стандартной (системной) обработки события. Если в теле процедуры-обработчика установить данному параметру значение Ложь, стандартная генерация нового кода производиться не будет;
<Префикс> - префикс, который будет использоваться для генерации кода.

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



// Процедура обработчик события ПриУстановкеНовогоКода
// Подменяет префикс кода на предопределенный для данной ИБ
//
Процедура ПриУстановкеНовогоКода(СтандартнаяОбработка, Префикс)

Префикс = ПолучитьПрефиксНомера();

КонецПроцедуры // ПриУстановкеНовогоКода(СтандартнаяОбработка, Префикс)


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





// Выдает префикс нового номера
//
// Возвращаемое значение:
// Строка – Префикс нового номера
//
Функция ПолучитьПрефиксНомера() Экспорт

Возврат Константы.ПрефиксНомеров.Получить();

КонецФункции // ПолучитьПрефиксНомера()



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

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

Поддержка автонумерации другими объектами метаданных

Кроме справочника, автонумерацию поддерживают следующие объекты метаданных:
  • Документ;
  • План видов характеристик;
  • Бизнес-процесс;
  • Задача.


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

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

level Подменю пользователя
сообщение 14.01.11, 10:02
Сообщение #2

Общительный
**
Группа: Пользователи
Сообщений: 13
Спасибо сказали: 0 раз
Рейтинг: 0

Необходимо прописать процедуру получения номера документа под свои нужды. Подскажите при каком событии формируется номер нового документа.

Бух. учет для Украины 8.1

Flexy Подменю пользователя
сообщение 14.01.11, 10:19
Сообщение #3

Танцор с Бубном
Иконка группы
Группа: Местный
Сообщений: 1121
Из: Днепра
Спасибо сказали: 230 раз
Рейтинг: 0

Цитата(level @ 14.01.11, 11:02) *
Подскажите при каком событии формируется номер нового документа.

А вам надо при каком событии формировать номер документа?

level Подменю пользователя
сообщение 14.01.11, 10:28
Сообщение #4

Общительный
**
Группа: Пользователи
Сообщений: 13
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Flexy @ 14.01.11, 11:19) *
А вам надо при каком событии формировать номер документа?


При создании нового документа.
Я так понял в 8ке номер присваивается при сохранении док-та - а где именно непонятно.
Налоговые накладные создаются в двух программах, при этом необходимо чтобы сохранялась сквозная нумерация.

Vofka Подменю пользователя
сообщение 14.01.11, 10:41
Сообщение #5

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13947
Из: Киев
Спасибо сказали: 4514 раз
Рейтинг: 3635.6

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

О. Новый НКУ?

logist Подменю пользователя
сообщение 14.01.11, 10:47
Сообщение #6

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(level @ 14.01.11, 10:28) *
Я так понял в 8ке номер присваивается при сохранении док-та - а где именно непонятно.

В событии "ПриИзменении"
Ищите в модуле общего назначения процедуру УстановитьНомерДокумента (как-то так)


Signature
Личные бесплатные консультации не даю, для этого есть форум!

level Подменю пользователя
сообщение 14.01.11, 10:51
Сообщение #7

Общительный
**
Группа: Пользователи
Сообщений: 13
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Vofka @ 14.01.11, 11:41) *
О. Новый НКУ?

Да ))
Под новые требования начинаем переделывать ..

Нумерация устанавливается по событию ПриУстановкеНовогоНомера.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 19.03.24, 13:57
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!