Решение:
Для решения задачи задействуем следующие объекты:
1) ПВХ "Виды субконто".
Процедура ОбработкаПроведения(Отказ, Режим)
Движения.Управленческий.Записывать = Истина;
Движения.ОстаткиНоменклатуры.Записывать = Истина;
Для Каждого ТекСтрокаСписокНоменклатуры Из СписокНоменклатуры Цикл
Движение = Движения.ОстаткиНоменклатуры.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.Номенклатура = ТекСтрокаСписокНоменклатуры.Номенклатура;
Движение.Склад = Склад;
Движение.Количество = ТекСтрокаСписокНоменклатуры.Количество;
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Управленческий.Товары;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Склады] = Склад;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатура] = ТекСтрокаСписокНоменклатуры.Номенклатура;
Движение.СчетКт = ПланыСчетов.Управленческий.Поставщики;
Движение.Период = Дата;
Движение.Сумма = ТекСтрокаСписокНоменклатуры.Сумма;
Движение.КоличествоДт = ТекСтрокаСписокНоменклатуры.Количество;
КонецЦикла;
КонецПроцедуры
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
СуммаПоДокументу = СписокНоменклатуры.Итог("Сумма");
КонецПроцедуры
6) Потребуется регистр сведений "Состав комплекта"
Добавляем проверку чтобы выполнялось условие задачи (Комплект не может быть частью другого комплекта)
&НаКлиенте
Процедура НоменклатураОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
Если ВыбранноеЗначение.ЭтоКомплект Тогда
СтандартнаяОбработка = Ложь;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Комплект не может быть выбран";
Сообщение.Сообщить();
КонецЕсли;
КонецПроцедуры
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
Движения.ОстаткиНоменклатуры.Записывать = Истина;
Для Каждого ТекСтрокаСостав Из Состав Цикл
Движение = Движения.ОстаткиНоменклатуры.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Номенклатура = ТекСтрокаСостав.Номенклатура;
Движение.Склад = СкладОтправитель;
Движение.Количество = ТекСтрокаСостав.Количество;
КонецЦикла;
Движения.ОстаткиНоменклатуры.БлокироватьДляИзменения = Истина;
Движения.ОстаткиНоменклатуры.Записать();
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.ОстаткиНоменклатуры");
ЭлементБлокировки.УстановитьЗначение("Склад", СкладОтправитель);
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.ИсточникДанных = Состав;
ЭлементБлокировки.ИспользоватьИзИсточникаДанных("Номенклатура", "Номенклатура");
Блокировка.Заблокировать();
Запрос = Новый Запрос;
МВТ = Новый МенеджерВременныхТаблиц;
Запрос.МенеджерВременныхТаблиц = МВТ;
Запрос.Текст = "ВЫБРАТЬ
| СборкаСостав.Номенклатура КАК Номенклатура,
| СУММА(СборкаСостав.Количество) КАК Количество
|ПОМЕСТИТЬ ДокТЧ
|ИЗ
| Документ.Сборка.Состав КАК СборкаСостав
|ГДЕ
| СборкаСостав.Ссылка = &Ссылка
|
|СГРУППИРОВАТЬ ПО
| СборкаСостав.Номенклатура
|
|ИНДЕКСИРОВАТЬ ПО
| Номенклатура
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ОстаткиНоменклатурыОстатки.Номенклатура.Представление КАК Номенклатура,
| ОстаткиНоменклатурыОстатки.КоличествоОстаток КАК Остаток
|ИЗ
| РегистрНакопления.ОстаткиНоменклатуры.Остатки(
| &ТочкаИтогов,
| Номенклатура В
| (ВЫБРАТЬ
| ДокТЧ.Номенклатура
| ИЗ
| ДокТЧ)
| И Склад = &Склад) КАК ОстаткиНоменклатурыОстатки
|ГДЕ
| ОстаткиНоменклатурыОстатки.КоличествоОстаток < 0";
Запрос.УстановитьПараметр("Ссылка",Ссылка);
Запрос.УстановитьПараметр("Склад",СкладОтправитель);
Запрос.УстановитьПараметр("ТочкаИтогов", Новый Граница(МоментВремени(),ВидГраницы.Включая));
РезультатЗапроса = Запрос.Выполнить();
Если Не РезультатЗапроса.Пустой() Тогда
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
Отказ = Истина;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Недосточно товара "+ Выборка.Номенклатура + " в количестве "+ (-Выборка.Остаток);
Сообщение.Сообщить();
КонецЦикла;
КонецЕсли;
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрБухгалтерии.Управленческий");
ЭлементБлокировки.УстановитьЗначение("Субконто1", СкладОтправитель);
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.ИсточникДанных = Состав;
ЭлементБлокировки.ИспользоватьИзИсточникаДанных("Субконто2", "Номенклатура");
Блокировка.Заблокировать();
Если Отказ Тогда
Возврат;
КонецЕсли;
Движения.Управленческий.Записывать = Истина;
Движения.Управленческий.Записать();
Запрос.Текст ="ВЫБРАТЬ
| ДокТЧ.Номенклатура,
| ДокТЧ.Количество,
| ЕСТЬNULL(УправленческийОстатки.СуммаОстаток, 0) КАК ОстатокСум,
| ЕСТЬNULL(УправленческийОстатки.КоличествоОстаток, 0) КАК ОстатокКол
|ИЗ
| ДокТЧ КАК ДокТЧ
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Управленческий.Остатки(
| &ТочкаИтогов,
| Счет = &СчетТовары,
| ,
| Субконто1 = &Склад
| И Субконто2 В
| (ВЫБРАТЬ
| ДокТЧ.Номенклатура
| ИЗ
| ДокТЧ)) КАК УправленческийОстатки
| ПО ДокТЧ.Номенклатура = УправленческийОстатки.Субконто2";
Запрос.УстановитьПараметр("СчетТовары", ПланыСчетов.Управленческий.Товары);
Запрос.УстановитьПараметр("Склад",СкладОтправитель);
МСубконто = Новый Массив(2);
МСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконто.Склады);
МСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконто.Номенклатура);
Запрос.УстановитьПараметр("МСубконто",МСубконто);
Запрос.УстановитьПараметр("ТочкаИтогов", Новый Граница(МоментВремени(),ВидГраницы.Исключая));
СтоимостьКомплектующих =0;
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Проводка =Движения.Управленческий.Добавить() ;
Проводка.Период = Дата;
Проводка.СчетДт = ПланыСчетов.Управленческий.ОсновноеПроизводство;
Проводка.СчетКт = ПланыСчетов.Управленческий.Товары;
Проводка.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Склады] =СкладОтправитель ;
Проводка.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатура] =Выборка.Номенклатура ;
Проводка.КоличествоКт = Выборка.Количество;
СуммаПроводки = Выборка.Количество *(Выборка.ОстатокСум/Выборка.ОстатокКол);
Проводка.Сумма = СуммаПроводки;
СтоимостьКомплектующих =СтоимостьКомплектующих + СуммаПроводки;
КонецЦикла;
Проводка =Движения.Управленческий.Добавить() ;
Проводка.Период = Дата;
Проводка.СчетКт = ПланыСчетов.Управленческий.ОсновноеПроизводство;
Проводка.СчетДт = ПланыСчетов.Управленческий.Товары;
Проводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Склады] =СкладПолучатель ;
Проводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатура] =Комплект ;
Проводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Покупатели] =Покупатель ;
Проводка.КоличествоДт = Количество;
Проводка.Сумма = СтоимостьКомплектующих;
Проводка =Движения.Управленческий.Добавить() ;
Проводка.Период = Дата;
Проводка.СчетКт = ПланыСчетов.Управленческий.ВспомогательноеПроизводство;
Проводка.СчетДт = ПланыСчетов.Управленческий.Товары;
Проводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Склады] =СкладПолучатель ;
Проводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатура] =Комплект ;
Проводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Покупатели] =Покупатель ;
Проводка.Сумма = СуммаСборки ;
КонецПроцедуры
Скачать решение задачи 2.27
1) ПВХ "Виды субконто".
- Заполняем типы значений характеристик и дополнительные значения характеристик.
- Согласно условия задачи заводим 3 предопределенных элемента "Склады" "Номенклатура" и "Покупатели"
- на закладке "субконто" заполняем тип субконто и устанавливаем значение субконто=3.
- Редактируем предопределенный счет: "Товары" и добавляем 3 субконто.(покупатели "только обороты")
3) Добавляем регистр бухгалтерии "Управленческий".
- Связываем его с планом счетов
- Добавляем признак учета "количественный".
- Добавляем ресурсы ( сумма, количество). Количество - не балансовый, "Количественный"
- Выбираем регистраторы.
4) Не забываем о том, что в задачах бухгалтерского учета необходимо добавить документ, с помощью которого можно добавлять записи в регистр вручную. Назовем его "Операция".
укажем что он является регистратором нашего регистра.
добавим форму,на форму вытащим реквизит Объект-движения-управленческий.
Запретим проведение этого документа
5) Переходим к Приходной накладной.
При решении задания решил использовать вспомогательный регистр "Остатки номенклатуры" для демонстрации методики оперативного проведения.
При решении задания решил использовать вспомогательный регистр "Остатки номенклатуры" для демонстрации методики оперативного проведения.
- С помощью конструктора движений формируем обработку проведения.
Процедура ОбработкаПроведения(Отказ, Режим)
Движения.Управленческий.Записывать = Истина;
Движения.ОстаткиНоменклатуры.Записывать = Истина;
Для Каждого ТекСтрокаСписокНоменклатуры Из СписокНоменклатуры Цикл
Движение = Движения.ОстаткиНоменклатуры.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.Номенклатура = ТекСтрокаСписокНоменклатуры.Номенклатура;
Движение.Склад = Склад;
Движение.Количество = ТекСтрокаСписокНоменклатуры.Количество;
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Управленческий.Товары;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Склады] = Склад;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатура] = ТекСтрокаСписокНоменклатуры.Номенклатура;
Движение.СчетКт = ПланыСчетов.Управленческий.Поставщики;
Движение.Период = Дата;
Движение.Сумма = ТекСтрокаСписокНоменклатуры.Сумма;
Движение.КоличествоДт = ТекСтрокаСписокНоменклатуры.Количество;
КонецЦикла;
КонецПроцедуры
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
СуммаПоДокументу = СписокНоменклатуры.Итог("Сумма");
КонецПроцедуры
Добавляем проверку чтобы выполнялось условие задачи (Комплект не может быть частью другого комплекта)
&НаКлиенте
Процедура НоменклатураОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
Если ВыбранноеЗначение.ЭтоКомплект Тогда
СтандартнаяОбработка = Ложь;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Комплект не может быть выбран";
Сообщение.Сообщить();
КонецЕсли;
КонецПроцедуры
7) Переходим к "Сборке".
- Добавим необходимые реквизиты шапки.
Добавим на форму требуемую команду "Заполнить"
&НаСервере
Процедура ЗаполнитьНаСервере()
Запрос = Новый Запрос;
Запрос.Текст ="ВЫБРАТЬ
| СоставКомплекта.Номенклатура,
| Сборка.Количество * СоставКомплекта.Количество КАК Количество
|ИЗ
| Документ.Сборка КАК Сборка
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СоставКомплекта КАК СоставКомплекта
| ПО Сборка.Комплект = СоставКомплекта.Комплект
|ГДЕ
| Сборка.Ссылка = &Ссылка";
Запрос.УстановитьПараметр("Ссылка",Объект.Ссылка);
Объект.Состав.Загрузить(Запрос.Выполнить().Выгрузить());
КонецПроцедуры
&НаКлиенте
Процедура Заполнить(Команда)
ЗаполнитьНаСервере();
КонецПроцедуры
Запретим пользователям в поле комплект выбирать не комплекты
&НаКлиенте
Процедура КомплектОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
Если Не ВыбранноеЗначение.ЭтоКомплект Тогда
СтандартнаяОбработка = Ложь;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Необходимо выбрать комплект";
Сообщение.Сообщить();
КонецЕсли;
КонецПроцедуры
- Пишем процедуру проведения.
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
Движения.ОстаткиНоменклатуры.Записывать = Истина;
Для Каждого ТекСтрокаСостав Из Состав Цикл
Движение = Движения.ОстаткиНоменклатуры.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Номенклатура = ТекСтрокаСостав.Номенклатура;
Движение.Склад = СкладОтправитель;
Движение.Количество = ТекСтрокаСостав.Количество;
КонецЦикла;
Движения.ОстаткиНоменклатуры.БлокироватьДляИзменения = Истина;
Движения.ОстаткиНоменклатуры.Записать();
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.ОстаткиНоменклатуры");
ЭлементБлокировки.УстановитьЗначение("Склад", СкладОтправитель);
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.ИсточникДанных = Состав;
ЭлементБлокировки.ИспользоватьИзИсточникаДанных("Номенклатура", "Номенклатура");
Блокировка.Заблокировать();
Запрос = Новый Запрос;
МВТ = Новый МенеджерВременныхТаблиц;
Запрос.МенеджерВременныхТаблиц = МВТ;
Запрос.Текст = "ВЫБРАТЬ
| СборкаСостав.Номенклатура КАК Номенклатура,
| СУММА(СборкаСостав.Количество) КАК Количество
|ПОМЕСТИТЬ ДокТЧ
|ИЗ
| Документ.Сборка.Состав КАК СборкаСостав
|ГДЕ
| СборкаСостав.Ссылка = &Ссылка
|
|СГРУППИРОВАТЬ ПО
| СборкаСостав.Номенклатура
|
|ИНДЕКСИРОВАТЬ ПО
| Номенклатура
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ОстаткиНоменклатурыОстатки.Номенклатура.Представление КАК Номенклатура,
| ОстаткиНоменклатурыОстатки.КоличествоОстаток КАК Остаток
|ИЗ
| РегистрНакопления.ОстаткиНоменклатуры.Остатки(
| &ТочкаИтогов,
| Номенклатура В
| (ВЫБРАТЬ
| ДокТЧ.Номенклатура
| ИЗ
| ДокТЧ)
| И Склад = &Склад) КАК ОстаткиНоменклатурыОстатки
|ГДЕ
| ОстаткиНоменклатурыОстатки.КоличествоОстаток < 0";
Запрос.УстановитьПараметр("Ссылка",Ссылка);
Запрос.УстановитьПараметр("Склад",СкладОтправитель);
Запрос.УстановитьПараметр("ТочкаИтогов", Новый Граница(МоментВремени(),ВидГраницы.Включая));
РезультатЗапроса = Запрос.Выполнить();
Если Не РезультатЗапроса.Пустой() Тогда
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
Отказ = Истина;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Недосточно товара "+ Выборка.Номенклатура + " в количестве "+ (-Выборка.Остаток);
Сообщение.Сообщить();
КонецЦикла;
КонецЕсли;
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрБухгалтерии.Управленческий");
ЭлементБлокировки.УстановитьЗначение("Субконто1", СкладОтправитель);
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.ИсточникДанных = Состав;
ЭлементБлокировки.ИспользоватьИзИсточникаДанных("Субконто2", "Номенклатура");
Блокировка.Заблокировать();
Если Отказ Тогда
Возврат;
КонецЕсли;
Движения.Управленческий.Записывать = Истина;
Движения.Управленческий.Записать();
Запрос.Текст ="ВЫБРАТЬ
| ДокТЧ.Номенклатура,
| ДокТЧ.Количество,
| ЕСТЬNULL(УправленческийОстатки.СуммаОстаток, 0) КАК ОстатокСум,
| ЕСТЬNULL(УправленческийОстатки.КоличествоОстаток, 0) КАК ОстатокКол
|ИЗ
| ДокТЧ КАК ДокТЧ
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Управленческий.Остатки(
| &ТочкаИтогов,
| Счет = &СчетТовары,
| ,
| Субконто1 = &Склад
| И Субконто2 В
| (ВЫБРАТЬ
| ДокТЧ.Номенклатура
| ИЗ
| ДокТЧ)) КАК УправленческийОстатки
| ПО ДокТЧ.Номенклатура = УправленческийОстатки.Субконто2";
Запрос.УстановитьПараметр("СчетТовары", ПланыСчетов.Управленческий.Товары);
Запрос.УстановитьПараметр("Склад",СкладОтправитель);
МСубконто = Новый Массив(2);
МСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконто.Склады);
МСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконто.Номенклатура);
Запрос.УстановитьПараметр("МСубконто",МСубконто);
Запрос.УстановитьПараметр("ТочкаИтогов", Новый Граница(МоментВремени(),ВидГраницы.Исключая));
СтоимостьКомплектующих =0;
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Проводка =Движения.Управленческий.Добавить() ;
Проводка.Период = Дата;
Проводка.СчетДт = ПланыСчетов.Управленческий.ОсновноеПроизводство;
Проводка.СчетКт = ПланыСчетов.Управленческий.Товары;
Проводка.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Склады] =СкладОтправитель ;
Проводка.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатура] =Выборка.Номенклатура ;
Проводка.КоличествоКт = Выборка.Количество;
СуммаПроводки = Выборка.Количество *(Выборка.ОстатокСум/Выборка.ОстатокКол);
Проводка.Сумма = СуммаПроводки;
СтоимостьКомплектующих =СтоимостьКомплектующих + СуммаПроводки;
КонецЦикла;
Проводка =Движения.Управленческий.Добавить() ;
Проводка.Период = Дата;
Проводка.СчетКт = ПланыСчетов.Управленческий.ОсновноеПроизводство;
Проводка.СчетДт = ПланыСчетов.Управленческий.Товары;
Проводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Склады] =СкладПолучатель ;
Проводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатура] =Комплект ;
Проводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Покупатели] =Покупатель ;
Проводка.КоличествоДт = Количество;
Проводка.Сумма = СтоимостьКомплектующих;
Проводка =Движения.Управленческий.Добавить() ;
Проводка.Период = Дата;
Проводка.СчетКт = ПланыСчетов.Управленческий.ВспомогательноеПроизводство;
Проводка.СчетДт = ПланыСчетов.Управленческий.Товары;
Проводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Склады] =СкладПолучатель ;
Проводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатура] =Комплект ;
Проводка.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Покупатели] =Покупатель ;
Проводка.Сумма = СуммаСборки ;
КонецПроцедуры
8) Отчет
ВЫБРАТЬ
УправленческийОборотыДтКт.СубконтоДт3 КАК Покупатель,
УправленческийОборотыДтКт.СубконтоДт2 КАК Комплект,
СУММА(УправленческийОборотыДтКт.КоличествоОборотДт) КАК Количество,
СУММА(ВЫБОР
КОГДА УправленческийОборотыДтКт.СчетКт = ЗНАЧЕНИЕ(ПланСчетов.Управленческий.ОсновноеПроизводство)
ТОГДА УправленческийОборотыДтКт.СуммаОборот
ИНАЧЕ 0
КОНЕЦ) КАК СтоимостьМатериалов,
СУММА(ВЫБОР
КОГДА УправленческийОборотыДтКт.СчетКт = ЗНАЧЕНИЕ(ПланСчетов.Управленческий.ВспомогательноеПроизводство)
ТОГДА УправленческийОборотыДтКт.СуммаОборот
ИНАЧЕ 0
КОНЕЦ) КАК СуммаУслуг
ИЗ
РегистрБухгалтерии.Управленческий.ОборотыДтКт(
&ДатаНачала,
&ДатаОкончания,
,
СчетДт = ЗНАЧЕНИЕ(ПланСчетов.Управленческий.Товары),
,
СчетКт = ЗНАЧЕНИЕ(ПланСчетов.Управленческий.ОсновноеПроизводство)
ИЛИ СчетКт = ЗНАЧЕНИЕ(ПланСчетов.Управленческий.ВспомогательноеПроизводство),
,
) КАК УправленческийОборотыДтКт
СГРУППИРОВАТЬ ПО
УправленческийОборотыДтКт.СубконтоДт3,
УправленческийОборотыДтКт.СубконтоДт2
Комментариев нет:
Отправить комментарий