Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Заняты все кода номенклатуры
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
ZenBi
Приветствую!
Столкнулся с проблемой:
В справочнике Номенклатура очень много елементов. Настолько, что заняты почти все кода для неё.
Работаем в 1С УПП (соответственно обычные формы), у нас код - 5-ти значное число, и счетчик уже перевалил за 99500. В тестовой базе догнал до 99999 и далее оно просто запрещает создавать номенклатуру, пишет, что значение поля код не уникально, ибо пытается снова завести код "99999".
НО! Зайдя в конфигуратор, увидел, что код в номенклатуре имеет длину в 11 символов.
Первая идея по решению была пройтись вот этим вот:
"ОбновитьНумерациюОбъектов()".

Но увы даное решение не подходит - постоянно делаем обмен с другой програмой(не 1С) и если в 1 из номенклатур изменится код - то та програма у себя больше эту номенклатуру не найдёт.
Потому надо как-то увеличивать длину кода.
Програмно создал номенклатуру с кодом 100000 (6 символов), её записало нормально, но следующая номенклатура опять пытается создатся с кодом 99999 и опять же выдаёт ошибку.
Вопрос - Чё делать?!
Помогите пожалуйста.
denis84
ZenBi @ Сегодня, 11:41 необходимо зарегистрироваться для просмотра ссылки ,
а якщо створити нову базу туди закачати залишки і вперед! Такий варіант не розглядали?
ZenBi
denis84 @ Сегодня, 12:39 необходимо зарегистрироваться для просмотра ссылки ,
Нажаль ні. Подібне рішення не підходить.
alexxbely
ZenBi @ Сегодня, 11:41 необходимо зарегистрироваться для просмотра ссылки ,
Як варіант - завести новий реквізит, типу - "Код_старий", заповнити його існуючими кодами, потім виконати ОбновитьНумерациюОбъектов(), перевірити, що нові елементи створюються з вірними кодами і перезаписати системний код з поля Код_старий
PS. Програмно создал номенклатуру с кодом 100000 (6 символов), а на формі поле код часом не довжиною 5 символів?
ZenBi
alexxbely @ Сегодня, 13:04 необходимо зарегистрироваться для просмотра ссылки ,
На формі поле обмежено 11 символами.
Знайшов спорне рішення - вводити суфікси. Накшталп "А-00001"
Проте іще буду тестувати і шукати щось ліпше.
Talkman
Была похожая проблема. Возникает, когда код текстовый и расширяют разрядность кода, когда уже пошла нумерация без перенумерации. Посмотрите, после последнего разряда в коде идут пробелы? Если идут - нужна перенумерация. Я бы на верочку сделал бы хенд мейд обработкой.
batlcat
ZenBi @ Сегодня, 12:41 необходимо зарегистрироваться для просмотра ссылки ,
код номенклатуры 11 символов

у вас занято 6 символов

обратите вниманий как выглядят коды до 10000

09999
09998
....
08255
.......
00002

Нужно добавить нули в начало кода
У элимента с кодом 99999 измини его на 000099999
Тогда нумерация продолжится
andreydv87
ZenBi @ Вчера, 11:41 необходимо зарегистрироваться для просмотра ссылки ,
Длина должна быть 11 (99999999999 или 0000-999999) символов, а у Вас 5 (99999). Это означает что код был изменен в прошлом.
Исправляется перенумерацией справочника.

Можно попробовать в справочнике добавить свой нумератор и написать процедуру нумерации (как вариант).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.