Имя: Пароль:
1C
 
Функция обратная "ПолучитьНавигационнуюСсылку"?
0 Fragster
 
гуру
26.06.15
16:34
Есть встроенная функция? или готовая?
1 ДенисЧ
 
26.06.15
16:36
УдалитьНавигационнуюСсылку() ?
3 Fragster
 
гуру
26.06.15
16:46
Вот этот код делает, что нужно. Но мне не нравится :(


&НаКлиентеНаСервереБезКонтекста
Функция ПолучитьСсылкуИзНавигационной(НавигационнаяСсылка)
    
    СигнатураСсылки = "e1cib/data/";
    СигнатураИД = "?ref=";
    ДлинаСигнатурыСсылки = СтрДлина(СигнатураСсылки);
    ДлинаСигнатурыИД = СтрДлина(СигнатураИД);
    ДлинаИД = 32;
    ПерваяТочка = Найти(НавигационнаяСсылка, СигнатураСсылки);
    ВтораяТочка = Найти(НавигационнаяСсылка, СигнатураИД);
    
    Если ПерваяТочка = 0 ИЛИ ВтораяТочка = 0 Тогда
        ВызватьИсключение "Неправильная навигационная ссылка " + НавигационнаяСсылка;
    КонецЕсли;
    
    ПредставлениеТипа   = Сред(НавигационнаяСсылка, ПерваяТочка + ДлинаСигнатурыСсылки, ВтораяТочка - ПерваяТочка - ДлинаСигнатурыСсылки);
    ШаблонЗначения = ЗначениеВСтрокуВнутр(ПредопределенноеЗначение(ПредставлениеТипа + ".ПустаяСсылка"));
    ЗначениеСсылки = СтрЗаменить(ШаблонЗначения, "00000000000000000000000000000000", Сред(НавигационнаяСсылка, ВтораяТочка + ДлинаСигнатурыИД, ДлинаИД));
    Ссылка = ЗначениеИзСтрокиВнутр(ЗначениеСсылки);
    Возврат Ссылка;
    
КонецФункции  
4 Лефмихалыч
 
26.06.15
16:50
нет встроенной. Приходится велосипеды строить
5 Fragster
 
гуру
26.06.15
16:50
(4) :(
AdBlock убивает бесплатный контент. 1Сергей