refactor: clean up Posting construction

This commit is contained in:
Simon Michael 2012-12-06 00:03:07 +00:00
parent 26ad56e1b2
commit 4aafeb32e6
7 changed files with 108 additions and 310 deletions

View File

@ -524,26 +524,10 @@ Right samplejournal = journalBalanceTransactions $
tdescription="income", tdescription="income",
tcomment="", tcomment="",
ttags=[], ttags=[],
tpostings=[ tpostings=
Posting { ["assets:bank:checking" `post` usd 1
pstatus=False, ,"income:salary" `post` missingamt
paccount="assets:bank:checking", ],
pamount=(Mixed [usd 1]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="income:salary",
pamount=(missingmixedamt),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
}
],
tpreceding_comment_lines="" tpreceding_comment_lines=""
} }
, ,
@ -555,26 +539,10 @@ Right samplejournal = journalBalanceTransactions $
tdescription="gift", tdescription="gift",
tcomment="", tcomment="",
ttags=[], ttags=[],
tpostings=[ tpostings=
Posting { ["assets:bank:checking" `post` usd 1
pstatus=False, ,"income:gifts" `post` missingamt
paccount="assets:bank:checking", ],
pamount=(Mixed [usd 1]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="income:gifts",
pamount=(missingmixedamt),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
}
],
tpreceding_comment_lines="" tpreceding_comment_lines=""
} }
, ,
@ -586,26 +554,10 @@ Right samplejournal = journalBalanceTransactions $
tdescription="save", tdescription="save",
tcomment="", tcomment="",
ttags=[], ttags=[],
tpostings=[ tpostings=
Posting { ["assets:bank:saving" `post` usd 1
pstatus=False, ,"assets:bank:checking" `post` usd (-1)
paccount="assets:bank:saving", ],
pamount=(Mixed [usd 1]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="assets:bank:checking",
pamount=(Mixed [usd (-1)]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
}
],
tpreceding_comment_lines="" tpreceding_comment_lines=""
} }
, ,
@ -617,35 +569,10 @@ Right samplejournal = journalBalanceTransactions $
tdescription="eat & shop", tdescription="eat & shop",
tcomment="", tcomment="",
ttags=[], ttags=[],
tpostings=[ tpostings=["expenses:food" `post` usd 1
Posting { ,"expenses:supplies" `post` usd 1
pstatus=False, ,"assets:cash" `post` missingamt
paccount="expenses:food", ],
pamount=(Mixed [usd 1]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="expenses:supplies",
pamount=(Mixed [usd 1]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="assets:cash",
pamount=(missingmixedamt),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
}
],
tpreceding_comment_lines="" tpreceding_comment_lines=""
} }
, ,
@ -657,26 +584,9 @@ Right samplejournal = journalBalanceTransactions $
tdescription="pay off", tdescription="pay off",
tcomment="", tcomment="",
ttags=[], ttags=[],
tpostings=[ tpostings=["liabilities:debts" `post` usd 1
Posting { ,"assets:bank:checking" `post` usd (-1)
pstatus=False, ],
paccount="liabilities:debts",
pamount=(Mixed [usd 1]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="assets:bank:checking",
pamount=(Mixed [usd (-1)]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
}
],
tpreceding_comment_lines="" tpreceding_comment_lines=""
} }
] ]

View File

