예제 #1
0
        /// <summary> 各項目のチェック処理</summary>
        private bool InputCheck()
        {
            // ジョブID
            string jobIdForChange = Properties.Resources.err_message_job_id;
            String jobId          = txtJobId.Text;

            // 未入力の場合
            if (CheckUtil.IsNullOrEmpty(jobId))
            {
                CommonDialog.ShowErrorDialog(Consts.ERROR_COMMON_001,
                                             new string[] { jobIdForChange });
                return(false);
            }
            // 桁数チェック
            if (CheckUtil.IsLenOver(jobId, 32))
            {
                CommonDialog.ShowErrorDialog(Consts.ERROR_COMMON_003,
                                             new string[] { jobIdForChange, "32" });
                return(false);
            }
            // 半角英数値、「-」、「_」チェック
            if (!CheckUtil.IsHankakuStrAndHyphenAndUnderbar(jobId))
            {
                CommonDialog.ShowErrorDialog(Consts.ERROR_COMMON_013,
                                             new string[] { jobIdForChange });
                return(false);
            }
            // 予約語(START)チェック
            if (CheckUtil.IsHoldStrSTART(jobId))
            {
                CommonDialog.ShowErrorDialog(Consts.ERROR_JOBEDIT_001);
                return(false);
            }
            // すでに登録済みの場合
            DataRow[] rowJob =
                _myJob.Container.JobControlTable.Select("job_id='" + jobId + "'");
            if (rowJob != null && rowJob.Length > 0)
            {
                foreach (DataRow row in rowJob)
                {
                    if (!jobId.Equals(_oldJobId) && jobId.Equals(row["job_id"]))
                    {
                        CommonDialog.ShowErrorDialog(Consts.ERROR_COMMON_004,
                                                     new string[] { jobIdForChange });
                        return(false);
                    }
                }
            }

            // ジョブ名
            string jobNameForChange =
                Properties.Resources.err_message_job_name;
            String jobName = txtJobName.Text;

            // バイト数チェック
            if (CheckUtil.IsLenOver(jobName, 64))
            {
                CommonDialog.ShowErrorDialog(Consts.ERROR_COMMON_003,
                                             new string[] { jobNameForChange, "64" });
                return(false);
            }

            // 入力不可文字「"'\,」チェック
            if (CheckUtil.IsImpossibleStr(jobName))
            {
                CommonDialog.ShowErrorDialog(Consts.ERROR_COMMON_025,
                                             new string[] { jobNameForChange });
                return(false);
            }

            // 終了コード
            string endCodeForChange = Properties.Resources.err_message_exit_code;
            String endCode          = txtEndCode.Text;

            //added by YAMA 2014/09/30
            // 未入力チェック
            if (CheckUtil.IsNullOrEmpty(endCode))
            {
                CommonDialog.ShowErrorDialog(Consts.ERROR_COMMON_001,
                                             new string[] { endCodeForChange });
                return(false);
            }

            //added by YAMA 2014/09/30
            // 半角英数字、ドル記号、アンダーバー以外はエラー
            if (!CheckUtil.IsHankakuStrAndDollarAndUnderbar(endCode))
            {
                CommonDialog.ShowErrorDialog(Consts.ERROR_END_SETTING_001,
                                             new string[] { endCodeForChange });
                return(false);
            }

            //added by YAMA 2014/09/30
            // 1文字目が半角英字の場合、エラー
            if (CheckUtil.IsHankakuLerrer(endCode.Substring(0, 1)))
            {
                CommonDialog.ShowErrorDialog(Consts.ERROR_END_SETTING_001,
                                             new string[] { endCodeForChange });
                return(false);
            }

            //added by YAMA 2014/09/30
            // 1文字目が半角数値の場合、全て半角数値以外はエラー
            // 数値の範囲は0~255以外はエラー
            if (CheckUtil.IsHankakuNum(endCode.Substring(0, 1)))
            {
                if (CheckUtil.IsHankakuNum(endCode.Substring(1)))
                {
                    Int16 endCodeInt = Convert.ToInt16(endCode);
                    if (endCodeInt < 0 || endCodeInt > 255)
                    {
                        CommonDialog.ShowErrorDialog(Consts.ERROR_END_SETTING_001,
                                                     new string[] { endCodeForChange });
                        return(false);
                    }
                    else
                    {
                        return(true);
                    }
                }
                else
                {
                    CommonDialog.ShowErrorDialog(Consts.ERROR_END_SETTING_001,
                                                 new string[] { endCodeForChange });
                    return(false);
                }
            }

            //added by YAMA 2014/09/30
            // 1文字目が$の場合
            if (endCode.Substring(0, 1) == "$")
            {
                try
                {
                    // 2文字目は半角英字とアンダーバー以外はエラー、$のみもエラー
                    if (!CheckUtil.IsHankakuLerrerAndUnderbar(endCode.Substring(1, 1)))
                    {
                        CommonDialog.ShowErrorDialog(Consts.ERROR_END_SETTING_001,
                                                     new string[] { endCodeForChange });
                        return(false);
                    }
                    else
                    {
                        //3文字以降は半角英数字とアンダーバー以外はエラー
                        if (!CheckUtil.IsHankakuStrAndUnderbar(endCode.Substring(2)))
                        {
                            CommonDialog.ShowErrorDialog(Consts.ERROR_END_SETTING_001,
                                                         new string[] { endCodeForChange });
                            return(false);
                        }
                    }
                }
                catch (Exception e)
                {
                    CommonDialog.ShowErrorDialog(Consts.ERROR_END_SETTING_001,
                                                 new string[] { endCodeForChange });
                    return(false);
                }
            }
            else
            {
                CommonDialog.ShowErrorDialog(Consts.ERROR_END_SETTING_001,
                                             new string[] { endCodeForChange });
                return(false);
            }

            return(true);
        }