ssl = Новый ЗащищенноеСоединениеOpenSSL();
Сервер = "10.1.32.71";
Соединение = Новый HTTPСоединение(Сервер, 443,,,,0,ssl, Истина);
Заголовки = Новый Соответствие;
Заголовки.Вставить("Content-Type","application/x-www-form-urlencoded;charset=utf-8");
Структура = Новый Структура;
Структура.Вставить("ID", СокрЛП(Сотрудник.bx_ID));
Если НЕ ЗначениеЗаполнено(Сотрудник.bx_login) Тогда
Поз = Найти(Сотрудник.АдресЕлектроннойПочты, "@");
Если Поз > 0 Тогда
Объект = Сотрудник.ПолучитьОбъект();
Объект.bx_login = Лев(Сотрудник.АдресЕлектроннойПочты, Поз-1);
Объект.Записать();
КонецЕсли;
КонецЕсли;
Структура.Вставить("LOGIN", Сотрудник.bx_login);
Если НЕ ЗначениеЗаполнено(Сотрудник.bx_email) Тогда
Объект = Сотрудник.ПолучитьОбъект();
Объект.bx_email = Сотрудник.АдресЕлектроннойПочты;
Объект.Записать();
КонецЕсли;
Структура.Вставить("EMAIL", Сотрудник.bx_email);
Если Сотрудник.bx_birthday <> Дата(1, 1, 1) Тогда
Структура.Вставить("PERSONAL_BIRTHDAY", Сотрудник.bx_birthday);
КонецЕсли;
Структура.Вставить("WORK_PHONE", Сотрудник.bx_phone);
Структура.Вставить("LOGIN", Сотрудник.bx_login);
Если НЕ ЗначениеЗаполнено(Сотрудник.bx_XML_ID) Тогда
Объект = Сотрудник.ПолучитьОбъект();
Объект.bx_XML_ID = Строка(Сотрудник.УникальныйИдентификатор());
Объект.Записать();
КонецЕсли;
Структура.Вставить("XML_ID", Сотрудник.bx_XML_ID);
Если НЕ ЗначениеЗаполнено(Сотрудник.bx_name) Тогда
Наименование = Сотрудник.Наименование;
Поз = Найти(Наименование, " ");
Если Поз > 0 Тогда
Объект = Сотрудник.ПолучитьОбъект();
Объект.bx_surname = Лев(Наименование, Поз-1);
Объект.Записать();
Наименование = Прав( Наименование, СтрДлина(Наименование) - Поз);
Поз = Найти(Наименование, " ");
Если Поз > 0 Тогда
Объект = Сотрудник.ПолучитьОбъект();
Объект.bx_name = Лев(Наименование, Поз-1);
Объект.Записать();
Наименование = Прав( Наименование, СтрДлина(Наименование) - Поз);
Объект.bx_midname = Наименование;
Объект.Записать();
КонецЕсли;
КонецЕсли;
КонецЕсли;
Структура.Вставить("NAME", Сотрудник.bx_name);
Структура.Вставить("LAST_NAME", Сотрудник.bx_surname);
Структура.Вставить("SECOND_NAME", Сотрудник.bx_midname);
Структура.Вставить("UF_LOCATION", Сотрудник.bx_place);
Структура.Вставить("WORK_DEPARTMENT", Сотрудник.ПодразделениеОрганизации.Наименование);
Структура.Вставить("UF_DEPARTMENT", Сотрудник.ТекущееПодразделениеОрганизации.Наименование);
Структура.Вставить("WORK_POSITION", Сотрудник.ТекущаяДолжностьОрганизации.Наименование);
ЗаписьJSON = Новый ЗаписьJSON;
ЗаписьJSON.УстановитьСтроку();
ЗаписатьJSON(ЗаписьJSON, Структура);
СтрокаJSON = ЗаписьJSON.Закрыть();
Запрос = Новый HTTPЗапрос("/company/_update1C.php", Заголовки);
Запрос.УстановитьТелоИзСтроки("AUTH_FORM=Y&TYPE=AUTH&backurl=%2Fcompany%2F_update1C.php&USER_LOGIN=user1&USER_PASSWORD=topsecret&USER_REMEMBER=Y&UserData="+СтрокаJSON, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать);
Попытка
Ответ = Соединение.ОтправитьДляОбработки(Запрос);
Исключение
Сообщить(Сервер+"-ошибка подключения");
КонецПопытки;
Если Ответ <> Неопределено Тогда
СтрокаОтвета = Строка(Ответ.ПолучитьТелоКакСтроку());
Если Ответ.КодСостояния = 200 Тогда
Если НЕ ЗначениеЗаполнено(Сотрудник.bx_ID) И Лев(СтрокаОтвета,5) <> "ERROR" Тогда
Объект = Сотрудник.ПолучитьОбъект();
Объект.bx_ID = СокрЛП(СтрокаОтвета);
Объект.Записать();
КонецЕсли;
Иначе
Сообщить("-"+Сервер+"-"+Ответ.КодСостояния+"-"+СтрокаОтвета);
КонецЕсли;
Иначе
Сообщить("Ошибка передачи данных");
КонецЕсли;