require a balanced entry to have just one commodity, for now
This commit is contained in:
		
							parent
							
								
									3138046744
								
							
						
					
					
						commit
						f99963786c
					
				| @ -39,7 +39,10 @@ showDate d = printf "%-10s" d | ||||
| showDescription s = printf "%-20s" (elideRight 20 s) | ||||
| 
 | ||||
| isEntryBalanced :: Entry -> Bool | ||||
| isEntryBalanced = isZeroAmount . sumLedgerTransactions . etransactions | ||||
| isEntryBalanced (Entry {etransactions=ts}) = isZeroAmount sum && numcommodities==1 | ||||
|     where | ||||
|       sum = sumLedgerTransactions ts | ||||
|       numcommodities = length $ nub $ map (commodity . tamount) ts | ||||
| 
 | ||||
| autofillEntry :: Entry -> Entry | ||||
| autofillEntry e@(Entry {etransactions=ts}) = e{etransactions=autofillTransactions ts} | ||||
|  | ||||
| @ -37,4 +37,4 @@ autofillTransactions ts = | ||||
|       balance t = if isnormal t then t else t{tamount = -(sumLedgerTransactions normals)} | ||||
| 
 | ||||
| sumLedgerTransactions :: [RawTransaction] -> Amount | ||||
| sumLedgerTransactions = sum . map tamount | ||||
| sumLedgerTransactions = sumAmounts . map tamount | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user