《第1章采集模板XML结构.docx》由会员分享,可在线阅读,更多相关《第1章采集模板XML结构.docx(13页珍藏版)》请在优知文库上搜索。
1、第1章采集模板XML结构1.l变量VariableTyPe=sqlVarName=Q年度Value=/)VariableTyPe=sqlVarName=单彳立名称Value=/VariableType=wSqlVarwName=龟子数搪编号Value=/VariableTyPe=sqlVar“Name=电子数据卷称Value=/VariableTyPe=sqlVarName=临时龟子数据编号Value=/Variables这六个变量是每个模板都必须要有的,可直接CoPy。第一个变量DbSoUrCeFilePath表示的是数据源路径。由用户选择数据源时赋值。若对源数据进行了预处理,则在预处理代码
2、中需要对该变量进行重新赋值。变量年度、单位名称、电子数据编号、电子数据名称表示的是会计数据的基本信息。由AO2011建立会计数据时赋值。变量临时电子数据编号,用于多套会计数据从AOExtract数据库采集到AoFinanCe数据库时,用于标识具体的每套会计数据。1.2数据库连接SourceDbConnection表示源数据的连接。如果源数据是SQLServer,那么ConnectionType就是SqlConnection;如果源数据是Access或者是TXt文本,那么ConnectionType就是OleDbConnectionoAoExtractTempConnection表示AO采集模块
3、临时库的连接,也就是AOExtract数据库的连接。AOFinanceConnection表示AO财务数据库的连接,即AOFinance数据库的连接。PreProccessOaskName=*xsi:type=*yDllIportTask*DeSCriPtiOn=预处理数据.Taskskxxityp*三*SqlTsk*vConntc11onNm三*AOExtrtctTtmpCoxmtction*D”CriPtiOn=*11空临时除数据Ntnmcattable会计科自裘j;0SqlSqlDeSCriPtig=房空凭证库UsedVariable=truncatetable凭证库:SqlSqlDeS
4、CriPtiOn=碧空科目余额期初表UsedVariable=false4rXrxmcatetable科目余额期初表:truncatetable辅助信息表:SqlXCnPug=情至聊余额期初夷UWwablg-XnmCMtabk辆助余额初初表.truncatttable谑证次助旗初知:trmcatetable科目设置:如图所示,对源数据进行预处理,或者清空临时数据库等操作,放到PreProccesss该元素下。1.4 批量建账接口DllAccoutList表示批量建账的接口,其中,TypeName为反射的类名,FileName表示动态链接库DLL的名称。1.5 Tasks和UpdateTask1
5、.5.1 TasksTasks元素中主要是针对AOExtract数据库的操作,如数据从源数据中批量采集到AOExtract数据库。由于有多套会计数据采集的情况,AO是循环执行Tasks中的任务,所以BulkCopy中的SrcSql元素,SQL语句中都要有“电子数据编号as电子数据编号”这句,并且针对源数据的预处理操作不能够放在Tasks中,而要放到PreProccesss元素下。1.5.2 UpdateTaskUpdateTask元素主要是针对AOFinance数据库的操作,如数据从AOExtract数据库批量采集到AOFinance数据库,或数据从源数据中批量采集到AOFinance数据库。
6、由于有多套会计数据采集的情况,Ac)是循环执行UPdateTaSk中的任务,所以若是数据从AOExtract数据库批量采集到AOFinance数据库,BulkCopy中的SrCSql元素,SQL语句中都要增加一个Where条件where电子数据编号=临时电子数据编号”。另外,在UPdateTaSk元素的最后,要增加一个Task。用于将临时的电子数据编号,更新为创建会计数据时实际的电子数据编号。如下图所示:Update科目余额意初袤】“t电子数据名称=Q电子数据名称,单位名称”单位名称,年度二Q年度,电子数据牖号=Q电子数据漏号三RE电子数据编导=临时电子数据编号;UPdate凭证库set电子数
7、据名称或电子数据筋,单位名称=Q单位名称,年度二Q年度,电子数据编号=Q电子数据编号WHERE电子数据编号=Q临时电子数据编号;SqlDeSCriPtiOn=更新辅助信息表USedyariabIe=true)UPdate辅助信息表set电子数据名称/电子数据名称,单位名称/单位名称,年度一年度,电子数据编号/电子数据编号WHERE电子数据斓号=Q临B寸电子数据编号;6qlDrcription=更新辅助余额期初整UXedywble=trueUPdate辅助余额期初赛】set电子数据名称/电子数据名称,单位名称=Q单位名称,年度=Q年度,电子数据编号=Q电子数据编号WHERE电子数据编号临时电子数
8、据编号;Update凭证辅助明细表set电子额据名称=Q电子数据名称,单位名称W单位名称,年度=Q年度电子数据编号=电子数据编号WKERE电子数据编号=Q临时电子数据编号;&qlDeSCriPtiOn=更新科目设置UsedVariable=*trueUpdate科目设置set电子数据名称=色电子数据名称,单位名称=Q单位名称,年度=0年度,电子数据编号=?电子数据编号WHERE电子数据斓号=Q临时电子数据端号;&qlDeSCriPtion=即新会计期间定义USedyariabIe=trueUpdate会计期间定义】“t电子数据名称电子数据名称,单位名称单位名称,年度=Q年度,电子数据编号=电子
9、数据编号WHERE电子数据编号=Q临时电子数据编号;1.6 任务TaskTask元素包括三种类型,分别是SqlTask,SqlBulkCopyTask和DllImportTasko1.6.1 SqlTaskSqlTaSk用于执行SQL语句,例如InSert、UpdateDeleteTnmCate等。如下图所示:truncatetable会计科自表:GqlD”CriPtion=*4空凭证库”Us*dVariabl三*fls*trunctmncatetable科目余额期初表:truncattable辅助信息表:/SqlSSqlDeSCnPtIg=清空辅助余凝期初裹UsedvariableifalsJXrscatetable辅前余熬期初裹;tmncatetable凭i辎助丽细美;,SqlGqlD”CriPtion=*空科目设置UstdVtri*bl三*fls*truncttabi.科目设置;SqlSqlDeSCriPtiOn=碧空科目层级表“UsedVariable=*false-Xruncatet