axis 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. data/.gitignore +4 -0
  2. data/.rspec +0 -0
  3. data/.rvmrc +1 -0
  4. data/Gemfile +4 -0
  5. data/LICENSE.txt +20 -0
  6. data/README.markdown +10 -0
  7. data/Rakefile +5 -0
  8. data/VERSION +1 -0
  9. data/axis.gemspec +31 -0
  10. data/db/schema/v_customers.sql +228 -0
  11. data/db/schema/v_deliveries.sql +146 -0
  12. data/db/schema/v_nominal_account_transactions.sql +179 -0
  13. data/db/schema/v_sales_order_lines.sql +156 -0
  14. data/db/schema/v_sales_orders.sql +256 -0
  15. data/db/schema/v_stock_records.sql +243 -0
  16. data/lib/axis.rb +15 -0
  17. data/lib/axis/base.rb +5 -0
  18. data/lib/axis/config.rb +28 -0
  19. data/lib/axis/document.rb +74 -0
  20. data/lib/axis/models/addressee.rb +6 -0
  21. data/lib/axis/models/component_record.rb +5 -0
  22. data/lib/axis/models/customer.rb +6 -0
  23. data/lib/axis/models/delivery.rb +7 -0
  24. data/lib/axis/models/goods_on_account.rb +8 -0
  25. data/lib/axis/models/goods_on_account_line.rb +8 -0
  26. data/lib/axis/models/invoice.rb +11 -0
  27. data/lib/axis/models/nominal_account_transaction.rb +47 -0
  28. data/lib/axis/models/sales_order.rb +7 -0
  29. data/lib/axis/models/sales_order_line.rb +8 -0
  30. data/lib/axis/models/stock_level.rb +6 -0
  31. data/lib/axis/models/stock_record.rb +10 -0
  32. data/lib/axis/models/stock_record_location.rb +6 -0
  33. data/lib/axis/models/supplier_price.rb +6 -0
  34. data/lib/axis/version.rb +3 -0
  35. data/lib/cli.rb +25 -0
  36. data/spec/axis/document_spec.rb +98 -0
  37. data/spec/fixtures/ATTACH/Documents/INV/123456_0_20110101_163350_2C16B3CB_P.pdf +0 -0
  38. data/spec/fixtures/ATTACH/Documents/INV/123456_0_20120101_163350_2C16B3CB_P.pdf +0 -0
  39. data/spec/fixtures/ATTACH/Documents/INV/123456_0_20121002_163350_2C16B3CB_P.pdf +0 -0
  40. data/spec/fixtures/ATTACH/Documents/INV/296621_0_20121001_163350_2C16B3CB_P.pdf +0 -0
  41. data/spec/spec_helper.rb +1 -0
  42. metadata +175 -0
