Имя: Пароль:
1C
1C 7.7
v7: Ошибка при создании новой записи в справочнике
0 sashenka
 
08.07.15
10:08
Доброго времени суток друзья!
Столкнулся с такой проблемой.
Есть документ который заполняет часть данных в справочник договоров с привязкой к контрагенту.
Т.е. в крацетце

Спр = СоздатьОбъект(Справочники.договоры)
ВК = СоздатьОбъект(Справочник.контрогенты)
контрагент = кв.текущийэлемент()
Спр.использоватьвладельца(контрагент)
спр.новый()
Спр.Наименование = наименование
спр.датавозникновенияобязательства = дата
спр.записать()

На одном из контрагентов начинает падать в ошибку.
Код не уникальный!

с помощью Сообщить(Спр.Код) нашел что код = 1000, нашел договор данный, сделал его в ручную код 100, создал документ, автоматом создал новый договор. на втором документе таже ошибка, и опять показывает код = 1000
На всех остальных все отрабатывает, уже на протяжении лет 10.
С данным контрагентом не могу понять, что за прикол...
Прошу помочь понять, почему не работает на автомате код.
Т.е. он не уникальный...
может я что пропустил.
Единственно знаю, что люди руками насоздавали договоров всяких разных...

Буду благодарен за ответы
1 sonne666
 
09.07.15
18:17
У вас уникальность кодов в пределах подчинения? А какие еще коды договоров есть у этого контрагента? Тип кода числовой?
1000 как-то не вписывается в "максимальный номер"...
Одно безумное предположение: нет ли договора с кодом 100О (с буквой "О" в конце). Автоматическая нумерация же может быть только по правой числовой части кода.
2 Casey1984
 
09.07.15
18:19
Сообщить(Спр.Код) где поставил?
3 DrZombi
 
гуру
09.07.15
18:47
(0) Код типа "Строка", заведомо, "Умные" пользователи установили нумерацию "999" (т.е. три символа)

По правилам 1С доходит до 1000 = 999 + 1. И на этом Авто нумератор от 1С умирает :)

...
Решение простое.
Изменить обработкой все номера на номера типо "00000000001"
... и так же запретить пользователю трогать сей код, навсегда :)
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший