создать новую тему раскрыть все
свернуть/развернуть ветвь Интеграция с Financisto на Andorid [Алексей 25/01/2015 17:32] # написать ответ
 
Предлагаю Вашему вниманию программу интеграции AbilityCash c Financisto. Программы выросла из идеи объединения данных из бэкапов Financisto, полученных с разных устройств (версии 1.x).
Теперь программа научилась читать и записывать XML файлы AbilityCash и конвертировать записи из формата Financisto в формат AbilityCash (версия 2.x). Обратная конвертация пока только в планах.
 
Подробное описание программы: https://github.com/alsemenov/finmerge/blob/AbilityCash/README.RUS.md
 
Скачать: https://github.com/alsemenov/finmerge/releases/tag/v2.0.2
 
Исходный код для желающих помочь в развитии: https://github.com/alsemenov/finmerge
(пока далек от идеального)
 
Дополнительно могу описать, как я сам пользуюсь своей программой. У меня и у жены есть смартфоны, у каждого установлена Financisto и каждый ведет все свои расходы в своем смартфоне. Раз в N дней в обоих смартфонах делается бэкап данных Financisto и эти файлы сливаются на компьютер, для каждого смартфона в отдельную папку. Далее программа Finmerge строит объединенный бэкап для Financisto и объединенный XML для AbilityCash (Finmerge запускается два раза с разными параметрами). Объединенный бэкап Financisto заливается обратно на смартфоны и далее в Financisto. Объединенный XML импортируется в пустую базу AbilityCash и там анализируется. Итого имеем самую актуальную информацию на всех устройствах. Вводить данные в AbilityCash в такой схеме пока не желательно, потому что конвертация записей в формат Financisto пока не реализована и актуальные данные будут только в AbilityCash.
 
Любые предложения и вопросы приветствуются.
 
Обратная конвертация очень необходима.
Тогда, если будет производиться начальный импорт данных из Абилити, на Финансисто установится полностью идентичный план и структура счетов Абилити
 
а можно использовать Financisto для хм.. сбора данных, а потом импортировать в рабочую базу AC? Ну, т.е. я на смартфоне вношу лишь некоторые небольшие траты, потом выгружаю эту информацию, конвертирую и импортирую в АС, затем проделываю тоже самое со смартфоном супруги. При этом в АС у меня становится самая полная и актуальная база. Я правильно рассуждаю? так можно?
свернуть/развернуть ветвь Да, так можно [Алексей 31/01/2015 12:47] # написать ответ
 
Да, такой способ использования тоже заложен, но пока не очень удобен в использовании. Вот как надо действовать:
 
1. Из АС делаем экспорт всей базы в <ac-file1>.xml
2. Создаем файл <ac-file1>.properties в кодировке UTF-8, кладем его рядом с <ac-file1>.xml. Внутрь <ac-file1>.properties пишем:
category=<имя классификатора статей, обычно Статья>
payee=<имя классификатора для контрагентов>
project=<имя классификатора для проектов>
3. Запускаем finmerge, чтобы добавить данных их Financisto:
java -jar finmerge-2.02.jar merge <ac-file1>.xml <financisto>.backup -out <ac-file2>.xml
В файле <ac-file2>.xml получаем объединенные данные
4. В АС создаем пустую базу и импортируем туда <ac-file2>.xml
PROFIT!
 
К сожалению, Ваши бюджеты и отчеты останутся в старой базе. Можно их один раз вручную создать на пустой базе перед шагом №4. Со временем я допилю какой-нибудь ключ, чтобы в <ac-file2>.xml попадали только новые записи, а не вообще все. Тогда такой файл можно будет импортировать непосредственно в Вашу текущую базу. Для шагов №1 и №4 я попросил Dervish'a сделать опции командной строки, чтобы можно было всю эту схему засунуть в скрипт.