/// <summary> /// Connect SAP using DI API and replace string connection default. /// </summary> /// <param name="sapCredential"></param> public static void Connect(k.sap.SAPCredential sapCredential) { if (IsConnected()) { conn.Disconnect(); } conn = new SAPbobsCOM.Company(); conn.DbServerType = (SAPbobsCOM.BoDataServerTypes)sapCredential.SapBoDataServerTypes; conn.Server = sapCredential.DbServer; conn.language = (SAPbobsCOM.BoSuppLangs)sapCredential.SapBoSuppLangs; conn.CompanyDB = sapCredential.SapCompanyDb; conn.DbUserName = sapCredential.SapDbUserName; conn.DbPassword = sapCredential.SapDbPassword; conn.UserName = sapCredential.SapUserName; conn.Password = sapCredential.SapUserPassword; var res = conn.Connect(); if (res != 0) { var error = conn.GetLastErrorDescription(); var track = k.Diagnostic.TrackMessages(sapCredential.Info1()); k.Diagnostic.Error(LOG, track, $"({res}) {error}."); throw new Exception($"Error to connect SAP using DI api. Error code {res}", new Exception(error)); } else { k.Diagnostic.Debug(LOG, null, "SAP DI connected on {0} customer as {1}", conn.CompanyName, conn.UserName); LinkClient(); } }
public static void SAPDIServer() { k.StartInit.Starting(new k.sap.diserver.Init()); var dbcred = new k.db.Clients.SqlCredential("DESKTOP-SPOLPCU", "SBODemoGB", "sa", "easy1234"); var sapcred = new k.sap.SAPCredential(BoDataServerTypes.dst_MSSQL2017, dbcred, BoSuppLangs.ln_English_Gb, "manager", "manager"); }