Автоматизация бизнеса

Установка, настройка, внедрение и сопровождение любых конфигураций на платформе 1С:Предприятие. 

e-mail: info@programmist1c.ru

Минимальный объем работ от 50 000 рублей
  •   Удаленный админ
  •   Карта сайта
  •   Контакты


  • Поиск
     

    Примеры программирования v8: Безопасное извлечение ссылки

    v8: Безопасное извлечение ссылки

     

    Иногда нужно извлечь ссылку или проверить, является ли значение ссылкой или объектом, содержащим ссылку, причем сделать это без конструкций попытка-исключение. Небольшая библиотека функций обеспецивает этот функционал.

     

    Автор статьи: Гений 1С | Редакторы: Fragster Последняя редакция №4 от 23.10.07 |
    //Проверяет, что значение Зн - это ссылка
    //Написал, отладил 20070227 fixin
    Функция обЭтоСсылка(Зн) экспорт
        Перем Ссылка;
        
        Ссылка=обИзвлечьСсылку(Зн);
        Возврат Зн=Ссылка и Ссылка<>Неопределено;
    КонецФункции
    
    //Проверяет, что значение Зн - это объект, который содержит ссылку
    //Написал, отладил 20070227 fixin
    Функция обЭтоОбъектССсылкой(Зн) экспорт
        Перем Ссылка;
        Ссылка=обИзвлечьСсылку(Зн);
        Возврат Зн<>Ссылка и Ссылка<>Неопределено;
    КонецФункции
    
    
    //Проверяет, что значение Зн - это примитивный тип (простым перебором)
    //Написал, отладил 20070227 fixin
    Функция обЭтоПримитивныйТип(Зн) экспорт
        Возврат
            ТипЗнч(Зн)=Тип("Null") ИЛИ 
            ТипЗнч(Зн)=Тип("Неопределено") ИЛИ 
            ТипЗнч(Зн)=Тип("Число") ИЛИ 
            ТипЗнч(Зн)=Тип("Строка") ИЛИ 
            ТипЗнч(Зн)=Тип("Дата") ИЛИ 
            ТипЗнч(Зн)=Тип("Булево") ИЛИ 
            ТипЗнч(Зн)=Тип("Тип");
    КонецФункции
    
    
    //Извлекает ссылку из объекта или ссылки.
    //Если извлечь ссылку невозможно, возвращает Неопределено.
    //Работает корректно для всех типов, в том числе и для примитивных
    //Написал, отладил 20070227 fixin
    Функция обИзвлечьСсылку(Зн) экспорт
        Перем С;
        Если обЭтоПримитивныйТип(Зн) Тогда
            Возврат Неопределено;
        КонецЕсли;
        С=Новый Структура("Ссылка", Неопределено);
        ЗаполнитьЗначенияСвойств(С, Зн);
        Возврат С.Ссылка;
    КонецФункции
    
    
    
    
    
    21.02.18 | 10:31


    30.11.16 | 20:25


    28.11.16 | 09:22


    26.11.16 | 08:19


    22.11.16 | 20:17


    19.11.16 | 10:14


    18.11.16 | 20:09




    Внедрение 1С Автоматизация 1С Доработка 1С Сопровождение 1С Обслуживание 1С Программирование 1С 8 Hастройка 1С Карта сайта Контакты