Обработка выгрузки инвентарных номеров ОС, о которых введены сведения в РегистрСведений.СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствам.
Мне пригодилась в одной организации при переносе сведений об ОС из Бухгалтерии 7.7 в Бухгалтерию 2.0:
//Обработка выгрузки инвентарных номеров ОС, о которых введены сведения в РегистрСведений.СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствам 
//(C) VIA_1C, 2013 г.
Процедура КнопкаВыполнитьНажатие(Кнопка)
 
 Запрос = Новый Запрос;
 Запрос.Текст = 
 "ВЫБРАТЬ
 | СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствамСрезПоследних.ОсновноеСредство КАК ОсновноеСредство,
 | ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних.ИнвентарныйНомер
 |ИЗ
 | РегистрСведений.СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствам.СрезПоследних(&МоментВремени, Организация = &Организация) КАК СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствамСрезПоследних
 | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПервоначальныеСведенияОСБухгалтерскийУчет.СрезПоследних(&МоментВремени, Организация = &Организация) КАК ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних
 | ПО СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствамСрезПоследних.ОсновноеСредство = ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних.ОсновноеСредство
 |
 
 //если надо проверить, есть ли записи об ОС, у которых не установлен инвентарный номер, то
 //раскомментировать код ниже
 //|ГДЕ
 //| ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних.ИнвентарныйНомер Есть NULL
 
 |
 |УПОРЯДОЧИТЬ ПО
 | ОсновноеСредство";
 Запрос.УстановитьПараметр("МоментВремени", КонецДня(ТекущаяДата()));
 Запрос.УстановитьПараметр("Организация", Организация);
 Результат = Запрос.Выполнить();
 
 ТекстовыйДок = Новый ТекстовыйДокумент;
 ВыборкаДетальныеЗаписи = Результат.Выбрать();
 Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
 
 Если ЗначениеЗаполнено(ВыборкаДетальныеЗаписи.ИнвентарныйНомер) Тогда
 ТекстовыйДок.ДобавитьСтроку(СокрЛП(ВыборкаДетальныеЗаписи.ИнвентарныйНомер));
 Иначе
 //ищем инвентарный номер в комментарии карточки ОС
 ТекОС = ВыборкаДетальныеЗаписи.ОсновноеСредство;
 Поз = Найти(ТекОС.Комментарий, "инв. ном.:");
 
 Если Поз <> 0 Тогда
 СтрИнвНомер = "";
 Для Сч = Поз+11 По 250 Цикл
 Если Сред(ТекОС.Комментарий,Сч, 1) <> " " Тогда
 СтрИнвНомер = СтрИнвНомер + Сред(ТекОС.Комментарий,Сч, 1);
 Иначе
 Прервать;
 КонецЕсли;
 КонецЦикла;
 
 ТекстовыйДок.ДобавитьСтроку(СтрИнвНомер);
 Иначе
 Сообщить("Для ОС " + СокрЛП(ТекОС) + " не найден инв. номер в комментарии!!!"); 
 КонецЕсли; 
 КонецЕсли;
 
 КонецЦикла;
 Попытка
 ТекстовыйДок.Записать("ИнвентарныеНомераОС.txt", КодировкаТекста.Системная);
 Сообщить("Готово! Создан файл ИнвентарныеНомераОС.txt");
 Исключение
 Сообщить("Не удалось записать файл");
 КонецПопытки;
 
КонецПроцедуры 
P.S. Файл выгрузки формируется в каталоге запуска обработки!
Вступайте в нашу телеграмм-группу Инфостарт
 
                                    