Fingen позволяет принимать широковещательные интенты c параметрами и создавать на их основе транзакции.

Обязательные параметры интента должны быть следующими:


  • Target - broadcast receiver.
  • Action - com.yoshione.fingen.intent.action.CREATE_TRANSACTION


Данные транзакции нужно передавать как string extra. Эти данные необязательны:


  • account- название счета
  • payee- название получателя/плательщика
  • dest_account - название счета получателя в случае перевода
  • category- название категории
  • type- тип транзакции. Действителен только при указании суммы. Может принимать значения: "-1" - расход; "0" - перевод; "1" - приход
  • amount- сумма, например "100.50". Знак не важен, так как определяется типом транзакции. Если данный параметр задается без указания шаблона, то обязательно указание типа транзакции.
  • project- название проекта
  • location- название местоположения
  • comment- комментарий
  • show_editor - принудительно открыть транзакцию в редакторе, даже если она пригодна для автоматического создания. Для этого необходимо задать этот параметр = "1"
  • template- к транзакции будет применен указанный шаблон. При этом параметры из интента имеют более высокий приоритет чем параметры из шаблона.
  • datetime- строка, содержащая дату и время транзакции. Если не указан параметр формата даты, то считается что используется формат "yyyy-MM-dd_HH:mm:ss" (например, 2016-11-01_12:00:00").
  • dtformat- формат записи даты и времени. Используются правила форматирования дат, принятые в языке Java.


Автоматическое создание

Транзакция будет создана в фоновом режиме, если будут правильно заполнены следующие данные:


  • account
  • payee (или dest_account для перевода)
  • category - только для прихода и расхода. Категорию можно не задавать, тогда приложение попробует определить ее автоматически на основании последней транзакции по данному получателю.
  • type
  • amount


иначе будет открыт редактор транзакции, через который можно указать недостающие данные. Редактор можно вызвать принудительно указав параметр show_editor "1".

Пример создания через Tasker

Для создания транзакций через Tasker можно воспользоваться двумя разными задачами.

Send intent- наиболее простой способ, но ограничен только тремя полями для ввода extra данных о транзакции.

Пример заполнения полей (если значение не указано ниже, то поле нужно оставить пустым):

  • Action - com.yoshione.fingen.intent.action.CREATE_TRANSACTION
  • Cat - none
  • Extra - сюда нужно вводить данные о транзакции в формате "ключ:значение". Например, "account:Наличные" или "type:1". Ковычки вводить не нужно, регистр не важен.
  • Target - Broadcast Receiver


Run shell - данный метод подходит не только для таскера, через shell можно создавать транзакции, например, по ADB. Пример команды для создания транзакции может выглядеть так:

am broadcast -a com.yoshione.fingen.intent.action.CREATE_TRANSACTION --es account "Наличные" --es payee "Получатель" --es category "Продукты" --es type "-1" --es amount "97.51" --es comment "Комментарий" --es show_editor "1"

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

Created with the Personal Edition of HelpNDoc: Create help files for the Qt Help Framework