Имя: Пароль:
1C
1C 7.7
v7: кончились коды в ассортименте контрагента
,
0 leonid75
 
18.02.15
13:33
В 7.7,в ассортименте контрагента каждая позиция имеет свой код, дошло до 99999, теперь при создании ставит 10000 и выдаёт ошибку код не уникальный. В конфигураторе расширил код до 6 цифр, вручную могу поставить 100001 например, но при копировании ассортимента из карточки другого контрагента он опять ставит 10000 и ошибка.. И после сохранения с 100001 след не ставит 100002 Как исправить?
1 Karav
 
18.02.15
13:35
(18) Расширив код до 6 цифр вы добавили всего 9 новых возможных позиций :)
2 Karav
 
18.02.15
13:36
как по вашему что больше "99999 " или "100001"
на мой взгляд и взгляд 1С "99999 " больше.
3 leonid75
 
18.02.15
13:38
ну если я 099999 напишу следующий 100000 не станет.
т.е не понял.. после 0099 идёт 0100
4 Злопчинский
 
18.02.15
13:38
В 77 чтото я не помню в типовых конфигах никаких "ассортиментов контрагента"
Наиболее близкое это аналоги номенклатуры
И обычно в типовых код меньше восьми символов не бывает
И почти в егда он текстовый а не числовой
5 Karav
 
18.02.15
13:39
Можно сделать ренумерацию...
можешь задать код "A00001"
6 Злопчинский
 
18.02.15
13:39
А
Опять эта разгромленная вдрызг украинская конфа?
7 Karav
 
18.02.15
13:40
(3) конечно не станет, 0 меньше чем 9
8 Злопчинский
 
18.02.15
13:40
(3)  перенумеруй все коды с добавлением ведущих нулей
9 leonid75
 
18.02.15
13:40
в карточке контрагента есть закладка ассортимент, вот там при создании позиции есть код ))  не украинская, но вдрызг да )
10 leonid75
 
18.02.15
13:41
(8) а как? у меня нет общего списка
11 Karav
 
18.02.15
13:41
(8) Можно задать следующий код с символа больше чем "9" :)
и работать без перенумерации дальше :)
12 Злопчинский
 
18.02.15
13:41
Штатный механизм автонумерации кодов после 099999 сделает 100000
13 Karav
 
18.02.15
13:42
(12) не сделает.
потому что у него там код последний "99999 ".
14 Karav
 
18.02.15
13:44
(13) какой следующий код если последний "99999 " ? - правильный ответ - никакого :) поэтому автонумерация у него сдохла :)
15 Злопчинский
 
18.02.15
13:44
(10)  скорее всего ассортимент у тебя подчниненный номенклатуре справочник
Смотреть в конфигураторе как присваиваются коды
Целиком или в пределах подчинения
И какой код текстовый или числовой
Блин дольше рассказывать чем делать
16 leonid75
 
18.02.15
13:45
накладные ведь восле 00999 делает 01000
17 Злопчинский
 
18.02.15
13:45
(13)  ясен пеь
18 leonid75
 
18.02.15
13:45
текстовый, во всём справочнике
19 leonid75
 
18.02.15
13:46
вот думаю убрать галку контроль уникальности, какая разница какой там код будет, он же не влияет ни на что
20 Karav
 
18.02.15
13:46
(16) Как работает автонумерация ты знаешь ?
берется максимально больший код, к нему добавляется +1...
какой у тебя в базе максимально больший код ?
21 Масянька
 
18.02.15
13:46
Вангую: фигня имеет тип "символьный". Чтобы увеличить разрядность фигни - недостаточно добавить в конфе. Нужно перенумеровать все существующие позиции (добавить лидирующий 0).
(18) Сворачивайтесь!!!!!!!
22 leonid75
 
18.02.15
13:47
Привет
23 Karav
 
18.02.15
13:47
(19) Задай код "A000001" - запиши элемент... создай следующий - увидишь что будет "А000002" долго думай почему автонумерация заработала.
24 leonid75
 
18.02.15
13:47
https://yadi.sk/i/FIbsJgV1ekaTw вот так там, там 1000 карточек я не знаю где начинается 000001 )
25 Масянька
 
18.02.15
13:47
(22) Не буду здороваться пока не перейдешь на нормальные базы :)
26 Злопчинский
 
18.02.15
13:48
(14)  не следующий будет вычислен но обрезан на длину пяти знаков и получится дубль

Блин с набором угиверсальных обработок с диска итс перенумерация всего этого делается без проблем

Разве только если уникальность в пределах подчинения но сомневаюсь что у автора так
27 leonid75
 
18.02.15
13:48
(23) Работает ))
28 leonid75
 
18.02.15
13:48
Починили ура )
29 Karav
 
18.02.15
13:49
(27) Думать после этого обязательно... потому что задавать код "А00001" - это плохая практика ведущая к бардаку и аду :)
30 leonid75
 
18.02.15
13:50
там вообще не понятно зачем этот код нужен, ассортимент нужен, чтобы быстро этикетки печатать а не искать товар по всей базе
31 Karav
 
18.02.15
13:51
(30) когда ты предстанешь перед Господом, эти твои оправдания будет звучать нелепо.
32 AdrianBerk
 
18.02.15
13:52
А если просто добавить лидирующие нули???? Увеличить длину кода. Затем сменить тип кода  с  числового на текстовый. сохранить конфу. Затем сменить код обратно с  текстового на числовой, платформа сама выполнит перенумерацию и  добавление лидирующих нулей.
33 Karav
 
