rnsap 0.3.2 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rnsap.rb +34 -5
  3. metadata +6 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4f007a1ea7e705a5e9d6071a22eda01f95debc6c5f2190df7720c2cc5359022e
4
- data.tar.gz: aab89dd84c193006677e4f952e5703cfde3a28babdb6db445fdad3bc29ca316f
3
+ metadata.gz: f44b42cb85ce971b63caafa40e57062a287861ac3dc221f5627d931c9d2792d6
4
+ data.tar.gz: 5403af8af25304f9de38fecb09f380e7ccd9a9c9bb684ae63f5f080e51d44aab
5
5
  SHA512:
6
- metadata.gz: d04e02c23e7fee1f3af3577ede5195c8ba096062d81cd50be1a0c1a60203fffbd5637c24cb167072cbf2e7cf8dec98102485c5f9d339aa298d521e4f2903185a
7
- data.tar.gz: 6b6f07b8d353fdfd91db749c67a2b67640d3e8c815a03b648a5ae97f0af720d594299b0d8e5441680a6b4c53a03f02e63fda7e45339685c09f280d82bdb25592
6
+ metadata.gz: db5a0dd7f38e5b31dc1136dfda6d6bfba3db5ba8d437fc13711f64a6c6f060aa92148a1e9d996e7612db6dc479c566d9945aab06b782012683b3aa55ca7281ec
7
+ data.tar.gz: ebcdcf12bae1cad45e498748b444da864b8e3f3de67031ab8431c16caf43454f985f004b11be060ef8f32f3a863119417d950cf44cb9b8d2a23d7c7be9338a57
data/lib/rnsap.rb CHANGED
@@ -121,6 +121,40 @@ module RnSap
121
121
  list
122
122
  end
123
123
 
124
+ def preq_detail(preq = 0, acc_assignment = 'X', item_text = 'X', services = 'X', services_texts = 'X')
125
+ #-- Execute BAPI_REQUISITION_GETDETAIL
126
+ fn_preq_detail = @conn.get_function('BAPI_REQUISITION_GETDETAIL')
127
+ fc_preq_detail = fn_preq_detail.get_function_call
128
+
129
+ fc_preq_detail[:NUMBER] = preq
130
+ fc_preq_detail[:ACCOUNT_ASSIGNMENT] = acc_assignment
131
+ fc_preq_detail[:ITEM_TEXTS] = item_text
132
+ fc_preq_detail[:SERVICES] = services
133
+ fc_preq_detail[:SERVICE_TEXTS] = services_texts
134
+
135
+ fc_preq_detail.invoke
136
+
137
+ list = []
138
+ avoid_list = ['!','__','+', '=','!', '?','~','>', '<']
139
+ fc_preq_detail[:REQUISITION_ITEMS].each do |row|
140
+ preq = PreqItem.new
141
+ preq.class.instance_methods.each do |method_name|
142
+ begin
143
+ if preq.respond_to?("#{method_name}=")
144
+ unless avoid_list.any? { |word| method_name.to_s.include?(word)}
145
+ value = row[method_name]
146
+ eval("preq.#{method_name} = '#{value}'")
147
+ end
148
+ end
149
+ rescue
150
+ end
151
+ end
152
+ list.push(preq)
153
+ end
154
+
155
+ list
156
+ end
157
+
124
158
  private
125
159
 
126
160
  attr_writer :conn
@@ -148,9 +182,4 @@ module RnSap
148
182
  end
149
183
  end
150
184
 
151
- # class used to represent a Table Column. Used internally
152
- # to map SAP's returned working area (WA) into class instances
153
- class TableColumn
154
- attr_accessor :field_name, :offset, :length, :type, :description
155
- end
156
185
  end
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rnsap
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rogerio Nascimento
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2020-04-30 00:00:00.000000000 Z
@@ -40,7 +40,7 @@ dependencies:
40
40
  version: '0'
41
41
  description: By encapsulating SAPs NW RFC library calls, Ruby routines can access
42
42
  SAP power in a simpler manner
43
- email:
43
+ email:
44
44
  executables: []
45
45
  extensions: []
46
46
  extra_rdoc_files: []
@@ -51,7 +51,7 @@ licenses:
51
51
  - MIT
52
52
  metadata:
53
53
  source_code_uri: https://github.com/rnasc/rnsap
54
- post_install_message:
54
+ post_install_message:
55
55
  rdoc_options: []
56
56
  require_paths:
57
57
  - lib
@@ -66,8 +66,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
66
66
  - !ruby/object:Gem::Version
67
67
  version: '0'
68
68
  requirements: []
69
- rubygems_version: 3.0.1
70
- signing_key:
69
+ rubygems_version: 3.2.3
70
+ signing_key:
71
71
  specification_version: 4
72
72
  summary: Facilitates SAP RFC calls in Ruby
73
73
  test_files: []