rubyistに 不足しているのは会計(そろばん)!

34
Rubyist不足しているのは 会計(そろばん)株式会社iRubySystems 福井修 @iR3 at 2011.7.18 RubyKaigi LT 2011719日火曜日

Upload: fukui-osamu

Post on 09-May-2015

1.343 views

Category:

Technology


2 download

DESCRIPTION

RubyKaigi2011 7.18 LT

TRANSCRIPT

Page 1: Rubyistに 不足しているのは会計(そろばん)!

Rubyistに不足しているのは会計(そろばん)!株式会社iRubySystems 福井修 @iR3

at 2011.7.18 RubyKaigi LT

2011年7月19日火曜日

Page 2: Rubyistに 不足しているのは会計(そろばん)!

福井修@iR3 自己紹介↓ 2010.11.6 Ruby関西の発表資料。http://www.slideshare.net/FUKUIOsamu/20101106-ramaze

元々は鉄鋼プラントの制御システム(いわゆるFA 死語?)屋さん。経理・会計の世界からは相当土俵が違う。しかし税金からは逃れられない。

法人税のeTaxの申告の際、XBRLが添付できるというのに遭遇。

       XBRL何これ?         : そして 今日に至る.... 勉強中です。                 XBRL勉強会もあります。

2011年7月19日火曜日

Page 3: Rubyistに 不足しているのは会計(そろばん)!

結論を先に• Rubyistはもっと会計を勉強♪。使われる側から使う側へシフト。

• 会計まわりでもっとRubyが使われるべし。せっかく進んだテスト環境が存在する。IFRS化でシステム見直しの際 早くXBRL GL対応したもの勝ち!

• XBRL操作に nokogiri が有効!再帰方式も。

Rubyist should study accounting. Take the leadership beyond worker.

If you use Ruby on IFRS System for XBRL GL you will win!

The nokogiri is best tool for XBRL handling.

And my recursive method.

2011年7月19日火曜日

Page 4: Rubyistに 不足しているのは会計(そろばん)!

さて

2011年7月19日火曜日

Page 5: Rubyistに 不足しているのは会計(そろばん)!

Account会計から逃れられない

11

■,

July 16-18 2011

2011年7月19日火曜日

Page 6: Rubyistに 不足しているのは会計(そろばん)!

では立ち向かうしかYou must stand up to

2011年7月19日火曜日

Page 7: Rubyistに 不足しているのは会計(そろばん)!

読み・書き・算盤むかし

今は

IT・英語・会計

そろばん

Accounting

A long time ago

Now

2011年7月19日火曜日

Page 8: Rubyistに 不足しているのは会計(そろばん)!

2011年7月19日火曜日

Page 9: Rubyistに 不足しているのは会計(そろばん)!

2011年7月19日火曜日

Page 10: Rubyistに 不足しているのは会計(そろばん)!

貸借対照表と損益計算書は、取引を仕訳し、それを累積して完成する。

2011年7月19日火曜日

Page 11: Rubyistに 不足しているのは会計(そろばん)!

貸借対照表と損益計算書Balance sheet(B/S)

貸借対照表

例:2011.3.31

Profit and Loss statement(P/L)

損益計算書

例:2010.4.1~2011.3.31

2011年7月19日火曜日

Page 12: Rubyistに 不足しているのは会計(そろばん)!

貸借対照表と損益計算書Balance sheet(B/S)

貸借対照表Profit and Loss statement(P/L)

損益計算書

2011年7月19日火曜日

Page 13: Rubyistに 不足しているのは会計(そろばん)!

貸借対照表と損益計算書

2011年7月19日火曜日

Page 14: Rubyistに 不足しているのは会計(そろばん)!

会計激変 by IFRS

P/L も B/S もなくなる損益計算書 ⇒ 包括利益計算書貸借対照表 ⇒ 財政状態計算書

税理士さんも浦島太郎

ところで

2011年7月19日火曜日

Page 15: Rubyistに 不足しているのは会計(そろばん)!

税理士さんも置いてけぼり

IFRSは公開企業が対象で、中小企業はかやの外

新参者のチャンス今から勉強するならどっちでも同じ

2011年7月19日火曜日

Page 16: Rubyistに 不足しているのは会計(そろばん)!

IFRS 国際会計基準

XBRL eXtensible Business Reporting Language

財務報告用XML

2011年7月19日火曜日

Page 17: Rubyistに 不足しているのは会計(そろばん)!

2つのXBRLタクソノミー:雛形

• XBRL FR と XBRL GL

• XBRL FR(Financial Reporting)決算や税務申告など、企業が財務情報を外部に開示するための仕様

• XBRL GL(Global Ledger Framework

RECOMMENDATION)企業内部の会計情報(グローバル元帳)を扱うための仕様

2011年7月19日火曜日

Page 18: Rubyistに 不足しているのは会計(そろばん)!

XBRL FRとGL

FR外部への財務諸表の報告・発表向け

EDINETTDnete-Tax :

GL

内部の業務システム・管理会計システム・財務会計システム間連携向け取引を都度、交換可能形式で保持

ワコールXBRL汎用仕訳システム(日立)

XML大福帳(富士通) :

2011年7月19日火曜日

Page 19: Rubyistに 不足しているのは会計(そろばん)!

XBRL GL とは

XBRL GLは、勘定科目、会計仕訳、勘定残高などの会計・財務情報を表現

事業活動に伴う内部報告データを異なるシステムやアプリケーション間でやり取りするための共通のデータ仕様

2011年7月19日火曜日

Page 20: Rubyistに 不足しているのは会計(そろばん)!

