Если вы используете проведение по партиям оффлайн , то вынуждены проводить списание по партиям вручную используя обработку Проведение по партиям. Для автоматизации этого процесса можно создать регламентное задание. Предлагаю пример такого задания.
Процедура РегламентноеЗадание_ПроведениеПоПартиям() Экспорт Обработка=Обработки.ПроведениеПоПартиям.Создать(); Обработка.ДатаКонцаОбработки=ТекущаяДата(); Обработка.Организация=Справочники.Организации.НайтиПоНаименованию("Тест"); Обработка.ОтражатьВБухгалтерскомУчете=Истина; Обработка.ОтражатьВУправленческомУчете=Истина; Обработка.ОтражатьВНалоговомУчете=Ложь; Обработка.ФормироватьПроводки=Истина; Обработка.МаксимальноеКоличествоДокументовВВыборке=1; Обработка.МаксимальноеКоличествоСтрокВТранзакции=1; Обработка.ПолучитьГраницуПоследовательности(); УправлениеЗапасамиПартионныйУчет.ВыполнитьВосстановлениеНаСервере(Обработка.ДатаКонцаОбработки, Обработка.Организация, Обработка.ОтражатьВУправленческомУчете, Обработка.ОтражатьВБухгалтерскомУчете, Обработка.ОтражатьВНалоговомУчете, Обработка.Останавливаться, Обработка.МаксимальноеКоличествоДокументовВВыборке, Обработка.МаксимальноеКоличествоСтрокВТранзакции, Обработка.ФормироватьПроводки, Обработка.ПроводитьПоНДС); КонецПроцедуры
Ф
ункция ПолучитьГраницуПоследовательности(Учет="", Организация = Неопределено) Экспорт Если Учет = "Упр" ИЛИ Учет ="" Тогда СтрОкончание = ""; СтрРеквизит = "Управленческом"; ИначеЕсли Учет = "Бух" Тогда СтрОкончание = "БУ"; СтрРеквизит = "Бухгалтерском"; ИначеЕсли Учет = "Нал" Тогда СтрОкончание = "НУ"; СтрРеквизит = "Налоговом"; ИначеЕсли Учет = "НДС" Тогда СтрОкончание = "НДС"; СтрРеквизит = "НДС"; Иначе Возврат Новый МоментВремени('00010101'); КонецЕсли; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 | ПартионныйУчетГраницы.МоментВремени КАК МоментВремени |ИЗ | Последовательность.ПартионныйУчет" + СтрОкончание + ".Границы КАК ПартионныйУчетГраницы |ГДЕ | ПартионныйУчетГраницы.Организация = &Организация | И ПартионныйУчетГраницы.Период >= &время //Дима добавлена строка | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | ПартионныйУчет.МоментВремени |ИЗ | Последовательность.ПартионныйУчет" + СтрОкончание + " КАК ПартионныйУчет |ГДЕ | (НЕ ПартионныйУчет.ПроведенВХронологическойПоследовательности) | И ПартионныйУчет.Организация = &Организация | И ПартионныйУчет.Период >= &время //Дима добавлена строка | |УПОРЯДОЧИТЬ ПО | МоментВремени"; Запрос.УстановитьПараметр("Организация", Организация); Запрос.УстановитьПараметр("время", Дата(2012,12,01)); //Дима добавлен параметр Выборка = Запрос.Выполнить().Выбрать(); Если Выборка.Следующий() Тогда Возврат Выборка.МоментВремени; Иначе Возврат Новый МоментВремени('00010101'); КонецЕсли; КонецФункции // ПолучитьГраницуПоследовательности(Задача)
Далее в свойствах Модуля делаем необходимые настройки в свойствах модуля.
После этого создаем регламентное задание, открыв объект Регламентные задания, указав его имя, расписание.
Сохраняем конфигурацию и запускаем предприятие. В меню Сервис выбираем Установка даты запрета изменения данных, в которой выбираем дату до которой данные не могут изменяться.
Выбираем саму обработку Проведение по партиям и в меню Настройка – Установка границы последовательности указываем границу и организацию, по видам учета –ОК.
Все, после этого если вы указали расписание, то обработка сама выполнит списание по партиям товаров