pais_legacy 0.7.3 → 0.8.1

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: 5b496387ce9501c23013c41290109066221001c3552ab3dd0a62c44d9a945525
4
- data.tar.gz: e2e21539c7880bff7dd7ebf65ba8d6f54887a9964e709f268069ece43cf6ae24
3
+ metadata.gz: a271fa80d4f7ea154b131a7695b455b65ddbfe75813bb8cbe8b9247587448c83
4
+ data.tar.gz: 14d557ae225384b1af472fd842f3b7d51de17ae6188c9d36be62f5603dbfd7b2
5
5
  SHA512:
6
- metadata.gz: 3816b70e9ec64b3850fe97a114f4764a6dcaeda784128cdf21fc0aa7514a0e505f40111ee27c2d5c02e5635422d05b5277155f155faa6551bbd1e65faeaa58fc
7
- data.tar.gz: e79d5face0e97c1cf1a3de8c2897b64c8ef1893968af61286c6b6e78fe3bc2534183a7906522e7c596fdc2918c7c5e847e70a0654bc11cce2ffa5c856bcb5860
6
+ metadata.gz: 986967d1aab1e1442e293ddec3065021b1f8333e3a87df288a8630b6f3d80911540d7a5fc8978cabd3319f68805b351cdc384cc77ab0a117a03c46365de19d5b
7
+ data.tar.gz: 120ea35099f45316ed8b4bb481c9ba286cdcb17c9a2bb7c3acaeedb3861228552a6898de83c5e15ee4abebad5c72c40488de81dd2339ff4986c53eec05a421a7
data/Gemfile.lock CHANGED
@@ -13,11 +13,11 @@ GEM
13
13
  specs:
14
14
  ast (2.4.2)
15
15
  byebug (11.1.3)
16
- json (2.6.2)
17
- minitest (5.16.3)
16
+ json (2.6.3)
17
+ minitest (5.17.0)
18
18
  mocha (1.16.1)
19
19
  parallel (1.22.1)
20
- parser (3.1.2.1)
20
+ parser (3.2.0.0)
21
21
  ast (~> 2.4.1)
22
22
  pastel (0.8.0)
23
23
  tty-color (~> 0.5)
@@ -25,22 +25,22 @@ GEM
25
25
  rake (13.0.6)
26
26
  regexp_parser (2.6.1)
27
27
  rexml (3.2.5)
28
- rubocop (1.39.0)
28
+ rubocop (1.43.0)
29
29
  json (~> 2.3)
30
30
  parallel (~> 1.10)
31
- parser (>= 3.1.2.1)
31
+ parser (>= 3.2.0.0)
32
32
  rainbow (>= 2.2.2, < 4.0)
33
33
  regexp_parser (>= 1.8, < 3.0)
34
34
  rexml (>= 3.2.5, < 4.0)
35
- rubocop-ast (>= 1.23.0, < 2.0)
35
+ rubocop-ast (>= 1.24.1, < 2.0)
36
36
  ruby-progressbar (~> 1.7)
37
- unicode-display_width (>= 1.4.0, < 3.0)
38
- rubocop-ast (1.23.0)
37
+ unicode-display_width (>= 2.4.0, < 3.0)
38
+ rubocop-ast (1.24.1)
39
39
  parser (>= 3.1.1.0)
40
40
  ruby-progressbar (1.11.0)
41
- timecop (0.9.5)
41
+ timecop (0.9.6)
42
42
  tty-color (0.6.0)
43
- unicode-display_width (2.3.0)
43
+ unicode-display_width (2.4.2)
44
44
 
45
45
  PLATFORMS
46
46
  x86_64-linux
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PaisLegacy
4
- VERSION = "0.7.3"
4
+ VERSION = "0.8.1"
5
5
  end
data/lib/pais_legacy.rb CHANGED
@@ -48,11 +48,23 @@ module PaisLegacy
48
48
  map{|line| {value: line[0], text: "#{line[0]}-#{line[1]}"}}
49
49
  end
50
50
 
51
+ def self.glch_read_all(ledger)
52
+ out,_,_=Open3.capture2(glch_read_cmd(ledger.to_s))
53
+
54
+ out.
55
+ split("\n").
56
+ map{|line| line.split(",")}
57
+ end
58
+
51
59
  # --------------------------------------------------------------------------------
52
60
  # Trial Balance
53
61
  # --------------------------------------------------------------------------------
54
- def self.get_trial_balance(ledger = "1", date_to = "30/06/2021", from=1,to=9999)
55
- cmd=rptrun(ledger,date_to,from,to)
62
+ def self.get_trial_balance(ledger = "1", date_to = "30/06/2021",prior=false,from=1,to=9999)
63
+ if prior
64
+ cmd=rptrun(ledger,date_to,from,to,"rglch01p")
65
+ else
66
+ cmd=rptrun(ledger,date_to,from,to)
67
+ end
56
68
  out,_,_=Open3.capture2(cmd)
57
69
 
58
70
  if from and to
@@ -67,10 +79,36 @@ module PaisLegacy
67
79
  end
68
80
 
69
81
  # Get the accounts using the trial balance
70
- def self.get_trial_balance_accounts(ledger = "1", date_to = "30/06/2021", from=1,to=9999)
71
- report = get_trial_balance(ledger,date_to,from,to)
72
- tb = PaisLegacy::TrialBalance.new(report)
73
- tb.accounts_from_trial_balance
82
+ def self.get_trial_balance_accounts(ledger = "1", date_to = "30/06/2021", periods=1,from=1,to=9999)
83
+
84
+ results = []
85
+
86
+ periods.times do |period|
87
+
88
+ date_to = Date.parse(date_to)
89
+ date_to = date_to.strftime("%d/%m/") + (date_to.year.to_i - period).to_s
90
+
91
+ report = get_trial_balance(ledger,date_to,period>0,from,to)
92
+ tb = PaisLegacy::TrialBalance.new(report)
93
+ results << tb.accounts_from_trial_balance
94
+ end
95
+
96
+ results_merged = []
97
+ results.each_with_index do |result,i|
98
+ if i == 0
99
+ results_merged = result
100
+ else
101
+ result.each do |account|
102
+ hash=results_merged.find {|r| r[:code] == account[:code]}
103
+
104
+ hash = {code: account[:code], name: account[:name]} unless hash
105
+ hash["dr#{i}".to_sym] = account[:dr]
106
+ hash["cr#{i}".to_sym] = account[:cr]
107
+ end
108
+ end
109
+ end
110
+
111
+ results_merged
74
112
  end
75
113
 
76
114
  # --------------------------------------------------------------------------------
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.3
4
+ version: 0.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Pope
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-11-22 00:00:00.000000000 Z
11
+ date: 2023-02-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: byebug
@@ -103,7 +103,7 @@ licenses:
103
103
  - MIT
104
104
  metadata:
105
105
  homepage_uri: https://github.com/map7/pais_legacy
106
- post_install_message:
106
+ post_install_message:
107
107
  rdoc_options: []
108
108
  require_paths:
109
109
  - lib
@@ -118,8 +118,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
118
118
  - !ruby/object:Gem::Version
119
119
  version: '0'
120
120
  requirements: []
121
- rubygems_version: 3.2.22
122
- signing_key:
121
+ rubygems_version: 3.4.7
122
+ signing_key:
123
123
  specification_version: 4
124
124
  summary: PAIS Legacy API Wrapper
125
125
  test_files: []