rnsap 0.4.13 → 0.4.14
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.
- checksums.yaml +4 -4
- data/lib/auth.rb +1 -2
- data/lib/rnsap.rb +42 -4
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 46c579462ff6f422f25681f0294a21888e8f2a22bb0462a11f079cd9b72fbbdd
|
4
|
+
data.tar.gz: b727dcb22d0b4672f5cb1b6740bfa3801a06a9ca9a040e1fb93c7bca5794b7e1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 912238c4977896355b9f9fe7cb08bc9f4f1b450f3ce085968ec4bad3bbc70ca01ab0a0ca07e64e315a2dc9383f4021aadc3dd9d17604200d37dbffb84091a417
|
7
|
+
data.tar.gz: 8d378a789e570455b8b002a5f6475fc3de4e8462a29ea672993ae02f109a372bc60089c668ba83ec6732388eceeed6618aada48c0f56f1ae9ab97ad0ae1c9bb7
|
data/lib/auth.rb
CHANGED
@@ -6,7 +6,7 @@ class Auth
|
|
6
6
|
# for an object
|
7
7
|
# @param json containing authorization object and optionaly
|
8
8
|
# the tuples with field and value to be checked
|
9
|
-
# @return an array of strings with the list of users
|
9
|
+
# @return [Array] an array of strings with the list of users
|
10
10
|
def self.for_object(*options)
|
11
11
|
users = []
|
12
12
|
conn, obj, field1, value1, field2, value2 = validate_options(options)
|
@@ -102,7 +102,6 @@ class Auth
|
|
102
102
|
filter.push( "'#{ust.auth}' , ")
|
103
103
|
end
|
104
104
|
filter = filter.uniq
|
105
|
-
puts filter
|
106
105
|
|
107
106
|
new_last = "#{filter.last[0..(filter.last.length - 4)]} )"
|
108
107
|
filter = filter[0..-1].push(new_last)
|
data/lib/rnsap.rb
CHANGED
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
require 'nwrfc'
|
4
4
|
require 'read_table/table_column'
|
5
|
+
require 'auth'
|
5
6
|
|
6
7
|
require 'return'
|
7
8
|
|
@@ -440,6 +441,37 @@ module RnSap
|
|
440
441
|
|
441
442
|
end
|
442
443
|
|
444
|
+
##
|
445
|
+
# Gets a list of users with authorization for a given
|
446
|
+
# authorization object and content
|
447
|
+
# @params:
|
448
|
+
# - obj [String] SAP authorization Object
|
449
|
+
# Ex: for Purchase Requisitions M_EINK_FRG
|
450
|
+
# - field1 [String] Object authorization's field.
|
451
|
+
# Ex: for Release Group FRGGR
|
452
|
+
# - value1 [String] Field Value
|
453
|
+
# Ex: any valid Release Group in the instalation
|
454
|
+
# - field2 [String] Object authorization's field.
|
455
|
+
# Ex: for Release Code FRGCO
|
456
|
+
# - value2 [String] Field Value
|
457
|
+
# Ex: any valid Release Code in the instalation
|
458
|
+
# @return [Array] Array of strings with the SAP userids
|
459
|
+
def users_for_auth_object(obj, field1, value1, field2, value2)
|
460
|
+
Auth.for_object(
|
461
|
+
conn: self,
|
462
|
+
obj: obj,
|
463
|
+
field1: field1,
|
464
|
+
value1: value1,
|
465
|
+
field2: field2,
|
466
|
+
value2: value2,
|
467
|
+
)
|
468
|
+
end
|
469
|
+
|
470
|
+
|
471
|
+
|
472
|
+
private
|
473
|
+
attr_writer :conn
|
474
|
+
|
443
475
|
def api_return_success(obj=nil )
|
444
476
|
UtilHelper.api_return(0, 'Success!', obj)
|
445
477
|
end
|
@@ -452,9 +484,7 @@ module RnSap
|
|
452
484
|
UtilHelper.api_return(rc, message, obj, exception)
|
453
485
|
end
|
454
486
|
|
455
|
-
|
456
|
-
|
457
|
-
attr_writer :conn
|
487
|
+
|
458
488
|
|
459
489
|
# Dumps to the output the content of an object
|
460
490
|
def dump_instance_variables(obj)
|
@@ -464,6 +494,8 @@ module RnSap
|
|
464
494
|
end
|
465
495
|
end
|
466
496
|
|
497
|
+
KLASS_LIST = {}
|
498
|
+
|
467
499
|
# Dynamically returns a class instance with the name 'name' and with each
|
468
500
|
# of its fields as an attribute
|
469
501
|
# @param name [String] name of the intended class instance
|
@@ -471,7 +503,13 @@ module RnSap
|
|
471
503
|
# @return [Object] instance of the object 'Name'
|
472
504
|
def get_class_instance(name, fields)
|
473
505
|
# puts "Class name: #{name}"
|
474
|
-
|
506
|
+
pre_created = KLASS_LIST[name]
|
507
|
+
if pre_created
|
508
|
+
klass = pre_created.new
|
509
|
+
else
|
510
|
+
KLASS_LIST[name] = Object.const_set(name, Class.new)
|
511
|
+
klass = KLASS_LIST[name].new # , Struct.new(*attributes)
|
512
|
+
end
|
475
513
|
fields.each do |field|
|
476
514
|
klass.class.module_eval { attr_accessor field.downcase }
|
477
515
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rnsap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.14
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rogerio Nascimento
|
@@ -38,8 +38,8 @@ dependencies:
|
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
|
-
description: By encapsulating SAPs NW RFC library calls, Ruby routines
|
42
|
-
|
41
|
+
description: By encapsulating SAPs NW RFC library calls, Ruby routines achieve SAP
|
42
|
+
bunsiness functionalitys power in a simpler manner
|
43
43
|
email:
|
44
44
|
executables: []
|
45
45
|
extensions: []
|