Проверка и исправление ( перенумерация ) неуникальных и некорректных номеров

06.08.09

Задачи пользователя - Перенумераторы

Поиск неуникальных (в соответствии с периодичностью, заданным нумератором) и некорректных (несоответствие пробелов в конце) номеров документов, исправление простое ("УстановитьНовыйНомер") и бинарным поиском, возможность сохранить прежнюю числовую часть, задание количества пробелов в конце номера, изменение префикса перед перенумерацией.

Скачать файлы

Наименование Файл Версия Размер
RepairNomDoc v1.0
.1186471497 14,49Kb
1520
.1186471497 14,49Kb 1520 Скачать бесплатно
RepairNomDoc v1.14
.1187005435 22,03Kb
2873
.1187005435 22,03Kb 2873 Скачать бесплатно

Обработка "Проверка и исправление (перенумерация) неуникальных и некорректных номеров документов"

Обработка осуществляет поиск документов с неуникальными и некорректными номерами и их последующую перенумерацию. Неуникальные номера могут образоваться, например, вследствие одновременного создания документов в разных частях распределенной базы данных с одиннаковым префиксом и последующего обмена данными. Некорректные номера (с пробелом в конце) могут образовываться из-за их ручной корректировки пользователями, а также при увеличении длины номера средствами конфигурирования и непустой выборке
документов по данному виду.

Проверка неуникальности номеров производится в соответствии с указанным нумератором документа или его видом, (если нумератор не указан) в пределах установленной периодичности номера. Для всеобъемлющего поиска неуникальных номеров необходимо указывать интервал выборки документов кратно периодичности номера. Для некорректных номеров просто проверяется соответствие количества пробелов в конце номера (по умолчанию - 0). В случае, если наличие пробелов в конце номера предусмотрено конфигурацией, их количество для "корректного" номера можно указать (колонка "Отступ" в таблице на первой закладке)

Поиск оптимизирован, работает достаточно быстро, зависимость времени выполнения от количества документов -пропорциональная, эквивалентна 2-х - 3-х кратному перебору документов в цикле. Найденные документы отображаются в таблице на форме на новой закладке.

В таблице отображаются все документы с неуникальными номерами, для перенумерации требуется для одного из группы документов с неуникальным номером снять галку участия в перенумерации.

Правила формирования нового номера для документа:

Документы с номерами типа "Число" обрабатываются только с пом. метода "УстановитьНовыйНомер()"

Для документов с номером текстового типа предложено три этапа нумерации, которые выполняются до момента
успешного поиска уникального номера:

Этап 1. Новый номер с прежней числовой частью. В старом номере выделяется числовая часть и переносится в новый к новому префиксу. Длина номера корректируется либо добавлением нулей, либо обрезанием числовой части слева. Для последнего предусмотрен флаг отмены, в этом случае перенумерация документа не производится.
Этап 2. "УстановитьНовыйНомер". Стандартный метод установки нового номера, выполняется при отсутствии / неудачном выполнении первого этапа.
Этап 3. Бинарный поиск нового номера. Выполняется при отсутствии / неудачном выполнении предыдущих этапов (для первого - найденный номер неуникален, для второго - не соответствует количество пробелов в конце, либо номер неуникален). Бинарный поиск выдаст последний номер в серии номеров, если она непрерывна, в противном случае, есть малая вероятность получения номера из "пропуска в серии".

В ходе разработки нашел "грабли": методы документа общего вида "НайтиПоНомеру", "ВыбратьПоНомеру" при одноименных "нумераторе" и "виде документа" отрабатывает "вид документа". Грабли убрал.

Обработка не использует ВК.

Версия 1.14 (06.08.09)
- обход метода документа "ВыбратьПоНомеру" без указания вида документа/нумератора

Версия 1.12 (20.08.07)
- возможность изменить префикс для всех документов (требующих перенумерации) выбранной ИБ

Версия 1.11 (15.08.07)
- исправлены условия перехода между этапами перенумерации

Версия 1.10 (13.08.07) - 1.00 (07.08.07)
- Разделены для окончательной обработки документы "неуникальные" и "по пробелам в конце"
- Полные группы документов с неуникальным номером (ранее - начиная со второго с неуник. номером в выборке)
- Механизм выбора документов для перенумерации.
- "Автовыбор" документов по информационной базе, "по умолчанию"
- Механизм формирования номера формализован по выбираемым пользователем этапам.

