Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support multiple classification types #30

Closed
bugabinga opened this issue Oct 31, 2024 · 2 comments
Closed

Support multiple classification types #30

bugabinga opened this issue Oct 31, 2024 · 2 comments

Comments

@bugabinga
Copy link
Collaborator

When classifying payments right now, only outgoing payments are of interest, because those are the ones, that get drawn into a chart in EvaluationView.

There are at least 2 other types of payments, that are of interest to the human operator:

  1. ignoring payments
  2. incoming

Ignoring is relevant, to handle incomplete data sets. For example, if only a subset of accounts is imported, transfers between those could be ignored, in order to not skew the overall outgoing/incoming.

Classifying incoming and outgoing is not necessary, since that distinction is already part of the dataset.

If the ignored state was part of the data set, then classifications could be generalized into something that:

  • filters data rows by some rule (query)
  • then applies some value to some cell of the row, identified by column name

For example, the current classification behavior can be thought of as a special case of the above:

  • rows get filtered by query
  • value in tag field gets applied to a cell in the row, that is identified by the "Tags" column name

Tangential idea: if queries would support capturing groups, those could be used to construct values in classifications.


Proposal:

  • add "ignored" column to data
  • replace "Tag" input field with
    • "Value" input field and "Column name" selection field
    • The pre-selected column name is "Tags", so that current workflow stays identical

Remaining challenge to solve:
Tags are of type String (or technically "List of Tags, encoded as semicolon separated Strings").
When the column name points to a column of different type (e.g. "Ignored", presumably of type boolean), how should the "Value" input field behave?

@Bios-Marcel
Copy link
Owner

Proposal 1 has been converted into separate issue: #32

@Bios-Marcel
Copy link
Owner

Proposal 2 seems overcomplicated FOR NOW, as there aren't usecases that justify this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants