Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Волшебство программирования на 1С:Предприятие 7.7 и 8.0 . Выпуск 77


Информационный Канал Subscribe.Ru

Волшебство программирования на 1С:Предприятие 7.7 и 8.0
Выпуск 77 / 24.09.2004

v8: Пустые ссылки

В 8.0 ссылки бывают пустыми. Тогда у нее идентификатор равен
00000000-0000-0000-0000-000000000000

У обычной ссылки уникальный идентификатор можно получить так:
уник = Ссылка.УникальныйИдентификатор();
например "7c9706eb-eaba-11d8-bca8-000c6efdd521"

Получить пустую ссылку можно методом:
Справочники.Номенклатура.ПустаяСсылка()

Проверить на пустую ссылку можно так:
Если Ссылка.Пустая() Тогда

Или так:
Если Ссылка = Справочники.Номенклатура.ПустаяСсылка() Тогда

Пустые ссылки возвращаются методами НайтиПоНаименованию, НайтиПоКоду, НайтиПоНомеру в случае, когда объект не найден. Пустые ссылки являются значениями по умолчанию для реквизитов ссылочных типов. Если реквизит имеет составной тип данных,то значением по умолчанию для него является Неопределено.

Неопределено <> NULL <> "" <> 0 <> пустая ссылка <> Битая ссылка

У пустой ссылки есть все поля (реквизиты, табличные часть) и к ним можно обращаться. Они будут незаполнены (для чисел - 0, для ссылок - пустые ссылки, для строк переменной длины - "", для строк фиксированной длины - опр. количество пробелов). Табличные части будут иметь 0 строк.

Пустые ссылки можно "разыменовать" (обращаться через точку с свойствам). Следующий фрагмент кода вполне работоспособен:

ПустойПользователь = Справочники.Пользователи.ПустаяСсылка();
ЦФО = ПустойПользователь.Сотрудник.Подразделение.ЦФО;

Т.е. не нужно лишних проверок в программных модулях. Может кому пригодится.

Есть еще такое понятие, как "битая ссылка" (условное название). Когда объект был удален непосредственно, то все ссылки на него в справочниках, в документах, в регистрах стали битыми и отображаются следующим образом:

<Объект не найден> (16:bca8000c6efdd52111d8eaba7c9706eb)

Битая ссылка не является пустой. Т.е. метод Пустая() возвращает Ложь. Определить, что ссылка битая можно так:

Если Ссылка.ПолучитьОбъект() = Неопределено Тогда
//битая ссылка
КонецЕсли;

или так (ненадежно):

Если Лев(СокрЛП(Ссылка),18) = "<Объект не найден>" Тогда
--------

Ветки по 8.0 за 24 сентября 2004 г

Рубрика Отв. Тема
Общие вопросы33Что может быть лучше 1с
Общие вопросы 5 Пакуется ли ХML в ZIP самой 1с?
Конкуренты 5 NAVISION и 1С
Файлы8Как посмотреть вордовский документ из хранилища значений?
Отчеты4Табличный документ (поле Табличного документа)
Отчеты 4 Как узнать номер страницы при печати
Встроенный язык4Какой в восьмерке есть аналог событию ВводНового из 7.7 ?
Встроенный язык 1 Сортировка массива
Формы1Как сделать отбор по нескольким значениям реквизита в форме списка?
Формы 1 В форме списка надпись с данными из списка меняет цвет.
Безопасность6Можно ли в 1СV80 установить пароль на конфигурацию как в 1CV77?
Ключи защиты 4 Не могу установить драйвер HASP на W2000 SERVER
Сети 2 1С и сеть
Бухгалтерский учет 2 Подскажите в 8.0 аналог функции СчетПоКоду()
Расчет 13 Регистры расчетов
Справочники 5 Число или Строка в коде
Справочники17Почему у меня подчиненные справочники ведут себя как не подчиненные?
Дата, время8Преобразование из строки в дату
УПП 7 Зарплата в УПП
УПП 14 У кого работает обновление УПП из конфигурации?
УПП 14 Сегодня вышел новый релиз УПП, 8.1.0.15
УТ 11 1с 7.7 конфа 9.2 VS 1с 8.0
УТ8Редактирование категорий
Обмен данными 14 Как правильно зарегистрировать изменения набора записей регистра сведений
Обмен данными 54 опять...Есть ли обработки которые из 7.7 переносят данные в V8 ?
Обмен данными 5 Почему-то сохраняя отчет в MXL- файл, открываю его в Екселе в виде чепухи..
Обмен данными8Универсальный обмен через ХМЛ
OLE 8 Траблы с вызовом EXCEL
Сертификация 1 Методички УЦ3
Сертификация 3 Сертификация по платформе
Сертификация 9 Вопрос к тем, кто сдавал сертификацию по управлению торговлей
Сертификация 14 Теперь я специалист по УТ
Сертификация9Специалист по платформе 8.0
Сертификация8Вопрос из вопросника по платформе 8.0 !


Смелее задавайте вопросы по 8.0 и 7.7 на форуме www.forum.mista.ru

Используйте поиск и отбор по рубрике - это очень удобно,
а также экономит наше и ваше время.


См. также:
1С:Предприятие 7.7: учебник, курс лекций, статьи, ссылки
Книга "Разработка в системе 1С:Предприятие 8.0" - http://www.v8.1c.ru/book/v8develop.htm

Официальный сайт рассылки - www.mista.ru
Волшебный форум -
www.forum.mista.ru,
Форум по 1С - http://www.forum.mista.ru/index.php?forum=1c
Архив выпусков этой рассылки - http://www.mista.ru/subscribe

Новое!
Раздел форума исключительно по 8.0 -
http://www.forum.mista.ru/index.php?forum=1c&v8=1

С уважением,
Станислав Митичкин (Волшебник)
stasmit@mail.ru



http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.magic1c
Отписаться

В избранное