pais_legacy 0.7.2 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e8866673f710fe24ed37fba33310b0ef52a4b993df47563b5e486a6def70a1de
4
- data.tar.gz: 0e343557c33830ad43c40e386247f7e3a2e1b8b286df9b66cf7afeeb0b4e3325
3
+ metadata.gz: d7f71fbd3eceb5dd043930b54a7ff888a2fd84f155f05fc390e97858e0795996
4
+ data.tar.gz: 4ce98be313a4ff502b883b514b28dbd99b9685c6c32af9fa0afce1a5e1350dd6
5
5
  SHA512:
6
- metadata.gz: cc45e153a1f3587e7bf97e9021637bf68bed0a5f33e57ecc5c7faf66b71fca9726f0bf25576b55699d7c1cbb40851e085265da9a4649947058a89f56a2b45ae0
7
- data.tar.gz: c862728f4489682e8170c234c2b39913baeb1c5d233cd7ad442749c35c7590cd6fa4a9afc467c63f681b420ef529e691e4758aa78e6075e834affef1df9bd71a
6
+ metadata.gz: 15983c44b7da82bd1adcd46bab38e242b82e8c9809b4bd7a86bde4e924c7d4b541fb6ccad582f2dfc9d7e05aab31a207c179448b8cccd6fbb30e7632eaae9407
7
+ data.tar.gz: 97aba9598c0fde93f305f41b15eccd8f67cffa71c6f2063aaeddebbd13e32e1eea53edff7e1311630172a0856f3ac5ef5a73e86dc5c93932125449f46d4cd945
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- pais_legacy (0.7.1)
4
+ pais_legacy (0.7.3)
5
5
  byebug (~> 11.0)
6
6
  minitest (~> 5.0)
7
7
  mocha (~> 1.0)
@@ -13,32 +13,34 @@ GEM
13
13
  specs:
14
14
  ast (2.4.2)
15
15
  byebug (11.1.3)
16
- minitest (5.16.3)
17
- mocha (1.16.0)
18
- parallel (1.21.0)
19
- parser (3.1.0.0)
16
+ json (2.6.3)
17
+ minitest (5.17.0)
18
+ mocha (1.16.1)
19
+ parallel (1.22.1)
20
+ parser (3.2.0.0)
20
21
  ast (~> 2.4.1)
21
22
  pastel (0.8.0)
22
23
  tty-color (~> 0.5)
23
24
  rainbow (3.1.1)
24
25
  rake (13.0.6)
25
- regexp_parser (2.5.0)
26
+ regexp_parser (2.6.1)
26
27
  rexml (3.2.5)
27
- rubocop (1.25.1)
28
+ rubocop (1.43.0)
29
+ json (~> 2.3)
28
30
  parallel (~> 1.10)
29
- parser (>= 3.1.0.0)
31
+ parser (>= 3.2.0.0)
30
32
  rainbow (>= 2.2.2, < 4.0)
31
33
  regexp_parser (>= 1.8, < 3.0)
32
- rexml
33
- rubocop-ast (>= 1.15.1, < 2.0)
34
+ rexml (>= 3.2.5, < 4.0)
35
+ rubocop-ast (>= 1.24.1, < 2.0)
34
36
  ruby-progressbar (~> 1.7)
35
- unicode-display_width (>= 1.4.0, < 3.0)
36
- rubocop-ast (1.15.2)
37
- parser (>= 3.0.1.1)
37
+ unicode-display_width (>= 2.4.0, < 3.0)
38
+ rubocop-ast (1.24.1)
39
+ parser (>= 3.1.1.0)
38
40
  ruby-progressbar (1.11.0)
39
- timecop (0.9.5)
41
+ timecop (0.9.6)
40
42
  tty-color (0.6.0)
41
- unicode-display_width (2.1.0)
43
+ unicode-display_width (2.4.2)
42
44
 
43
45
  PLATFORMS
44
46
  x86_64-linux
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PaisLegacy
4
- VERSION = "0.7.2"
4
+ VERSION = "0.8.0"
5
5
  end
data/lib/pais_legacy.rb CHANGED
@@ -51,8 +51,12 @@ module PaisLegacy
51
51
  # --------------------------------------------------------------------------------
52
52
  # Trial Balance
53
53
  # --------------------------------------------------------------------------------
54
- def self.get_trial_balance(ledger = "1", date_to = "30/06/2021", from=nil,to=nil)
55
- cmd=rptrun(ledger,date_to,from,to)
54
+ def self.get_trial_balance(ledger = "1", date_to = "30/06/2021",prior=false,from=1,to=9999)
55
+ if prior
56
+ cmd=rptrun(ledger,date_to,from,to,"rglch01p")
57
+ else
58
+ cmd=rptrun(ledger,date_to,from,to)
59
+ end
56
60
  out,_,_=Open3.capture2(cmd)
57
61
 
58
62
  if from and to
@@ -66,6 +70,38 @@ module PaisLegacy
66
70
  out.split("\n")
67
71
  end
68
72
 
73
+ # Get the accounts using the trial balance
74
+ def self.get_trial_balance_accounts(ledger = "1", date_to = "30/06/2021", periods=1,from=1,to=9999)
75
+
76
+ results = []
77
+
78
+ periods.times do |period|
79
+
80
+ date_to = Date.parse(date_to)
81
+ date_to = date_to.strftime("%d/%m/") + (date_to.year.to_i - period).to_s
82
+
83
+ report = get_trial_balance(ledger,date_to,period>0,from,to)
84
+ tb = PaisLegacy::TrialBalance.new(report)
85
+ results << tb.accounts_from_trial_balance
86
+ end
87
+
88
+ results_merged = []
89
+ results.each_with_index do |result,i|
90
+ if i == 0
91
+ results_merged = result
92
+ else
93
+ result.each do |account|
94
+ hash=results_merged.find {|r| r[:code] == account[:code]}
95
+
96
+ hash = {code: account[:code], name: account[:name]} unless hash
97
+ hash["dr#{i}".to_sym] = account[:dr]
98
+ hash["cr#{i}".to_sym] = account[:cr]
99
+ end
100
+ end
101
+ end
102
+
103
+ results_merged
104
+ end
69
105
 
70
106
  # --------------------------------------------------------------------------------
71
107
  # General Journals
data/readme.org CHANGED
@@ -99,6 +99,14 @@ After checking out the repo, run `bin/setup` to install dependencies. You can al
99
99
 
100
100
  To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).
101
101
 
102
+ *** Publish version
103
+ 1. Adjust lib/pais_legacy/version.rb
104
+ 2. Commit changes 'Bump <version number>'
105
+ 3. Gem build
106
+ : gem build pais_legacy.gemspec
107
+ 4. Push
108
+ : gem push pais_legacy-0.7.3.gem
109
+
102
110
  ** Contributing
103
111
 
104
112
  Bug reports and pull requests are welcome on GitHub at https://github.com/map7/pais_legacy.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pais_legacy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Pope
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-11-17 00:00:00.000000000 Z
11
+ date: 2023-01-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: byebug