По теме из базы знаний
- Bluetooth сканер штрихкодов и мобильное приложение 1С (Android)
- Безопасность мобильных приложений 1С, взгляд по диагонали
- Мобильное приложение на 1С?
- Мобильное приложение "Мобильный приемщик" для Альфа-Авто 5
- Создание мобильного приложения на базе платформы 1С для использования на терминале сбора данных (Часть 1)
Найденные решения
(13) Получилось! Спасибо)
Перем РегистрацияВНовыйУзел;
Процедура ПередЗаписью(Отказ)
РегистрацияВНовыйУзел = ЭтоНовый();
КонецПроцедуры
Процедура ПриЗаписи(Отказ)
Если РегистрацияВНовыйУзел Тогда
ПланыОбмена.ЗарегистрироватьИзменения(Ссылка);
КонецЕсли;
КонецПроцедуры
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2)самописная. А что именно добавить,?
код вебсервиса
&НаСервере
функция ВыполнитьСинхронизациюНаСервере() Экспорт
Попытка
ВСОпределение = Новый WSОпределения("http://87.250.12.186/MobBase/ws/DataTransfer.1cws?wsdl");
ВСервис = ВСОпределение.Сервисы.Получить("DataTransfer", "DataTransfer");
ВТочкаВхода = ВСервис.ТочкиПодключения.Получить("DataTransferSoap");
ВОперация = ВТочкаВхода.Интерфейс.Операции.Получить("Синхронизация");
//Данные = Новый ХранилищеЗначения(ЗарегистрироватьВыгрузку(), Новый СжатиеДанных(9));
Данные = Новый ХранилищеЗначения(ЗарегистрироватьВыгрузку(), Новый СжатиеДанных(9));
ДанныеXDTO = ВСОпределение.ФабрикаXDTO.Создать(ВОперация.Параметры.Получить("Данные").Тип, Данные);
ВСПрокси = Новый WSПрокси(ВСОпределение, "DataTransfer","DataTransfer","DataTransferSoap" );
Ответ = ВСПрокси.Синхронизация(ДанныеXDTO);
ПринятьИзменениеПоПлану(Ответ.Получить());
Возврат Истина
Исключение
Сообщить (ОписаниеОшибки());
Возврат Ложь;
КонецПопытки;
конецФункции
Процедура ПринятьИзменениеПоПлану(СтрокаСообщения)
ЧтениеХМЛ = Новый ЧтениеXML;
ЧтениеХМЛ.УстановитьСтроку(СтрокаСообщения);
ЧтениеСообщения = ПланыОбмена.СоздатьЧтениеСообщения();
ЧтениеСообщения.НачатьЧтение(ЧтениеХМЛ);
ПланыОбмена.УдалитьРегистрациюИзменений(ЧтениеСообщения.Отправитель,ЧтениеСообщения.Отправитель.НомерПринятого);
Пока ВозможностьЧтенияXML (ЧтениеХМЛ) Цикл
Данные = ПрочитатьXML(ЧтениеСообщения.ЧтениеXML);
Если Не Данные = Неопределено Тогда
Данные.ОбменДанными.Отправитель = ЧтениеСообщения.Отправитель;
Данные.ОбменДанными.Загрузка = Истина;
Данные.Записать();
КонецЕсли;
КонецЦикла;
ЧтениеСообщения.ЗакончитьЧтение();
конецПроцедуры
Функция ЗарегистрироватьВыгрузку()
ЗаписьХМЛ = Новый ЗаписьXML;
ЗаписьХМЛ.УстановитьСтроку();
ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения();
Узел = ПланыОбмена.ОбменСМобильнымиУстройствами.НайтиПоКоду("ЦБ");
ЗаписьСообщения.НачатьЗапись(ЗаписьХМЛ,Узел);
ВыборкаИзменений = ПланыОбмена.ВыбратьИзменения(Узел, ЗаписьСообщения.НомерСообщения);
Пока ВыборкаИзменений.Следующий() Цикл
ОбъектОбмена = ВыборкаИзменений.Получить();
ЗаписатьXML(ЗаписьХМЛ, ОбъектОбмена);
КонецЦикла;
ЗаписьСообщения.ЗакончитьЗапись();
Возврат ЗаписьХМЛ.Закрыть();
конецФункции
Показатькод вебсервиса
(8)Так. Например я загружаю в самописную базу(назначение использования - персональный компьютер, мобильное приложение) данные из файлика, то есть заполняю регистр сведений. Далее запускаю синхронизацию(общая команда). Данные загружаются в мобильное устройство. Добавляю приложение на другое устройство запускаю синхронизацию , ничего не происходит. ТО есть у меня идет обмен только с измененными данными в базе или на мобильном устройстве.
(10) Да нет, все понятно :) Понимаете - когда Вы делаете обмен с первым устройством, изменения фиксируются на главном узле, и, следовательно, на другое уже не выгружаются - они уже помечены как выгруженные, если не пометить второе устройство как новый узел. Т.е. надо дописать конфигурацию таким образом, чтобы на устройстве можно было добавлять новый узел (ну или как-то так).
(13) Получилось! Спасибо)
Перем РегистрацияВНовыйУзел;
Процедура ПередЗаписью(Отказ)
РегистрацияВНовыйУзел = ЭтоНовый();
КонецПроцедуры
Процедура ПриЗаписи(Отказ)
Если РегистрацияВНовыйУзел Тогда
ПланыОбмена.ЗарегистрироватьИзменения(Ссылка);
КонецЕсли;
КонецПроцедуры
Показать
Это какое-то типовое приложение от 1С или партнеров? Там скорее всего используется план обмена, для регистрации изменений в базе. Вам нужно создать новый узел в плане обмена для нового устройства. Просто скопировать программу с устройства на устройство недостаточно.
Для самописных конфигураций нужно знать как там организован обмен, к примеру приложение, которое пишу сейчас, спокойно будет копироваться с устройства на устройство, потому что никаких данных на устройстве не хранит и план обмена не использует
Для самописных конфигураций нужно знать как там организован обмен, к примеру приложение, которое пишу сейчас, спокойно будет копироваться с устройства на устройство, потому что никаких данных на устройстве не хранит и план обмена не использует
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот