gifts2017

Перенумерация Справочников или Документов

Опубликовал Сергей Наркелюн (snarkelun) в раздел Обработки - Обработка документов

Обработки позволяют перенумеровать Справочники или Документы с выбором шаблона нумерации
(Очень полезно когда сбивается автоматическая нумерация, при ошибках пользователей)
1. Обработка позволяет Перенумеровать выбранный вид документа за период
2. Обработка позволяет Перенумеровать выбранный вид справочника
(Очень полезно когда сбивается автоматическая нумерация, при ошибках пользователей)

Если понравилось не забывайте поставить плюсик.
Благодарность можно выразить также взносом на рублевый кошелек WebMoney R113239341929 или Яндекс.Деньги 41001157467930 (через платежный терминал, например...)

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

Наименование Файл Версия Размер Кол. Скачив.
ПеренумерацияДокументовиСправочников.zip
.1186323662 18,34Kb
25.09.09
1478
.1186323662 18,34Kb 1478 Бесплатно

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Сhe Burashka (CheBurator) 06.08.07 00:59
Чем лучше штатной обработки, размещаемой на дисках ИТС?
2. Сергей Наркелюн (snarkelun) 07.08.07 10:01
Во-первых можно выбрать какой вид документа или справочника перенумеровывать
(выбирается в форме, а не передается параметром).
Во-вторых для документов выбирается период за который перенумеровывать.
В-третьих выполняется в десятки раз быстрее.
В-четвертых можно указать количество разрядов номера (шаблон для текстовых номеров).
3. Дима (easy_dee) 17.08.07 11:21
спасибо, за обработку....)))
4. Сhe Burashka (CheBurator) 07.09.07 12:37
(2)
1. ну и что? преимущество сомнительное...
2. а если мешающий номер будет лежать вне заданного периода - что будет в случае "нарушения уникальности"?
3. это надо проверить..
4. это да, может пригодится... но тоже сомнительно...
5. Сhe Burashka (CheBurator) 07.09.07 12:39
ТипНомера = СокрЛП(Метаданные.Справочник(ВидСправочника).ТипНомера);
{C:\ПЕРЕНУМЕРАЦИЯДОКУМЕНТОВИСПРАВОЧНИКОВ\ПЕРЕНУМЕРАЦИЯСПРАВОЧНИ­КОВ000000.ERT(37)}: Поле агрегатного объекта не обнаружено (ТипНомера)
6. Esperance (Esperance) 20.10.07 15:48
Ответ Сhe Burashke: в модуле вместо указанной строчки написала ТипНомера= "Текстовый"; и все работает, автору спасибо большое!
7. Сhe Burashka (CheBurator) 20.10.07 23:24
8. Poppy (poppy) 21.10.07 01:07
(6)
Esperance, на справочнике с числовым кодом и выбраным префиксом проверяла?

У O-Planet'а в похожей ситуации аналогичная обработка вообще подвисает.
9. Аркадий Кучер (Abadonna) 21.10.07 04:38
>ТипНомера = СокрЛП(Метаданные.Справочник(ВидСправочника).ТипНомера);
Вредный ты, Чебур ;) Описка у автора, полагаю...
Надо
ТипНомера = СокрЛП(Метаданные.Справочник(ВидСправочника).ТипКода);
>в модуле вместо указанной строчки написала ТипНомера= "Текстовый"; и все работает, автору спасибо большое!
Да уж... А в следующий раз ТипНомера= "Числовой" писать будешь?
kulkrise; +1 Ответить
10. Аркадий Кучер (Abadonna) 21.10.07 05:00
Код
Процедура ПриСменеВидаСправочника()
   //............................
       ТипНомера = СокрЛП(Метаданные.Справочник(ВидСправочника).ТипКода); 
   Если  ТипНомера="Числовой" Тогда
      Форма.ПрефиксШаблона.Доступность(0);
      ПрефиксШаблона="";
   КонецЕсли;
       //...............................
КонецПроцедуры   
Показать полностью

Вот так надо, во избежание...
11. Аркадий Кучер (Abadonna) 21.10.07 05:08
(10) Сам чуток лопухнулся.. :)
Код
Если  ТипНомера="Числовой" Тогда
      Форма.ПрефиксШаблона.Доступность(0);
      ПрефиксШаблона="";    
   Иначе
      Форма.ПрефиксШаблона.Доступность(1);
КонецЕсли;
Показать полностью

И на фига мне последовательность справочников, как они в конфе идут? Неудобно!
Надо добавить: ВидыСпр.Сортировать();

snarkelun; +1 Ответить
12. Сhe Burashka (CheBurator) 21.10.07 14:52
я не вредный, я - дотошный.. это значит до тошноты вредный...
13. Сергей Наркелюн (snarkelun) 22.10.07 05:29
Исправлены ошибки, учтены пожелания.
Особые благодарности Abadonna +1, Сhe Burashka (я тоже ДоТошный).
14. Сергей Наркелюн (snarkelun) 22.10.07 06:07
(4)
Если мешающий номер будет лежать вне заданного периода: две возможности 1) расширить период, 2) номер будет пропущен
15. Poppy (poppy) 23.10.07 08:43
Хороший алгоритм перенумерации. Однако, при определенных исходных данных можно получит ошибку:
ДокуменДляПеренумерации.Записать();
{С:\ПЕРЕНУМЕРАЦИЯДОКУМЕНТОВ.ERT(234)}: Номер не уникальный!

Например. В выбранном периоде имеется 7 документов. Исходные номера - с префиксами. Задаем префикс = "1", длина шаблона = 1.
16. Poppy (poppy) 23.10.07 22:52
(12)
> я не вредный, я - дотошный.. это значит до тошноты вредный...