Пишите отзывы и предложения, не забывайте про рейтинг.
С Уважением, Shaman100M.

См. также

Перенумерация документов для Бух 7.7

Перенумераторы Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 Бухгалтерский учет Абонемент ($m)

Данная обработка выполняет перенумерацию (присвоение новых номеров документам) в Бухгалтерии предприятия 7.7 за выбранный период.

1 стартмани

01.07.2021    4395    4    Ant10    0    

2

Перенумерация документов для 1С:Бухгалтерии 7.7

Перенумераторы Платформа 1С v7.7 1С:Бухгалтерия 7.7 Бухгалтерский учет Абонемент ($m)

Данная обработка позволяет осуществить перенумерации любых документов в 7.7 за выбранный период с указанием начального номера для нумерации.

1 стартмани

07.11.2017    14600    17    Юлия69    0    

0

Перенумерация справочников и документов для 1С: 7.7

Перенумераторы Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Перенумерация справочников и документов. Поддерживает нумерацию нескольких документов с одним нумератором. Возможен отбор документов по любым реквизитам шапки. Возможно дублирование номеров на подчиненные документы.

1 стартмани

03.08.2016    25663    122    ak_register    8    

3

Восстановление нумерации

Перенумераторы Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Простая обработка по восстановлению нумерации в документах и справочниках.

1 стартмани

11.04.2015    16080    12    maksa2005    1    

3

Ренумерация любых документов и справочников с учетом префикса

Перенумераторы Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

С помощью этой обработки можно перенумеровать любой справочник или документ, входящий в состав программ 1С: Предприятие 7.7

1 стартмани

24.04.2014    4072    11    tatyana1604    1    

0

Универсальная обработка для перенумерации справочников

Перенумераторы Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Данная простейшая обработка выполняет всего одну функцию, а именно сквозную (без учета иерархии) перенумерацию элементов выбранного справочника. Порядок существующих кодов соблюдается, но коды приводятся к натуральным числам (числовой тип кода) либо к строкам, состоящим из дополненных ведущими нулями натуральных чисел (строковый тип кода). Необходимость подобной перенумерации может возникнуть в случае беспорядочного редактирования кодов элементов пользователями.

1 стартмани

06.04.2013    4094    62    sweeper7    6    

2

Изменение нумерации с начала года

Перенумераторы Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Обработка позволяет исправить нумерацию документов с периодичностью в течении года.

1 стартмани

24.01.2013    4153    37    sp1406    1    

0
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. vcv 89 07.08.07 12:26 Сейчас в теме
Не дают проголосовать за обработку. Рейтинг требуют. Вот захочешь доброе "+1" сказать человеку и не дают :-(
Вот еще бы доработать. При исправлении получается неудобно. Номера пересекаются у 2-х и более документов, обработка показывает только один и его и предлагает исправлять. А я выбрать хочу.
2. Shaman100M 1150 07.08.07 12:44 Сейчас в теме
Доработаем. Правда, тогда и мех-м выбора придется прикручивать. :)
3. TIG-PROGRAMMIST 49 07.08.07 13:00 Сейчас в теме
Да уж особенно в конфигурации зарплата и кадры отлично исправляет номера, с учетом того что там номера принципиально сделаны меньше чем их размерность, после исправления сделать корректировку документа невозможно, так как вставить И01,И02 , надо доработать возможность ограничивать размерность исправления.
4. Shaman100M 1150 07.08.07 14:13 Сейчас в теме
Два вопроса, Darex.
1. "Размерность исправления" - это возможность создавать новый номер длиной меньше установленной в конфигураторе?
2. "так как вставить И01, И02" - речь идет о посленомерной приставке, типа "постфиксе"? (ЗиК под рукой нет)?
5. Shaman100M 1150 13.08.07 22:35 Сейчас в теме
Новая версия, с расширенными возможностями исправления номеров. Учтены пожелания vcv и Darex.
6. German 413 28.08.07 12:27 Сейчас в теме
Числовая часть была впереди(2-к) поэтому пришлось сделать так (добавить нули сначала)