@ -10,6 +10,8 @@ look up the date or description there.
module Hledger.Data.Posting ( module Hledger.Data.Posting (
-- * Posting -- * Posting
nullposting, nullposting,
posting,
post,
-- * operations -- * operations
postingCleared, postingCleared,
isReal, isReal,
@ -44,6 +46,7 @@ module Hledger.Data.Posting (
) )
where where
import Data.List import Data.List
import Data.Maybe
import Data.Ord import Data.Ord
import Data.Time.Calendar import Data.Time.Calendar
import Safe import Safe
@ -59,8 +62,20 @@ import Hledger.Data.Dates (nulldate, spanContainsDate)
instance Show Posting where show = showPosting instance Show Posting where show = showPosting
nullposting :: Posting nullposting, posting :: Posting
nullposting = Posting False "" nullmixedamt "" RegularPosting [] Nothing nullposting = Posting
{pstatus=False
,paccount=""
,pamount=nullmixedamt
,pcomment=""
,ptype=RegularPosting
,ptags=[]
,ptransaction=Nothing
}
posting = nullposting
post :: AccountName -> Amount -> Posting
post acct amt = posting {paccount=acct, pamount=mixed amt}
showPosting :: Posting -> String showPosting :: Posting -> String
showPosting p@Posting{paccount=a,pamount=amt,ptype=t} = showPosting p@Posting{paccount=a,pamount=amt,ptype=t} =

View File

@ -21,6 +21,7 @@ import Hledger.Utils
import Hledger.Data.Types import Hledger.Data.Types
import Hledger.Data.Dates import Hledger.Data.Dates
import Hledger.Data.Amount import Hledger.Data.Amount
import Hledger.Data.Posting
import Hledger.Data.Transaction import Hledger.Data.Transaction
instance Show TimeLogEntry where instance Show TimeLogEntry where
@ -94,8 +95,8 @@ entryFromTimeLogInOut i o
idate = localDay itime idate = localDay itime
hours = elapsedSeconds (toutc otime) (toutc itime) / 3600 where toutc = localTimeToUTC utc hours = elapsedSeconds (toutc otime) (toutc itime) / 3600 where toutc = localTimeToUTC utc
amount = Mixed [hrs hours] amount = Mixed [hrs hours]
ps = [Posting{pstatus=False,paccount=acctname,pamount=amount, ps = [posting{paccount=acctname, pamount=amount, ptype=VirtualPosting, ptransaction=Just t}]
pcomment="",ptype=VirtualPosting,ptags=[],ptransaction=Just t}]
tests_Hledger_Data_TimeLog = TestList [ tests_Hledger_Data_TimeLog = TestList [

View File

@ -376,8 +376,8 @@ tests_Hledger_Data_Transaction = TestList $ concat [
,"" ,""
]) ])
(let t = Transaction (parsedate "2007/01/28") Nothing False "" "coopportunity" "" [] (let t = Transaction (parsedate "2007/01/28") Nothing False "" "coopportunity" "" []
[Posting False "expenses:food:groceries" (Mixed [usd 47.18]) "" RegularPosting [] (Just t) [posting{paccount="expenses:food:groceries", pamount=Mixed [usd 47.18], ptransaction=Just t}
,Posting False "assets:checking" (Mixed [usd (-47.18)]) "" RegularPosting [] (Just t) ,posting{paccount="assets:checking", pamount=Mixed [usd (-47.18)], ptransaction=Just t}
] "" ] ""
in showTransaction t) in showTransaction t)
@ -390,8 +390,8 @@ tests_Hledger_Data_Transaction = TestList $ concat [
,"" ,""
]) ])
(let t = Transaction (parsedate "2007/01/28") Nothing False "" "coopportunity" "" [] (let t = Transaction (parsedate "2007/01/28") Nothing False "" "coopportunity" "" []
[Posting False "expenses:food:groceries" (Mixed [usd 47.18]) "" RegularPosting [] (Just t) [posting{paccount="expenses:food:groceries", pamount=Mixed [usd 47.18], ptransaction=Just t}
,Posting False "assets:checking" (Mixed [usd (-47.18)]) "" RegularPosting [] (Just t) ,posting{paccount="assets:checking", pamount=Mixed [usd (-47.18)], ptransaction=Just t}
] "" ] ""
in showTransactionUnelided t) in showTransactionUnelided t)
@ -406,8 +406,8 @@ tests_Hledger_Data_Transaction = TestList $ concat [
]) ])
(showTransaction (showTransaction
(txnTieKnot $ Transaction (parsedate "2007/01/28") Nothing False "" "coopportunity" "" [] (txnTieKnot $ Transaction (parsedate "2007/01/28") Nothing False "" "coopportunity" "" []
[Posting False "expenses:food:groceries" (Mixed [usd 47.18]) "" RegularPosting [] Nothing [posting{paccount="expenses:food:groceries", pamount=Mixed [usd 47.18]}
,Posting False "assets:checking" (Mixed [usd (-47.19)]) "" RegularPosting [] Nothing ,posting{paccount="assets:checking", pamount=Mixed [usd (-47.19)]}
] "")) ] ""))
,"showTransaction" ~: do ,"showTransaction" ~: do
@ -419,7 +419,7 @@ tests_Hledger_Data_Transaction = TestList $ concat [
]) ])
(showTransaction (showTransaction
(txnTieKnot $ Transaction (parsedate "2007/01/28") Nothing False "" "coopportunity" "" [] (txnTieKnot $ Transaction (parsedate "2007/01/28") Nothing False "" "coopportunity" "" []
[Posting False "expenses:food:groceries" (Mixed [usd 47.18]) "" RegularPosting [] Nothing [posting{paccount="expenses:food:groceries", pamount=Mixed [usd 47.18]}
] "")) ] ""))
,"showTransaction" ~: do ,"showTransaction" ~: do
@ -431,7 +431,7 @@ tests_Hledger_Data_Transaction = TestList $ concat [
]) ])
(showTransaction (showTransaction
(txnTieKnot $ Transaction (parsedate "2007/01/28") Nothing False "" "coopportunity" "" [] (txnTieKnot $ Transaction (parsedate "2007/01/28") Nothing False "" "coopportunity" "" []
[Posting False "expenses:food:groceries" missingmixedamt "" RegularPosting [] Nothing [posting{paccount="expenses:food:groceries", pamount=missingmixedamt}
] "")) ] ""))
,"showTransaction" ~: do ,"showTransaction" ~: do
@ -444,28 +444,28 @@ tests_Hledger_Data_Transaction = TestList $ concat [
]) ])
(showTransaction (showTransaction
(txnTieKnot $ Transaction (parsedate "2010/01/01") Nothing False "" "x" "" [] (txnTieKnot $ Transaction (parsedate "2010/01/01") Nothing False "" "x" "" []
[Posting False "a" (Mixed [num 1 `at` (usd 2 `withPrecision` 0)]) "" RegularPosting [] Nothing [posting{paccount="a", pamount=Mixed [num 1 `at` (usd 2 `withPrecision` 0)]}
,Posting False "b" missingmixedamt "" RegularPosting [] Nothing ,posting{paccount="b", pamount= missingmixedamt}
] "")) ] ""))
,"balanceTransaction" ~: do ,"balanceTransaction" ~: do
assertBool "detect unbalanced entry, sign error" assertBool "detect unbalanced entry, sign error"
(isLeft $ balanceTransaction Nothing (isLeft $ balanceTransaction Nothing
(Transaction (parsedate "2007/01/28") Nothing False "" "test" "" [] (Transaction (parsedate "2007/01/28") Nothing False "" "test" "" []
[Posting False "a" (Mixed [usd 1]) "" RegularPosting [] Nothing, [posting{paccount="a", pamount=Mixed [usd 1]}
Posting False "b" (Mixed [usd 1]) "" RegularPosting [] Nothing ,posting{paccount="b", pamount=Mixed [usd 1]}
] "")) ] ""))
assertBool "detect unbalanced entry, multiple missing amounts" assertBool "detect unbalanced entry, multiple missing amounts"
(isLeft $ balanceTransaction Nothing (isLeft $ balanceTransaction Nothing
(Transaction (parsedate "2007/01/28") Nothing False "" "test" "" [] (Transaction (parsedate "2007/01/28") Nothing False "" "test" "" []
[Posting False "a" missingmixedamt "" RegularPosting [] Nothing, [posting{paccount="a", pamount=missingmixedamt}
Posting False "b" missingmixedamt "" RegularPosting [] Nothing ,posting{paccount="b", pamount=missingmixedamt}
] "")) ] ""))
let e = balanceTransaction Nothing (Transaction (parsedate "2007/01/28") Nothing False "" "" "" [] let e = balanceTransaction Nothing (Transaction (parsedate "2007/01/28") Nothing False "" "" "" []
[Posting False "a" (Mixed [usd 1]) "" RegularPosting [] Nothing, [posting{paccount="a", pamount=Mixed [usd 1]}
Posting False "b" missingmixedamt "" RegularPosting [] Nothing ,posting{paccount="b", pamount=missingmixedamt}
] "") ] "")
assertBool "balanceTransaction allows one missing amount" (isRight e) assertBool "balanceTransaction allows one missing amount" (isRight e)
assertEqual "balancing amount is inferred" assertEqual "balancing amount is inferred"
@ -475,8 +475,8 @@ tests_Hledger_Data_Transaction = TestList $ concat [
Left _ -> error' "should not happen") Left _ -> error' "should not happen")
let e = balanceTransaction Nothing (Transaction (parsedate "2011/01/01") Nothing False "" "" "" [] let e = balanceTransaction Nothing (Transaction (parsedate "2011/01/01") Nothing False "" "" "" []
[Posting False "a" (Mixed [usd 1.35]) "" RegularPosting [] Nothing, [posting{paccount="a", pamount=Mixed [usd 1.35]}
Posting False "b" (Mixed [eur (-1)]) "" RegularPosting [] Nothing ,posting{paccount="b", pamount=Mixed [eur (-1)]}
] "") ] "")
assertBool "balanceTransaction can infer conversion price" (isRight e) assertBool "balanceTransaction can infer conversion price" (isRight e)
assertEqual "balancing conversion price is inferred" assertEqual "balancing conversion price is inferred"
@ -487,52 +487,52 @@ tests_Hledger_Data_Transaction = TestList $ concat [
assertBool "balanceTransaction balances based on cost if there are unit prices" (isRight $ assertBool "balanceTransaction balances based on cost if there are unit prices" (isRight $
balanceTransaction Nothing (Transaction (parsedate "2011/01/01") Nothing False "" "" "" [] balanceTransaction Nothing (Transaction (parsedate "2011/01/01") Nothing False "" "" "" []
[Posting False "a" (Mixed [usd 1 `at` eur 2]) "" RegularPosting [] Nothing [posting{paccount="a", pamount=Mixed [usd 1 `at` eur 2]}
,Posting False "a" (Mixed [usd (-2) `at` eur 1]) "" RegularPosting [] Nothing ,posting{paccount="a", pamount=Mixed [usd (-2) `at` eur 1]}
] "")) ] ""))
assertBool "balanceTransaction balances based on cost if there are total prices" (isRight $ assertBool "balanceTransaction balances based on cost if there are total prices" (isRight $
balanceTransaction Nothing (Transaction (parsedate "2011/01/01") Nothing False "" "" "" [] balanceTransaction Nothing (Transaction (parsedate "2011/01/01") Nothing False "" "" "" []
[Posting False "a" (Mixed [usd 1 @@ eur 1]) "" RegularPosting [] Nothing [posting{paccount="a", pamount=Mixed [usd 1 @@ eur 1]}
,Posting False "a" (Mixed [usd (-2) @@ eur 1]) "" RegularPosting [] Nothing ,posting{paccount="a", pamount=Mixed [usd (-2) @@ eur 1]}
] "")) ] ""))
,"isTransactionBalanced" ~: do ,"isTransactionBalanced" ~: do
let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" [] let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" []
[Posting False "b" (Mixed [usd 1.00]) "" RegularPosting [] (Just t) [posting{paccount="b", pamount=Mixed [usd 1.00], ptransaction=Just t}
,Posting False "c" (Mixed [usd (-1.00)]) "" RegularPosting [] (Just t) ,posting{paccount="c", pamount=Mixed [usd (-1.00)], ptransaction=Just t}
] "" ] ""
assertBool "detect balanced" (isTransactionBalanced Nothing t) assertBool "detect balanced" (isTransactionBalanced Nothing t)
let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" [] let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" []
[Posting False "b" (Mixed [usd 1.00]) "" RegularPosting [] (Just t) [posting{paccount="b", pamount=Mixed [usd 1.00], ptransaction=Just t}
,Posting False "c" (Mixed [usd (-1.01)]) "" RegularPosting [] (Just t) ,posting{paccount="c", pamount=Mixed [usd (-1.01)], ptransaction=Just t}
] "" ] ""
assertBool "detect unbalanced" (not $ isTransactionBalanced Nothing t) assertBool "detect unbalanced" (not $ isTransactionBalanced Nothing t)
let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" [] let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" []
[Posting False "b" (Mixed [usd 1.00]) "" RegularPosting [] (Just t) [posting{paccount="b", pamount=Mixed [usd 1.00], ptransaction=Just t}
] "" ] ""
assertBool "detect unbalanced, one posting" (not $ isTransactionBalanced Nothing t) assertBool "detect unbalanced, one posting" (not $ isTransactionBalanced Nothing t)
let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" [] let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" []
[Posting False "b" (Mixed [usd 0]) "" RegularPosting [] (Just t) [posting{paccount="b", pamount=Mixed [usd 0], ptransaction=Just t}
] "" ] ""
assertBool "one zero posting is considered balanced for now" (isTransactionBalanced Nothing t) assertBool "one zero posting is considered balanced for now" (isTransactionBalanced Nothing t)
let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" [] let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" []
[Posting False "b" (Mixed [usd 1.00]) "" RegularPosting [] (Just t) [posting{paccount="b", pamount=Mixed [usd 1.00], ptransaction=Just t}
,Posting False "c" (Mixed [usd (-1.00)]) "" RegularPosting [] (Just t) ,posting{paccount="c", pamount=Mixed [usd (-1.00)], ptransaction=Just t}
,Posting False "d" (Mixed [usd 100]) "" VirtualPosting [] (Just t) ,posting{paccount="d", pamount=Mixed [usd 100], ptype=VirtualPosting, ptransaction=Just t}
] "" ] ""
assertBool "virtual postings don't need to balance" (isTransactionBalanced Nothing t) assertBool "virtual postings don't need to balance" (isTransactionBalanced Nothing t)
let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" [] let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" []
[Posting False "b" (Mixed [usd 1.00]) "" RegularPosting [] (Just t) [posting{paccount="b", pamount=Mixed [usd 1.00], ptransaction=Just t}
,Posting False "c" (Mixed [usd (-1.00)]) "" RegularPosting [] (Just t) ,posting{paccount="c", pamount=Mixed [usd (-1.00)], ptransaction=Just t}
,Posting False "d" (Mixed [usd 100]) "" BalancedVirtualPosting [] (Just t) ,posting{paccount="d", pamount=Mixed [usd 100], ptype=BalancedVirtualPosting, ptransaction=Just t}
] "" ] ""
assertBool "balanced virtual postings need to balance among themselves" (not $ isTransactionBalanced Nothing t) assertBool "balanced virtual postings need to balance among themselves" (not $ isTransactionBalanced Nothing t)
let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" [] let t = Transaction (parsedate "2009/01/01") Nothing False "" "a" "" []
[Posting False "b" (Mixed [usd 1.00]) "" RegularPosting [] (Just t) [posting{paccount="b", pamount=Mixed [usd 1.00], ptransaction=Just t}
,Posting False "c" (Mixed [usd (-1.00)]) "" RegularPosting [] (Just t) ,posting{paccount="c", pamount=Mixed [usd (-1.00)], ptransaction=Just t}
,Posting False "d" (Mixed [usd 100]) "" BalancedVirtualPosting [] (Just t) ,posting{paccount="d", pamount=Mixed [usd 100], ptype=BalancedVirtualPosting, ptransaction=Just t}
,Posting False "e" (Mixed [usd (-100)]) "" BalancedVirtualPosting [] (Just t) ,posting{paccount="3", pamount=Mixed [usd (-100)], ptype=BalancedVirtualPosting, ptransaction=Just t}
] "" ] ""
assertBool "balanced virtual postings need to balance among themselves (2)" (isTransactionBalanced Nothing t) assertBool "balanced virtual postings need to balance among themselves (2)" (isTransactionBalanced Nothing t)

View File

@ -456,25 +456,9 @@ transactionFromCsvRecord rules fields =
tcomment=comment, tcomment=comment,
tpreceding_comment_lines=precomment, tpreceding_comment_lines=precomment,
ttags=[], ttags=[],
tpostings=[ tpostings=
Posting { [posting {paccount=acct, pamount=a, ptransaction=Just t}
pstatus=False, ,posting {paccount=baseacc, pamount=(-baseamount), ptransaction=Just t}
paccount=acct,
pamount=a,
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Just t
},
Posting {
pstatus=False,
paccount=baseacc,
pamount=(-baseamount),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Just t
}
] ]
} }
in t in t

