“我們能在幾分鐘內設計出專(zhuān)業(yè)的個(gè)性化應用軟件”,3UCS的工程師如是說(shuō)。
事實(shí)上這一點(diǎn)兒也不夸張,您也可以做到,并且可以做得更好,隨心所欲的定制您的CRM、OA、ERP、企業(yè)信息化、呼叫中心業(yè)務(wù)等等各類(lèi)應用,因為這得益于3UCS發(fā)布的BizXML工具,憑借此自動(dòng)化工具您可以之下花不到一秒鐘的時(shí)間生成一個(gè)應用界面,根據您的需要自動(dòng)生成一組頁(yè)面后您還可以根據自己的應用需求進(jìn)一步的個(gè)性化您的業(yè)務(wù)邏輯和流程,以及各種多語(yǔ)言的設計,比如A用戶(hù)使用中文、B用戶(hù)使用英文、C用戶(hù)使用德文之類(lèi),這些事情最快就可以在幾分鐘內完成。
什么是BizXML工具了?它就是遵循BizXML業(yè)務(wù)應用規范的一個(gè)工具軟件,根據您自己的業(yè)務(wù)數據庫結構自動(dòng)生成BizXML代碼,同時(shí)提供相關(guān)個(gè)性化參數設置并提供在線(xiàn)預覽,方便您調整頁(yè)面布局、數據間關(guān)系等實(shí)用性手段,生成的標準BizXML代碼可以立即被BizXML業(yè)務(wù)平臺解析執行,預覽顯示的界面直接可以操作進(jìn)行數據更新等,執行效果完全與實(shí)際應用相同,同時(shí)也支持后續的邏輯流程控制修改調整。
下面就簡(jiǎn)單了解下BizXML Tool工具,如下圖所示,該工具與數據庫管理相結合,根據數據庫表結構信息工作,不單單支持MySQL,其他數據庫相類(lèi)似,提供預覽方便工程師隨時(shí)直觀(guān)的看到生成的應用界面,根據需要調整相應的字段參數來(lái)調整相關(guān)表的關(guān)系字段與內容,調整完畢后可以直接輸出保存應用界面,同時(shí)可以生成語(yǔ)言包,以方便多語(yǔ)言支持,工程師只需修改語(yǔ)言包的內容為所需語(yǔ)言版本,用戶(hù)界面將自動(dòng)呈現諸如簡(jiǎn)體中文、英文、法文等多語(yǔ)言支持。
該工具提供自動(dòng)化識別結構信息外,還提供了豐富的界面生成參數設置,例如擬生成的應用界面寬度、表字段長(cháng)度與控件寬度的系數值、控件等寬設置、表間關(guān)系字段等等。
您應該注意到BizXML Tool工具實(shí)際上也是通過(guò)BizXML生成的一個(gè)應用,這也更進(jìn)一步表明BizXML業(yè)務(wù)應用系統的智能性和功能的強大。
下面的界面是BizXML Tool自動(dòng)生成的界面預覽示例
只需設置等寬度參數值系統就自動(dòng)生成類(lèi)似下圖的等寬度的應用界面:
應用界面代碼
<WndTap Name="cases" Text="cases"> <xi:include href="cases_lan.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/> <Ctrls> <GroupBox Name="GBcases" id="cases" Text="cases" Size="100,100"><Ctrls> <Label Name="lb_case_type" Size="60,20" Text="case_type" Align="Right"/> <TextBox Name="case_type" Size="30,20" ToolTip="ttp_case_type"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <Label Name="lb_case_status" Size="60,20" Text="case_status" Align="Right"/> <TextBox Name="case_status" Size="30,20" ToolTip="ttp_case_status"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <Label Name="lb_case_priority" Size="60,20" Text="case_priority" Align="Right"/> <TextBox Name="case_priority" Size="30,20" ToolTip="ttp_case_priority"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <Label Name="lb_case_title" Size="60,20" Text="case_title" Align="Right"/> <TextBox Name="case_title" Size="250,20" ToolTip="ttp_case_title"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <BR AutoHeight="1"/><Label Name="lb_case_desc" Size="60,20" Text="case_desc" Align="Right"/> <TextBox Name="case_desc" Size="640,20" ToolTip="ttp_case_desc"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <BR AutoHeight="1"/><Label Name="lb_case_sln" Size="60,20" Text="case_sln" Align="Right"/> <TextBox Name="case_sln" Size="640,20" ToolTip="ttp_case_sln"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <BR AutoHeight="1"/><Label Name="lb_case_remark" Size="60,20" Text="case_remark" Align="Right"/> <TextBox Name="case_remark" Size="640,20" ToolTip="ttp_case_remark"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <BR AutoHeight="1"/><Label Name="lb_contact_id" Size="60,20" Text="contact_id" Align="Right"/> <TextBox Name="contact_id" Size="55,20" ToolTip="ttp_contact_id"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <Label Name="lb_entered_at" Size="60,20" Text="entered_at" Align="Right"/> <TextBox Name="entered_at" Size="50,20" ToolTip="ttp_entered_at"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <Label Name="lb_entered_by" Size="60,20" Text="entered_by" Align="Right"/> <TextBox Name="entered_by" Size="55,20" ToolTip="ttp_entered_by"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <Label Name="lb_dep_resp" Size="60,20" Text="dep_resp" Align="Right"/> <TextBox Name="dep_resp" Size="55,20" ToolTip="ttp_dep_resp"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <Label Name="lb_owned_at" Size="60,20" Text="owned_at" Align="Right"/> <TextBox Name="owned_at" Size="50,20" ToolTip="ttp_owned_at"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <Label Name="lb_owned_by" Size="60,20" Text="owned_by" Align="Right"/> <TextBox Name="owned_by" Size="55,20" ToolTip="ttp_owned_by"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <BR AutoHeight="1"/><Label Name="lb_closed_at" Size="60,20" Text="closed_at" Align="Right"/> <TextBox Name="closed_at" Size="50,20" ToolTip="ttp_closed_at"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <Label Name="lb_closed_by" Size="60,20" Text="closed_by" Align="Right"/> <TextBox Name="closed_by" Size="55,20" ToolTip="ttp_closed_by"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <Label Name="lb_case_id" Size="60,20" Text="case_id" Align="Right"/> <TextBox Name="case_id" Size="55,20" ToolTip="ttp_case_id"> <OnEnChange></OnEnChange> <onEnterKey></onEnterKey> </TextBox> <BR AutoHeight="1"/><ListCtrl Name="casesLst" ToolTip="ttp_cases" Size="520,312" PageSize="10" loadedclick="0" Heading="case_type,30;case_status,30;case_priority,30;case_title,250;case_desc,640;case_sln,640;case_remark,640;contact_id,55;entered_at,50;entered_by,55;dep_resp,55;owned_at,50;owned_by,55;closed_at,50;closed_by,55;case_id,55;"> <DbDetails fcsm="1"><DbTable>i3uxml.cases</DbTable><Index>contact_id='%{casesLst[contact_id]}' and case_id='%{casesLst[case_id]}'</Index><Data>case_type,case_status,case_priority,case_title,case_desc,case_sln,case_remark,contact_id,entered_at,entered_by,dep_resp,owned_at,owned_by,closed_at,closed_by,case_id</Data></DbDetails></ListCtrl> <TAB/><GroupBox Name="GBOPcases" Text="operation" Size="100,100"><Ctrls> <Button Name="insertcases" Size="50,20" Text="create" ToolTip="ttp_insertcases"> <OnClick> <DbDetails fcsm="1"><DbTable>i3uxml.cases</DbTable><Data>case_type,case_status,case_priority,case_title,case_desc,case_sln,case_remark,contact_id,entered_at,entered_by,dep_resp,owned_at,owned_by,closed_at,closed_by,case_id</Data><queryFormat>insert into %{table} %{data}</queryFormat></DbDetails> <submit namelist="DbDetails"/><submit next="searchcases" function="click"/> </OnClick> </Button><TAB/> <Button Name="modifycases" Size="50,20" Text="modify" ToolTip="ttp_modifycases"> <OnClick> <DbDetails fcsm="1"><DbTable>i3uxml.cases</DbTable><Data>case_type,case_status,case_priority,case_title,case_desc,case_sln,case_remark,contact_id,entered_at,entered_by,dep_resp,owned_at,owned_by,closed_at,closed_by,case_id</Data><Where>contact_id='%{casesLst[contact_id]}' and case_id='%{casesLst[case_id]}'</Where><queryFormat>update %{table} set %{data} where %{where}</queryFormat></DbDetails> <submit namelist="DbDetails"/><submit next="searchcases" function="click"/> </OnClick> </Button><BR/> <Button Name="deletecases" Size="50,20" Text="delete" ToolTip="ttp_deletecases"> <OnClick> <DbDetails fcsm="1"><DbTable>i3uxml.cases</DbTable><Where>contact_id='%{casesLst[contact_id]}' and case_id='%{casesLst[case_id]}'</Where><queryFormat>delete from %{table} where %{where}</queryFormat></DbDetails> <submit namelist="DbDetails"/><submit next="searchcases" function="click"/> </OnClick> </Button><TAB/> <Button Name="searchcases" Size="50,20" Text="refresh" ToolTip="ttp_refreshcases"> <OnClick><submit next="casesLst"/> </OnClick> </Button> <BR/><Button Name="FPcasesLst" Size="40,20" Text="firstpage" OnClick="(casesLst)GetPage(First)"></Button> <Button Name="PREcasesLst" Size="40,20" Text="prepage" OnClick="(casesLst)GetPage(Pre)"></Button> <Button Name="NPcasesLst" Size="40,20" Text="nextpage" OnClick="(casesLst)GetPage(Next)"></Button> </Ctrls></GroupBox> </Ctrls></GroupBox> </Ctrls> <OnChanged></OnChanged> <OnActivate></OnActivate> </WndTap> 語(yǔ)言包示例(將value值改成相應語(yǔ)言的文字即可,ttp_前綴的為tooltip顯示文字): <Language name="cases"> <Lang name="cases" value="cases"/> <Lang name="case_title" value=""/> <Lang name="ttp_case_title" value=""/> <Lang name="contact_id" value=""/> <Lang name="ttp_contact_id" value=""/> <Lang name="case_type" value=""/> <Lang name="ttp_case_type" value=""/> <Lang name="case_status" value=""/> <Lang name="ttp_case_status" value=""/> <Lang name="case_priority" value=""/> <Lang name="ttp_case_priority" value=""/> <Lang name="dep_resp" value=""/> <Lang name="ttp_dep_resp" value="respsibility department"/> <Lang name="case_desc" value=""/> <Lang name="ttp_case_desc" value=""/> <Lang name="case_sln" value=""/> <Lang name="ttp_case_sln" value=""/> <Lang name="case_remark" value=""/> <Lang name="ttp_case_remark" value=""/> <Lang name="entered_at" value=""/> <Lang name="ttp_entered_at" value=""/> <Lang name="entered_by" value=""/> <Lang name="ttp_entered_by" value=""/> <Lang name="owned_at" value=""/> <Lang name="ttp_owned_at" value=""/> <Lang name="owned_by" value=""/> <Lang name="ttp_owned_by" value=""/> <Lang name="closed_at" value=""/> <Lang name="ttp_closed_at" value=""/> <Lang name="closed_by" value=""/> <Lang name="ttp_closed_by" value=""/> <Lang name="case_id" value=""/> <Lang name="ttp_case_id" value=""/> <Lang name="ttp_operationcases" value="操作"/> <Lang name="ttp_createcases" value="新增"/> <Lang name="ttp_modifycases" value="修改"/> <Lang name="ttp_deletecases" value="刪除"/> <Lang name="ttp_refreshcases" value="刷新"/> <Lang name="operation" value="操作"/> <Lang name="create" value="新增"/> <Lang name="modify" value="修改"/> <Lang name="delete" value="刪除"/> <Lang name="refresh" value="刷新"/> <Lang name="firstpage" value="首頁(yè)"/> <Lang name="prepage" value="上頁(yè)"/> <Lang name="nextpage" value="下頁(yè)"/> </Language> |