class LiteXBRL::TDnet::FinancialInformation2

Constants

SEASON_Q1
SEASON_Q2
SEASON_Q3
SEASON_Q4

Private Class Methods

add_sign(elm) click to toggle source

マイナスが設定されていれば付加します

# File lib/litexbrl/tdnet/financial_information2.rb, line 90
def add_sign(elm)
  elm.attribute('sign') ? elm.attribute('sign').content + elm.content : elm.content
end
find_securities_code(doc, season) click to toggle source

証券コードを取得します

# File lib/litexbrl/tdnet/financial_information2.rb, line 19
def find_securities_code(doc, season)
  elm_code = doc.at_xpath("//ix:nonNumeric[@contextRef='Current#{season}Instant' and @name='tse-ed-t:SecuritiesCode']")
  to_securities_code(elm_code)
end
find_value(doc, item, context) { |item, context| ... } click to toggle source

勘定科目の値を取得します

# File lib/litexbrl/tdnet/financial_information2.rb, line 69
def find_value(doc, item, context)
  # 配列の場合、いずれかに該当するもの
  if item[0].is_a? String
    xpath = item.map {|item| yield(item, context) }.join('|')
    elm = doc.at_xpath xpath
    add_sign(elm) if elm
  # 2次元配列の場合、先頭の配列から優先に
  elsif item[0].is_a? Array
    item.each do |item|
      xpath = item.map {|item| yield(item, context) }.join('|')
      elm = doc.at_xpath xpath
      return add_sign(elm) if elm
    end

    nil # 該当なし
  end
end
find_value_non_numeric(doc, item, context) click to toggle source

決算短信サマリの非数値の値を取得します

# File lib/litexbrl/tdnet/financial_information2.rb, line 60
def find_value_non_numeric(doc, item, context)
  find_value(doc, item, context) do |item, context|
    "//ix:nonNumeric[@contextRef='#{context}' and @name='tse-ed-t:#{item}']"
  end
end
find_value_tse_ed_t(doc, item, context) click to toggle source

決算短信サマリの勘定科目の値を取得します

# File lib/litexbrl/tdnet/financial_information2.rb, line 51
def find_value_tse_ed_t(doc, item, context)
  find_value(doc, item, context) do |item, context|
    "//ix:nonFraction[@contextRef='#{context}' and @name='tse-ed-t:#{item}']"
  end
end
find_year_and_month(doc) click to toggle source

決算年・決算月を取得します

# File lib/litexbrl/tdnet/financial_information2.rb, line 27
def find_year_and_month(doc)
  elm_end = doc.at_xpath("//ix:nonNumeric[@contextRef='CurrentYearInstant' and @name='tse-ed-t:FiscalYearEnd']")
  return to_year(elm_end), to_month(elm_end)
end
to_quarter(season) click to toggle source

四半期を取得します

# File lib/litexbrl/tdnet/financial_information2.rb, line 35
def to_quarter(season)
  case season
  when SEASON_Q1
    1
  when SEASON_Q2
    2
  when SEASON_Q3
    3
  when SEASON_Q4
    4
  end
end