diff --git a/hledger-lib/Hledger/Reports/PostingsReport.hs b/hledger-lib/Hledger/Reports/PostingsReport.hs index f90ddce9c..f5f553de2 100644 --- a/hledger-lib/Hledger/Reports/PostingsReport.hs +++ b/hledger-lib/Hledger/Reports/PostingsReport.hs @@ -9,7 +9,6 @@ module Hledger.Reports.PostingsReport ( PostingsReport, PostingsReportItem, postingsReport, - postingsReportValue, mkpostingsReportItem, -- * Tests @@ -29,7 +28,6 @@ import Test.HUnit import Hledger.Data import Hledger.Query import Hledger.Utils -import Hledger.Reports.BalanceReport import Hledger.Reports.ReportOptions @@ -89,31 +87,6 @@ postingsReport opts q j = (totallabel, items) totallabel = "Total" --- | Convert all the amounts in a postings report to --- their value on the given date in their default valuation --- commodities. -postingsReportValue :: Journal -> Day -> PostingsReport -> PostingsReport -postingsReportValue j d r = r' - where - (label,items) = r - r' = dbg8 "postingsReportValue" $ - (label,[(pb,pe,pd,postingValue j d pp,mixedAmountValue j d a) | (pb,pe,pd,pp,a) <- items]) - -postingValue :: Journal -> Day -> Posting -> Posting -postingValue j d p = p' - where - Posting {pamount = pa, pbalanceassertion = pb, ptransaction = pt} = p - p' = p{pamount = mixedAmountValue j d pa - ,pbalanceassertion = mixedAmountValue j d <$> pb - ,ptransaction = transactionValue j d <$> pt - } - -transactionValue :: Journal -> Day -> Transaction -> Transaction -transactionValue j d t = t' - where - Transaction {tpostings = tp} = t - t' = t{tpostings = map (postingValue j d) tp} - -- | Adjust report start/end dates to more useful ones based on -- journal data and report intervals. Ie: -- 1. If the start date is unspecified, use the earliest date in the journal (if any) diff --git a/hledger/Hledger/Cli/Balancesheet.hs b/hledger/Hledger/Cli/Balancesheet.hs index 6e9622f08..5709d4b32 100644 --- a/hledger/Hledger/Cli/Balancesheet.hs +++ b/hledger/Hledger/Cli/Balancesheet.hs @@ -11,7 +11,6 @@ module Hledger.Cli.Balancesheet ( ,tests_Hledger_Cli_Balancesheet ) where -import Data.Maybe (fromMaybe) import qualified Data.Text.Lazy.IO as LT import System.Console.CmdArgs.Explicit import Test.HUnit @@ -29,7 +28,6 @@ balancesheetmode = (defCommandMode $ ["balancesheet"]++aliases) { groupUnnamed = [ flagNone ["flat"] (\opts -> setboolopt "flat" opts) "show accounts as a list" ,flagReq ["drop"] (\s opts -> Right $ setopt "drop" s opts) "N" "flat mode: omit N leading account name parts" - ,flagNone ["value","V"] (setboolopt "value") "show amounts as their current market value in their default valuation commodity" ] ,groupHidden = [] ,groupNamed = [generalflagsgroup1] @@ -43,23 +41,18 @@ balancesheet CliOpts{reportopts_=ropts} j = do -- let lines = case lineFormatFromOpts ropts of Left err, Right ... d <- getCurrentDay let q = queryFromOpts d (withoutBeginDate ropts) - valuedate = fromMaybe d $ queryEndDate False $ queryFromOpts d ropts assetreport@(_,assets) = balanceReport ropts (And [q, journalAssetAccountQuery j]) j liabilityreport@(_,liabilities) = balanceReport ropts (And [q, journalLiabilityAccountQuery j]) j total = assets + liabilities - convertReport | value_ ropts = balanceReportValue j valuedate - | otherwise = id - convertTotal | value_ ropts = mixedAmountValue j valuedate - | otherwise = id LT.putStr $ [lt|Balance Sheet Assets: -#{balanceReportAsText ropts (convertReport assetreport)} +#{balanceReportAsText ropts assetreport} Liabilities: -#{balanceReportAsText ropts (convertReport liabilityreport)} +#{balanceReportAsText ropts liabilityreport} Total: -------------------- -#{padleft 20 $ showMixedAmountWithoutPrice (convertTotal total)} +#{padleft 20 $ showMixedAmountWithoutPrice total} |] withoutBeginDate :: ReportOpts -> ReportOpts diff --git a/hledger/Hledger/Cli/Cashflow.hs b/hledger/Hledger/Cli/Cashflow.hs index 497eafcd9..288ec178d 100644 --- a/hledger/Hledger/Cli/Cashflow.hs +++ b/hledger/Hledger/Cli/Cashflow.hs @@ -14,7 +14,6 @@ module Hledger.Cli.Cashflow ( ,tests_Hledger_Cli_Cashflow ) where -import Data.Maybe (fromMaybe) import qualified Data.Text.Lazy.IO as LT import System.Console.CmdArgs.Explicit import Test.HUnit @@ -32,7 +31,6 @@ cashflowmode = (defCommandMode ["cashflow","cf"]) { groupUnnamed = [ flagNone ["flat"] (\opts -> setboolopt "flat" opts) "show accounts as a list" ,flagReq ["drop"] (\s opts -> Right $ setopt "drop" s opts) "N" "flat mode: omit N leading account name parts" - ,flagNone ["value","V"] (setboolopt "value") "show amounts as their current market value in their default valuation commodity" ] ,groupHidden = [] ,groupNamed = [generalflagsgroup1] @@ -45,23 +43,18 @@ cashflow CliOpts{reportopts_=ropts} j = do -- let lines = case lineFormatFromOpts ropts of Left err, Right ... d <- getCurrentDay let q = queryFromOpts d ropts - valuedate = fromMaybe d $ queryEndDate False $ queryFromOpts d ropts cashreport@(_,total) = balanceReport ropts (And [q, journalCashAccountQuery j]) j -- operatingreport@(_,operating) = balanceReport ropts (And [q, journalOperatingAccountMatcher j]) j -- investingreport@(_,investing) = balanceReport ropts (And [q, journalInvestingAccountMatcher j]) j -- financingreport@(_,financing) = balanceReport ropts (And [q, journalFinancingAccountMatcher j]) j -- total = operating + investing + financing - convertReport | value_ ropts = balanceReportValue j valuedate - | otherwise = id - convertTotal | value_ ropts = mixedAmountValue j valuedate - | otherwise = id LT.putStr $ [lt|Cashflow Statement Cash flows: -#{balanceReportAsText ropts (convertReport cashreport)} +#{balanceReportAsText ropts cashreport} Total: -------------------- -#{padleft 20 $ showMixedAmountWithoutPrice (convertTotal total)} +#{padleft 20 $ showMixedAmountWithoutPrice total} |] tests_Hledger_Cli_Cashflow :: Test diff --git a/hledger/Hledger/Cli/Incomestatement.hs b/hledger/Hledger/Cli/Incomestatement.hs index 31bf9b330..b36cec3ab 100644 --- a/hledger/Hledger/Cli/Incomestatement.hs +++ b/hledger/Hledger/Cli/Incomestatement.hs @@ -11,7 +11,6 @@ module Hledger.Cli.Incomestatement ( ,tests_Hledger_Cli_Incomestatement ) where -import Data.Maybe (fromMaybe) import qualified Data.Text.Lazy.IO as LT import System.Console.CmdArgs.Explicit import Test.HUnit @@ -29,7 +28,6 @@ incomestatementmode = (defCommandMode $ ["incomestatement"]++aliases) { groupUnnamed = [ flagNone ["flat"] (\opts -> setboolopt "flat" opts) "show accounts as a list" ,flagReq ["drop"] (\s opts -> Right $ setopt "drop" s opts) "N" "flat mode: omit N leading account name parts" - ,flagNone ["value","V"] (setboolopt "value") "show amounts as their current market value in their default valuation commodity" ] ,groupHidden = [] ,groupNamed = [generalflagsgroup1] @@ -42,23 +40,18 @@ incomestatement :: CliOpts -> Journal -> IO () incomestatement CliOpts{reportopts_=ropts} j = do d <- getCurrentDay let q = queryFromOpts d ropts - valuedate = fromMaybe d $ queryEndDate False $ queryFromOpts d ropts incomereport@(_,income) = balanceReport ropts (And [q, journalIncomeAccountQuery j]) j expensereport@(_,expenses) = balanceReport ropts (And [q, journalExpenseAccountQuery j]) j total = income + expenses - convertReport | value_ ropts = balanceReportValue j valuedate - | otherwise = id - convertTotal | value_ ropts = mixedAmountValue j valuedate - | otherwise = id LT.putStr $ [lt|Income Statement Revenues: -#{balanceReportAsText ropts (convertReport incomereport)} +#{balanceReportAsText ropts incomereport} Expenses: -#{balanceReportAsText ropts (convertReport expensereport)} +#{balanceReportAsText ropts expensereport} Total: -------------------- -#{padleft 20 $ showMixedAmountWithoutPrice (convertTotal total)} +#{padleft 20 $ showMixedAmountWithoutPrice total} |] tests_Hledger_Cli_Incomestatement :: Test diff --git a/hledger/Hledger/Cli/Register.hs b/hledger/Hledger/Cli/Register.hs index 0062a701f..28b8e4470 100644 --- a/hledger/Hledger/Cli/Register.hs +++ b/hledger/Hledger/Cli/Register.hs @@ -39,7 +39,6 @@ registermode = (defCommandMode $ ["register"] ++ aliases) { ,flagNone ["average","A"] (\opts -> setboolopt "average" opts) "show running average of posting amounts instead of total (implies --empty)" ,flagNone ["related","r"] (\opts -> setboolopt "related" opts) "show postings' siblings instead" - ,flagNone ["value","V"] (setboolopt "value") "show amounts as their current market value in their default valuation commodity" ,flagReq ["width","w"] (\s opts -> Right $ setopt "width" s opts) "N" ("set output width (default: " ++ #ifdef mingw32_HOST_OS @@ -62,12 +61,9 @@ register :: CliOpts -> Journal -> IO () register opts@CliOpts{reportopts_=ropts} j = do d <- getCurrentDay let fmt = outputFormatFromOpts opts - valuedate = fromMaybe d $ queryEndDate False $ queryFromOpts d ropts - convert | value_ ropts = postingsReportValue j valuedate - | otherwise = id - render | fmt=="csv" = const ((++"\n") . printCSV . postingsReportAsCsv) - | otherwise = postingsReportAsText - writeOutput opts $ render opts $ convert $ postingsReport ropts (queryFromOpts d ropts) j + render | fmt=="csv" = const ((++"\n") . printCSV . postingsReportAsCsv) + | otherwise = postingsReportAsText + writeOutput opts $ render opts $ postingsReport ropts (queryFromOpts d ropts) j postingsReportAsCsv :: PostingsReport -> CSV postingsReportAsCsv (_,is) =