SaveText.Ru

Без имени
  1. Процедура УстановитьСубконто(Счет, Субконто, ИмяСубконто, ЗначениеСубконто) Экспорт
  2.  
  3.     Если Счет = Неопределено ИЛИ Счет.Пустая() Тогда
  4.         Возврат;
  5.     КонецЕсли;
  6.  
  7.     Если ТипЗнч(ИмяСубконто) = Тип("Число") Тогда
  8.         Если ИмяСубконто > Счет.ВидыСубконто.Количество() Тогда
  9.             Возврат;
  10.         КонецЕсли;
  11.         ВидСубк = Счет.ВидыСубконто[ИмяСубконто - 1].ВидСубконто;
  12.     Иначе
  13.         ВидСубк = ПланыВидовХарактеристик[Метаданные.НайтиПоТипу(ТипЗнч(Счет)).ВидыСубконто.Имя][ИмяСубконто];            
  14.         Если Счет.ВидыСубконто.Найти( ВидСубк) = Неопределено Тогда
  15.             Возврат;
  16.         КонецЕсли;
  17.     КонецЕсли;
  18.  
  19.     Если ВидСубк.ТипЗначения.СодержитТип(ТипЗнч(ЗначениеСубконто)) Тогда
  20.         Субконто.Вставить(ВидСубк, ЗначениеСубконто);
  21.     Иначе
  22.         Сообщить("Неверное значение """ + ЗначениеСубконто + """ для вида субконто <" + ВидСубк + ">");
  23.     КонецЕсли;
  24.  
  25. КонецПроцедуры
  26.  
  27.   // где Выборка - Выборка из результата запроса
  28. Проводка = Движения.Международный.Добавить();
  29. Проводка.Период = ДатаЗакрытияПериода;
  30. Проводка.СчетДт = Выборка.Счет;
  31. Проводка.СчетКт = ПланыСчетов.Международный.СуммарныеДоходыИРасходы;
  32. Проводка.Организация = Организация;
  33. Проводка.Сумма = Выборка.СуммаОстатокКт;
  34. Проводка.Содержание = "Закрытие счетов в конце финансового года";
  35. Проводка.НомерЖурнала = "Рег";
  36.                
  37. НомерСубконто = 0;
  38. Для каждого ВидСубконто Из Проводка.СчетДт.ВидыСубконто Цикл
  39.     НомерСубконто = НомерСубконто + 1;
  40.     ЗначениеСубконто = Выборка["Субконто"+НомерСубконто];
  41.            Если ЗначениеЗаполнено(ЗначениеСубконто) Тогда
  42.               УстановитьСубконто(Проводка.СчетДт, Проводка.СубконтоДт, НомерСубконто, ЗначениеСубконто);
  43.            КонецЕсли;
  44. КонецЦикла;  

Share with your friends:

Print