Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 04:15

Ошибки в синтаксисе в коде для обмена данными

Автор Илюза Кашапова, 04 мар 2018, 20:16

0 Пользователей и 1 гость просматривают эту тему.

Илюза Кашапова

Выдаются эти ошибки:
{WebСервис.WebОбмен.Модуль(51,65)}: Ожидается символ ')'
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("v8", "<a title="<<?>>Ссылка" class="bbc_url" href="http://v8.1c.ru/data" rel="nofollow external">"http://v8.1c.ru/data");</a> (Проверка: Сервер)

{WebСервис.WebОбмен.Модуль(51,165)}: Неопознанный оператор
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("v8", "<a title="Ссылка" class="bbc_url" href="http://v8.1c.ru/data" rel="nofollow external">"http://v8.1c.ru/data");<<?>></a> (Проверка: Сервер)

{WebСервис.WebОбмен.Модуль(52,93)}: Обнаружено логическое завершение исходного текста модуля
ВыборкаИзменений = ПланыОбмена.ВыбратьИзменения(УзелОбмена, ЗаписьСообщения.НомерСообщения);<<?>> (Проверка: Сервер)

Исодный код
Процедура ЗарегистрироватьИзмененияДанных(УзелОбмена) Экспорт
СоставПланОбмена = УзелОбмена.Метаданные().Состав;
Для Каждого ЭлементСоставаПланаОбмена Из СоставПланОбмена Цикл
ПланыОбмена.ЗарегистрироватьИзменения(УзелОбмена,ЭлементСоставаПланаОбмена.Метаданные);
КонецЦикла;
КонецПроцедуры
Функция ВыполнитьОбмен(КодУстройства, ДанныеУстройства)
УстановитьПривилегированныйРежим(Истина);
УзелОбмена = ПланыОбмена.Мобильные.ЭтотУзел().ПолучитьОбъект();
Если НЕ ЗначениеЗаполнено(УзелОбмена.Код) Тогда
УзелОбмена.Код="001";
УзелОбмена.Наименование="Центральный";
УзелОбмена.Записать();
КонецЕсли;
УзелОбмена = ПланыОбмена.Мобильные.НайтиПоКоду(КодУстройства);
Если УзелОбмена.Пустая()тогда
НовыйУзел = ПланыОбмена.Мобильные.СоздатьУзел();
НовыйУзел.Код = КодУстройства;
НовыйУзел.Наименование = КодУстройства;
НовыйУзел.Записать();
ЗарегистрироватьИзмененияДанных(НовыйУзел.Ссылка);
УзелОбмена = НовыйУзел.Ссылка;
КонецЕсли;
//для мобильных получение данных
УзелОбмена = ПланыОбмена.Мобильные.НайтиПоКоду(КодУстройства);
Сообщить (КодУстройства);
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.УстановитьСтроку(ДанныеУстройства.Получить());
ЧтениеСообщения = ПланыОбмена.СоздатьЧтениеСообщения();
ЧтениеСообщения.НачатьЧтение(ЧтениеXML);
ПланыОбмена.УдалитьРегистрациюИзменений(ЧтениеСообщения.Отправителя,ЧтениеСообщения.НомерПринятого);
НачатьТранзакцию();
Пока ВозможностьЧтенияXML(ЧтениеXML) Цикл
Данные = ПрочитатьXML(ЧтениеXML);
Если НЕ Данные = Неопределено Тогда
Данные.ОбменДанными.Отправитель = ЧтениеСообщения.Отправитель;
Данные.ОбменДанными.Загрузка = Истина;
Данные.записаь();
КонецЕсли;
КонецЦикла;
ЗафиксироватьТранзакцию();
ЧтениеСообщения.ЗакочитьЧтение();
ЧтениеXML.Закрыть();
//выгрузка данных
УзелОбмена = ПланыОбмена.Мобильные.НайтиПоКоду(КодУстройства);
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.УстановитьСтроку("UTF-8");
ЗаписьXML.ЗаписатьОбъевлениеXML();
ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения();
ЗаписьСообщения.НачатьЗапись(ЗаписьXML,УзелОбмена);
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xsi","<a title="Ссылка" class="bbc_url" href="http://www.w3.org/2001/XMLSchema-instance" rel="nofollow external">"http://www.w3.org/20...ema-instance");</a>
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("v8", "<a title="Ссылка" class="bbc_url" href="http://v8.1c.ru/data" rel="nofollow external">"http://v8.1c.ru/data");</a>
ВыборкаИзменений = ПланыОбмена.ВыбратьИзменения(УзелОбмена, ЗаписьСообщения.НомерСообщения);
Пока ВыборкаИзменений.Следующий()Цикл
Данные = ВыборкаИзменений.Получить();
ЗаписатьXML(ЗаписьXML, Данные);
КонецЦикла;
ЗаписьСообщения.ЗакончитьЗапись();
Возврат Новый ХранилищеЗначения(ЗаписьXML.Закрыть(), Новый СжатиеДанных(9));
КонецФункции

&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ОбработкаКомандыСервер();
КонецПроцедуры
&НаСервере
Процедура ОбработкаКомандыСервер()
Адрес ="<a title="Ссылка" class="bbc_url" href="http://192.168.0.212/mobile/ws/ws1.1cws?wsdl" rel="nofollow external">"http://192.168.0.212...ws1.1cws?wsdl";</a>
Определения = Новый WSОпределения(Адрес);
URI = "<a title="Ссылка" class="bbc_url" href="http://localhost/ws1" rel="nofollow external">"http://localhost/ws1";</a>
Прокси = Новый WSПрокси(Определения, URI, "WebОбмен","WebОбменSoap");
СисИнфо = Новый СистемнаяИнформация;
КодМобильногоКомпьютера = Строка(СисИнфо.ИдентификаторКлиента);
//инциализация
Узел = ПланыОбмена.Мобильные.ЭтотУзел();
Если НЕ ЗначениеЗаполнено(Узел.Код)
ИЛИ Узел.Код <> КодМобильногоКомпьютера тогда
ОбъектУзла = Узел.ПолучитьОбъект();
ОбъектУзла.Код = КодМобильногоКомпьютера;
ОбъектУзла.Наименование = КодМобильногоКомпьютера;
ОбъектУзла.Записать();
КонецЕсли;
ЦентральныйУзелОбмена = ПланыОбмена.Мобильные.НайтиПоКоду("001");
Если ЦентральныйУзелОбмена.Пустая() Тогда
НовыйУзел = ПланыОбмена.Мобильные.СоздатьУзел();
НовыйУзел.Код = "001";
НовыйУзел.Наименование = "Центральный";
НовыйУзел.Записать();
ЦентральныйУзелОбмена = НовыйУзел.Ссылка;
КонецЕсли;
ДанныеОбмена = Прокси.ВыполнитьОбмен(КодМобильногоКомпьютера, СформироватьПакетОбмена(ЦентральныйУзелОбмена));
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.УстановитьСтроку(ДанныеОбмена.Получить());
ЧтениеСообщения = ПланыОбмена.СоздатьЧтениеСообщения();
ЧтениеСообщения.НачатьЧтение(ЧтениеXML);
ПланыОбмена.УдалитьРегистрациюИзменений(ЧтениеСообщения.Отправитель.ЧтениеСообщения.НомерПринятого);
НачатьТранзакцию();
Пока ВозможностьЧтенияXML(ЧтениеXML) Цикл
Данные = ПрочитатьXML(ЧтениеXML);
Если НЕ Данные = Неопределено Тогда
Данные.ОбменДанными.Отправитель = ЧтениеСообщения.Отправитель;
Данные.ОбменДанными.Загрузка = Истина;
Данные.Записать();
КонецЕсли;
КонецЦикла;
ЗафиксироватьТранзакцию();
ЧтениеСообщения.ЗакончитьЧтение();
ЧтениеXML.Закрыть();
КонецПроцедуры
функция СформироватьПакетОбмена(УзелОбмена) Экспорт
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.УстановитьСтроку("UTF-8");
ЗаписьXML.ЗаписатьОбъявлениеXML();
ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения();
ЗаписьСообщения.НачатьЗапись(ЗаписьXML, УзелОбмена);
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xsi", "<a title="Ссылка" class="bbc_url" href="http://www.w3.org/2001/XMLSchema-instance" rel="nofollow external">http://www.w3.org/20...ema-instance");</a>
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("v8", "<a title="Ссылка" class="bbc_url" href="http://v8.1c.ru/data" rel="nofollow external">http://v8.1c.ru/data");</a>
ВыборкаИзменений = ПланыОбмена.ВыбратьИзменения(УзелОбмена, ЗаписьСообщения.НомерСообщения);
Пока ВыборкаИзменений.следующий() Цикл
Данные = ВыборкаИзменений.Получить();
ЗаписатьXML(ЗаписьXML, Данные);
КонецЦикла;
ЗаписьСообщения.ЗакончитьЗапись();
Возврат Новый ХранилищеЗначения(ЗаписьXML.Закрыть(),Новый СжатиеДанных(9));
КонецФункции

AIFrame

Цитата: Илюза Кашапова от 04 мар 2018, 20:16URI = "<a title="Ссылка" class="bbc_url" href="http://localhost/ws1" rel="nofollow external">"http://localhost/ws1";</a>
Как платформа должна понимать такое определение для переменной?
И нет, это не пихтон или еще какие языки программирования, тут не работает "строка"переменная"строка", тут только "строка" + переменная + "строка".
URI = '<a title="'+Ссылка+'" class="bbc_url" href="http://localhost/ws1" rel="nofollow external">"http://localhost/ws1";</a>'
Вот такое 1С еще может съесть и обработать.
Правьте код, короче.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск