Class: Pyk::Spreadsheet

Inherits:
Object
  • Object
show all
Defined in:
lib/pyk/spreadsheet.rb

Class Method Summary collapse

Class Method Details

.is_excel?(data_file_name) ⇒ Boolean

Pyk::Spreadsheet.is_excel?(data_file_name)

Returns:

  • (Boolean)


15
16
17
# File 'lib/pyk/spreadsheet.rb', line 15

def self.is_excel?(data_file_name)
  return (!data_file_name.index(".xls").nil? or !data_file_name.index(".ods").nil? or !data_file_name.index(".csv").nil?) ? true : false
end

.open(url, name, domain) ⇒ Object

Pyk::Spreadsheet.open(url, name, domain)



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/pyk/spreadsheet.rb', line 20

def self.open(url, name, domain)
  begin
    url_s = Rails.env.production? ? url.to_s.gsub(domain, "") : (BASE_URL + url.to_s)
    case File.extname(name)
      when ".csv" then  s = Csv.new(url_s, nil, :ignore)
      when ".xls" then  s = Excel.new(url_s, nil, :ignore)
      when ".xlsx" then s = Excelx.new(url_s, nil, :ignore)
      when ".ods" then  s = Openoffice.new(url_s, nil, :ignore)
      else raise "Unknown file type: #{name}"
    end
    s.default_sheet = s.sheets.first
    return s
  rescue
    return "1"
  end
end

.process_date_from_xls(d) ⇒ Object

Pyk::Spreadsheet.process_date_from_xls(d)



8
9
10
11
12
# File 'lib/pyk/spreadsheet.rb', line 8

def self.process_date_from_xls(d)
  return nil if d.nil?
  d = d.to_i
  return (Date.new( 1899,12,30) + d)
end

.to_processObject

Pyk::Spreadsheet.to_process



38
39
40
# File 'lib/pyk/spreadsheet.rb', line 38

def self.to_process
  ExcelService.where(:pending_process => true)
end