Код
            // пытаемся добавить - убрать лишние цифры после префикса 
               
               Если       ДлинаПрежнейЧЧ   < ДлинаЧЧ Тогда
                  // добавляем нули
                  //Док.НомерДок   = ТекТаблица.Префикс   + Формат(ЧисловойНомер,"Ч(0)"+ДлинаЧЧ);
                  Док.НомерДок   = Формат(ЧисловойНомер,"Ч(0)"+ДлинаЧЧ)+ТекТаблица.Префикс;
Показать полностью



8. Shaman100M 1150 08.09.07 13:48 Сейчас в теме
(6) Считаю, что такие вещи можно делать в прошлом периоде нумерации, т.к. при таком способе текущая нумерация собъется. Ну, эта обработка позволяет задать количество пробелов в конце номера, и в соответствии с этим все доки перенумеровать. Потом написать небольшую обработку с куском кода в цикле вроде:

Код
 Док.НомерДок = СокрЛП(Док.НомерДок)+НеобходимыйПрефикс; 
Показать полностью


(7) Шаблон еще больше усложнит обработку. Только если есть большая необходимость в этом. В принципе, <Префикс><Номер><Пробелы> - простейший и самый употребляемый шаблон, не противоречащий автонумерации. А вместо сложных шаблонов для номера документа можно ввести доп. строчный реквизит с маской, и обрабатывать его в форме документа.

С нумератором да, захотелось сделать все по правилам, хотя к концу выполнения такие задачи успевают надоесть. :)
7. German 413 28.08.07 13:29 Сейчас в теме
Хорошо бы переименовывать все документы(типы документов привязанных к нумератора) по шаблону.
А то есть масса обработок, но все они привязаны только к типу документу а не к нумератору
9. mihenius 83 28.07.09 10:14 Сейчас в теме
На этапе Номера с пробелами
Если в номере документа есть и префикс и постфикс, то обработка постфикс игнорирует и прибавляет 0 справа, хотя должна ставить перед числовой частью.
10. Shaman100M 1150 28.07.09 14:26 Сейчас в теме
(9) к сожалению, данная версия обработки с постфиксами не работает, и воспринимает <префикс><номер><постфикс> как единый префикс.
11. Shaman100M 1150 28.07.09 14:38 Сейчас в теме
(9) а, понял фишку:

Р012ПП _ _ --> Р00012ПП
12. mihenius 83 29.07.09 12:57 Сейчас в теме
Да я уже для себя исправил, просто как бы маленький недочет ,)
(11) Ога, а сейчас делает Р012ПП00, ерунду )
13. p_margo 27.09.09 18:15 Сейчас в теме
Спасибо огромное! Собралась уже сама писать что-нибудь по "отлову", и тут Вашу обработку v1.14 увидела! Быстренько нашлась ошибка, и заодно некоторые проблемы всплыли, о которых я и не подозревала. Все устранилось. Вы мне сэкономили много времени! :!:
14. elsystem 08.01.10 23:22 Сейчас в теме
Спасибо автору! Отдуши написано!
15. nikanat 17.10.11 04:53 Сейчас в теме
16. vpozitive 01.11.11 23:07 Сейчас в теме
Хороший помощник!! Нужная вещь
17. Масянечка 06.11.11 13:36 Сейчас в теме
Спасибо! как раз насущная проблема после выгрузки из КПК посредствои Моби-С :(((
18. tgnike 08.11.11 12:33 Сейчас в теме
Спасибо. очень удобно и функционально!!!
19. courageous 24 10.11.11 12:55 Сейчас в теме
Отлично работает обработка. Бухам ручки поправить бы... как умудряются - непонятно, но теперь можно спокойно все исправить. Еще выриант переброски справочника из другой базы - коды полюбому совпадут, а с этой обработочкой такой проблемы больше нету! Автору спасибо.
20. san_nisan 17.11.11 21:42 Сейчас в теме
Отлично работает обработка. Автор молодец! Реально выручила ваша обработка. Всё четко работает
21. Artemuch2 29.01.12 21:17 Сейчас в теме
Отлично попробуем! как раз нужно перед сверткой
22. пользователь 29.01.12 21:18
Сообщение было скрыто модератором.
...
23. Joker 30.03.12 09:30 Сейчас в теме
хорошая вещь, постоянно борюсь с косяками в номерах, а универсальную все никак сам не сделал, теперь буду эту расшаривать
24. igor_35 18.01.13 11:26 Сейчас в теме
25. maksa2005 530 09.04.15 09:13 Сейчас в теме
Не помогло исправить(((
Оставьте свое сообщение