[原創]如何獲得SBO的數據表中文描述和數據表的中文字段

有多個網友多次諮詢如何獲得SBO的數據表--包括系統表和用戶自定義表的列表與中文描述,繼而獲得SBO的數據表結構特別是字段中文描述。
 
SBO在這方面提供了充分的數據表結構與字段屬性提取接口,很容易得到上述要求的結果。
 
1、如何獲得SBO的數據表中文描述?
 
首先定義個一個SBO數據表業務對象實例
SAPbobsCOM.SBObob boTable = fsSboCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoBridge) as SAPbobsCOM.SBObob;
 
然後獲得此實例關聯的數據表結構屬性信息列表。
SAPbobsCOM.Recordset rsTable = boTable.GetTableList();
 
最後通過循環方式獲得數據表結構信息,從而達到對所有數據表或者指定表結構信息的提取。
if (rsTable.Record__count > 0)
{
       rsTable.MoveFirst();
       while (!rsTable.EoF)
      {
           string strTableCode = rsTable.Fields.Item("Alias").Value.ToString();
           string strTableName = rsTable.Fields.Item("Description").Value.ToString().Trim();

          //在此進行數據表屬性的相關操作吧
         rsFields.MoveNext();
    }
}
 
上面程序中的strTableCode和strTableName就是數據表名稱和數據表的中文描述了。當然如果您使用的不是SBO中文版,其描述就是對應語言的數據表名稱描述了。
 
2、如何獲得SBO的數據表字段中文描述?
 
類似的,首先定一個SBO數據表字段業務對象。
SAPbobsCOM.SBObob boFields = fsSboCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoBridge) as SAPbobsCOM.SBObob;
 
獲得此對象關聯的用戶興趣表的字段屬性列表
SAPbobsCOM.Recordset rsFields = boFields.GetTableFieldList(strTableCode);
 
下面的代碼就不需要介紹了吧?!很好理解的。
if (rsFields.Record__count > 0)
{
     rsFields.MoveFirst();
     while (!rsFields.EoF)
     {
         string strFieldCode = rsFields.Fields.Item("FieldName").Value.ToString().Trim();
         string strFieldName = rsFields.Fields.Item("FieldDesc").Value.ToString().Trim().Trim();
         string strFieldLen = rsFields.Fields.Item("FieldLength").Value.ToString();
         string strFieldType = rsFields.Fields.Item("FieldType").Value.ToString();
         string strIsNull = rsFields.Fields.Item("IsNullable").Value.ToString();
         string strIsValid = rsFields.Fields.Item("IsValidValues").Value.ToString();
         string strLinkTo = rsFields.Fields.Item("LinkedTo").Value.ToString();

         //在此進行字段屬性的相關操作吧
       rsFields.MoveNext();
    }
}
 
以上代碼經本人在多個系統軟件中反覆調用,不存在任何問題。支持的開發平臺包括VS 2003-2008,當然開發語言是C#;數據庫可以是Sql 2000/2005;SBO可以使SBO 2004、2005、2007版本。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章