Имя: Пароль:
1C
 
УстановитьНовыйНомер() иногда пропускает установку номера
0 Gens1c
 
25.12.23
22:12
Посоветуйте как можно проверить из-за чего так получается или как исправить, вот код может тут ошибка?
Пр = СокрЛП(Организация.Префикс);
    
    Если ЭтотОбъект.ВидДокумента = Перечисления.ВидРасхода.БезналичныйРасчет Тогда
        
        Если не СокрЛП(Организация.Наименование)  = "Название компании" Тогда
            Если Найти(Номер, "Б-") = 0 Тогда
                УстановитьНовыйНомер("Б-");    
            КонецЕсли;
        Иначе
            Если Найти(Номер, "Б-") = 0 Тогда
                УстановитьНовыйНомер(Пр+"Б-");    
            КонецЕсли;
            
        КонецЕсли;
        
    Иначе
        
        Если не СокрЛП(Организация.Наименование)  = "Название компании" Тогда
            Если Найти(Номер, "Н-") = 0 Тогда
                УстановитьНовыйНомер(Пр+"Н-");    
            КонецЕсли;
        Иначе
            Если Найти(Номер, "Н-") = 0 Тогда
                УстановитьНовыйНомер(Пр+"Н-");    
            КонецЕсли;
            
        КонецЕсли;
    КонецЕсли;
1 2S
 
25.12.23
22:17
Какой кошмар
2 Fedor-1971
 
26.12.23
09:41
(0) Номер - это номер документа, по факту, ещё может быть пустым
А ты построил алгоритм на его анализе.

Вот это:
"Если не СокрЛП(Организация.Наименование)  = "Название компании" Тогда"
Слов нет, буквы теряются - пользователь добавит лишний пробел в наименовании или поменяет буквы и твой код отправится в космос.
Если полез в сравнение, то, хотя бы, на код записи опирайся, до него пользователю долезть сложнее.

Если локально для конкретного типа документа, то, по уму, сделай РС с Организацией, видом расхода и префиксом
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.