18.02.15
13:53
(32) Может проще выполнить перенумерацию обычным способом ? :)))
34 leonid75
 
18.02.15
13:53
(31) А та не сможешь починить  вот это? )) там интереснее
разные значения в товарном отчёте и учёте партий.
35 AdrianBerk
 
18.02.15
13:53
(33) не знаю "обычного" =)
36 leonid75
 
18.02.15
13:55
пока с А00001 работает,  )) сломается опять буду писать сюда (( так и живём
37 Karav
 
18.02.15
13:55
(35)
int tekpos=0;
cursor=select *;
for (each:cursor) {
tekpos++;
update each.id=tekpos;
}
38 AdrianBerk
 
18.02.15
13:57
(37) впервый раз такое вижу )))) и где это писать? это у  тебя какой то 1с++ ))
39 Karav
 
18.02.15
13:58
(34) Это не... это особенный ад. Проще удалить регистр ПартийТоваров и подчистить все его следы в конфигурации :) Я однажды так делал, все были только рады :)))
40 Karav
 
18.02.15
13:59
(38) Это условный код, он нигде не заработает.
Все же понятно.
Все выбрать,
начать с 1 добавлять по единичке, записывать в каждый элемент новый код.
41 AdrianBerk
 
18.02.15
14:01
(40) ага-ага ))) и если эти позиции куда то выгружаются или откуда то загружаются и  синхронизация вдруг стоит по коду то потом мы поимеем геморрой на задницу )
42 leonid75
 
18.02.15
14:01
кто может переделать базу в скл и провести быстренько 10 лет?  уже давно руки не доходят до этого, да и виснет постоянно
43 AdrianBerk
 
18.02.15
14:02
скл? а зачем проводить десять лет????? свертку надо делать
44 leonid75
 
18.02.15
14:02
никто не смог свернуть )
45 leonid75
 
18.02.15
14:03
что б ещё и работало после
46 Karav
 
18.02.15
14:03
(41) Вроде всех предупреждали что для программистов синхронизирующим по кодам уготовлено особое место в чистилище. Есть же внутренний идентификатор.
47 AdrianBerk
 
18.02.15
14:03
что-то страшная база какая то ))))) может те кто пытались плохо пытались ))
48 leonid75
 
18.02.15
14:04
(43) sql, так быстрее будет, на любом компе проводили виснет при переносе остатков и всё
49 leonid75
 
18.02.15
14:04
а потом назад переделать
50 Karav
 
18.02.15
14:09
(48) Не будет, у тебя там в партиях АД :)
У меня однажды была такая база реально... в партионном учете ад такой что пересчет регистров через тестирование и исправление не работал, зависал на мертво на неделю... бесполезно...
И глюканули итоги взаиморасчетов.
Я психанул...и удалил Регистр Партий :)))
но всем было пофигу и все были благодарны, что база стала работать быстро и не тупить :)))
51 leonid75
 
18.02.15
14:10
и что мне делать с ней, какой-нибудь обработкой самодельной грохнуть все документы за 10 лет и потом ручками вписать долги и приход?
52 AdrianBerk
 
18.02.15
14:11
(46) нет таких ограничений ) все зависит от текущей задачи. по возможности конечно хорошо GUID использовать ))) но не всегда все идеально бывает. Или например, если код фигурирует где то в  печатных документах и  будет нужен  в  будущем, то тоже лоханешься, а  добавление лидирующих нулей в  данном случае позволяет быстро и  базовыми средствами, не написав ни строчки кода решить проблему
53 Злопчинский
 
18.02.15
18:24
(34) надо понимать, что такая починка может встать в немелкую сумму, так как устранение проблемы может потянуть поездом кучу сопутствующего... готовы к таким тратам исходя из расчета не менее 2000 руб/час - стучитесь
54 Злопчинский
 
18.02.15
18:27
(44) а это хрен его знает, что у вас подразумевается "чтобы и работало после" - хз как там алгоритмы написаны. может там после сверки для алгоритмов не будет хватать данных (например какие-то отчеты), потому что они тянутся из реквизитов документов "поступление NVW@ - а после сверкти таких доков нет....
.
обычная свертка, которая гарантирует в содержимом регистров правильные свернутые значения - выполняется достаточно быстро, заты кможет быть только в реквизитах движени ярегистров по операциям свертки...
55 Злопчинский
 
18.02.15
18:27
(42) в скуле будет работать в общем случае медленнее.
56 Злопчинский
 
18.02.15
18:29
(47) база - "обычная", закаканная вусмерть скорее всего, бо находилась без присмотра вменяемого одинэсника, писали туда приходящие кто что горазд без увязки с уже написанным. вот и исчисляйте - во что выльется утаранение какой либо проблемы или свертка... - в тотальное наведение порядка. а это а) стоит дорого и б) сразу становится никому ненужным...
57 Злопчинский
 
18.02.15
18:31
(51) долгти и приход вписываются за 10 минут "универсальным двигателем регистров" =- берешь этот документ, берешь нужный регистр, считываешь текущие итоги, автоматом вносишь их в качестве входных в этом же документе. все. редактируешь этот документ для "зануления"/упрощения ненужной аналитики (например зануляешь кредитные доки по регистру взаиморасчетов)
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.