gifts2017

Обработка выгрузки инвентарных номеров ОС, о которых введены сведения в РегистрСведений.СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствам

Опубликовал Игорь (VIA_1C) в раздел Обработки - Обработка справочников

Обработка выгрузки инвентарных номеров ОС, о которых введены сведения в Регистр Сведений СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствам

Обработка выгрузки инвентарных номеров ОС, о которых введены сведения в РегистрСведений.СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствам.

Мне пригодилась в одной организации при переносе сведений об ОС из Бухгалтерии 7.7 в Бухгалтерию 2.0:

//Обработка выгрузки инвентарных номеров ОС, о которых введены сведения в РегистрСведений.СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствам
//(C) VIA_1C, 2013 г.


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

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствамСрезПоследних.ОсновноеСредство КАК ОсновноеСредство,
| ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних.ИнвентарныйНомер
|ИЗ
| РегистрСведений.СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствам.СрезПоследних(&МоментВремени, Организация = &Организация) КАК СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствамСрезПоследних
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПервоначальныеСведенияОСБухгалтерскийУчет.СрезПоследних(&МоментВремени, Организация = &Организация) КАК ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних
| ПО СтавкиНалогаНаИмуществоПоОтдельнымОсновнымСредствамСрезПоследних.ОсновноеСредство = ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних.ОсновноеСредство
|

//если надо проверить, есть ли записи об ОС, у которых не установлен инвентарный номер, то
//раскомментировать код ниже
//|ГДЕ
//| ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних.ИнвентарныйНомер Есть NULL

|
|УПОРЯДОЧИТЬ ПО
| ОсновноеСредство";

Запрос.УстановитьПараметр("МоментВремени", КонецДня(ТекущаяДата()));
Запрос.УстановитьПараметр("Организация", Организация);

Результат = Запрос.Выполнить();

ТекстовыйДок = Новый ТекстовыйДокумент;

ВыборкаДетальныеЗаписи = Результат.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

Если ЗначениеЗаполнено(ВыборкаДетальныеЗаписи.ИнвентарныйНомер) Тогда
ТекстовыйДок.ДобавитьСтроку(СокрЛП(ВыборкаДетальныеЗаписи.ИнвентарныйНомер));
Иначе
//ищем инвентарный номер в комментарии карточки ОС
ТекОС = ВыборкаДетальныеЗаписи.ОсновноеСредство;
Поз = Найти(ТекОС.Комментарий, "инв. ном.:");

Если Поз <> 0 Тогда
СтрИнвНомер = "";
Для Сч = Поз+11 По 250 Цикл
Если Сред(ТекОС.Комментарий,Сч, 1) <> " " Тогда
СтрИнвНомер = СтрИнвНомер + Сред(ТекОС.Комментарий,Сч, 1);
Иначе
Прервать;
КонецЕсли;
КонецЦикла;

ТекстовыйДок.ДобавитьСтроку(СтрИнвНомер);
Иначе
Сообщить("Для ОС " + СокрЛП(ТекОС) + " не найден инв. номер в комментарии!!!");
КонецЕсли;
КонецЕсли;

КонецЦикла;

Попытка
ТекстовыйДок.Записать("ИнвентарныеНомераОС.txt", КодировкаТекста.Системная);
Сообщить("Готово! Создан файл ИнвентарныеНомераОС.txt");
Исключение
Сообщить("Не удалось записать файл");
КонецПопытки;

КонецПроцедуры 

P.S. Файл выгрузки формируется в каталоге запуска обработки!

 

 

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Файл обработки
.epf 7,26Kb
15.04.13
6
.epf 7,26Kb 6 Скачать

См. также

Contragent+ 5.0 от 2 500
Подписаться Добавить вознаграждение

Комментарии

1. Татьяна Теплова (teplova) 18.04.13 04:10
Автор, неужели кроме колонки инвентарных номеров нельзя было вывести хотя бы наименование ОС? А еще желательно и ставки налога... Я понимаю, что можно доработать самим, но в данном виде - какая-то бесполезная на мой взгляд штука.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа