Получение файла базы данных 1С: мобильная платформа (android)

02.03.16

Разработка - Мобильная разработка

Как получить файл базы данных 1C: мобильная платформа с устройства Android без рутирования устройства.

Скачать файлы

Наименование Файл Версия Размер
1Cv8.cf
.cf 9,60Kb
29
.cf 0.1 9,60Kb 29 Скачать

Задача:

Была написана небольшая конфигурация для ведения простенького учёта на планшете (android). Смотрины и тестирование решили провести на эмуляторе (чтобы в случае неудовлетворительного результата не тратиться на планшет). Посмотрели, повносили данные и вроде как решили положительно. Купили планшет, и захотелось сохранить внесенные на эмуляторе данные (данных немного, но хотелось). Так как “поделка” находилась в ещё непонятном состоянии, никаких механизмов выгрузки реализовано не было. Пошарив “яндекси/или “гугл- выяснилось, что базы мобильной 1С есть ни что иное, как файлы 1Cv8.1CD, и находятся они тут:

\data\data\com.e1c.mobile\files\ … \xxxx-xxx …. xxxx\1Cv8.1CD

Неплохо бы его забрать с эмулятора и закинуть на рабочий планшет, заодно в будущем решить задачу бэкапа данных через яндекс диск, например, - с минимальными трудозатратами.


Проблема:

Заглянув “проводником по указанному выше пути.  ничего не обнаружим, и это понятно - нужен “root”. Рутирование устройства android - не вариант.


Решение:

Углубленно в особенности системы безопасности android вдаваться не будем, но отметим, что само приложение имеет доступы к файлам в “своей папке”, а 1С даже в мобильном варианте “умеет” вполне себе неплохо работать с файлами. Поэтому почему бы не написать конфигурацию, которая будет работать с файлами других конфигураций.

Создаём конфигурацию для мобильного приложения, создаем общую форму, размещаем на форме поле ввода для указания "папки обмена" и список значений для вывода найденных баз:

&НаКлиенте
Процедура ОбновитьСписокБаз()
	
	СписокБаз.Очистить();

	МасП = НайтиФайлы(
		"/data/data/com.e1c.mobile/files/", 
		"*.1CD", 
		Истина	
	);
	
	Для каждого СтрМ Из МасП Цикл		
		СписокБаз.Добавить(СтрМ.ПолноеИмя);							
	КонецЦикла;	

КонецПроцедуры

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	ПутьКПапке = "/sdcard/1cbackup"
КонецПроцедуры

&НаКлиенте
Процедура ПриОткрытии(Отказ)	
	ОбновитьСписокБаз();    	
КонецПроцедуры

Создадим команду "Забрать базу" и "Восстановить базу"

&НаКлиенте
Процедура ЗабратьБазу(Команда)
	
	Попытка
	
		КопироватьФайл(
			Элементы.СписокБаз.ТекущиеДанные.Значение,
			ПутьКПапке + "/1Cv8.1CD"
		);
			
	Исключение
		Сообщить("Ошибка копирования базы (" + ОписаниеОшибки()+")");		
	КонецПопытки;
			
КонецПроцедуры
&НаКлиенте
Процедура ВостановитьБазу(Команда)
	
	Если Вопрос("Востановить базу ?",РежимДиалогаВопрос.ДаНет) <> КодВозвратаДиалога.Да Тогда
		Возврат;	
	КонецЕсли; 
	
	Попытка
	
		КопироватьФайл(
			ПутьКПапке + "/1Cv8.1CD",
			Элементы.СписокБаз.ТекущиеДанные.Значение
		);
			
	Исключение
		Сообщить("Ошибка Востановления базы (" + ОписаниеОшибки()+")");		
	КонецПопытки;
	
КонецПроцедуры

Публикуем конфигурацию и добавляем приложение в 1С

 

Файл базы мобильная платформа (android)

См. также

"Штрихкод-информер" - мобильный ТСД и прайс-чекер в смартфоне

Мобильная разработка Сканер штрих-кода Терминал сбора данных Управляемые формы Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Сбор заказов, инвентаризация, проверка ценников, просмотр полной информации об остатках и ценах со смартфона Онлайн. Отправка данных со смартфона выполняется либо напрямую в открытую форму документа, отсканировав QR-код, либо в общую корзину учетной системы, не подходя к компьютеру. Кассир или оператор сможет просмотреть список присланных данных и загрузить в любую форму, поддерживающую работу с ТСД. Для работы с мобильным приложением требуется опубликовать HTTP-сервис из поставляемого расширения.

2880 руб.

03.12.2018    54617    137    102    

161

SALE! 25%

Что нам стоит бота построить? Нарисуем - будет жить! Графический конструктор телеграм-ботов/Telegram

Мобильная разработка Мессенджеры и боты Платформа 1С v8.3 Платные (руб)

Теперь создать telegram-бота - элементарно. Достаточно просто нарисовать блок-схему телеграм-бота, и он сразу заработает. Это возможно при использовании Графического конструктора телеграм-ботов. Это единственный конструктор ботов для telegram, чье качество и функционал подтверждены фирмой 1С, есть сертификат 1С:Совместимо. Расширение в интерактивном режиме, с помощью блок-схем, позволяет с минимальными трудозатратами создать телеграм-ботов в любой конфигурации, работающей на платформе «1С:Предприятие 8.3».

13200 9900 руб.

27.12.2021    33281    80    157    

174

"Мобильный ТСД" - инвентаризация и сбор штрихкодов для iOS и Android

Сканер штрих-кода Терминал сбора данных Мобильная разработка Монитор заказов Оптовая торговля Розничная торговля Ценообразование, анализ цен Платформа 1С v8.3 Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Простой мобильный терминал сбора данных для смартфонов на iOS и Android, не требующий сложных настроек и установки дополнительных программ. Обмен между Вашей 1С и мобильным приложением осуществляется через облачный сервис и расширение конфигурации. Работает с конфигурациями УТ 11, ERP, КА2, Розница 2, Розница 3, УНФ 1.6, УНФ 3.0. Полнофункциональный демо-доступ для своей конфигурации можно запросить в настройках мобильного приложения - все необходимое придет на почту автоматически.

2000 руб.

22.04.2019    91947    511    186    

293

Магазин 15 - приемка товара по штрихкодам или инвентаризация в торговом зале

Логистика, склад и ТМЦ Мобильная разработка Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Специализированное программное обеспечение для мобильных устройств со встроенным сканером штрихкодов. Позволяет быстро автоматизировать, оптимизировать рабочие места и бизнес процессы по учету товара в магазине. Например, приемку товара по штрихкодам или инвентаризацию прямо в торговом зале.

12950 руб.

30.05.2023    3388    2    0    

4

Работа с графикой в браузере (SimpleWEB). Векторный редактор

Мобильная разработка WEB-интеграция Мобильная платформа Абонемент ($m)

В SimpleWEB добавились средства для работы с графикой и отслеживание событий мыши, в онлайн редактор https://seditor.ru:1555/ добавился «Векторный редактор» на этом API. Теперь можно нарисовать схемы складов на ПК, сделать карты (*.sug-файлы) для мобильной платформы SimpleUI, выводить данные из 1С в графическом виде. Таким образом, API для работы с векторными файлами теперь есть и в веб- и в мобильной платформе, а также средства для создания и редактирования векторных файлов есть тоже в обеих платформах.

1 стартмани

20.03.2024    1477    0    informa1555    1    

39

Зачем нам 1С:Элемент

Мобильная разработка Языки и среды Бесплатно (free)

Flutter может быть использован с 1С:Предприятием для разработки кроссплатформенных мобильных приложений, обеспечивая единый интерфейс и функциональность на устройствах под управлением iOS и Android. Это позволяет создавать приложения с высокой производительностью благодаря использованию собственного движка рендеринга Flutter. Интеграция Flutter с 1С:Предприятием позволяет создавать мобильные приложения любого уровня сложности, интегрировать их в корпоративные информационные системы, а также реализовывать бизнес-логику

19.03.2024    6869    ROk_dev    56    

37

JavaScript в Simple

Мобильная разработка Бесплатно (free)

В SimpleUI и SimpleWEB, наряду с обработчиками на python и онлайн (1С и т.д.) добавляется интерпретатор JavaScript. В андроид платформе он скорее играет на поле python, т.к. является оффлайновым решением для самостоятельной обработки и расширяет аудиторию разработчиков для разработки самостоятельных решений. Дополнение к основной статье https://infostart.ru/1c/tools/1153616/

12.02.2024    1628    informa1555    0    

25
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. WKBAPKA 214 09.03.16 10:26 Сейчас в теме
гы, хитро придумано :)))
cleaner_it; +1 Ответить
2. Xershi 1474 05.07.16 09:24 Сейчас в теме
Я в своей конфигурации написал обмен и такое боловство мне даже не нужно было. Порекомендую статью горе-кодерам без обмена.
3. Pabio 27.02.17 10:30 Сейчас в теме
Скопировать базу с планшета и перенести ее на стационарный компьютер получается, но потом она не открывается (даже конфигуратором). У вас получилось?
4. a45 88 27.02.17 10:48 Сейчас в теме
(3) задачи такой не было, но где-то как-то мельком слышал (читал) что там формат немного различается .. и вроде бы какие-то значения изменяют и база работает на компьютере.
5. flyer 231 28.02.17 22:41 Сейчас в теме
может попробуете архив базы сделать в 8.3.9 это реализовали и потом в настольной версии его подгрузить. сам не пробовал но может попробуете и нам напишите.
6. Pabio 01.03.17 15:41 Сейчас в теме
Поставил 8.3.9.79 и выполнил команду "Создать резервную копию". По сути, данная команда копирует в указанную папку тот же файл 1Cv8.1CD. Проблема осталась, у меня это при попытки войти в конфигуратор - "ошибка формата потока", но вылечить на стационарном компьютере стандартными действиями (утилитой ChDBFl.exe) я не смог.
7. silver_a 02.03.17 07:53 Сейчас в теме
попробуй сделать выгрузку базы в xml в мобильном приложении
8. Pabio 15.03.17 10:29 Сейчас в теме
У меня не получилось, а у вас? Выполнил команду "Создать резервную копию" на мобильном приложении. Сформированные данные перенес на стационарный компьютер. Далее на нем создал чистую конфигурацию и выполнил команду "Конфигурация- Загрузить конфигурацию из файлов". Результат - сообщение " Не удалось определить формат загружаемой конфигурации. Возможно содержимое каталога ..... не является корректной XML схемой.
9. a45 88 15.03.17 13:10 Сейчас в теме
(8)
Далее на нем создал чистую конфигурацию и выполнил команду "Конфигурация- Загрузить конфигурацию из файлов". Результат - сообщение " Не удал


вы с андроида скопировали 1cv8.1cd - это файл базы, для загрузки конфигурации нужен xxx.cf файл, а его можно получить только из "нормальной" функционирующей базы.

копать я думаю нужно в сторону изменения формата файла 1cv8.1cd (изменения каких то байтов - которые отвечают за тип БД).
10. Pabio 16.03.17 11:20 Сейчас в теме
(9)
Да, там был скопированный файл 1cv8.1cd, но в этот раз (командой Конфигурация- Загрузить конфигурацию из файлОВ...) была идея "распознать" файл 1cema.xml. Ведь по сути, это и есть конфигурация.
Можно чуть подробнее про " изменения формата файла 1cv8.1cd (изменения каких то байтов - которые отвечают за тип БД)." - с чего начать?
11. a45 88 16.03.17 12:27 Сейчас в теме
(10)
Можно чуть подробнее про " изменения формата файла 1cv8.1cd (изменения каких то байтов - которые отвечают за тип БД)." - с чего начать?


самому интересно ... я где-то когда-то на каких-то форумах встречал ... точно не могу сказать .. там кто-то писал что файлы 1cv8.1cd "нормальной" файловой базы и 1cv8.1cd мобильной различаются каким-то байтом - и из за этого не открывается база скопированная с мобильного ...

про достоверность этой информации не могу ни чего сказать.
12. inf012 17.04.17 11:21 Сейчас в теме
самому интересно ... я где-то когда-то на каких-то форумах встречал ... точно не могу сказать .. там кто-то писал что файлы 1cv8.1cd "нормальной" файловой базы и 1cv8.1cd мобильной различаются каким-то байтом - и из за этого не открывается база скопированная с мобильного ...
про достоверность этой информации не могу ни чего сказать.


