csv, journal: infer style from first amount, as documented, not last
This has been broken since hledger 1.12 (!)
This commit is contained in:
parent
f43c7e41d1
commit
8bdb28a991
@ -312,21 +312,19 @@ journalFinalise :: InputOpts -> FilePath -> Text -> ParsedJournal -> ExceptT Str
|
|||||||
journalFinalise InputOpts{auto_,ignore_assertions_,commoditystyles_} f txt pj = do
|
journalFinalise InputOpts{auto_,ignore_assertions_,commoditystyles_} f txt pj = do
|
||||||
t <- liftIO getClockTime
|
t <- liftIO getClockTime
|
||||||
d <- liftIO getCurrentDay
|
d <- liftIO getCurrentDay
|
||||||
-- Set any global commodity styles that have been provided via InputOpts
|
let pj' =
|
||||||
let pj' = pj{jglobalcommoditystyles=fromMaybe M.empty commoditystyles_}
|
pj{jglobalcommoditystyles=fromMaybe M.empty commoditystyles_} -- save any global commodity styles
|
||||||
|
& journalAddFile (f, txt) -- save the main file's info
|
||||||
|
& journalSetLastReadTime t -- save the last read time
|
||||||
|
& journalReverse -- convert all lists to the order they were parsed
|
||||||
|
|
||||||
-- Infer and apply canonical styles for each commodity (or throw an error).
|
-- Infer and apply canonical styles for each commodity (or throw an error).
|
||||||
-- This affects transaction balancing/assertions/assignments, so needs to be done early.
|
-- This affects transaction balancing/assertions/assignments, so needs to be done early.
|
||||||
-- (TODO: since #903's refactoring for hledger 1.12,
|
|
||||||
-- journalApplyCommodityStyles here is seeing the
|
|
||||||
-- transactions before they get reversesd to normal order.)
|
|
||||||
case journalApplyCommodityStyles pj' of
|
case journalApplyCommodityStyles pj' of
|
||||||
Left e -> throwError e
|
Left e -> throwError e
|
||||||
Right pj' -> either throwError return $
|
Right pj'' -> either throwError return $
|
||||||
pj'
|
pj''
|
||||||
& journalAddFile (f, txt) -- save the file path and content
|
& (if not auto_ || null (jtxnmodifiers pj')
|
||||||
& journalSetLastReadTime t -- save the last read time
|
|
||||||
& journalReverse -- convert all lists to parse order
|
|
||||||
& (if not auto_ || null (jtxnmodifiers pj)
|
|
||||||
then
|
then
|
||||||
-- Auto postings are not active.
|
-- Auto postings are not active.
|
||||||
-- Balance all transactions and maybe check balance assertions.
|
-- Balance all transactions and maybe check balance assertions.
|
||||||
|
|||||||
@ -178,3 +178,20 @@ $ hledger -f- bal a
|
|||||||
# 2000-01-01
|
# 2000-01-01
|
||||||
# a $-10,000
|
# a $-10,000
|
||||||
# b $10,000,000
|
# b $10,000,000
|
||||||
|
|
||||||
|
# 13. A commodity's display style should come from the first-parsed amount
|
||||||
|
<
|
||||||
|
2020-01-01
|
||||||
|
(a) 1.00 $
|
||||||
|
|
||||||
|
2020-01-02
|
||||||
|
(b) $2,00
|
||||||
|
|
||||||
|
$ hledger -f - print
|
||||||
|
2020-01-01
|
||||||
|
(a) 1.00 $
|
||||||
|
|
||||||
|
2020-01-02
|
||||||
|
(b) 2.00 $
|
||||||
|
|
||||||
|
>=
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user