Как проверить на уникальность номер документа?

Новая тема
"Написала обработку, которая добавляет недостающие нули слева к числу.

Процедура КнопкаВыполнитьНажатие(Кнопка)

Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
              | Отправления.Ссылка,
              | Отправления.Номер,
              | Отправления.Дата
              |ИЗ
              | Документ.Отправления КАК Отправления
          |";


Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Док = Выборка.Ссылка.ПолучитьОбъект();    
ДлинаНомера = СтрДлина( СокрЛП(Док.Номер) ); // получаю длину строки без пробелов
ДобавляемСимволы = 9 - ДлинаНомера; // число недостающих символов
НовНомер =Прав("000000000" + СокрЛП(Док.Номер), 9);
Док.Номер = НовНомер;
Док.Записать(РежимЗаписиДокумента.Запись);
КонецЦикла;

---------
т.к. при добавление к существующим номерам недостающие нули, могут вызвать ошибку неуникальности

было
009
09
станет
0000000­09
000000009
Вопрос. Как сравнить строки и на дубликат вместо первого "0" поставить "_"?


"
"   Как-то так, после
НовНомер =Прав("000000000" + СокрЛП(Док.Номер), 9);
  добавить
НовДокСсылка = Документы[Док.Метаданные().Имя].НайтиПоНомеру(НовНомер, Док.Дата);
Если НЕ НовДокСсылка.Пустая() Тогда
НовНомер = "_" + Прав(НовНомер, 8);
КонецЕсли
"
Читают тему
(гостей: 1)

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