Нумерация

Новая тема
В последних конфигурациях 1С числовой код поменяли на текстовый. Пользоватьль ввел номер документа, теперь при вводе нового документа номер всегда один и тот-же. Что делать?
"найди "кривой" номер и добей лидирующие нули ...



а если таких много, запусти:



Док = СоздатьОбъект("Документ.Х"); // где Х-идентификатор

Док.ВыбратьДокументы();

Пока Док.ПолучитьДокумент() = 1 Цикл

 НомерДок = СокрЛП(Док.НомерДок);

 Пока СтрДлина(НомерДок)
   НомерДок = "0"+НомерДок;

 КонецЦикла;

 Док.НомерДок=НомерДок;

 Попытка

   Док.Записать();

 Исключение

   Сообщить("Двойник: "+Док.ТекущийДокумент());

 КонецПопытки;

КонецЦикла;



"
"Если у вас символьная нумерация, то лучше сделать вот так:

    Док = СоздатьОбъект("Документ.РеализацияРозница"); // либо другой документ
Док.ВыбратьДокументы('01.05.06','01.09.06'); // дату указываете сами
                                                      // (если надо), либо уберите этоу строку
Пока Док.ПолучитьДокумент() = 1 Цикл
НомерДок = СокрЛП(Док.НомерДок);
НомерДок = СокрЛП(Сред(Док.НомерДок,5)); //Берем кол-во символов в префиксе+1
Преф=Лев(Док.НомерДок,4); // А здесь именно кол-во символов в префиксе "ААА-"

Пока СтрДлина(НомерДок)<6 Цикл // Вместо 6 подставляем Разрядность - кол-во символов
                                      // в префиксе
  НомерДок = "0"+НомерДок;
  КонецЦикла;
 
Док.НомерДок=Преф+НомерДок;
Сообщить(Док.НомерДок);
Попытка
  Док.Записать();
Исключение
  Сообщить("Двойник: "+Док.ТекущийДокумент());
КонецПопытки;
КонецЦикла; "
А в конфигурации от 1С слабо дописать в глобальном модуле, чтоб нули сами дописывались, или так и будут мучиться пользователи?
поможет Вам, перенумерация документов начиная с самаго первого "кривого", используйте стандартные универсальные обработки 1С.
будут вопросы, пишите - помогу в проблемой...
на глаз от нуля почти неотличимо, а русское О от латинского О - так вообще безнадежно.
Есть ещё полушаманский метод. Делаем резервную копию ИБ, грузимся в конфигураторе, в проблемном типе документов ставим тип кода "числовой". Сохраняем метаданные. Меняем код обратно. Снова сохраняем. Лидирующие нули добиты везде. :) Хотя могут появиться дубликаты, например, если были введены документы с номерами "0001" и "01".

Повторяю, РЕЗЕРВНУЮ КОПИЮ ДЕЛАТЬ ОБЯЗАТЕЛЬНО. Я предупредил. :)
существует же обработка repval, если мне не изменяет память, для перенумерации документов, зачем столько сложностей?
Читают тему
(гостей: 1)

Быстрый переход