public static Guid Ссылка(this ТипыИсточниковДанных Значение)
        {
            switch (Значение)
            {
            case ТипыИсточниковДанных.ТиповойОтчет: return(ТиповойОтчет);

            case ТипыИсточниковДанных.УниверсальныйОтчет: return(УниверсальныйОтчет);

            case ТипыИсточниковДанных.ПроизвольныйОтчет: return(ПроизвольныйОтчет);

            case ТипыИсточниковДанных.ВнешняяОбработка: return(ВнешняяОбработка);
            }
            return(Guid.Empty);
        }
 public static ТипыИсточниковДанных Получить(this ТипыИсточниковДанных Значение, Guid Ссылка)
 {
     if (Ссылка == ТиповойОтчет)
     {
         return(ТипыИсточниковДанных.ТиповойОтчет);
     }
     else if (Ссылка == УниверсальныйОтчет)
     {
         return(ТипыИсточниковДанных.УниверсальныйОтчет);
     }
     else if (Ссылка == ПроизвольныйОтчет)
     {
         return(ТипыИсточниковДанных.ПроизвольныйОтчет);
     }
     else if (Ссылка == ВнешняяОбработка)
     {
         return(ТипыИсточниковДанных.ВнешняяОбработка);
     }
     return(ТипыИсточниковДанных.ПустаяСсылка);
 }
 public static byte[] Ключ(this ТипыИсточниковДанных Значение)
 {
     return(Ссылка(Значение).ToByteArray());
 }
 public static readonly Guid ВнешняяОбработка   = new Guid("c4e10393-5b3b-39a4-4f29-036188e44f57"); //Внешняя обработка
 public static ТипыИсточниковДанных Получить(this ТипыИсточниковДанных Значение, byte[] Ссылка)
 {
     return(Получить(Значение, new Guid(Ссылка)));
 }