几个朋友Sbo讨论群都说,因段时间咱们例子演示,基于Sbo UI APIAdd-on插基本熟悉,掌握实现Sbo Add-on插同Sbo主程序间单点认证;但们基于Sbo DI API独立程序,总出现无法登录指定企业数据库,本文以此进行说明。
  基于DI API独立程序,就不再新业务功能作插形式集成Sbo主程序,而独立程序个应程序、业务间或个业务处理控。因基于DI API,所以使Sbo DI API进行相关业务处理应该推荐,那么,这些程序应该遵循Sbo DI API接口规范,而不应该直接简单连接Sbo企业数据库。,这样就能够实现们自己独立程序同Sbo主程序间业务互通业务。
  使DI API进行Sbo业务处理,通过DI API登录Sbo业务数据库第步,Sbo通过SAPbobsCOM.Company业务象(本文oCompany指Company业务象)进行业务数据库登录验证。那么使DI API时登录业务数据库需注意哪些问题呢?们先分析个Sbo结构。
  1、Sbo作个轻型企业信息管理软,建立数据库SQL Server,处理基于数据库业务信息,首先需登录SQL Server数据库,Sbo DI API登录时候,需提供SQL Server数据库登录参数。
  登录SQL Server数据库使两种,种信任连接方式,只连接客户端同SQL Server数据库同个域,并且具有登录SQL Server服务器权力,那么只需指定这台服务器地址就以连接这台服务器SQL Server数据库。应oCompany需进行以设置:
  oCompany.Server = strServer
  oCompany.DbServerType = SAPbobsCOM.BoDataServerTypes.dst_MSSQL
  oCompany.UseTrusted = True
  登录SQL Server数据库第二种通过数据库户密码进行数据库校验方式。显然这种方式登录时候需指定数据库服务器地址,使非信任模式,并且需指定登录数据库帐号密码。如所示:
  oCompany.Server = strServer
  oCompany.DbServerType = SAPbobsCOM.BoDataServerTypes.dst_MSSQL
  oCompany.UseTrusted = False
  oCompany.DbUserName = strDBUserID
  oCompany.DbPassword = strDBUserPWD
  需注意,这个时候如果还指定采信任模式登录,登录程序就忽略指定登录数据库帐号密码而采信任模式,如果信任模式登录环境--比如现行客户端不域户等--不满足,登录就失败。
  2、设置登录数据库参数,还保障被授权户才能够访问Sbo业务数据库。Sbo被授权户含义包括两部分,部分当Sbo应经过SAP公司授权许版户,另部分就登录应该业务经过管理员许操作户。保障Sbo户合法性当性,保证操作员合法性当性。oCompany责登录时候此进行验证。
  Sbo户合法性验证主通过Sbo许验证服务器进行,被授权Sbo户SAP都发送个注册许,运行Sbo许验证服务器。所以oCompany需查询许服务器,当户否属于版户。如:
  oCompany.LicenseServer = strLicSever
  需注意,许验证服务器通过TCP/IP协议接受登录户查询,所以需此指定许验证服务器地址端口,如:oCompany.LicenseServer = "192.168.1.128:30000"
  3、指定许验证服务器,还需指定操作员登录户登录密码。相关语句如:
  oCompany.UserName =strOperatorId
  oCompany.Password = strOperatorPWD
  4、Sbo支持个独立公司业务处理(同集团个独立核算经营子公司,使同套Sbo进行管理,分别应不同Sbo业务数据库,SQL Server应着个独立数据库文)语言支持,登录时候业务指定:
  oCompany.CompanyDB = strDataBaseName
  oCompany.language = SAPbobsCOM.BoSuppLangs.ln_Chinese
  5、面登录参数指定,通过以语句进行登录:
  oCompany.Connect
  登录函数返回个登录状态代码,于指定否成功登录,如果登录失败,原因什么。应软应该此予以处理。
  本文出自 “富盛软” 博客,务必保留此出处 http://foresun.blog.51cto.com/221037/43627