- это что за клоун?
- местный, говорит мудила-страшный...
- страшный? ты сказал страшный? меня зовут страшила-мудрый, однако! живу в подводном посёлке, в оленеводческом совхозе...
(с) Гоблин (Буря в стакане)

Извини, навеяло... ;)
17. Сергей Наркелюн (snarkelun) 24.10.07 06:55
Добавлена проверка на правильность шаблона.
Плюс некоторые внешние усовершенствования.
18. Михаил Семенов (Shaman100M) 24.10.07 09:07
Есть пара вопросов.
Вид документа, имеющий ссылку на общий нумератор нескольких видов, похоже, не сможет перенумероваться?

Функция ПроверкаВЗаблокированныхДокументах() поиск номера осуществлен перебором списка. Имхо, лучше обрезать пробелы в значениях в списке сразу и использовать НайтиЗначение(). Еще метода, - на порядок быстрее будет искать в строке, сделав предварительно ВСтрокуСРазделителями().
19. Magus (magus) 24.10.07 14:32
На поле ввода ПрефиксШаблона логичнее повесить процеудру ПроверкаПравильностиШаблона(), но не ПриВводеДлинаШаблона()

Кнопки Закрыть() не хватает.
20. Magus (magus) 24.10.07 14:36
Еще предложение. Вместо кода
Код
   Синоним = СокрЛП(Метаданные.Документ(Индекс).Синоним);
   Идентиф = СокрЛП(Метаданные.Документ(Индекс).Идентификатор);
   Если Синоним="" Тогда
      Синоним = Идентиф;
   КонецЕсли;   
Показать полностью

Можно написать:
Код
   Синоним = СокрЛП(Метаданные.Документ(Индекс).Представление());
   Идентиф = СокрЛП(Метаданные.Документ(Индекс).Идентификатор);
Показать полностью
21. Magus (magus) 24.10.07 14:46
По какому признаку были выбраны недопустимые симовлы?

Проверка шаблона нужна только для предупреждения пользователя или для его ограничения?

Если перед шаблоном поставить пробелы, то проверка незаметит запрещенные символы. Например шаблон "~" проверку не пройдет, но " ~" пройдет успешно.
22. Poppy (poppy) 25.10.07 19:19
(17)
> Добавлена проверка на правильность шаблона.

Бяка. Стало хуже. ИМХО неоправданные ограничения для получения сомнительного результата.
23. Anton905 (anton905) 08.01.08 22:03
Спасибо! помогло - времени нет и эта обработка очень кстати!!
24. shard (shard) 15.02.08 12:12
а в чем отличие по функционалу от стандартного комплекса обработок UChoice?
26. гр534 (rabanik) 25.03.08 00:35
Спасибо ОГРОМНОЕ очень помогла!!!!!
27. Александр (karbofos) 29.04.08 18:56
Пришлась оченьно к стати. Самому было лениво писать. А юэеры такого понаписали за то время пока я в отпуске был.
В общем Спасибо.
28. GSoft. (GSoft) 07.08.08 16:00
спасибо за лелеяние моей лени )))))
29. cheri (cheri) 26.11.08 12:39
Спасибо огромное!!! Прекратились мои мучения по перенумерации вручную.
30. Денис Воробьев (Мартовский_котя) 24.02.09 18:32
надо добавить фирму.... в перенумерцию по документам у многих на разные фирмы разные префиксы и разные номера а он зараза их под одну греьенку
31. Максим (NaidaM) 25.04.09 11:07
Очень удобная обработка...
афтару +1
32. Константин Исиченко (IsiKosta) 24.09.10 10:01
Отсортируйте список видов, добавьте описание. Плюсую.
33. Людмила Кононова (vilkomaudit) 21.11.10 01:24
Извините, а я могу такую обработку по перенумерации рко и пко получить, очень нужно... :)
34. Егор Киреев (po.l.i) 20.01.11 15:36
почему-то при перенумерации в документе количество символов в номере 7
у себя я поправил так:
// Для КолвоЗнаков = 1 По ДлинаШаблона-СтрДлина(СокрЛП(ПрефиксШаблона))-СтрДлина(Строка(МаксНомер)) Цикл
Для КолвоЗнаков = 1 По ДлинаШаблона-СтрДлина(Строка(МаксНомер)) Цикл
35. Александр Зайцев (Сашулик) 10.03.11 18:06
В свете Украинских изменений в налоговом законодательстве-хорошая обработка плюсую однозначно!
36. Tristania 21.09.11 09:40
37. Mac RR (NewYork) 03.10.11 00:34
мнее подошло за что автору спасибо) конечно давняя обработка но сработала)
38. Markin (Markin) 06.10.11 12:49
39. dgamelya (revril) 20.10.11 11:29
спасибо))очень пригодилась))
40. Александр Лыткин (TrinitronOTV) 27.10.11 15:03
dgamelya пишет:

спасибо))очень пригодилась))

я тоже присоединяюсь....
41. Тимур (tgnike) 08.11.11 12:32
42. Max (mkobzancev) 12.12.11 19:12
43. Елена (m-xolding) 26.01.12 12:06
Спасибо автору! Очень удобно, если документы вводятся не по порядку по датам, можно в любой момент, в пределах отчета, перенумеровать. За исключением уже выписанных документов для клиентов.
44. Константин Коробов (MoonAriman) 27.01.12 16:46
Что-то я не понимаю... Максимальная длина кода справочника - 8, а он дает с учетом префикса сделать максимум 7. Разряд теряет, что меня совсем не устраивает. Но за скорость работы - плюс.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа