Module: Nace::LookUpMethods

Included in:
Revision2
Defined in:
lib/nace/look_up_methods.rb

Instance Method Summary collapse

Instance Method Details

#code_for(name) ⇒ Object

Look up code of given name of classification

Example: code_for(“Retail trade not in stores, stalls or markets”)

> “G.47.9”



20
21
22
23
# File 'lib/nace/look_up_methods.rb', line 20

def code_for name
  classifications.each { |k,v| return k if v == name }
  nil
end

#look_up(code = nil) ⇒ Object

Lists all sub classifications of a specific classification If none code given, look up will return root classifications

Look up always returns items of the next lower level of classification

Example: look_up(“S”)

>
"S.94"=>"Activities of membership organisations",
"S.95"=>"Repair of computers and personal and household goods",
"S.96"=>"Other personal service activities"

Example look_up(“S.94”)

>
"S.94.1"=>"Activities of business, employers and professional membership organisations",
"S.94.2"=>"Activities of trade unions",
"S.94.9"=>"Activities of other membership organisations"



47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# File 'lib/nace/look_up_methods.rb', line 47

def look_up code = nil
  filter = if code==nil
    /^[A-Z]$/
  else
    code = code.split(".")
    case code.size
    when 1
      /^#{code[0]}.[0-9]*$/
    when 2
      /^#{code[0]}.#{code[1]}.[0-9]$/
    when 3 then
      if code[2].size == 1
        /^#{code[0]}.#{code[1]}.#{code[2]}[0-9]$/
      else
        /^#{code[0]}.#{code[1]}.#{code[2]}$/
      end
    end
  end

  return {} if filter.nil?

  classifications.select{ |k,v| k =~ filter }
end

#name_for(code) ⇒ Object

Look up name of given code of classification

Example: name_for(“G.47.9”)

> “Retail trade not in stores, stalls or markets”



10
11
12
# File 'lib/nace/look_up_methods.rb', line 10

def name_for code
  classifications[code.to_s] || nil
end