View File

@ -969,26 +969,10 @@ Right samplejournal2 = journalBalanceTransactions $
tdescription="income", tdescription="income",
tcomment="", tcomment="",
ttags=[], ttags=[],
tpostings=[ tpostings=
Posting { [posting {paccount="assets:bank:checking", pamount=Mixed [usd 1]}
pstatus=False, ,posting {paccount="income:salary", pamount=missingmixedamt}
paccount="assets:bank:checking", ],
pamount=(Mixed [usd 1]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="income:salary",
pamount=(missingmixedamt),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
}
],
tpreceding_comment_lines="" tpreceding_comment_lines=""
} }
] ]

View File

@ -342,26 +342,10 @@ journal7 = nulljournal {jtxns =
tdescription="opening balance", tdescription="opening balance",
tcomment="", tcomment="",
ttags=[], ttags=[],
tpostings=[ tpostings=
Posting { ["assets:cash" `post` usd 4.82
pstatus=False, ,"equity:opening balances" `post` usd (-4.82)
paccount="assets:cash", ],
pamount=(Mixed [usd 4.82]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="equity:opening balances",
pamount=(Mixed [usd (-4.82)]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
}
],
tpreceding_comment_lines="" tpreceding_comment_lines=""
} }
, ,
@ -373,26 +357,10 @@ journal7 = nulljournal {jtxns =
tdescription="ayres suites", tdescription="ayres suites",
tcomment="", tcomment="",
ttags=[], ttags=[],
tpostings=[ tpostings=
Posting { ["expenses:vacation" `post` usd 179.92
pstatus=False, ,"assets:checking" `post` usd (-179.92)
paccount="expenses:vacation", ],
pamount=(Mixed [usd 179.92]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="assets:checking",
pamount=(Mixed [usd (-179.92)]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
}
],
tpreceding_comment_lines="" tpreceding_comment_lines=""
} }
, ,
@ -404,26 +372,10 @@ journal7 = nulljournal {jtxns =
tdescription="auto transfer to savings", tdescription="auto transfer to savings",
tcomment="", tcomment="",
ttags=[], ttags=[],
tpostings=[ tpostings=
Posting { ["assets:saving" `post` usd 200
pstatus=False, ,"assets:checking" `post` usd (-200)
paccount="assets:saving", ],
pamount=(Mixed [usd 200]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="assets:checking",
pamount=(Mixed [usd (-200)]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
}
],
tpreceding_comment_lines="" tpreceding_comment_lines=""
} }
, ,
@ -435,26 +387,10 @@ journal7 = nulljournal {jtxns =
tdescription="poquito mas", tdescription="poquito mas",
tcomment="", tcomment="",
ttags=[], ttags=[],
tpostings=[ tpostings=
Posting { ["expenses:food:dining" `post` usd 4.82
pstatus=False, ,"assets:cash" `post` usd (-4.82)
paccount="expenses:food:dining", ],
pamount=(Mixed [usd 4.82]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="assets:cash",
pamount=(Mixed [usd (-4.82)]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
}
],
tpreceding_comment_lines="" tpreceding_comment_lines=""
} }
, ,
@ -466,26 +402,10 @@ journal7 = nulljournal {jtxns =
tdescription="verizon", tdescription="verizon",
tcomment="", tcomment="",
ttags=[], ttags=[],
tpostings=[ tpostings=
Posting { ["expenses:phone" `post` usd 95.11
pstatus=False, ,"assets:checking" `post` usd (-95.11)
paccount="expenses:phone", ],
pamount=(Mixed [usd 95.11]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="assets:checking",
pamount=(Mixed [usd (-95.11)]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
}
],
tpreceding_comment_lines="" tpreceding_comment_lines=""
} }
, ,
@ -497,26 +417,10 @@ journal7 = nulljournal {jtxns =
tdescription="discover", tdescription="discover",
tcomment="", tcomment="",
ttags=[], ttags=[],
tpostings=[ tpostings=
Posting { ["liabilities:credit cards:discover" `post` usd 80
pstatus=False, ,"assets:checking" `post` usd (-80)
paccount="liabilities:credit cards:discover", ],
pamount=(Mixed [usd 80]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
},
Posting {
pstatus=False,
paccount="assets:checking",
pamount=(Mixed [usd (-80)]),
pcomment="",
ptype=RegularPosting,
ptags=[],
ptransaction=Nothing
}
],
tpreceding_comment_lines="" tpreceding_comment_lines=""
} }
] ]