Example #1
0
        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);
        }
Example #2
0
        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;
        }
Example #3
0
        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);
        }