Имя: Пароль:
1C
1С v8
Автонумерация в справочнике
0 antiteror91
 
28.04.13
22:46
Подскажите пожалуйста каким образом сделать автонумерацию кода в справочнике если я в него програмно добавляю элементы????
1 France
 
28.04.13
22:46
ну, не присваивай значение коду при программном добавлении..
2 antiteror91
 
28.04.13
22:48
(1) появляется ошибка если не присваиваю: {Форма.Форма.Форма(147)}: Ошибка при вызове метода контекста (Записать)
                   НовыйЭлемент.Записать();
по причине:
Значение поля "Код" не уникально
3 zak555
 
28.04.13
22:48
автонумерациия есть у справочника ?
4 zak555
 
28.04.13
22:49
(2) ищи элемент, где у тебя последний символ не число
5 zak555
 
28.04.13
22:49
*где в коде не число
6 antiteror91
 
28.04.13
22:50
(3) автонумерация есть. тип кода строка
7 zak555
 
28.04.13
23:05
так и не нашёл ?
8 Фокусник
 
28.04.13
23:19
(6) например есть код Ааа99 - место для цифр закончилось
9 antiteror91
 
28.04.13
23:35
я получается програмно добавляю первоночально несколько групп контрагентов коды которых равны 3,4 ,7 а затем добавляю контрагенты и для них код не указываю для первого контрагента автоматически код выставляется 8, для 2-го 9 а на третьем выбивает
10 hhhh
 
28.04.13
23:40
(9) потому что после "9" чисел нет. Это же элементарно.
11 antiteror91
 
28.04.13
23:41
(10) после 9 цифр больше нет а чисел очень много
12 Сияющий Асинхраль
 
28.04.13
23:43
Нельзя такие коды присваивать, ты сам убил автонумерацию. Надо, если уж хочется присвоить код самому, присваивать не 3, а 0000...03, где колво 0 зависит от длинны нумератора
13 antiteror91
 
28.04.13
23:47
(12) я это понимаю поэтомы пытался код крупп выводить следующим образом код = формат(КодГруппы, "ЧВН="); но лидирующие нули почему то не появляются......
14 alexkr
 
28.04.13
23:50
(13) потому что код группы наверняка тоже строка
15 Сияющий Асинхраль
 
28.04.13
23:53
Ну сделай проще, например, код=прав("000000000" + кодгруппы,9)
16 Balabass
 
29.04.13
03:00
СправочникОбъект.<Имя справочника>.УстановитьНовыйКод (CatalogObject.<Имя справочника>.SetNewCode)
СправочникОбъект.<Имя справочника> (CatalogObject.<Имя справочника>)
УстановитьНовыйКод (SetNewCode)
Синтаксис:

УстановитьНовыйКод(<ПрефиксКода>)
Параметры:

<ПрефиксКода> (необязательный)

Тип: Строка.
Строковое значение префикса. Если префикс указан, то новый код будет формироваться с учетом префикса.
Описание:

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

Доступность:

Сервер, толстый клиент, внешнее соединение.
Примечание:

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

Объект.УстановитьНовыйКод("Пр-");