Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Include balance as balance assertion on last transaction instead of as comment |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
04aa81bd2e7a389c8b0b104383fcc137 |
User & Date: | atomicules 2015-07-21 15:30:15 |
Context
2015-07-22
| ||
22:03 | Mark all these transactions as cleared check-in: ad57653104 user: atomicules tags: trunk | |
2015-07-21
| ||
15:30 | Include balance as balance assertion on last transaction instead of as comment check-in: 04aa81bd2e user: atomicules tags: trunk | |
09:26 | Report out available balance as well check-in: dae330504e user: atomicules tags: trunk | |
Changes
Changes to smile.rb.
︙ | ︙ | |||
76 77 78 79 80 81 82 | def recent_transactions #requires page = logon_bulletin page = @a.click(page.link_with(:text => "current account")) get_transactions(page) doc = Nokogiri::HTML(page.body) | > | | 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 | def recent_transactions #requires page = logon_bulletin page = @a.click(page.link_with(:text => "current account")) get_transactions(page) doc = Nokogiri::HTML(page.body) #Remove any trailing plus and minus on actual balance so can use as balance assertion @balance = doc.xpath("//td[@class='recentTransactionsAccountData']/table/tr[2]/td[2]").text.strip.gsub(/\+|\-/, "") @available = doc.xpath("//td[@class='recentTransactionsAccountData']/table/tr[3]/td[2]").text.strip #Need to return this page end def previous_statements |
︙ | ︙ | |||
127 128 129 130 131 132 133 134 135 136 | end #Sort in order of newest date first so can add on @transactions += transactions.sort { | t1, t2 | t2[:date] <=> t1[:date] } end def write_ledger File.open("smile.dat", "w") do |file| #Reverse for writing out @transactions.reverse! | > | > > > > | < | 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 | end #Sort in order of newest date first so can add on @transactions += transactions.sort { | t1, t2 | t2[:date] <=> t1[:date] } end def write_ledger balance_assertion = "" File.open("smile.dat", "w") do |file| #Reverse for writing out @transactions.reverse! @transactions.each.with_index do |transaction, idx| file << transaction[:date].strftime("%Y/%m/%d")+"\t"+transaction[:name]+"\n" if transaction[:debit].include?("£") amount = transaction[:debit].gsub(/£/, "£-") type = "Expenses:" else amount = transaction[:credit] type = "Income:" end if idx == @transactions.length-1 #Include balance assertion at the end. balance_assertion = "\t= "+@balance end file << "\t"+"Assets:Smile:Current"+"\t"+amount+balance_assertion+"\n" file << "\t"+type+"\n" file << "\n" end #Write out account balance as a comment at the end file << "#Available: "+@available+"\n" end end private :logon_start private :logon_passcode private :logon_other |
︙ | ︙ |