@@ -0,0 +1,4 @@
1
+ *.gem
2
+ .bundle
3
+ Gemfile.lock
4
+ pkg/*
data/.rspec ADDED
File without changes
data/.rvmrc ADDED
@@ -0,0 +1 @@
1
+ rvm use 1.9.3-falcon@stinkyink --create
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in axis.gemspec
4
+ gemspec
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2012 Robert Williams
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,10 @@
1
+ # Axis DB Connector
2
+
3
+ This adaptor exposes the Axis DB.
4
+
5
+ ## Records already mapped
6
+
7
+ * Axis::NominalAccountTransaction => accntr00
8
+ * Axis::Customer => acccus01
9
+ * Axis::Delivery => accdre00
10
+ * ... and others
@@ -0,0 +1,5 @@
1
+ require "bundler/gem_tasks"
2
+
3
+ task :console do
4
+ system "irb -rubygems -I lib -r cli.rb"
5
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.3.0
@@ -0,0 +1,31 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "axis/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "axis"
7
+ s.version = Axis::VERSION
8
+ s.authors = ["Robert Williams", "Rich Grundy"]
9
+ s.email = ["rob@r-williams.com", "rich@stinkyink.com"]
10
+ s.homepage = ""
11
+ s.summary = %q{This adaptor exposes the Axis DB}
12
+ s.description = %q{This adaptor exposes the Axis DB. Yeah it does!}
13
+
14
+ s.rubyforge_project = "axis"
15
+
16
+ s.files = `git ls-files`.split("\n")
17
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
+ s.require_paths = ["lib"]
20
+
21
+ # specify any dependencies here; for example:
22
+ # s.add_development_dependency "rspec"
23
+ # s.add_runtime_dependency "rest-client"
24
+
25
+ s.add_runtime_dependency "rake", "= 0.8.7"
26
+ s.add_runtime_dependency "tiny_tds", ">= 0"
27
+ s.add_runtime_dependency "activerecord-sqlserver-adapter", "> 3.0.14"
28
+ s.add_runtime_dependency "squeel", "~> 0.9.0"
29
+
30
+ s.add_development_dependency "rspec"
31
+ end
@@ -0,0 +1,228 @@
1
+ USE [AXIS33238CO1]
2
+ GO
3
+
4
+ /****** Object: View [dbo].[v_customers] Script Date: 06/01/2011 09:59:32 ******/
5
+ SET ANSI_NULLS ON
6
+ GO
7
+
8
+ SET QUOTED_IDENTIFIER ON
9
+ GO
10
+
11
+ CREATE VIEW [dbo].[v_customers]
12
+ AS
13
+ SELECT snm AS customer_short_name, wdp AS oldest_invioce_ever_in_days, osc AS order_source_code, grp AS customer_group_code,
14
+ ean AS customer_ean_location_number, cdr AS customers_deliver_to_id, osn AS supplier_id, invseq AS edi_invoice_sequence,
15
+ sna AS sage_nominal_account_number, mmp AS minimum_margin_percent, mmpc AS min_margin_percent_contracts, aduid AS customer_formatted_address_uid,
16
+ pact AS pact_contract_reference, ddidat AS auddis_request_live_date, defpmeth AS default_payement_method, hoac AS head_office_account_number,
17
+ fac AS factors_reference, dis AS customer_discount_rate, esd AS settlement_discount_rate, dac AS date_account_opened, scp AS standard_credit_period,
18
+ mcp AS maximum_credit_period, crl AS credit_limit, bal AS current_balance, eccc AS ec_country_code, coc AS cert_of_conformity_a_c_number, vno AS van_number,
19
+ dtm AS discount_terms_month, tor AS trade_or_retail_customer, stmdm AS statement_delivery_method, invm AS invoice_edi_method,
20
+ ovbdg AS order_value_break_disk_group, pdm AS payment_due_month, tyd AS turnover_year_to_date, tly AS turnover_last_year, dlt AS date_to_last_transaction,
21
+ ptrft AS ptr_to_first_trns, cdp AS settlement_dscnt_period, cnm AS contact_name, ctn AS contact_telephone_number, res AS total_turnover_this_year_and_last,
22
+ dcc AS quantity_break_discount_code, dsc AS discount_group_code, psc AS price_matrix_group_code, cyd AS cost_of_sales_year_to_date,
23
+ cly AS cost_of_sales_last_year, hoa AS head_office_account, prb AS price_band, vatno AS vat_number, dtc AS deliver_terms, mot AS method_of_transport_code,
24
+ notc AS nature_of_transaction_code, ptrlt AS ptr_to_last_trns, namaa_0 AS customers_name_and_address, faxno AS fax_number,
25
+ acp AS agent_commission_reference, ecref AS export_cert_reference, tcref AS terms_and_conditions_reference, ttp AS turnover_this_month,
26
+ ctp AS cost_of_sales_this_period, pstcd AS postcode, actyp AS account_type, ddep AS default_department_code, dccc AS default_code_centre_code,
27
+ dloc AS default_location_code, rloc AS replenishment_location_code, cinv AS consolidated_invoice_required, addr AS addacs_auddis_reason_code,
28
+ dms AS default_order_delivery_method, cusac AS customer_number, cusrf AS customer_reference, ftrf AS first_transaction_reference, horef AS head_office_reference,
29
+ ltrf AS last_transaction_reference, record AS relative_record_number, sln AS sales_ledger_number
30
+ FROM dbo.acccus01
31
+
32
+ GO
33
+
34
+ EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
35
+ Begin DesignProperties =
36
+ Begin PaneConfigurations =
37
+ Begin PaneConfiguration = 0
38
+ NumPanes = 4
39
+ Configuration = "(H (1[40] 4[20] 2[20] 3) )"
40
+ End
41
+ Begin PaneConfiguration = 1
42
+ NumPanes = 3
43
+ Configuration = "(H (1 [50] 4 [25] 3))"
44
+ End
45
+ Begin PaneConfiguration = 2
46
+ NumPanes = 3
47
+ Configuration = "(H (1 [50] 2 [25] 3))"
48
+ End
49
+ Begin PaneConfiguration = 3
50
+ NumPanes = 3
51
+ Configuration = "(H (4 [30] 2 [40] 3))"
52
+ End
53
+ Begin PaneConfiguration = 4
54
+ NumPanes = 2
55
+ Configuration = "(H (1 [56] 3))"
56
+ End
57
+ Begin PaneConfiguration = 5
58
+ NumPanes = 2
59
+ Configuration = "(H (2 [66] 3))"
60
+ End
61
+ Begin PaneConfiguration = 6
62
+ NumPanes = 2
63
+ Configuration = "(H (4 [50] 3))"
64
+ End
65
+ Begin PaneConfiguration = 7
66
+ NumPanes = 1
67
+ Configuration = "(V (3))"
68
+ End
69
+ Begin PaneConfiguration = 8
70
+ NumPanes = 3
71
+ Configuration = "(H (1[56] 4[18] 2) )"
72
+ End
73
+ Begin PaneConfiguration = 9
74
+ NumPanes = 2
75
+ Configuration = "(H (1 [75] 4))"
76
+ End
77
+ Begin PaneConfiguration = 10
78
+ NumPanes = 2
79
+ Configuration = "(H (1[66] 2) )"
80
+ End
81
+ Begin PaneConfiguration = 11
82
+ NumPanes = 2
83
+ Configuration = "(H (4 [60] 2))"
84
+ End
85
+ Begin PaneConfiguration = 12
86
+ NumPanes = 1
87
+ Configuration = "(H (1) )"
88
+ End
89
+ Begin PaneConfiguration = 13
90
+ NumPanes = 1
91
+ Configuration = "(V (4))"
92
+ End
93
+ Begin PaneConfiguration = 14
94
+ NumPanes = 1
95
+ Configuration = "(V (2))"
96
+ End
97
+ ActivePaneConfig = 0
98
+ End
99
+ Begin DiagramPane =
100
+ Begin Origin =
101
+ Top = 0
102
+ Left = 0
103
+ End
104
+ Begin Tables =
105
+ Begin Table = "acccus01"
106
+ Begin Extent =
107
+ Top = 6
108
+ Left = 38
109
+ Bottom = 328
110
+ Right = 203
111
+ End
112
+ DisplayFlags = 280
113
+ TopColumn = 132
114
+ End
115
+ End
116
+ End
117
+ Begin SQLPane =
118
+ End
119
+ Begin DataPane =
120
+ Begin ParameterDefaults = ""
121
+ End
122
+ Begin ColumnWidths = 77
123
+ Width = 284
124
+ Width = 1500
125
+ Width = 1500
126
+ Width = 1500
127
+ Width = 1500
128
+ Width = 1500
129
+ Width = 1500
130
+ Width = 1500
131
+ Width = 1500
132
+ Width = 1500
133
+ Width = 1500
134
+ Width = 1500
135
+ Width = 1500
136
+ Width = 1500
137
+ Width = 1500
138
+ Width = 1500
139
+ Width = 1500
140
+ Width = 1500
141
+ Width = 1500
142
+ Width = 1500
143
+ Width = 1500
144
+ Width = 1500
145
+ Width = 1500
146
+ Width = 1500
147
+ Width = 1500
148
+ Width = 1500
149
+ Width = 1500
150
+ Width = 1500
151
+ Width = 1500
152
+ Width = 1500
153
+ Width = 1500
154
+ Width = 1500
155
+ Width = 1500
156
+ Width = 1500
157
+ Width = 1500
158
+ Width = 1500
159
+ Width = 1500
160
+ Width = 1500
161
+ Width = 1500
162
+ Width = 1500
163
+ Width = 1500
164
+ Width = 1500
165
+ Width = 1500
166
+ Width = 1500
167
+ Width = 1500
168
+ Width = 1500
169
+ Width = 1500
170
+ Width = 1500
171
+ Width = 1500
172
+ Width = 1500
173
+ Width = 1500
174
+ Width = 1500
175
+ Width = 1500
176
+ Width = 1500
177
+ Width = 1500
178
+ Width = 1500
179
+ Width = 1500
180
+ Width = 1500
181
+ Width = 1500
182
+ Width = 1500
183
+ ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'v_customers'
184
+ GO
185
+
186
+ EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane2', @value=N' Width = 1500
187
+ Width = 1500
188
+ Width = 1500
189
+ Width = 1500
190
+ Width = 1500
191
+ Width = 1500
192
+ Width = 1500
193
+ Width = 1500
194
+ Width = 1500
195
+ Width = 1500
196
+ Width = 1500
197
+ Width = 1500
198
+ Width = 1500
199
+ Width = 1500
200
+ Width = 1500
201
+ Width = 1500
202
+ Width = 1500
203
+ End
204
+ End
205
+ Begin CriteriaPane =
206
+ Begin ColumnWidths = 11
207
+ Column = 1440
208
+ Alias = 900
209
+ Table = 1170
210
+ Output = 720
211
+ Append = 1400
212
+ NewValue = 1170
213
+ SortType = 1350
214
+ SortOrder = 1410
215
+ GroupBy = 1350
216
+ Filter = 1350
217
+ Or = 1350
218
+ Or = 1350
219
+ Or = 1350
220
+ End
221
+ End
222
+ End
223
+ ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'v_customers'
224
+ GO
225
+
226
+ EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=2 , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'v_customers'
227
+ GO
228
+
@@ -0,0 +1,146 @@
1
+ USE [AXIS33238CO1]
2
+ GO
3
+
4
+ /****** Object: View [dbo].[v_deliveries] Script Date: 06/01/2011 10:00:35 ******/
5
+ SET ANSI_NULLS ON
6
+ GO
7
+
8
+ SET QUOTED_IDENTIFIER ON
9
+ GO
10
+
11
+ CREATE VIEW [dbo].[v_deliveries]
12
+ AS
13
+ SELECT delno AS delivery_note_reference, volume, weight, conno AS consignment_tracking_number, brf AS first_booking_reference, pallets AS number_of_pallets,
14
+ packages AS number_of_packages, dms AS delivery_method, cost AS estimated_delivery_cost, lno AS sales_ledger_number, acno AS customer_account_number,
15
+ dat AS date, lbrf AS last_booking_reference, invno AS invoice_number, ddate AS despatch_date, dtime AS despatch_time, edate AS expected_delivery_date,
16
+ etime AS expected_delivery_time, aduid AS delivery_address_uid, cont AS contact_number, stat AS status_code, outcome AS outcome_code,
17
+ adate AS actual_delivery_date, atime AS actual_delivery_time, arclk AS arrival_date_and_time, record AS record_number
18
+ FROM dbo.accdre00
19
+
20
+ GO
21
+
22
+ EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
23
+ Begin DesignProperties =
24
+ Begin PaneConfigurations =
25
+ Begin PaneConfiguration = 0
26
+ NumPanes = 4
27
+ Configuration = "(H (1[20] 4[41] 2[20] 3) )"
28
+ End
29
+ Begin PaneConfiguration = 1
30
+ NumPanes = 3
31
+ Configuration = "(H (1 [50] 4 [25] 3))"
32
+ End
33
+ Begin PaneConfiguration = 2
34
+ NumPanes = 3
35
+ Configuration = "(H (1 [50] 2 [25] 3))"
36
+ End
37
+ Begin PaneConfiguration = 3
38
+ NumPanes = 3
39
+ Configuration = "(H (4 [30] 2 [40] 3))"
40
+ End
41
+ Begin PaneConfiguration = 4
42
+ NumPanes = 2
43
+ Configuration = "(H (1 [56] 3))"
44
+ End
45
+ Begin PaneConfiguration = 5
46
+ NumPanes = 2
47
+ Configuration = "(H (2 [66] 3))"
48
+ End
49
+ Begin PaneConfiguration = 6
50
+ NumPanes = 2
51
+ Configuration = "(H (4 [50] 3))"
52
+ End
53
+ Begin PaneConfiguration = 7
54
+ NumPanes = 1
55
+ Configuration = "(V (3))"
56
+ End
57
+ Begin PaneConfiguration = 8
58
+ NumPanes = 3
59
+ Configuration = "(H (1[56] 4[18] 2) )"
60
+ End
61
+ Begin PaneConfiguration = 9
62
+ NumPanes = 2
63
+ Configuration = "(H (1 [75] 4))"
64
+ End
65
+ Begin PaneConfiguration = 10
66
+ NumPanes = 2
67
+ Configuration = "(H (1[66] 2) )"
68
+ End
69
+ Begin PaneConfiguration = 11
70
+ NumPanes = 2
71
+ Configuration = "(H (4 [60] 2))"
72
+ End
73
+ Begin PaneConfiguration = 12
74
+ NumPanes = 1
75
+ Configuration = "(H (1) )"
76
+ End
77
+ Begin PaneConfiguration = 13
78
+ NumPanes = 1
79
+ Configuration = "(V (4))"
80
+ End
81
+ Begin PaneConfiguration = 14
82
+ NumPanes = 1
83
+ Configuration = "(V (2))"
84
+ End
85
+ ActivePaneConfig = 0
86
+ End
87
+ Begin DiagramPane =
88
+ Begin Origin =
89
+ Top = 0
90
+ Left = 0
91
+ End
92
+ Begin Tables =
93
+ Begin Table = "accdre00"
94
+ Begin Extent =
95
+ Top = 0
96
+ Left = 38
97
+ Bottom = 334
98
+ Right = 198
99
+ End
100
+ DisplayFlags = 280
101
+ TopColumn = 20
102
+ End
103
+ End
104
+ End
105
+ Begin SQLPane =
106
+ End
107
+ Begin DataPane =
108
+ Begin ParameterDefaults = ""
109
+ End
110
+ Begin ColumnWidths = 10
111
+ Width = 284
112
+ Width = 1500
113
+ Width = 1500
114
+ Width = 1500
115
+ Width = 1500
116
+ Width = 1500
117
+ Width = 1500
118
+ Width = 1500
119
+ Width = 1500
120
+ Width = 1500
121
+ End
122
+ End
123
+ Begin CriteriaPane =
124
+ Begin ColumnWidths = 11
125
+ Column = 1440
126
+ Alias = 900
127
+ Table = 1170
128
+ Output = 720
129
+ Append = 1400
130
+ NewValue = 1170
131
+ SortType = 1350
132
+ SortOrder = 1410
133
+ GroupBy = 1350
134
+ Filter = 1350
135
+ Or = 1350
136
+ Or = 1350
137
+ Or = 1350
138
+ End
139
+ End
140
+ End
141
+ ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'v_deliveries'
142
+ GO
143
+
144
+ EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1 , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'v_deliveries'
145
+ GO
146
+