private bool connect(string message) { LogonInfo logonInfo = new LogonInfo(); logonInfo.Message = message; var webConfig = ConfigurationManager.AppSettings; var dbName = webConfig["MobileRPGDatabaseName"] ?? ""; var hasDbName = !string.IsNullOrWhiteSpace(dbName); string resetExpiredPasswordStr = webConfig["ResetExpiredPassword"] ?? "false"; bool resetExpiredPassword = resetExpiredPasswordStr.Equals("true", StringComparison.InvariantCultureIgnoreCase); myDatabase = new AVRRuntime.Database(dbName, AVRRuntime.VirtualTerminal.None, AVRRuntime.OpenAccessDspF.MobileRPG); while (true) { if (!hasDbName && !promptLogon(logonInfo)) { return(false); } if (!hasDbName) { myDatabase.Server = logonInfo.Server; myDatabase.Port = logonInfo.Port; myDatabase.User = logonInfo.User; myDatabase.Password = logonInfo.Password; } try { myDatabase.Open(); break; } catch (dgException dgEx) { logonInfo.Message = dgEx.Message; hasDbName = false; if (dgEx.Error == dgErrorNumber.dgEsAS400ERROR && dgEx.ErrorClass == dgErrorClass.dgEC_AS400CPF && dgEx.SystemError == 0x22E4) { if (resetExpiredPassword) { if (!resetPassword(logonInfo)) { return(false); } } } } } PsdsJobUser = myDatabase.User; return(true); }
private void logon(bool parmsHaveValues, ref string libraryName, ref string programName, ref string menuName, string message) { LogonInfo logonInfo = new LogonInfo(); if (parmsHaveValues) { logonInfo.Message = message; logonInfo.Server = myDatabase.Server; logonInfo.User = myDatabase.User; logonInfo.Port = myDatabase.Port; logonInfo.Library = libraryName; logonInfo.Program = programName; logonInfo.Menu = menuName; } myDatabase = new AVRRuntime.Database("", AVRRuntime.VirtualTerminal.MonarchWeb, AVRRuntime.OpenAccessDspF.Wings); while (true) { promptLogon(logonInfo); myDatabase.Server = logonInfo.Server; myDatabase.User = logonInfo.User; myDatabase.Password = logonInfo.Password; myDatabase.Port = logonInfo.Port; try { myDatabase.Open(); break; } catch (dgException dgEx) { logonInfo.Message = dgEx.Message; } } libraryName = logonInfo.Library; programName = logonInfo.Program; menuName = logonInfo.Menu; }
private bool connect(string message) { LogonInfo logonInfo = new LogonInfo(); logonInfo.Message = message; var webConfig = ConfigurationManager.AppSettings; var dbName = webConfig["MobileRPGDatabaseName"] ?? ""; var hasDbName = !string.IsNullOrWhiteSpace(dbName); myDatabase = new AVRRuntime.Database(dbName, AVRRuntime.VirtualTerminal.MonarchWeb, AVRRuntime.OpenAccessDspF.Wings); while (true) { if (!hasDbName && !promptLogon(logonInfo)) { return(false); } if (!hasDbName) { myDatabase.Server = logonInfo.Server; myDatabase.Port = logonInfo.Port; myDatabase.User = logonInfo.User; myDatabase.Password = logonInfo.Password; } try { myDatabase.Open(); break; } catch (dgException dgEx) { logonInfo.Message = dgEx.Message; hasDbName = false; } } PsdsJobUser = myDatabase.User; return(true); }