| v8: Работа с субконтоКлючевые слова: субконто,счета,виды субконто
 
 
 Привожу две функции по работу с субконто:
 
 
 
Процедура УстановитьСубконто(Счет, Субконто, ИмяСубконто, ЗначениеСубконто) Экспорт
    Если Счет = Неопределено ИЛИ Счет.Пустая() Тогда
        Возврат;
    КонецЕсли;
    Если ТипЗнч(ИмяСубконто) = Тип("Число") Тогда
        Если ИмяСубконто > Счет.ВидыСубконто.Количество() Тогда
            Возврат;
        КонецЕсли;
        ВидСубк = Счет.ВидыСубконто[ИмяСубконто - 1].ВидСубконто;
    Иначе
        ВидСубк = ПланыВидовХарактеристик[Метаданные.НайтиПоТипу(ТипЗнч(Счет)).ВидыСубконто.Имя][ИмяСубконто];            
        Если Счет.ВидыСубконто.Найти( ВидСубк) = Неопределено Тогда
            Возврат;
        КонецЕсли;
    КонецЕсли;
    Если ВидСубк.ТипЗначения.СодержитТип(ТипЗнч(ЗначениеСубконто)) Тогда
        Субконто.Вставить(ВидСубк, ЗначениеСубконто);
    Иначе
        Сообщить("Неверное значение """ + ЗначениеСубконто + """ для вида субконто <" + ВидСубк + ">");
    КонецЕсли;
КонецПроцедуры 
Функция ПолучитьСубконто(Счет, Субконто, ИмяСубконто) Экспорт
    Если Счет = Неопределено ИЛИ  Счет.Пустая() Тогда      
        Возврат Неопределено;
    КонецЕсли;
    Если ТипЗнч(ИмяСубконто) = Тип("Число") Тогда
        Если ИмяСубконто > Счет.ВидыСубконто.Количество() Тогда
            Возврат Неопределено;
        КонецЕсли;
        ВидСубк = Счет.ВидыСубконто[ИмяСубконто - 1].ВидСубконто;     
    Иначе
        ВидСубк = ПланыВидовХарактеристик[Метаданные.НайтиПоТипу(ТипЗнч(Счет)).ВидыСубконто.Имя][ИмяСубконто];            
        Если Счет.ВидыСубконто.Найти( ВидСубк) = Неопределено Тогда
            Возврат Неопределено;
        КонецЕсли;
    КонецЕсли;
    Возврат Субконто[ВидСубк];
КонецФункции 
 
 Теорию допишу потом, или сами допишите.
 
 Функции взяты из конфигурации УПП, но переделаны так, чтобы были универсальными, т.е. работали в любой конфигурации.
 
 Параметры:
 * Счет - счет
 * Субконто - субконто
 * ИмяСубконто - номер субконто(1,2,3) или имя субконто
 * ЗначениеСубконто - устанавливаемое значение
 
 |