内部システム連携をXBRL GL化

2011年7月19日火曜日

Page 21: Rubyistに 不足しているのは会計(そろばん)!

XBRLのデータ構造XBRLでは、仕様書+2種類の文書でビジネス報告情報を記述

・XML仕様書 タクソノミを作成する基本ルールを定めたもの

・タクソノミ文書 財務諸表の電子雛形

・インスタンス文書 雛形に実際の財務データを埋め込んだもの

2011年7月19日火曜日

Page 22: Rubyistに 不足しているのは会計(そろばん)!

枠と実体

2011年7月19日火曜日

Page 23: Rubyistに 不足しているのは会計(そろばん)!

仕訳の表現

2011年7月19日火曜日

Page 24: Rubyistに 不足しているのは会計(そろばん)!

XML SchemaSchema:スキーマ は辞書では図式、概要等。XML Schema はXML文書によりスキーマ定義(データ構造の記述)を行う<schema   xmlns:link="http://www.xbrl.org/2003/linkbase"

  xmlns:xlink="http://www.w3.org/1999/xlink"

  xmlns="http://www.w3.org/2001/XMLSchema"

  xmlns:xbrli="http://www.xbrl.org/2003/instance"

  xmlns:gl-plt="http://www.xbrl.org/int/gl/plt/2010-04-12"

  elementFormDefault="qualified"

  targetNamespace="http://www.xbrl.org/int/gl/plt/2010-04-12"

  attributeFormDefault="unqualified">

  :</schema>

2011年7月19日火曜日

Page 25: Rubyistに 不足しているのは会計(そろばん)!

<annotation> <appinfo> <link:linkbaseRef     xlink:type="simple"

    xlink:href="../../cor/lang/gl-cor-2010-04-12-label.xml"

    xlink:title="Label Links, all"

    xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef"

    xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/>

<link:linkbaseRef    xlink:type="simple"

    xlink:href="../../cor/lang/gl-cor-2010-04-12-label-ja.xml"

    xlink:title="Label Links, ja"

    xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef"

    xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/>

</appinfo> </annotation>

annotation:注釈

2011年7月19日火曜日

Page 26: Rubyistに 不足しているのは会計(そろばん)!

XML操作と言えばXMLの操作は、今をときめく「nokogiri」♪ http://nokogiri.org/https://github.com/tenderlove/nokogiri

$ install sudo gem install nokogiri

2011年7月19日火曜日

Page 28: Rubyistに 不足しているのは会計(そろばん)!

XPath

nokogiriはXPathに対応しているので

XML Path Language (XPath; XMLパス言語)http://ja.wikipedia.org/wiki/XML_Path_Language

に準じた操作ができる。

2011年7月19日火曜日

Page 29: Rubyistに 不足しているのは会計(そろばん)!

<?xml version="1.0" encoding="utf-8"?> <document> <!-- XML文書 -->

<chapter title="第1章">

<paragraph>段落</paragraph>

<paragraph>次の段落</paragraph>

<paragraph>さらに次の段落</paragraph>

<paragraph>最後の段落</paragraph>

</chapter> <chapter title="第2章">

<paragraph>段落</paragraph>

</chapter> </document>

2011年7月19日火曜日

Page 30: Rubyistに 不足しているのは会計(そろばん)!

XPath/document : ルート要素 document を選択する。

■ /* : 名前を限定せずにルート要素を選択する。この場合は同じく document が選択される(XML文書は必ず一つのルート要素をもつ)

■ /document/chapter : document 要素の子要素である全ての chapter 要素を選択する。

■ /document/chapter[1] : document 要素の子要素のうち1番目の chapter 要素を選択する。

■ //paragraph : 文書内の全ての paragraph 要素を選択する。■ //chapter[@title="第1章"]/paragraph : title 属性の値が "第1章" である chapter 要素の子要素である全ての paragraph 要素を選択す

2011年7月19日火曜日

Page 31: Rubyistに 不足しているのは会計(そろばん)!

nokogiri すごっ!

Thank you tenderlove !

2011年7月19日火曜日

Page 32: Rubyistに 不足しているのは会計(そろばん)!

参考「 XMLの生成と受け渡し 」http://d.hatena.ne.jp/iR3/20060428#1146221233

# 子要素をDBから再帰的に取り出す

def getchild( db, gr_id ) out = "" # 結果文字列初期化 sql = "select gr_id,gr_name from grlist where sgr_id=#{gr_id}" rows = db.query(sql) rows.each_with_index{ |row,i|  gr_id1 = row[0]

  gr_name = row[1]

  out << "<#{gr_name} data='#{gr_id}'>"

  out << "\r\n"

if gr_id != gr_id1  out << getchild(db, gr_id1)

end out << "</#{gr_name} >" out << "\r\n" } return out end

2011年7月19日火曜日

Page 33: Rubyistに 不足しているのは会計(そろばん)!

2011年7月19日火曜日

Page 34: Rubyistに 不足しているのは会計(そろばん)!

結論をもう一度• Rubyistはもっと会計を勉強♪。使われる側から使う側へシフト。

• 会計まわりでもっとRubyが使われるべし。せっかく進んだテスト環境が存在する。IFRS化でシステム見直しの際 早くXBRL GL対応したもの勝ち!

• XBRL操作に nokogiri が有効!再帰方式も。

Rubyist should study accounting. Take the leadership beyond worker.

If you use Ruby on IFRS System for XBRL GL you will win!

The nokogiri is best tool for XBRL handling.

And my recursive method.

2011年7月19日火曜日