Форум программистов, компьютерный форум, киберфорум
1С: Администрирование и интеграция
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.55/22: Рейтинг темы: голосов - 22, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 16.07.2012
Сообщений: 103
1
1C 7.x

Возможно ли перенумеровать элементы справочника?

31.03.2014, 19:03. Показов 4335. Ответов 10
Метки нет (Все метки)

Ребята, смотрите какой квест.
Есть справочник контрагенты. Когда-то кому-то, видимо, очень не понравилось то, что 1Ска давала автоматически номера (уникальный код в первой колонке) каждому контрагенту и ему захотелось усложнить всем жизнь. Этот нехороший человек ввёл вручную желаемый код, а когда программа ругнулась, что такой номер уже есть, он просто добавил в конец (или в начало или ещё куда) пару цифр. И вся нумерация пошла по... Не туда, короче. Вот даю вам скриншот, чтобы вы примерно представляли, что сейчас творится в справочнике:
http://www.imageup.ru/img188/1708501/primer.png
Вопрос, кто и почему так сделал, будет ли делать так впредь и др. - не стоит. Вопрос только один: можно ли как-то это исправить? Сейчас в свойствах справочника стоит тип этого поля "Текстовый" и галки на контроле уникальности и автоматического увеличения значения. Но каждый раз при создании нового контрагента предлагается номер 10000 и при попытке сохранить такого контрагента 1Ска ругается на неуникальность.
Я так понимаю, что можно поставить галку на "Числовом типе", поле перегонит текс в числа и тогда часть абракадабры уйдёт. Но получится, что некоторые контрагенты будут иметь один и тот же код, ведь, например, код 777 останется, а код 000777 будет преобразован тоже в 777.
Так вот есть ли какой-то способ, чтобы перенумеровать все элементы справочника от 1 до конца, чтобы без повторений и чтобы это не повлияло на те документы, которые уже созданы с этими контрагентами (возможно, ересь несу).
Ребят, у меня всё плохо или не совсем?(
0

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

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.03.2014, 19:03
Ответы с готовыми решениями:

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

Перенумеровать страницы извещения об изменении
Всем привет! Редактирую стандарт в Word 2010, выпускаю "извещение об изменении" по ГОСТ. В одном...

Перенумеровать заданный массив по правилу
Дается изначально нулевой массив размерности n на m. Необходимо перенумеровать данный массив по...

Элементы справочника
Что такое элементы справочника?

10
2952 / 1764 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
31.03.2014, 20:27 2
Цитата Сообщение от maxwad Посмотреть сообщение
у меня всё плохо или не совсем?(
Всё штатно. Я бы снял контроль уникальности, потом очистил бы все коды, потом обработкой пронумеровал бы штатной функцией УстановитьНовыйНомер() и включил бы контроль обратно.
Но могут быть и другие варианты: подсчитать количество контров, и, начиная с конца и максимального номера, присваивать, преобразовывая своими скриптами. Но тут могут быть коллизии.
Можно какой-то алгоритм "недублирования" придумать, используя факт, что первый символ - не ноль. Ну и т.д.
Всё это, естественно, решается обработкой.
0
Модератор
Эксперт 1С
3095 / 2782 / 523
Регистрация: 10.03.2011
Сообщений: 10,700
Записей в блоге: 1
31.03.2014, 23:04 3
Обработка перенумерации справочников есть на дисках ИТС
0
2952 / 1764 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
01.04.2014, 00:26 4
Dethmontt, как называется? Не могу найти.

Добавлено через 47 секунд
Ищу в UNIREPS

Добавлено через 1 минуту
у меня дома на винте, правда, не самый свежий

Добавлено через 3 минуты
ох, блин, это ж 77, а я восьмёрошные ищу. Но всё равно не помню такой обработки
0
Модератор
Эксперт 1С
3095 / 2782 / 523
Регистрация: 10.03.2011
Сообщений: 10,700
Записей в блоге: 1
01.04.2014, 01:59 5
УниверсальныеПодборИОбработкаОбъектов.epf
УниверсальныеПодборИОбработкаОбъектов.zip
0
2952 / 1764 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
01.04.2014, 10:19 6
Да, точно, есть там непонятно как выполняемая опция "перенумерация объектов". Но это 8
0
0 / 0 / 0
Регистрация: 16.07.2012
Сообщений: 103
01.04.2014, 10:46  [ТС] 7
Так, значит либо погуглить обработку, либо написать. Т.к. с 1Ской я не то, чтобы хороший друг, то буду пробовать первое, а уж потом пытаться сделать второе.)
Спасибо большое!
0
2952 / 1764 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
01.04.2014, 11:13 8
UCRefRen.ert она называется

Добавлено через 41 секунду
у семёрошников должна быть, и на ИТС, наверное, тоже
0
0 / 0 / 0
Регистрация: 16.07.2012
Сообщений: 103
01.04.2014, 11:53  [ТС] 9
А это вообще не повлияет на уже созданные документы? Вот был контрагент под номером 111, я перенумеровал и под этим номером стал другой контрагент. Документ не заменит старого новым из-за номера? Как-то же он подтягивает в документы контрагентов, по какому-то признаку запомненному, нет?
Просто если этот код ни на что не влияет кроме нумерации в самом справочнике, то я бы просто преобразовал поле в числовой тип и заставил бы вручную 2 особо "умелых" бухгалтеров переделать повторяющиеся номера и убрать всю абра-кадабру, чтоб больше у них не возникло желания "сделать как мне хочется". А потом уже сверху прогнал бы перенумерацию, чтобы наверняка.)
0
Модератор
Эксперт 1С
3095 / 2782 / 523
Регистрация: 10.03.2011
Сообщений: 10,700
Записей в блоге: 1
01.04.2014, 13:16 10
Цитата Сообщение от maxwad Посмотреть сообщение
это вообще не повлияет на уже созданные документы?
Нет. Код это только нумерация.

Добавлено через 13 секунд
Цитата Сообщение от maxwad Посмотреть сообщение
Документ не заменит старого новым из-за номера?
Нет

Добавлено через 37 секунд
Цитата Сообщение от maxwad Посмотреть сообщение
Просто если этот код ни на что не влияет кроме нумерации в самом справочнике, то я бы просто преобразовал поле в числовой тип и заставил бы вручную 2 особо "умелых" бухгалтеров переделать повторяющиеся номера и убрать всю абра-кадабру, чтоб больше у них не возникло желания "сделать как мне хочется". А потом уже сверху прогнал бы перенумерацию, чтобы наверняка.)
Просто прогони обработкой и все!
0
0 / 0 / 0
Регистрация: 16.07.2012
Сообщений: 103
01.04.2014, 13:32  [ТС] 11
Спасибо.)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.04.2014, 13:32

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

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

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

Как перенумеровать строки БД после удаления одной из строк?
Есть приложение для управления БД. При удалении строки из БД изменяется верная нумерация строк...

Реализовать обход в ширину и перенумеровать вершины по порядку обхода
using System; using System.Collections.Generic; using System.Linq; using System.Text; using...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.