Интересно.
Получается, мобильная разработка защищена также слабо, как и для ПК.
То есть, при желании, просто устанавливаем любое приложение, написанное на 1с МП себе на телефон, забираем базу и вуаля-магия, смотрим что она собой представляет в конфигураторе?
так что-ли?
Просто тоже делаю простенькое МП и интересен вопрос защиты?
13. vano-ekt 123 28.10.17 20:30 Сейчас в теме
Администрирование - Резервное копирование
14. agent00mouse 253 29.08.18 11:40 Сейчас в теме
А мне интересен вопрос восстановления. убитой случайно конфигурации на PC. Но судя на результаты Яндексения/Гугления, пока вопрос остаётся открытым.
15. angtar 6 30.11.18 16:10 Сейчас в теме
почему при загрузке конфигурации на планшет пишет: "Не правильный формат конфигурации"?
на планшете версия 8,3,70
на РС - 8.3.11.2867, в конфигурации режим совместимости 8.3.6
16. skeptik2105 26.09.19 09:28 Сейчас в теме
Поиск .1CD файлов не удобен, если на устройстве несколько баз. По идентификатору в адресе сложно найти нужную базу
В каталоге каждой базы находится файл base.inf.В этом файле хранится имя базы. Пример содержимого файла:

{3,"/storage/emulated/0/Android/data/com.e1c.mobile/files/backup/","Мое мобильное приложение",0,3,2,637050055919700}

Пример кода для получения списка баз с наименованием:
    НайденныеФайлыБаз = НайтиФайлы(
        "/data/data/com.e1c.mobile/files/", 
        "base.inf", 
        Истина    
    );
    
    Для каждого ФайлБазы Из НайденныеФайлыБаз Цикл        
       
        СтрокаБазы = СписокБаз.Добавить();
        СтрокаБазы.Каталог = ФайлБазы.Путь; 
        
        ЧтениеТекста = Новый ЧтениеТекста(ФайлБазы.ПолноеИмя);
		Стр = ЧтениеТекста.ПрочитатьСтроку();
		Если Стр <> Неопределено Тогда
    		МассивПараметров = РазложитьСтрокуВМассивПодстрок(Стр);
    		Если МассивПараметров.Количество() >= 2 Тогда
    			СтрокаБазы.Имя = МассивПараметров[2]; 	
    		КонецЕсли;
		КонецЕсли;
		
	КонецЦикла;

Показать
17. int_plus 21.02.22 09:41 Сейчас в теме
Вынул 1Cv8.CD из телефона через бэкап. Открыл в конфигураторе. Ошибок не выдала. Мобильная платформа 8.3.15.62. Открывал на компе через 8.3.20.1674
18. int_plus 21.02.22 11:12 Сейчас в теме
Только все модули конфигурации пустые. Без кода.
19. 7OH 69 08.09.22 12:46 Сейчас в теме
(18) в конфигураторе да
v8unpack уже даёт надежду - по крайней мере упоминания функций в модулях находит, осталось разобрать полученное
20. ska82 12.09.22 20:09 Сейчас в теме
если открыть 1cd через tool1cd и посмотреть таблицу config от мобильной версии и от стационарной, видны различия. например в стационарной версии обработка имеет две записи (одна уин, вторая уин+".0"), а в мобильной четыре записи (уин, уин+".0",уин+".0_1", уин+".0_3"). в записи уин описание, в записи уин+".0" форма и код формы, в уин+".0_1" и уин+".0_3" что-то не известное.
если взять записи относящиеся к общему модулю то в мобильной версии есть только две записи уин и уин+".0_3". поэтому когда открываем в стационарной файл от мобильной модули пустые (нет записи уин+".0"). а вот как разобрать содержимое записей уин+".0_1" и уин+".0_3" вопрос интересный. в hex редакторе начало во всех записях (42DA 0343 6D64). на самом деле нет не только общих модулей.


прикрепил содержимое поля binarydata записи от общей команды "Синхронизация"
Прикрепленные файлы:
Синхронизация
21. user1214212 16.11.22 13:54 Сейчас в теме
Подскажите пожалуйста, как вы добавили команды в свайп по строке?
Оставьте свое сообщение