rconomic 0.1.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.
- data/.travis.yml +11 -0
- data/Gemfile +8 -0
- data/Gemfile.lock +54 -0
- data/LICENSE +19 -0
- data/README.md +74 -0
- data/Rakefile +7 -0
- data/lib/economic/current_invoice.rb +78 -0
- data/lib/economic/current_invoice_line.rb +47 -0
- data/lib/economic/debtor.rb +51 -0
- data/lib/economic/economic.wsdl +56858 -0
- data/lib/economic/entity.rb +167 -0
- data/lib/economic/proxies/current_invoice_line_proxy.rb +28 -0
- data/lib/economic/proxies/current_invoice_proxy.rb +38 -0
- data/lib/economic/proxies/debtor_proxy.rb +40 -0
- data/lib/economic/proxies/entity_proxy.rb +61 -0
- data/lib/economic/session.rb +59 -0
- data/lib/rconomic/version.rb +3 -0
- data/lib/rconomic.rb +26 -0
- data/rconomic.gemspec +26 -0
- data/spec/economic/current_invoice_line_spec.rb +10 -0
- data/spec/economic/current_invoice_spec.rb +59 -0
- data/spec/economic/debtor_spec.rb +43 -0
- data/spec/economic/entity_spec.rb +179 -0
- data/spec/economic/proxies/current_invoice_line_proxy_spec.rb +77 -0
- data/spec/economic/proxies/current_invoice_proxy_spec.rb +64 -0
- data/spec/economic/proxies/debtor_proxy_spec.rb +74 -0
- data/spec/economic/session_spec.rb +64 -0
- data/spec/fixtures/connect/success.xml +8 -0
- data/spec/fixtures/current_invoice_create_from_data/success.xml +10 -0
- data/spec/fixtures/current_invoice_get_data/success.xml +73 -0
- data/spec/fixtures/current_invoice_line_get_data/success.xml +39 -0
- data/spec/fixtures/debtor_find_by_ci_number/many.xml +15 -0
- data/spec/fixtures/debtor_get_data/success.xml +54 -0
- data/spec/fixtures/debtor_get_next_available_number/success.xml +8 -0
- data/spec/fixtures/spec_entity_create_from_data/success.xml +10 -0
- data/spec/fixtures/spec_entity_get_data/success.xml +11 -0
- data/spec/fixtures/spec_entity_update_from_data/success.xml +10 -0
- data/spec/fixtures/wsdl.xml +56596 -0
- data/spec/spec_helper.rb +97 -0
- metadata +135 -0
@@ -0,0 +1,179 @@
|
|
1
|
+
require './spec/spec_helper'
|
2
|
+
|
3
|
+
class SpecEntity < Economic::Entity
|
4
|
+
has_properties :foo, :baz
|
5
|
+
|
6
|
+
def existing_method; end
|
7
|
+
end
|
8
|
+
|
9
|
+
describe Economic::Entity do
|
10
|
+
let(:session) { make_session }
|
11
|
+
|
12
|
+
describe "class methods" do
|
13
|
+
subject { SpecEntity }
|
14
|
+
|
15
|
+
describe "new" do
|
16
|
+
subject { Economic::Entity.new }
|
17
|
+
|
18
|
+
it "creates a new instance" do
|
19
|
+
subject.should be_instance_of(Economic::Entity)
|
20
|
+
end
|
21
|
+
|
22
|
+
it "sets persisted to false" do
|
23
|
+
subject.should_not be_persisted
|
24
|
+
end
|
25
|
+
|
26
|
+
it "sets partial to true" do
|
27
|
+
subject.should be_partial
|
28
|
+
end
|
29
|
+
|
30
|
+
it "initializes the entity with values from the given hash" do
|
31
|
+
entity = SpecEntity.new(:foo => 'bar', :baz => 'qux')
|
32
|
+
entity.foo.should == 'bar'
|
33
|
+
entity.baz.should == 'qux'
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
describe "properties_not_triggering_full_load" do
|
38
|
+
it "returns names of special id'ish properties" do
|
39
|
+
subject.properties_not_triggering_full_load.should == [:id, :number, :handle]
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
describe "has_properties" do
|
44
|
+
it "creates getter for all properties" do
|
45
|
+
subject.expects(:define_method).with('name')
|
46
|
+
subject.expects(:define_method).with('age')
|
47
|
+
subject.has_properties :name, :age
|
48
|
+
end
|
49
|
+
|
50
|
+
it "creates setter for all properties" do
|
51
|
+
subject.expects(:attr_writer).with(:name)
|
52
|
+
subject.expects(:attr_writer).with(:age)
|
53
|
+
subject.has_properties :name, :age
|
54
|
+
end
|
55
|
+
|
56
|
+
it "does not create setter or getter for id'ish properties" do
|
57
|
+
subject.expects(:define_method).with('id').never
|
58
|
+
subject.expects(:define_method).with('number').never
|
59
|
+
subject.expects(:define_method).with('handle').never
|
60
|
+
subject.has_properties :id, :number, :handle
|
61
|
+
end
|
62
|
+
|
63
|
+
it "does not clobber existing methods" do
|
64
|
+
subject.expects(:define_method).with('existing_method').never
|
65
|
+
subject.has_properties :existing_method
|
66
|
+
end
|
67
|
+
|
68
|
+
describe "properties created with has_properties" do
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
describe "soap_action" do
|
73
|
+
it "returns the name for the given soap action on this class" do
|
74
|
+
subject.soap_action(:get_data).should == :spec_entity_get_data
|
75
|
+
|
76
|
+
class Car < Economic::Entity; end
|
77
|
+
Car.soap_action(:start_engine).should == :car_start_engine
|
78
|
+
Car.soap_action('StartEngine').should == :car_start_engine
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
describe "get_data" do
|
84
|
+
subject { (e = SpecEntity.new).tap { |e| e.session = session } }
|
85
|
+
|
86
|
+
before :each do
|
87
|
+
savon.stubs(:spec_entity_get_data).returns(:success)
|
88
|
+
end
|
89
|
+
|
90
|
+
it "fetches data from API" do
|
91
|
+
subject.instance_variable_set('@number', 42)
|
92
|
+
savon.expects(:spec_entity_get_data).with('entityHandle' => {'Number' => 42}).returns(:success)
|
93
|
+
subject.get_data
|
94
|
+
end
|
95
|
+
|
96
|
+
it "updates the entity with the response" do
|
97
|
+
subject.expects(:update_properties).with({:foo => 'bar', :baz => 'qux'})
|
98
|
+
subject.get_data
|
99
|
+
end
|
100
|
+
|
101
|
+
it "sets partial to false" do
|
102
|
+
subject.get_data
|
103
|
+
subject.should_not be_partial
|
104
|
+
end
|
105
|
+
|
106
|
+
it "sets persisted to true" do
|
107
|
+
subject.get_data
|
108
|
+
subject.should be_persisted
|
109
|
+
end
|
110
|
+
end
|
111
|
+
|
112
|
+
describe "save" do
|
113
|
+
subject { (e = SpecEntity.new).tap { |e| e.session = session } }
|
114
|
+
|
115
|
+
context "entity has not been persisted" do
|
116
|
+
before :each do
|
117
|
+
subject.stubs(:persisted?).returns(false)
|
118
|
+
end
|
119
|
+
|
120
|
+
it "creates the entity" do
|
121
|
+
subject.expects(:create)
|
122
|
+
subject.save
|
123
|
+
end
|
124
|
+
end
|
125
|
+
|
126
|
+
context "entity has already been persisted" do
|
127
|
+
before :each do
|
128
|
+
subject.stubs(:persisted?).returns(true)
|
129
|
+
end
|
130
|
+
|
131
|
+
it "updates the entity" do
|
132
|
+
subject.expects(:update)
|
133
|
+
subject.save
|
134
|
+
end
|
135
|
+
end
|
136
|
+
end
|
137
|
+
|
138
|
+
describe "create" do
|
139
|
+
subject { (e = SpecEntity.new).tap { |e| e.persisted = false; e.session = session } }
|
140
|
+
|
141
|
+
it "sends data to the API" do
|
142
|
+
savon.expects(:spec_entity_create_from_data).returns(:success)
|
143
|
+
subject.save
|
144
|
+
end
|
145
|
+
|
146
|
+
it "updates handle with the number returned from API" do
|
147
|
+
savon.expects(:spec_entity_create_from_data).returns(:success)
|
148
|
+
subject.save
|
149
|
+
subject.number.should == '42'
|
150
|
+
end
|
151
|
+
end
|
152
|
+
|
153
|
+
describe "update" do
|
154
|
+
subject { (e = SpecEntity.new).tap { |e| e.persisted = true; e.session = session } }
|
155
|
+
|
156
|
+
it "sends data to the API" do
|
157
|
+
savon.expects(:spec_entity_update_from_data).returns(:success)
|
158
|
+
subject.save
|
159
|
+
end
|
160
|
+
end
|
161
|
+
|
162
|
+
describe "update_properties" do
|
163
|
+
subject { SpecEntity.new }
|
164
|
+
|
165
|
+
it "sets the properties to the given values" do
|
166
|
+
subject.class.has_properties :foo, :baz
|
167
|
+
subject.expects(:foo=).with('bar')
|
168
|
+
subject.expects(:baz=).with('qux')
|
169
|
+
subject.update_properties(:foo => 'bar', 'baz' => 'qux')
|
170
|
+
end
|
171
|
+
|
172
|
+
it "only sets known properties" do
|
173
|
+
subject.class.has_properties :foo, :bar
|
174
|
+
subject.expects(:foo=).with('bar')
|
175
|
+
subject.update_properties(:foo => 'bar', 'baz' => 'qux')
|
176
|
+
end
|
177
|
+
end
|
178
|
+
end
|
179
|
+
|
@@ -0,0 +1,77 @@
|
|
1
|
+
require './spec/spec_helper'
|
2
|
+
|
3
|
+
describe Economic::CurrentInvoiceLineProxy do
|
4
|
+
let(:session) { make_session }
|
5
|
+
let(:invoice) { make_current_invoice(:session => session) }
|
6
|
+
subject { Economic::CurrentInvoiceLineProxy.new(invoice) }
|
7
|
+
|
8
|
+
describe "new" do
|
9
|
+
it "stores owner" do
|
10
|
+
subject.owner.should == invoice
|
11
|
+
end
|
12
|
+
|
13
|
+
it "stores session" do
|
14
|
+
subject.session.should == invoice.session
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
describe ".build" do
|
19
|
+
it "instantiates a new CurrentInvoiceLine" do
|
20
|
+
subject.build.should be_instance_of(Economic::CurrentInvoiceLine)
|
21
|
+
end
|
22
|
+
|
23
|
+
it "assigns the session to the CurrentInvoiceLine" do
|
24
|
+
subject.build.session.should == session
|
25
|
+
end
|
26
|
+
|
27
|
+
it "should not build a partial CurrentInvoiceLine" do
|
28
|
+
subject.build.should_not be_partial
|
29
|
+
end
|
30
|
+
|
31
|
+
context "when owner is a CurrentInvoice" do
|
32
|
+
subject { invoice.lines }
|
33
|
+
|
34
|
+
it "should use the Debtors session" do
|
35
|
+
subject.build.session.should == invoice.session
|
36
|
+
end
|
37
|
+
|
38
|
+
it "should initialize with values from CurrentInvoice" do
|
39
|
+
invoice_line = subject.build
|
40
|
+
invoice_line.invoice_handle.should == invoice.handle
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
describe ".find" do
|
46
|
+
before :each do
|
47
|
+
savon.stubs('CurrentInvoiceLine_GetData').returns(:success)
|
48
|
+
end
|
49
|
+
|
50
|
+
it "gets invoice_line data from API" do
|
51
|
+
savon.expects('CurrentInvoiceLine_GetData').with('entityHandle' => {'Number' => 42}).returns(:success)
|
52
|
+
subject.find(42)
|
53
|
+
end
|
54
|
+
|
55
|
+
it "returns CurrentInvoiceLine object" do
|
56
|
+
subject.find(42).should be_instance_of(Economic::CurrentInvoiceLine)
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
describe "enumerable" do
|
61
|
+
it "can be empty" do
|
62
|
+
subject.should be_empty
|
63
|
+
end
|
64
|
+
|
65
|
+
it "can be appended to" do
|
66
|
+
line = Economic::CurrentInvoiceLine.new
|
67
|
+
subject << line
|
68
|
+
subject.items.should == [line]
|
69
|
+
end
|
70
|
+
|
71
|
+
it "can be iterated over" do
|
72
|
+
line = Economic::CurrentInvoiceLine.new
|
73
|
+
subject << line
|
74
|
+
subject.all? { |l| l == [line] }
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
@@ -0,0 +1,64 @@
|
|
1
|
+
require './spec/spec_helper'
|
2
|
+
|
3
|
+
describe Economic::CurrentInvoiceProxy do
|
4
|
+
let(:session) { make_session }
|
5
|
+
subject { Economic::CurrentInvoiceProxy.new(session) }
|
6
|
+
|
7
|
+
describe ".new" do
|
8
|
+
it "stores session" do
|
9
|
+
subject.session.should === session
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
describe ".build" do
|
14
|
+
it "instantiates a new CurrentInvoice" do
|
15
|
+
subject.build.should be_instance_of(Economic::CurrentInvoice)
|
16
|
+
end
|
17
|
+
|
18
|
+
it "assigns the session to the CurrentInvoice" do
|
19
|
+
subject.build.session.should === session
|
20
|
+
end
|
21
|
+
|
22
|
+
it "should not build a partial CurrentInvoice" do
|
23
|
+
subject.build.should_not be_partial
|
24
|
+
end
|
25
|
+
|
26
|
+
context "when owner is a Debtor" do
|
27
|
+
let(:debtor) { make_debtor(:session => session) }
|
28
|
+
subject { debtor.current_invoices }
|
29
|
+
|
30
|
+
it "should use the Debtors session" do
|
31
|
+
subject.build.session.should == debtor.session
|
32
|
+
end
|
33
|
+
|
34
|
+
it "should initialize with values from Debtor" do
|
35
|
+
invoice = subject.build
|
36
|
+
|
37
|
+
invoice.debtor_name.should == debtor.name
|
38
|
+
invoice.debtor_address.should == debtor.address
|
39
|
+
invoice.debtor_postal_code.should == debtor.postal_code
|
40
|
+
invoice.debtor_city.should == debtor.city
|
41
|
+
|
42
|
+
invoice.debtor_handle.should == debtor.handle
|
43
|
+
invoice.term_of_payment_handle.should == debtor.term_of_payment_handle
|
44
|
+
invoice.layout_handle.should == debtor.layout_handle
|
45
|
+
invoice.currency_handle.should == debtor.currency_handle
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
describe ".find" do
|
51
|
+
before :each do
|
52
|
+
savon.stubs('CurrentInvoice_GetData').returns(:success)
|
53
|
+
end
|
54
|
+
|
55
|
+
it "gets invoice data from API" do
|
56
|
+
savon.expects('CurrentInvoice_GetData').with('entityHandle' => {'Number' => 42}).returns(:success)
|
57
|
+
subject.find(42)
|
58
|
+
end
|
59
|
+
|
60
|
+
it "returns CurrentInvoice object" do
|
61
|
+
subject.find(42).should be_instance_of(Economic::CurrentInvoice)
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
@@ -0,0 +1,74 @@
|
|
1
|
+
require './spec/spec_helper'
|
2
|
+
|
3
|
+
describe Economic::DebtorProxy do
|
4
|
+
let(:session) { make_session }
|
5
|
+
subject { Economic::DebtorProxy.new(session) }
|
6
|
+
|
7
|
+
describe "new" do
|
8
|
+
it "stores session" do
|
9
|
+
subject.session.should === session
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
describe "find" do
|
14
|
+
before :each do
|
15
|
+
savon.stubs('Debtor_GetData').returns(:success)
|
16
|
+
end
|
17
|
+
|
18
|
+
it "gets debtor data from API" do
|
19
|
+
savon.expects('Debtor_GetData').with('entityHandle' => {'Number' => 42}).returns(:success)
|
20
|
+
subject.find(42)
|
21
|
+
end
|
22
|
+
|
23
|
+
it "returns Debtor object" do
|
24
|
+
subject.find(42).should be_instance_of(Economic::Debtor)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
describe "find_by_ci_number" do
|
29
|
+
it "uses FindByCINumber on API" do
|
30
|
+
savon.expects('Debtor_FindByCINumber').with('ciNumber' => '12345678').returns(:many)
|
31
|
+
subject.find_by_ci_number('12345678')
|
32
|
+
end
|
33
|
+
|
34
|
+
context "when many debtors exist" do
|
35
|
+
before :each do
|
36
|
+
savon.stubs('Debtor_FindByCINumber').returns(:many)
|
37
|
+
end
|
38
|
+
|
39
|
+
let(:results) { subject.find_by_ci_number('12345678') }
|
40
|
+
|
41
|
+
it "returns a Debtor object for each result" do
|
42
|
+
results.size.should == 2
|
43
|
+
results.all? { |result| result.should be_instance_of(Economic::Debtor) }
|
44
|
+
end
|
45
|
+
|
46
|
+
it "returns partial Debtor objects" do
|
47
|
+
results.all? { |result| result.should be_partial }
|
48
|
+
end
|
49
|
+
|
50
|
+
it "returns persisted Debtor objects" do
|
51
|
+
results.all? { |result| result.should be_persisted }
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
describe "next_available_number" do
|
57
|
+
it "gets the next available debtor number from API" do
|
58
|
+
savon.expects('Debtor_GetNextAvailableNumber').returns(:success)
|
59
|
+
subject.next_available_number.should == '105'
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
describe "build" do
|
64
|
+
subject { session.debtors.build }
|
65
|
+
|
66
|
+
it "instantiates a new Debtor" do
|
67
|
+
subject.should be_instance_of(Economic::Debtor)
|
68
|
+
end
|
69
|
+
|
70
|
+
it "assigns the session to the Debtor" do
|
71
|
+
subject.session.should === session
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
@@ -0,0 +1,64 @@
|
|
1
|
+
require './spec/spec_helper'
|
2
|
+
|
3
|
+
describe Economic::Session do
|
4
|
+
subject { Economic::Session.new(123456, 'api', 'passw0rd') }
|
5
|
+
|
6
|
+
describe "new" do
|
7
|
+
it "should store authentication details" do
|
8
|
+
subject.agreement_number.should == 123456
|
9
|
+
subject.user_name.should == 'api'
|
10
|
+
subject.password.should == 'passw0rd'
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
describe "client" do
|
15
|
+
subject { Economic::Session.new(123456, 'api', 'passw0rd') }
|
16
|
+
|
17
|
+
it "returns a Savon::Client" do
|
18
|
+
subject.client.should be_instance_of(::Savon::Client)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
describe "connect" do
|
23
|
+
it "connects to e-conomic with authentication details" do
|
24
|
+
savon.expects('Connect').with(has_entries(:agreementNumber => 123456, :userName => 'api', :password => 'passw0rd')).returns(:success)
|
25
|
+
subject.connect
|
26
|
+
end
|
27
|
+
|
28
|
+
it "stores the cookie for later connections" do
|
29
|
+
savon.expects('Connect').returns({:headers => {'Set-Cookie' => 'cookie'}})
|
30
|
+
subject.connect
|
31
|
+
subject.client.http.headers['Cookie'].should == 'cookie'
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
describe ".session" do
|
36
|
+
it "returns self" do
|
37
|
+
subject.session.should === subject
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
describe "current_invoices" do
|
42
|
+
it "returns an CurrentInvoiceProxy" do
|
43
|
+
subject.current_invoices.should be_instance_of(Economic::CurrentInvoiceProxy)
|
44
|
+
end
|
45
|
+
|
46
|
+
it "memoizes the proxy" do
|
47
|
+
subject.current_invoices.should === subject.current_invoices
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
describe "debtors" do
|
52
|
+
it "returns a DebtorProxy" do
|
53
|
+
subject.debtors.should be_instance_of(Economic::DebtorProxy)
|
54
|
+
end
|
55
|
+
|
56
|
+
it "memoizes the proxy" do
|
57
|
+
subject.debtors.should === subject.debtors
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
describe "request" do
|
62
|
+
end
|
63
|
+
|
64
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
3
|
+
<soap:Body>
|
4
|
+
<ConnectResponse xmlns="http://e-conomic.com">
|
5
|
+
<ConnectResult>string</ConnectResult>
|
6
|
+
</ConnectResponse>
|
7
|
+
</soap:Body>
|
8
|
+
</soap:Envelope>
|
@@ -0,0 +1,10 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
3
|
+
<soap:Body>
|
4
|
+
<CurrentInvoice_CreateFromDataResponse xmlns="http://e-conomic.com">
|
5
|
+
<CurrentInvoice_CreateFromDataResult>
|
6
|
+
<Id>42</Id>
|
7
|
+
</CurrentInvoice_CreateFromDataResult>
|
8
|
+
</CurrentInvoice_CreateFromDataResponse>
|
9
|
+
</soap:Body>
|
10
|
+
</soap:Envelope>
|
@@ -0,0 +1,73 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
3
|
+
<soap:Body>
|
4
|
+
<CurrentInvoice_GetDataResponse xmlns="http://e-conomic.com">
|
5
|
+
<CurrentInvoice_GetDataResult>
|
6
|
+
<Handle>
|
7
|
+
<Id>int</Id>
|
8
|
+
</Handle>
|
9
|
+
<Id>int</Id>
|
10
|
+
<DebtorHandle>
|
11
|
+
<Number>string</Number>
|
12
|
+
</DebtorHandle>
|
13
|
+
<ProjectHandle>
|
14
|
+
<Number>int</Number>
|
15
|
+
</ProjectHandle>
|
16
|
+
<DebtorName>string</DebtorName>
|
17
|
+
<DebtorAddress>string</DebtorAddress>
|
18
|
+
<DebtorPostalCode>string</DebtorPostalCode>
|
19
|
+
<DebtorCity>string</DebtorCity>
|
20
|
+
<DebtorCountry>string</DebtorCountry>
|
21
|
+
<DebtorEan>string</DebtorEan>
|
22
|
+
<PublicEntryNumber>string</PublicEntryNumber>
|
23
|
+
<AttentionHandle>
|
24
|
+
<Id>int</Id>
|
25
|
+
</AttentionHandle>
|
26
|
+
<YourReferenceHandle>
|
27
|
+
<Id>int</Id>
|
28
|
+
</YourReferenceHandle>
|
29
|
+
<OurReferenceHandle>
|
30
|
+
<Number>int</Number>
|
31
|
+
</OurReferenceHandle>
|
32
|
+
<OurReference2Handle>
|
33
|
+
<Number>int</Number>
|
34
|
+
</OurReference2Handle>
|
35
|
+
<Date>dateTime</Date>
|
36
|
+
<TermOfPaymentHandle>
|
37
|
+
<Id>int</Id>
|
38
|
+
</TermOfPaymentHandle>
|
39
|
+
<DueDate>dateTime</DueDate>
|
40
|
+
<CurrencyHandle>
|
41
|
+
<Code>string</Code>
|
42
|
+
</CurrencyHandle>
|
43
|
+
<ExchangeRate>decimal</ExchangeRate>
|
44
|
+
<IsVatIncluded>boolean</IsVatIncluded>
|
45
|
+
<LayoutHandle>
|
46
|
+
<Id>int</Id>
|
47
|
+
</LayoutHandle>
|
48
|
+
<DeliveryLocationHandle>
|
49
|
+
<Id>int</Id>
|
50
|
+
</DeliveryLocationHandle>
|
51
|
+
<DeliveryAddress>string</DeliveryAddress>
|
52
|
+
<DeliveryPostalCode>string</DeliveryPostalCode>
|
53
|
+
<DeliveryCity>string</DeliveryCity>
|
54
|
+
<DeliveryCountry>string</DeliveryCountry>
|
55
|
+
<TermsOfDelivery>string</TermsOfDelivery>
|
56
|
+
<DeliveryDate>dateTime</DeliveryDate>
|
57
|
+
<Heading>string</Heading>
|
58
|
+
<TextLine1>string</TextLine1>
|
59
|
+
<TextLine2>string</TextLine2>
|
60
|
+
<OtherReference>string</OtherReference>
|
61
|
+
<NetAmount>decimal</NetAmount>
|
62
|
+
<VatAmount>decimal</VatAmount>
|
63
|
+
<GrossAmount>decimal</GrossAmount>
|
64
|
+
<Margin>decimal</Margin>
|
65
|
+
<MarginAsPercent>decimal</MarginAsPercent>
|
66
|
+
<RoundingAmount>decimal</RoundingAmount>
|
67
|
+
<DebtorCounty>string</DebtorCounty>
|
68
|
+
<DeliveryCounty>string</DeliveryCounty>
|
69
|
+
<DeductionAmount>decimal</DeductionAmount>
|
70
|
+
</CurrentInvoice_GetDataResult>
|
71
|
+
</CurrentInvoice_GetDataResponse>
|
72
|
+
</soap:Body>
|
73
|
+
</soap:Envelope>
|
@@ -0,0 +1,39 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
3
|
+
<soap:Body>
|
4
|
+
<CurrentInvoiceLine_GetDataResponse xmlns="http://e-conomic.com">
|
5
|
+
<CurrentInvoiceLine_GetDataResult>
|
6
|
+
<Handle>
|
7
|
+
<Id>int</Id>
|
8
|
+
<Number>int</Number>
|
9
|
+
</Handle>
|
10
|
+
<Id>int</Id>
|
11
|
+
<Number>int</Number>
|
12
|
+
<InvoiceHandle>
|
13
|
+
<Id>int</Id>
|
14
|
+
</InvoiceHandle>
|
15
|
+
<Description>string</Description>
|
16
|
+
<DeliveryDate>dateTime</DeliveryDate>
|
17
|
+
<UnitHandle>
|
18
|
+
<Number>int</Number>
|
19
|
+
</UnitHandle>
|
20
|
+
<ProductHandle>
|
21
|
+
<Number>string</Number>
|
22
|
+
</ProductHandle>
|
23
|
+
<Quantity>decimal</Quantity>
|
24
|
+
<UnitNetPrice>decimal</UnitNetPrice>
|
25
|
+
<DiscountAsPercent>decimal</DiscountAsPercent>
|
26
|
+
<UnitCostPrice>decimal</UnitCostPrice>
|
27
|
+
<TotalNetAmount>decimal</TotalNetAmount>
|
28
|
+
<TotalMargin>decimal</TotalMargin>
|
29
|
+
<MarginAsPercent>decimal</MarginAsPercent>
|
30
|
+
<DepartmentHandle>
|
31
|
+
<Number>int</Number>
|
32
|
+
</DepartmentHandle>
|
33
|
+
<DistributionKeyHandle>
|
34
|
+
<Number>int</Number>
|
35
|
+
</DistributionKeyHandle>
|
36
|
+
</CurrentInvoiceLine_GetDataResult>
|
37
|
+
</CurrentInvoiceLine_GetDataResponse>
|
38
|
+
</soap:Body>
|
39
|
+
</soap:Envelope>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
3
|
+
<soap:Body>
|
4
|
+
<Debtor_FindByCINumberResponse xmlns="http://e-conomic.com">
|
5
|
+
<Debtor_FindByCINumberResult>
|
6
|
+
<DebtorHandle>
|
7
|
+
<Number>string</Number>
|
8
|
+
</DebtorHandle>
|
9
|
+
<DebtorHandle>
|
10
|
+
<Number>string</Number>
|
11
|
+
</DebtorHandle>
|
12
|
+
</Debtor_FindByCINumberResult>
|
13
|
+
</Debtor_FindByCINumberResponse>
|
14
|
+
</soap:Body>
|
15
|
+
</soap:Envelope>
|
@@ -0,0 +1,54 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
3
|
+
<soap:Body>
|
4
|
+
<Debtor_GetDataResponse xmlns="http://e-conomic.com">
|
5
|
+
<Debtor_GetDataResult>
|
6
|
+
<Handle>
|
7
|
+
<Number>string</Number>
|
8
|
+
</Handle>
|
9
|
+
<Number>string</Number>
|
10
|
+
<DebtorGroupHandle>
|
11
|
+
<Number>int</Number>
|
12
|
+
</DebtorGroupHandle>
|
13
|
+
<Name>string</Name>
|
14
|
+
<VatZone>HomeCountry or EU or Abroad</VatZone>
|
15
|
+
<CurrencyHandle>
|
16
|
+
<Code>string</Code>
|
17
|
+
</CurrencyHandle>
|
18
|
+
<PriceGroupHandle>
|
19
|
+
<Number>int</Number>
|
20
|
+
</PriceGroupHandle>
|
21
|
+
<IsAccessible>boolean</IsAccessible>
|
22
|
+
<Ean>string</Ean>
|
23
|
+
<PublicEntryNumber>string</PublicEntryNumber>
|
24
|
+
<Email>string</Email>
|
25
|
+
<TelephoneAndFaxNumber>string</TelephoneAndFaxNumber>
|
26
|
+
<Website>string</Website>
|
27
|
+
<Address>string</Address>
|
28
|
+
<PostalCode>string</PostalCode>
|
29
|
+
<City>string</City>
|
30
|
+
<Country>string</Country>
|
31
|
+
<CreditMaximum>decimal</CreditMaximum>
|
32
|
+
<VatNumber>string</VatNumber>
|
33
|
+
<County>string</County>
|
34
|
+
<CINumber>string</CINumber>
|
35
|
+
<TermOfPaymentHandle>
|
36
|
+
<Id>int</Id>
|
37
|
+
</TermOfPaymentHandle>
|
38
|
+
<LayoutHandle>
|
39
|
+
<Id>int</Id>
|
40
|
+
</LayoutHandle>
|
41
|
+
<AttentionHandle>
|
42
|
+
<Id>int</Id>
|
43
|
+
</AttentionHandle>
|
44
|
+
<YourReferenceHandle>
|
45
|
+
<Id>int</Id>
|
46
|
+
</YourReferenceHandle>
|
47
|
+
<OurReferenceHandle>
|
48
|
+
<Number>int</Number>
|
49
|
+
</OurReferenceHandle>
|
50
|
+
<Balance>decimal</Balance>
|
51
|
+
</Debtor_GetDataResult>
|
52
|
+
</Debtor_GetDataResponse>
|
53
|
+
</soap:Body>
|
54
|
+
</soap:Envelope>
|
@@ -0,0 +1,8 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
3
|
+
<soap:Body>
|
4
|
+
<Debtor_GetNextAvailableNumberResponse xmlns="http://e-conomic.com">
|
5
|
+
<Debtor_GetNextAvailableNumberResult>105</Debtor_GetNextAvailableNumberResult>
|
6
|
+
</Debtor_GetNextAvailableNumberResponse>
|
7
|
+
</soap:Body>
|
8
|
+
</soap:Envelope>
|
@@ -0,0 +1,10 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
|
3
|
+
<soap:Body>
|
4
|
+
<SpecEntity_CreateFromDataResponse xmlns="http://e-conomic.com">
|
5
|
+
<SpecEntity_CreateFromDataResult>
|
6
|
+
<Number>42</Number>
|
7
|
+
</SpecEntity_CreateFromDataResult>
|
8
|
+
</SpecEntity_CreateFromDataResponse>
|
9
|
+
</soap:Body>
|
10
|
+
</soap:Envelope>
|