Revert "Adding "--value"/"-V" option for balancesheet/incomestatement/cashflow and register (#361)"
This reverts commit b935cd2243.
			
			
This commit is contained in:
		
							parent
							
								
									b935cd2243
								
							
						
					
					
						commit
						a1555ce964
					
				| @ -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) | ||||
|  | ||||
| @ -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 | ||||
|  | ||||
| @ -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 | ||||
|  | ||||
| @ -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 | ||||
|  | ||||
| @ -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) = | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user