From 8a6d824900e416d31e1763bf1280603dba05d284 Mon Sep 17 00:00:00 2001 From: Stephen Morgan Date: Fri, 10 Sep 2021 16:05:28 +1000 Subject: [PATCH] imp: csv: sql: Use . as a decimal point in sql output for Print command. --- hledger/Hledger/Cli/Commands/Print.hs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/hledger/Hledger/Cli/Commands/Print.hs b/hledger/Hledger/Cli/Commands/Print.hs index 6b9768d2a..5959edd56 100644 --- a/hledger/Hledger/Cli/Commands/Print.hs +++ b/hledger/Hledger/Cli/Commands/Print.hs @@ -145,7 +145,9 @@ entriesReportAsSql txns = TB.toLazyText $ mconcat values vs = TB.fromText "(" <> mconcat (intersperse (TB.fromText ",") $ map toSql vs) <> TB.fromText ")\n" toSql "" = TB.fromText "NULL" toSql s = TB.fromText "'" <> TB.fromText (T.replace "'" "''" s) <> TB.fromText "'" - csv = concatMap transactionToCSV txns + csv = concatMap (transactionToCSV . transactionMapPostingAmounts (mapMixedAmount setDecimalPoint)) txns + where + setDecimalPoint a = a{astyle=(astyle a){asdecimalpoint=Just '.'}} entriesReportAsCsv :: EntriesReport -> CSV entriesReportAsCsv txns = @@ -173,7 +175,7 @@ postingToCSV p = -- commodity goes into separate column, so we suppress it, along with digit group -- separators and prices let a_ = a{acommodity="",astyle=(astyle a){asdigitgroups=Nothing},aprice=Nothing} in - let showamt = TL.toStrict . TB.toLazyText . wbBuilder . showAmountB noColour in + let showamt = wbToText . showAmountB noColour in let amount = showamt a_ in let credit = if q < 0 then showamt $ negate a_ else "" in let debit = if q >= 0 then showamt a_ else "" in