資源簡(jiǎn)介
XBRL相比Excel、PDF、網(wǎng)頁(yè)等財(cái)務(wù)信息格式有眾多優(yōu)勢(shì),原因就在于它將業(yè)務(wù)報(bào)告整體拆分為一個(gè)個(gè)元素而存在,使報(bào)告由靜態(tài)變?yōu)閯?dòng)態(tài),讓計(jì)算機(jī)可以對(duì)報(bào)告內(nèi)容進(jìn)行抽取和組合。
例如,對(duì)于Word格式財(cái)務(wù)報(bào)告,盡管人們可以手工抽取不同文件中的元素(例如凈資產(chǎn)數(shù)據(jù))進(jìn)行比較分析,但計(jì)算機(jī)不能自動(dòng)完成這一任務(wù)。從計(jì)算機(jī)軟件角度來(lái)講,無(wú)法讀懂Word文件并進(jìn)行有意義的拆分。而在XBRL技術(shù)下,每一個(gè)元素都有其特定的識(shí)別標(biāo)記,從而使報(bào)告可拆分。

代碼片段和文件信息
package?cn.ykj.build;
import?java.io.File;
import?java.io.FileOutputStream;
import?java.io.FileWriter;
import?java.util.ArrayList;
import?java.util.Iterator;
import?java.util.List;
import?org.dom4j.Attribute;
import?org.dom4j.Document;
import?org.dom4j.DocumentHelper;
import?org.dom4j.Element;
import?org.dom4j.io.OutputFormat;
import?org.dom4j.io.SAXReader;
import?org.dom4j.io.xmlWriter;
import?cn.ykj.parse.xmlLabelParse;
/**
?*?@author?yuheng
?*?@DATE?2017-4-28
?*?
?*?生成xbrl主文件(xml)
?*/
public?class?xmlCreate?{
/**
*?建立一個(gè)xml文檔文檔名由輸入屬性決定
*?
*?@param?param
*????????????filename?需建立的文件名
*?@return返回操作結(jié)果?0表失敗?1表成功
*/
public?static?int?createxmlFile(String?filename)?{
/**?返回操作結(jié)果?0表失敗?1表成功?*/
int?returnValue?=?0;
/**?建立document對(duì)象?*/
Document?document?=?DocumentHelper.createDocument();
/**?建立xml文檔的根xbrli:xbrl?*/
Element?xbrliElement?=?document.addElement(“xbrli:xbrl“);
//給跟標(biāo)簽加命名空間
xbrliElement.addNamespace(“ykj“?“http://www.ykj.com/xbrl/taxeditor/ykj“);
xbrliElement.addNamespace(“l(fā)ink“?“http://www.xbrl.org/2003/linkbase“);
xbrliElement.addNamespace(“xsi“?“http://www.w3.org/2001/xmlSchema-instance“);
xbrliElement.addNamespace(“iso4217“?“http://www.xbrl.org/2003/iso4217“);
xbrliElement.addNamespace(“xlink“?“http://www.w3.org/1999/xlink“);
xbrliElement.addNamespace(“xbrldt“?“http://http://xbrl.org/2005/xbrldt“);
xbrliElement.addNamespace(“xbrli“?“http://www.xbrl.org/2003/instance“);
xbrliElement.addNamespace(“cas“?“http://xbrl.mof.gov.cn/taxonomy/2010-09-30/cas“);
xbrliElement.addNamespace(“ifrs“?“http://xbrl.iasb.org/taxonomy/2010-04-30/ifrs“);
/**?加入一行注釋?*/
xbrliElement.addComment(“來(lái)自云會(huì)計(jì)的xbrl-xml“);
/**?加入第一個(gè)link:schemaRef節(jié)點(diǎn)?*/
xbrliElement.addElement(“l(fā)ink:schemaRef“).addAttribute(“xlink:type“?“simple“).addAttribute(“xlink:href“?“ykj_cn.xsd“);
//***********************
//其決定了下面主表填值的標(biāo)簽重復(fù)條數(shù)
//定義context節(jié)點(diǎn)數(shù)量并存入分組ID
List?contextIdList?=?new?ArrayList();?
/**?加入第一個(gè)xbrli:context節(jié)點(diǎn)*/
Element?contextElement?=?xbrliElement.addElement(“l(fā)ink:context“).addAttribute(“id“?“BeginningBalance20160101“);
contextIdList.add(“BeginningBalance20160101“);
//---
/**?向xbrli:context中加入第一個(gè)xbrli:entity節(jié)點(diǎn)*/
Element?entity?=?contextElement.addElement(“xbrli:entity“);
/**?加入第一個(gè)xbrli:identifier節(jié)點(diǎn)*/
Element?identifier?=?entity.addElement(“xbrli:identifier“).addAttribute(“scheme“?“http://www.saic.gov.cn/“);
/**?向xbrli:identifier注入值*/
identifier.setText(“100000100357322“);
//--
/**?向xbrli:context中加入第一個(gè)xbrli:period節(jié)點(diǎn)*/
Element?period?=?contextElement.addElement(“xbrli:period“);
/**?加入第一個(gè)xbrli:instant節(jié)點(diǎn)*/
period.addElement(“xbrli:instant“).setText(“2016-01-01“);
//*********************
/**?加入第二個(gè)xbrli:context節(jié)點(diǎn)*/
Element?contextElement2?=?xbrliElement.addElement(“l(fā)ink:context“).addAttribute(“id“?“ClosingBalance20161231“);
contextIdList.add(“ClosingBalance20161231“);
//---
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????文件????????428??2017-04-28?14:57??xbrl\.classpath
?????文件????????380??2017-04-28?12:53??xbrl\.project
?????文件????????629??2017-04-28?14:57??xbrl\.settings\org.eclipse.jdt.core.prefs
?????文件???????6905??2017-04-28?16:08??xbrl\bin\cn\ykj\build\xm
?????文件???????2386??2017-04-28?14:58??xbrl\bin\cn\ykj\parse\xm
?????文件???????2253??2017-04-28?16:07??xbrl\bin\cn\ykj\test\Testxm
?????文件???????1706??2017-04-28?15:58??xbrl\bin\cn\ykj\util\CopyFile.class
?????文件????????781??2017-04-28?14:57??xbrl\bin\cn\ykj\util\PathUtil.class
?????文件????????410??2017-04-28?15:32??xbrl\bin\xbrlResource\ykj_cn-calculation.xm
?????文件?????109960??2017-04-28?15:32??xbrl\bin\xbrlResource\ykj_cn-definition.xm
?????文件?????184154??2017-04-28?09:51??xbrl\bin\xbrlResource\ykj_cn-label.xm
?????文件?????115527??2017-04-28?15:32??xbrl\bin\xbrlResource\ykj_cn-presentation.xm
?????文件????????410??2017-04-28?15:32??xbrl\bin\xbrlResource\ykj_cn-reference.xm
?????文件??????55888??2017-04-28?15:32??xbrl\bin\xbrlResource\ykj_cn.xsd
?????文件?????313898??2017-04-11?14:35??xbrl\lib\dom4j-1.6.1.jar
?????文件?????226877??2017-04-11?14:49??xbrl\lib\jaxen-1.1-beta-7.jar
?????文件??????10730??2017-04-28?16:08??xbrl\src\cn\ykj\build\xm
?????文件???????1769??2017-04-28?14:58??xbrl\src\cn\ykj\parse\xm
?????文件???????1427??2017-04-28?16:07??xbrl\src\cn\ykj\test\Testxm
?????文件???????1746??2017-04-28?15:58??xbrl\src\cn\ykj\util\CopyFile.java
?????文件????????335??2017-04-28?13:14??xbrl\src\cn\ykj\util\PathUtil.java
?????文件????????410??2017-04-28?15:32??xbrl\src\xbrlResource\ykj_cn-calculation.xm
?????文件?????109960??2017-04-28?15:32??xbrl\src\xbrlResource\ykj_cn-definition.xm
?????文件?????184154??2017-04-28?09:51??xbrl\src\xbrlResource\ykj_cn-label.xm
?????文件?????115527??2017-04-28?15:32??xbrl\src\xbrlResource\ykj_cn-presentation.xm
?????文件????????410??2017-04-28?15:32??xbrl\src\xbrlResource\ykj_cn-reference.xm
?????文件??????55888??2017-04-28?15:32??xbrl\src\xbrlResource\ykj_cn.xsd
?????目錄??????????0??2017-04-28?16:09??xbrl\bin\cn\ykj\build
?????目錄??????????0??2017-04-28?16:09??xbrl\bin\cn\ykj\parse
?????目錄??????????0??2017-04-28?16:09??xbrl\bin\cn\ykj\test
............此處省略22個(gè)文件信息
評(píng)論
共有 條評(píng)論