Использование в номенклатуре частей года (функция)

При работе с номенклатурой может возникнуть необходимость указать часть года, например, при генерации регистрационного номера (В1-СКР-13-0001, где 13 - номер года). 

Для этого потребуется создать в системе функцию отсечения символов года. Сделать это можно через сценарии в Объекте или Документе
Рассмотрим реализацию данного функционала на примере: в формуле регистрационного номера нужно указать год номенклатуры, но только последнюю цифру (текущий год - 2013; в номер должна вставиться цифра 3). Сценарий для отсечения символов года будет выглядеть так: 
[EleWise.ELMA.ComponentModel.Component]
 
public class CustomFunctionsContainer : ITemplateGeneratorFunctionsContainer
 
{ public static FormatedValue LastChar(FunctionEvaluationContext context)
  { 
   var s =context.Parameters != null && 
   context.Parameters.Count > 0 && 
   context.Parameters[0] != null && 
   context.Parameters[0].Value != null? context.Parameters[0].Value.ToString() : null; //проверка на нольŒ
   return !string.IsNullOrEmpty(s) ? new FormatedValue(s[s.Length - 1]) : null; //отсечение символов
  }
}
 
Для корректной работы сценария необходимо подключить следующие библиотеки:
using EleWise.TemplateGenerator;
using EleWise.TemplateGenerator.Functions;
using EleWise.ELMA.Templates;
В процессе нужно создать любой объект и на вкладку Сценарий вставить этот код (либо вставить код на вкладке сценарий в любом типе документа, чтобы не создавать ненужный объект). Затем опубликовать объект и перезапустить сервер. 
После этого распубликуйте номенклатуру и в шаблоне используйте код вида {LastChar({$RegistrationCard.AccountingYear.Year})},опубликуйте номенклатуру. 

Можно изменить количество отображаемых символов для этого достаточно в последней строке сценария указать нужное количество чисел. Например, указав (s.Substring(s.Length - 2)) будет отображаться 2 последних символа, а указав (s.Substring(s.Length - 3)) – отобразится 3 символа. После выполнения действий описанных выше код вида {LastChar({$RegistrationCard.AccountingYear.Year})} может использоваться в любых местах шаблона, где нужно указать год номенклатуры. 

Например, при создании дела в поле Шаблон номера.