Описание учетной записи сервиса, к которому привязан контакт.
Полное описание, параметры и ограничения
УчетнаяЗаписьКонтактов (ContactAccount)
УчетнаяЗаписьКонтактов (ContactAccount)
Доступен, начиная с версии 8.3.4.
Свойства:
Идентификатор (ID)
ИсточникУчетнойЗаписи (AccountSource)
Описание:
Описание учетной записи сервиса, к которому привязан контакт.
Доступность:
Мобильный клиент, сервер, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Сериализуется. Данный объект может быть сериализован в/из XML. Данный объект может быть сериализован в/из XDTO. Тип XDTO, соответствующий данному объекту, определяется в пространстве имен http://v8.1c.ru/8.3/data/mob. Имя типа XDTO: ContactAccount.
Использование в версии:
Доступен, начиная с версии 8.3.4.
Методическая информация
Практические примеры
Связать свой черновик контакта с локальной записью без добавления
Конструктор карточки связывает данные и настоящую запись ОС, но сам не создаёт контакт в адресной книге.
Где и как запускать
Полный клиентский модуль собственной мобильной управляемой формы. Не вставляйте процедуры внутрь другой процедуры.
Подготовка
Только мобильный клиент/мобильное приложение 1С на собственном тестовом устройстве и отдельная пустая конфигурация УчебнаяКонфигурацияСинтаксиса. Настольный клиент не заменяет этот API.
Вручную разрешите доступ к контактам только своему учебному приложению. Поддержка метода не доказывает разрешение ОС.
Изменения адресной книги выполняйте только в отдельном локальном учебном профиле без синхронизации и реальных контактов. Не используйте корпоративные/личные учётные записи.
Создайте отдельную управляемую форму для каждого урока. Полный код вставляется на уровне модуля; команды и указанные строковые реквизиты создаются вручную.
Рецепты изменения/удаления при ручном запуске реально меняют адресную книгу ОС. Здесь они не исполнялись, runtime-проверка 1С не заявляется.
&НаКлиенте
Процедура ВыполнитьПример(Команда)
Менеджер = Новый МенеджерКонтактов;
ЛокальнаяЗапись = Менеджер.ПолучитьЛокальнуюУчетнуюЗаписьКонтактов();
Данные = Новый ДанныеКонтакта;
Данные.Имя = "Учебный персонаж Книга";
Данные.Фамилия = "Вымышленный";
Данные.Заметка = "Черновик в памяти, без телефонов и адресов";
Карточка = Новый ДанныеКонтактаУчетнойЗаписи(Данные, ЛокальнаяЗапись, "");
Сообщить(Карточка.ДанныеКонтакта.Имя = "Учебный персонаж Книга");
Сообщить(Карточка.УчетнаяЗапись.Идентификатор = ЛокальнаяЗапись.Идентификатор);
Сообщить(Карточка.УчетнаяЗапись.ИсточникУчетнойЗаписи = ЛокальнаяЗапись.ИсточникУчетнойЗаписи);
Сообщить(ПустаяСтрока(Карточка.ГлобальныйКлючКонтакта));
КонецПроцедурыРазбор по шагам
Создайте команду ВыполнитьПример. Настоящую локальную учётную запись получаем от менеджера; конструктор УчетнаяЗаписьКонтактов не выдумываем.
ДанныеКонтакта содержат поля человека, а ДанныеКонтактаУчетнойЗаписи — данные, запись и глобальный ключ. Это разные объекты.
Третий аргумент карточки — строка глобального ключа. Для своего нового черновика он пуст, а не случайный UUID вместо ключа внешнего сервиса.
ДобавитьКонтакт не вызывается. ЛокальныйКлючКонтакта пока отсутствует: он появляется как результат реального добавления, не как имя человека.
Как проверить результат
Четыре логических сравнения дают Истина.
В адресной книге не появился новый человек; существующие записи не читались по одному и не менялись.
Ожидаемый результат
Показана реальная структура карточки с собственными вымышленными данными и без записи ОС.
На что обратить внимание
Не присваивайте идентификатор/источник учётной записи: это свойства только для чтения.
Пустой глобальный ключ не является разрешением синхронизации или удаления произвольного контакта.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.
Проверить доступ к контактам, не раскрывая адресную книгу
Читаем число контактов и возможности устройства; идентификаторы записей, телефоны и имена не выводятся.
Где и как запускать
Полный клиентский модуль собственной мобильной управляемой формы. Не вставляйте процедуры внутрь другой процедуры.
Подготовка
Только мобильный клиент/мобильное приложение 1С на собственном тестовом устройстве и отдельная пустая конфигурация УчебнаяКонфигурацияСинтаксиса. Настольный клиент не заменяет этот API.
Вручную разрешите доступ к контактам только своему учебному приложению. Поддержка метода не доказывает разрешение ОС.
Изменения адресной книги выполняйте только в отдельном локальном учебном профиле без синхронизации и реальных контактов. Не используйте корпоративные/личные учётные записи.
Создайте отдельную управляемую форму для каждого урока. Полный код вставляется на уровне модуля; команды и указанные строковые реквизиты создаются вручную.
Рецепты изменения/удаления при ручном запуске реально меняют адресную книгу ОС. Здесь они не исполнялись, runtime-проверка 1С не заявляется.
&НаКлиенте
Процедура ВыполнитьПример(Команда)
Менеджер = Новый МенеджерКонтактов;
Сообщить("Добавление контактов: " + Строка(Менеджер.ПоддерживаетсяДобавлениеКонтактов()));
Сообщить("Глобальные ключи: " + Строка(Менеджер.ПоддерживаютсяГлобальныеКлючиКонтактов()));
Сообщить("Контактов на устройстве: " + Строка(Менеджер.ПолучитьКоличествоКонтактов()));
Записи = Менеджер.ПолучитьУчетныеЗаписиКонтактов();
Сообщить("Доступных учётных записей: " + Строка(Записи.Количество()));
Для Каждого Запись Из Записи Цикл
Сообщить(ТипЗнч(Запись) = Тип("УчетнаяЗаписьКонтактов"));
Сообщить(ТипЗнч(Запись.Идентификатор) = Тип("Строка"));
Сообщить(ТипЗнч(Запись.ИсточникУчетнойЗаписи) = Тип("Строка"));
КонецЦикла;
ЛокальнаяЗапись = Менеджер.ПолучитьЛокальнуюУчетнуюЗаписьКонтактов();
Сообщить(ТипЗнч(ЛокальнаяЗапись) = Тип("УчетнаяЗаписьКонтактов"));
КонецПроцедурыРазбор по шагам
Создайте команду ВыполнитьПример; подготовьте разрешение ОС в своём учебном профиле.
ПолучитьКоличествоКонтактов возвращает число, а не данные контактов. ПолучитьУчетныеЗаписиКонтактов возвращает массив записей, не строки имён.
Идентификатор и ИсточникУчетнойЗаписи читаются только для проверки типов; они доступны только для чтения и не присваиваются.
По установленной справке глобальные ключи контактов не поддерживаются. Код показывает фактический ответ текущей ОС, не выдумывает глобальный ID.
ПолучитьКонтакт и НайтиКонтакты здесь не вызываются: содержимое адресной книги не перебирается.
Как проверить результат
Проверки типов записей дают Истина при успешном разрешённом доступе; числа показывают фактическое состояние учебного устройства.
В Сообщить нет имён людей, адресов, телефонов или идентификаторов учётных записей.
Ожидаемый результат
Получено понимание возможностей менеджера без выгрузки содержимого контактов.
На что обратить внимание
Число контактов не является числом учётных записей и не доказывает доступ к конкретному контакту.
Истина у поддержки добавления не гарантирует успешную запись в любую учётную запись.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.