Здравствуйте друзья.. Написал мне програмист обработку для эксель файла. всмысле есть эксель файл где остатки экспедиторов. Открывая обработку как на фотке я добавляю, эксель файл и склад.. Вроде бы все отлично работаетю 10 документо все зар0гузились только есть один документ который не загружается.. пишет ошибку "деление на ноль".. Вроде бы проверял документы, цыфры, измирение, имена товаров все нормально, калонки тоже нормальны. Кто-то может дать совет от чего бы это могло бы быть ? ППрилагаю фото .. заранее спасибо
---
Начнём с того, что нужно понять в какой момент происходит деление на ноль!
1. При создании документа?
2. При его проведении?

Для этого режим записи документа надо изменить на Запись. И в целом очень рекомендую проведение документов делать либо отдельной кнопкой либо руками. Что не накладывать на обработку ошибки в проведении.
---
Этой информации мало , чтобы вам помочь. Ошибка может быть где угодно.
---
Я знаете от чего думаю это так? А может этот товар у меня на номенклатуре нету, и когда програмист писал обработку не сделал так что бы, когда грузишь остаток, если этого товара нету что бы создалось.. От этого может быть ?
---
Начнём с того, что нужно понять в какой момент происходит деление на ноль!
1. При создании документа?
2. При его проведении?

Для этого режим записи документа надо изменить на Запись. И в целом очень рекомендую проведение документов делать либо отдельной кнопкой либо руками. Что не накладывать на обработку ошибки в проведении.
---
Дело в том что я уже пробовал поставить запись. Загрузка идет и когда уже все страницы заканчивается опять выходит деление на ноль..
---
Или может вы мне поможете, написать допалнительно какой нибудь код, в самом обработке что бы ошибка именно где выходит внизу это в окне сообщение выевляло.
---
```1c
    Попытка
    Док.Записать();

    Исключение
    Инфо = ИнформацияОбОшибке();
    Сообщить(НСтр("ru='Описание=';en='Description='") + Инфо.Описание + "'");
    Сообщить(НСтр("ru='ИмяМодуля=';en='ModuleName='") + Инфо.ИмяМодуля + "'");
    Сообщить(НСтр("ru='НомерСтроки=';en='LineNumber='") + Инфо.НомерСтроки + "'");
    Сообщить(НСтр("ru='ИсходнаяСтрока=';en='SourceLine='") + Инфо.ИсходнаяСтрока + "'");
    КонецПопытки;
```
---
Это передзаписю вставить ?
---
```1c
    Функция НайтиПоНоименование(Тип,Наименование,ЭтоГруппа=Ложь,Родитель=")
    запрос=Новый Запрос;
    если не ЗначениеЗаполнено(Родитель) тогда
    Запрос_текст="ВЫБРАТЬ
    | Тип.Ссылка
    |ИЗ
    | Справочник.Тип КАК Тип
    |ГДЕ
    | Тип.ЭтоГруппа=(&ЭтоГруппа)
    | И Тип.Наименование = &Наименование
    | ";
    Иначе
    Запрос_текст="ВЫБРАТЬ
    | Тип.Ссылка
    |ИЗ
    | Справочник.Тип КАК Тип
    |ГДЕ
    | Тип.ЭтоГруппа=(&ЭтоГруппа)
    | И Тип.Наименование = &Наименование
    | И Тип.Ссылка = (&Родитель)";
    Запрос.Параметры.Вставить("Родитель",Родитель);
    Конецесли;

    Запрос_текст=СтрЗаменить(Запрос_текст,"Тип",Тип);
    запрос.Текст=Запрос_текст;

    Запрос.Параметры.Вставить("Наименование",Наименование);
    Запрос.Параметры.Вставить("ЭтоГруппа",ЭтоГруппа);
    тз=запрос.Выполнить().Выгрузить();
    если тз.Количество()>0 тогда
    Возврат тз[0].Ссылка;
    Иначе
    возврат справочники[Тип].ПустаяСсылка();
    Конецесли;
    КонецФункции

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

    эксел=новый COMОбъект("Excel.Application");
    эксел.Visible = 1;
    НачатьТранзакцию();

    док=Документы.ОприходованиеТоваров.СоздатьДокумент();
    док.ИнстализацияДокумента();
    док.Склад=Склад;

    колстр=0;
    нашфайл=эксел.Workbooks.Open(ИмяФайла);
    Для й1=1 По нашфайл.Worksheets().Count Цикл
    Нашлист = нашфайл .Sheets(й1); //
    н=Нашлист.UsedRange.Row+Нашлист.UsedRange.Rows.Count()-1 ;
    Если н=0 Тогда
    продолжить;
    КонецЕсли;
    Для й2=9 По н Цикл
    состояние("+й2+" / "+н);

    если Сокрлп(НашЛист.Cells(й2,5).Value)+Сокрлп(НашЛист.Cells(й2,9).Value) =" тогда
    Продолжить;
    Конецесли;
    НаимТовар=Сокрлп(НашЛист.Cells(й2,5).Value);
    Товар=Справочники.Номенклатура.НайтиПоНаименованию(НаимТовар,Истина);
    Если не товар.Пустая() тогда
    Кол=НашЛист.Cells(й2,9).Value;
    если кол<>0 тогда
    стр=док.Товары.Добавить();
    стр.Товар=товар;
    стр.Единица=товар.БазоваяЕдиница;
    стр.Коэффициент=стр.Единица.Коэффициент;
    стр.Количество=кол;
    КонецЕсли;
    Иначе
    Сообщить("Mal tapılmadı: "+НаимТовар);
    КонецЕсли;

    КонецЦикла;
    КонецЦикла;

    если док.Товары.Количество()>0 тогда
    док.Записать(РежимЗаписиДокумента.Проведение);
    КонецЕсли;

    ЗафиксироватьТранзакцию ();
    эксел.WorkBooks.close();
    эксел.Quit();
    КонецПроцедуры

    Процедура ИмяФайлаНачалоВыбора(Элемент, СтандартнаяОбработка)
    Режим = РежимДиалогаВыбораФайла.Открытие;
    ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(Режим);
    ДиалогОткрытияФайла.Фильтр="*.xls|*.xls";
    ДиалогОткрытияФайла.МножественныйВыбор=Ложь;
    Если ДиалогОткрытияФайла.Выбрать() Тогда
    ИмяФайла=ДиалогОткрытияФайла.ВыбранныеФайлы[0];
    КонецЕсли;;
    СтандартнаяОбработка=ложь;
    КонецПроцедуры
```

Где именно поставить этот код ?
---
док.Записать(РежимЗаписиДокумента.Проведение);

Вместо этого.
---
какой то строка под номером 82 )) удалил, опять 82 и так 5-6 раз. в конце надоело удалил из 82 10 штук и потом пошло обработка)) нимогу понять какая ошибка может там в экселе быть. вроде бы все нормально.
---
Сообщение было скрыто модератором.