问题
Jian Li · 四月 15, 2021

如何获取系统中可用的系统DSN列表

在创建ODBC的SQL网关连接时,需要选择一个系统中已有的DSN才能够正常的连接到数据库去,那如果想要手动的在代码中获取到系统的DSN应该如何进行操作呢,获取到如下图中所示的DSN列表,期待各位的答复,谢谢

产品版本: HealthShare 2018.1
00
1 0 2 35
登录或注册以继续

系统类%Library.GTWCatalog有一个类查询SQLDataSources用来获取DSN,例如:

ClassMethod Test()
{
    set rs=##class(%ResultSet).%New()
    set rs.ClassName="%Library.GTWCatalog"
    set rs.QueryName="SQLDataSources"
    set sc=rs.Execute(1)  
    If $$$ISERR(sc) Do DisplayError^%apiOBJ(sc) Quit
    while rs.%Next() { do rs.%Print() }
}

谢谢您的回复,对于您提供的方法已经进行测试,能够成功获取到我想要的数据。谢谢