@Divor2123

Запрос XML в 1с (Ошибка с Амперсандом)?

Добрый день, подскажите пожалуйста как решить проблему
в 1С есть код который из мероприятия формирует встречу в Outlook и всё прекрасно работало, пока не появился "&"))
сейчас очень часто в мероприятие указывают ссылку на встречу в Cisco meeting а их ссылка содержит знак, изза этого данные не уходят в outlook, как исправить эту ситуацию в программирование xml не силен(
<Body BodyType=""Text"">"+XMLСтрока(ОписаниеOutlook)+"</Body>"+ ?(ЗначениеЗаполнено(Файлы),Файлы,"") + "

ошибка в данной строке, "ОписаниеOutlook" передает описание из 1с строкой в outlook
ниже весь запрос

ТекстЗапроса = "<?xml version=""1.0"" encoding=""utf-8""?>
	|<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance""
	|            xmlns:xsd=""http://www.w3.org/2001/XMLSchema""
	|           xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/""
	|             xmlns:t=""http://schemas.microsoft.com/exchange/services/2006/types"">
	|<soap:Header>
	|   <t:RequestServerVersion Version=""Exchange2013""/>
	|      <t:TimeZoneContext>
	|        <t:TimeZoneDefinition Id=""Russian Standard Time"" />
	|      </t:TimeZoneContext>
	|</soap:Header>
	|	<soap:Body>
	|		<CreateItem xmlns=""http://schemas.microsoft.com/exchange/services/2006/messages""
	|             xmlns:t=""http://schemas.microsoft.com/exchange/services/2006/types"" 
	|            SendMeetingInvitations=""SendToAllAndSaveCopy"" >
	|			<SavedItemFolderId>
	|				<t:DistinguishedFolderId Id=""calendar"">
	|					<t:Mailbox>
	|						<t:EmailAddress>"+СокрЛП(АдресПочтыВКоторомБудутСоздаватьсяЗаписи)+"</t:EmailAddress>
	|					</t:Mailbox>
	|				</t:DistinguishedFolderId>
	|			</SavedItemFolderId>
	|			<Items>
	|				<t:CalendarItem xmlns=""http://schemas.microsoft.com/exchange/services/2006/types"">
	|					<Subject>"+XMLСтрока(НаименованиеOutlook)+"</Subject>
	|					<Body BodyType=""Text"">"+XMLСтрока(ОписаниеOutlook)+"</Body>"+ ?(ЗначениеЗаполнено(Файлы),Файлы,"") + "
	|					<ReminderIsSet>true</ReminderIsSet>
	|					<ReminderMinutesBeforeStart>60</ReminderMinutesBeforeStart>
	|					<Start>"+XMLСтрока(ДатаНачалаOutlook)+"</Start>
	|					<End>"+XMLСтрока(ДатаОкончанияOutlook)+"</End>
	|					<IsAllDayEvent>"+XMLСтрока(ВесьДеньOutlook)+"</IsAllDayEvent>
	|					<LegacyFreeBusyStatus>"+XMLСтрока(ВидЗанятостиOutlook)+"</LegacyFreeBusyStatus>
	|                   <Location>"+XMLСтрока(МестоВстречи)+"</Location>
	|					<RequiredAttendees>
	|";
  • Вопрос задан
  • 185 просмотров
Пригласить эксперта
Ответы на вопрос 1
Fragster
@Fragster
помогло? отметь решением!
В двухтрёх словах - тут все неправильно. В качестве заляпухи - заменить & на &amp; (по хорошему - и остальные https://www.w3schools.com/html/html_entities.asp )

По хорошему - почитать про XDTO и XSD схемы в 1с, Web сервисы и вот это все, например https://infostart.ru/public/98019/ и еще по ссылкам и поиску в интернете по этим ключевым словам
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы