isaacharrisholt / quiffen

Quiffen is a Python package for parsing QIF (Quicken Interchange Format) files.
MIT License
31 stars 26 forks source link

Unknown line code V #64

Open WolfgangFahl opened 1 year ago

WolfgangFahl commented 1 year ago

after improving the error handling i get

error    2:investment - Unknown line code: V in line 522618:V10.26.18
error    3:investment - Unknown line code: V in line 522638:V7.1.19
error    4:investment - Unknown line code: V in line 522657:V9.9.19
error    5:investment - Unknown line code: V in line 522676:V10.9.19
error    6:investment - Unknown line code: V in line 522695:V10.9.19
error    7:investment - Unknown line code: V in line 522714:V6.24.20
error    8:investment - Unknown line code: V in line 522739:V8.1.89
error    9:investment - Unknown line code: V in line 522759:V7.1.91
error   10:investment - Unknown line code: V in line 522776:V7.1.92
error   11:investment - Unknown line code: V in line 522793:V6.22.93
error   12:investment - Unknown line code: V in line 522816:V10.15.89
error   13:investment - Unknown line code: V in line 522836:V6.18.90
error   14:investment - Unknown line code: V in line 522853:V6.18.91
error   15:investment - Unknown line code: V in line 522870:V7.1.92
error   16:investment - Unknown line code: V in line 522887:V6.22.93
error   17:investment - Unknown line code: V in line 522904:V6.21.94
error   18:investment - Unknown line code: V in line 522921:V7.22.95
error   19:investment - Unknown line code: V in line 522938:V7.22.96
error   20:investment - Unknown line code: V in line 522955:V5.17.97
error   21:investment - Unknown line code: V in line 522974:V6.17.97
error   22:investment - Unknown line code: V in line 522991:V6.18.98
error   23:investment - Unknown line code: V in line 523014:V1.1.88
error   24:investment - Unknown line code: V in line 523034:V7.2.96
WolfgangFahl commented 1 year ago

since the values seem to be date values close to the line code D i assume V is the "valuta" date

isaacharrisholt commented 1 year ago

Given that this is not part of the standard QIF spec, I would be reticent to include it in Quiffen directly. Perhaps there's scope for a quiffen.dialects module that defines a standard for dialects and some default dialects to be included. That way, Quiffen could support QIF files from different programs that perhaps have different uses for the same line code

WolfgangFahl commented 1 year ago

Making things modal is definitely and option. The line codes that are to be ignored are IMHO not the problem.

WolfgangFahl commented 12 months ago

For a start a simple "ignore_linecodes" option in parse should do. I am creating another PR for this now.