Ejemplo n.º 1
0
        //启动流程
        public void ApplyForm(APHelper AP, FormTableAdapter FormTA, int?RejectedFormID, FormDS.FormRow formRow, int OrganizationUnitID, string ProcessTemplateName, SystemEnums.FormStatus StatusID, Dictionary <string, object> map)
        {
            string email = string.Empty;

            if (StatusID == SystemEnums.FormStatus.Awaiting)
            {
                string ProcID = AP.createProcess(formRow.FormNo + ":" + DateTime.Now.ToString(), ProcessTemplateName, map);
                formRow.ProcID = ProcID;

                String inTurnStr = AP.startProcess(ProcID, OrganizationUnitID, ref email, formRow.UserID.ToString(), new AuthorizationBLL().GetStuffUserById(formRow.UserID).StuffName);

                string[] InTurn = inTurnStr.Split('&');//不同流程角色下的人员和职位
                string   ids    = "";
                string   pids   = "";
                for (int a = 0; a < InTurn.Length; a++)
                {
                    ids  += InTurn[a].Split('$')[0].ToString(); ///人员
                    pids += InTurn[a].Split('$')[1].ToString(); //职位
                }
                formRow.InTurnUserIds     = ids;                //下一步的人员
                formRow.InTurnPositionIds = pids;               //下一步的人员职位
                formRow.StatusID          = (int)SystemEnums.FormStatus.Awaiting;
                FormTA.Update(formRow);
            }

            //作废之前的单据
            if (RejectedFormID != null)
            {
                FormDS.FormRow oldRow = FormTA.GetDataByID(RejectedFormID.GetValueOrDefault())[0];
                if (oldRow.StatusID == (int)SystemEnums.FormStatus.Rejected)
                {
                    ScrapForm(oldRow.FormID);
                }
            }
        }
Ejemplo n.º 2
0
        //启动流程
        public void ApplyForm(APHelper AP, FormTableAdapter FormTA, int? RejectedFormID, FormDS.FormRow formRow, int OrganizationUnitID, string ProcessTemplateName, SystemEnums.FormStatus StatusID, Dictionary<string, object> map)
        {
            string email = string.Empty;
            if (StatusID == SystemEnums.FormStatus.Awaiting) {

                string ProcID = AP.createProcess(formRow.FormNo + ":" + DateTime.Now.ToString(), ProcessTemplateName, map);
                formRow.ProcID = ProcID;

                String inTurnStr = AP.startProcess(ProcID, OrganizationUnitID, ref email, formRow.UserID.ToString(), new AuthorizationBLL().GetStuffUserById(formRow.UserID).StuffName);

                string[] InTurn = inTurnStr.Split('&');//不同流程角色下的人员和职位
                string ids = "";
                string pids = "";
                for (int a = 0; a < InTurn.Length; a++) {
                    ids += InTurn[a].Split('$')[0].ToString();///人员
                    pids += InTurn[a].Split('$')[1].ToString();//职位
                }
                formRow.InTurnUserIds = ids;//下一步的人员
                formRow.InTurnPositionIds = pids;//下一步的人员职位
                formRow.StatusID = (int)SystemEnums.FormStatus.Awaiting;
                FormTA.Update(formRow);
            }

            //作废之前的单据
            if (RejectedFormID != null) {
                FormDS.FormRow oldRow = FormTA.GetDataByID(RejectedFormID.GetValueOrDefault())[0];
                if (oldRow.StatusID == (int)SystemEnums.FormStatus.Rejected) {
                    ScrapForm(oldRow.FormID);
                }
            }
        }
Ejemplo n.º 3
0
    protected void OpenForm(int formID)
    {
        FormTableAdapter taForm = new FormTableAdapter();

        FormDS.FormRow           rowForm        = taForm.GetDataByID(formID)[0];
        FormContractTableAdapter taFormContract = new FormContractTableAdapter();

        FormDS.FormContractRow rowFormContract = taFormContract.GetDataById(formID)[0];
        //赋值
        TextBox txtBeginDate = (TextBox)(this.UCPeriodBegin.FindControl("txtDate"));
        TextBox txtEndDate   = (TextBox)(this.UCPeriodEnd.FindControl("txtDate"));

        this.txtFirstCompany.Text = rowFormContract.FirstCompany;
        if (!rowFormContract.IsSecondCompanyNull())
        {
            this.txtSecondCompany.Text = rowFormContract.SecondCompany;
        }
        if (!rowFormContract.IsThirdCompanyNull())
        {
            this.txtThirdCompany.Text = rowFormContract.ThirdCompany;
        }
        this.txtContractName.Text          = rowFormContract.ContractName;
        this.txtContractAmount.Text        = rowFormContract.ContractAmount.ToString();
        this.txtPageNumber.Text            = rowFormContract.PageNumber.ToString();
        this.dplContractType.SelectedValue = rowFormContract.ContractTypeID.ToString();
        if (!rowFormContract.IsPaymentTypeNull())
        {
            this.txtPaymentType.Text = rowFormContract.PaymentType;
        }
        if (!rowFormContract.IsBeginDateNull())
        {
            txtBeginDate.Text = rowFormContract.BeginDate.ToShortDateString();
        }
        if (!rowFormContract.IsEndDateNull())
        {
            txtEndDate.Text = rowFormContract.EndDate.ToShortDateString();
        }
        if (!rowFormContract.IsMainContentNull())
        {
            this.txtMainContent.Text = rowFormContract.MainContent;
        }
        if (!rowFormContract.IsChangePartNull())
        {
            this.txtChangePart.Text = rowFormContract.ChangePart;
        }
        if (!rowFormContract.IsAttachedFileNameNull())
        {
            this.UCFileUpload.AttachmentFileName = rowFormContract.AttachedFileName;
        }
        if (!rowFormContract.IsRealAttachedFileNameNull())
        {
            this.UCFileUpload.RealAttachmentFileName = rowFormContract.RealAttachedFileName;
        }
    }
Ejemplo n.º 4
0
        //审批方法
        public void ApproveForm(APHelper AP, int formID, int stuffUserId, string stuffName, bool pass, string comment, string ProxyStuffName, int OrganizationUnitID)
        {
            string         email       = string.Empty;
            SqlTransaction transaction = null;

            try {
                FormTableAdapter TAMainForm = new FormTableAdapter();

                transaction = TableAdapterHelper.BeginTransaction(TAMainForm);

                FormDS.FormRow formRow = TAMainForm.GetDataByID(formID)[0];

                string   returnValue = AP.approve(pass, comment, stuffUserId.ToString(), stuffName, formRow.ProcID, ProxyStuffName, formRow.OrganizationUnitID, ref email);
                string[] approveinfo = AP.GetProcessApproveUser(formRow.ProcID);
                if (AP.GetProcessIsEnd(formRow.ProcID))
                {
                    formRow.LastApprover = stuffUserId.ToString();
                    formRow.Comment      = comment;
                    formRow.ApprovedDate = Convert.ToDateTime(approveinfo[0]);
                }
                formRow.ApproverIds = approveinfo[3];
                if (returnValue == null)
                {
                    formRow.InTurnUserIds     = "P";
                    formRow.InTurnPositionIds = "P";
                    //formRow.SubmitDate = DateTime.Now;

                    if (pass)
                    {
                        //如果审批通过且返回值为空则该流程结束

                        formRow.StatusID = (int)SystemEnums.FormStatus.ApproveCompleted;
                        //mailTitle = string.Format("您申请的编号为{0}的单据已经通过审批", formRow.FormNo);
                        //mailBody = string.Format(mailBody, formRow.FormNo);
                        //email = AP.getUserEmailByID(formRow.UserID);

                        //AP.sendMail(email, "", mailTitle, mailBody);
                    }
                    else
                    {
                        //如果不通过则为驳回
                        formRow.StatusID = (int)SystemEnums.FormStatus.Rejected;

                        //mailTitle = string.Format("您有单据申请被{0}退回", stuffName);
                        //mailBody = string.Format(mailBody, formRow.FormNo);
                        //email = AP.getUserEmailByID(formRow.UserID);

                        //AP.sendMail(email, "", mailTitle, mailBody);
                    }
                }
                else
                {
                    string[] InTurn = returnValue.Split('&');//不同流程角色下的人员和职位
                    string   ids    = "";
                    string   pids   = "";
                    for (int a = 0; a < InTurn.Length; a++)
                    {
                        ids  += InTurn[a].Split('$')[0].ToString(); ///人员
                        pids += InTurn[a].Split('$')[1].ToString(); //职位
                    }
                    formRow.InTurnUserIds     = ids;                //下一步的人员
                    formRow.InTurnPositionIds = pids;               //下一步的人员职位

                    //mailTitle = string.Format(mailTitle, stuffName, formRow.FormNo);
                    //mailBody = string.Format(mailBody, formRow.FormNo);
                    //AP.sendMail(email, "", mailTitle,mailBody);
                }

                TAMainForm.Update(formRow);

                transaction.Commit();
            } catch (Exception ex) {
                if (transaction != null)
                {
                    transaction.Rollback();
                }
                throw ex;
            } finally {
                if (transaction != null)
                {
                    transaction.Dispose();
                }
            }
            //System.Threading.Thread.Sleep(3000);
        }
Ejemplo n.º 5
0
 protected void OpenForm(int formID)
 {
     FormTableAdapter taForm = new FormTableAdapter();
     FormDS.FormRow rowForm = taForm.GetDataByID(formID)[0];
     FormContractTableAdapter taFormContract = new FormContractTableAdapter();
     FormDS.FormContractRow rowFormContract = taFormContract.GetDataById(formID)[0];
     //��ֵ
     TextBox txtBeginDate = (TextBox)(this.UCPeriodBegin.FindControl("txtDate"));
     TextBox txtEndDate = (TextBox)(this.UCPeriodEnd.FindControl("txtDate"));
     this.txtFirstCompany.Text = rowFormContract.FirstCompany;
     if (!rowFormContract.IsSecondCompanyNull()) {
         this.txtSecondCompany.Text = rowFormContract.SecondCompany;
     }
     if (!rowFormContract.IsThirdCompanyNull()) {
         this.txtThirdCompany.Text = rowFormContract.ThirdCompany;
     }
     this.txtContractName.Text = rowFormContract.ContractName;
     this.txtContractAmount.Text = rowFormContract.ContractAmount.ToString();
     this.txtPageNumber.Text = rowFormContract.PageNumber.ToString();
     this.dplContractType.SelectedValue = rowFormContract.ContractTypeID.ToString();
     if (!rowFormContract.IsPaymentTypeNull()) {
         this.txtPaymentType.Text = rowFormContract.PaymentType;
     }
     if (!rowFormContract.IsBeginDateNull()) {
         txtBeginDate.Text = rowFormContract.BeginDate.ToShortDateString();
     }
     if (!rowFormContract.IsEndDateNull()) {
         txtEndDate.Text = rowFormContract.EndDate.ToShortDateString();
     }
     if (!rowFormContract.IsMainContentNull()) {
         this.txtMainContent.Text = rowFormContract.MainContent;
     }
     if (!rowFormContract.IsChangePartNull()) {
         this.txtChangePart.Text = rowFormContract.ChangePart;
     }
     if (!rowFormContract.IsAttachedFileNameNull()) {
         this.UCFileUpload.AttachmentFileName = rowFormContract.AttachedFileName;
     }
     if (!rowFormContract.IsRealAttachedFileNameNull()) {
         this.UCFileUpload.RealAttachmentFileName = rowFormContract.RealAttachedFileName;
     }
 }
Ejemplo n.º 6
0
        //审批方法
        public void ApproveForm(int formID, int stuffUserId, string stuffName, bool pass, string comment, string ProxyStuffName,bool CheckPeriod = false)
        {
            string email = string.Empty;
            SqlTransaction transaction = null;
            try {
                string l_strtitle = "";
                StringBuilder l_strbody = new StringBuilder();
                FormTableAdapter TAMainForm = new FormTableAdapter();
                transaction = TableAdapterHelper.BeginTransaction(TAMainForm);

                FormDS.FormRow formRow = TAMainForm.GetDataByID(formID)[0];
                string returnValue = AP.approve(pass, comment, stuffUserId.ToString(), stuffName, formRow.ProcID, ProxyStuffName, formRow.OrganizationUnitID, ref email,CheckPeriod);
                // UtilityBLL ubll = new UtilityBLL();
                string[] approveinfo = AP.GetProcessApproveUser(formRow.ProcID);
                if (AP.GetProcessIsEnd(formRow.ProcID)) {

                    formRow.LastApprover = stuffUserId;
                    formRow.Comment = comment;
                    formRow.ApprovedDate = Convert.ToDateTime(approveinfo[0]);
                }
                formRow.ApproverIds = approveinfo[3];
                if (returnValue == null) {
                    formRow.InTurnUserIds = "P";
                    formRow.InTurnPositionIds = "P";
                    formRow.ApprovedDate = DateTime.Now;
                    if (pass) {
                        //如果审批通过且返回值为空则该流程结束
                        formRow.StatusID = (int)SystemEnums.FormStatus.ApproveCompleted;
                    } else {
                        //如果不通过则为驳回
                        formRow.StatusID = (int)SystemEnums.FormStatus.Rejected;
                    }
                } else {
                    string[] InTurn = returnValue.Split('&');//不同流程角色下的人员和职位
                    string ids = "";
                    string pids = "";
                    for (int a = 0; a < InTurn.Length; a++) {
                        ids += InTurn[a].Split('$')[0].ToString();///人员
                        pids += InTurn[a].Split('$')[1].ToString();//职位
                    }
                    formRow.InTurnUserIds = ids;//下一步的人员
                    formRow.InTurnPositionIds = pids;//下一步的人员职位
                }
                TAMainForm.Update(formRow);
                transaction.Commit();
                #region 发送邮件
                try {
                    QueryDS.FormViewRow l_drformView = new FormQueryBLL().GetFormViewByID(formID);
                    if (pass) {
                        if (!string.IsNullOrEmpty(returnValue)) {
                            l_strtitle = "有一份" + l_drformView.FormTypeName + "单据,编号为:" + l_drformView.FormNo + ",等待您的审批!";
                            l_strbody.Append("您好,<br>");
                            l_strbody.Append("&nbsp;&nbsp;有一份" + l_drformView.StuffName + "提交的" + l_drformView.FormTypeName + "单据,编号:" + l_drformView.FormNo + ",等待您的审批!");
                            l_strbody.Append("<br>此邮件请勿回复!");
                            mailBody = string.Format(mailBody, l_strbody.ToString());
                            sendMail(email, "", l_strtitle, mailBody);
                            //AP.sendMail(emailTo, "", l_strtitle, mailBody);
                        } else {
                            l_strtitle = "您的" + l_drformView.FormTypeName + "单据,编号为:" + l_drformView.FormNo + ",已审批完成!";
                            l_strbody.Append("您好,<br>");
                            l_strbody.Append("&nbsp;&nbsp;您于" + l_drformView.SubmitDate.ToString("yyyy-MM-dd") + "提交的" + l_drformView.FormTypeName + "单据,编号:" + l_drformView.FormNo + ",已经审批通过!");
                            l_strbody.Append("<br>此邮件请勿回复!");
                            mailBody = string.Format(mailBody, l_strbody.ToString());
                            sendMail(AuthorizationBLL.GetStuffUserById(formRow.UserID).EMail, "", l_strtitle, mailBody);
                            //AP.sendMail(emailTo, "", l_strtitle, mailBody);
                        }
                    } else {
                        l_strtitle = "您的" + l_drformView.FormTypeName + "单据,编号为:" + l_drformView.FormNo + ",被驳回!";
                        l_strbody.Append("您好,<br>");
                        l_strbody.Append("&nbsp;&nbsp;您于" + l_drformView.SubmitDate.ToString("yyyy-MM-dd") + "提交的" + l_drformView.FormTypeName + "单据,编号:" + l_drformView.FormNo + ",被" + stuffName + "驳回!");
                        l_strbody.Append("<br>此邮件请勿回复!");
                        mailBody = string.Format(mailBody, l_strbody.ToString());
                        sendMail(AuthorizationBLL.GetStuffUserById(formRow.UserID).EMail, "", l_strtitle, mailBody);
                        //AP.sendMail(emailTo, "", l_strtitle, mailBody);
                    }
                } catch (Exception e1) {

                }
                #endregion

            } catch (Exception ex) {
                if (transaction != null) {
                    transaction.Rollback();
                }
                throw ex;
            } finally {
                if (transaction != null) {
                    transaction.Dispose();
                }
            }
        }
Ejemplo n.º 7
0
        static void Main(string[] args)
        {
            //FormReimburseInvoiceTableAdapter taInvoice = new FormReimburseInvoiceTableAdapter();
            //FormTableAdapter taForm = new FormTableAdapter();
            //FormDS.FormReimburseInvoiceDataTable tbInvoice = taInvoice.GetData();
            //foreach (FormDS.FormReimburseInvoiceRow item in tbInvoice) {
            //    if (!item.IsSystemInfoNull()) {
            //        string SystemInfo = item.SystemInfo;
            //        string[] FormNos = SystemInfo.Split(',');
            //        string RepeatFormStr = "";
            //        if (FormNos.Length > 0) {
            //            foreach (string FormNo in FormNos) {
            //                if (!string.IsNullOrEmpty(FormNo)) {
            //                    FormDS.FormDataTable tbForm = taForm.GetDataByFormNo(FormNo);
            //                    if (tbForm != null && tbForm.Count > 0) {
            //                        RepeatFormStr += "P" + tbForm[0].FormID + ":" + tbForm[0].FormNo + "P";
            //                    }
            //                }
            //            }
            //        }
            //        item.SystemInfo = RepeatFormStr;
            //        taInvoice.Update(item);
            //    }
            //}

            //FormReimburseInvoiceTableAdapter taInvoice = new FormReimburseInvoiceTableAdapter();
            //FormTableAdapter taForm = new FormTableAdapter();
            //FormDS.FormReimburseInvoiceDataTable tbInvoice = taInvoice.GetData();
            //foreach (FormDS.FormReimburseInvoiceRow item in tbInvoice) {
            //    if (!item.IsSystemInfoNull()) {
            //        string SystemInfo = item.SystemInfo;
            //        SystemInfo = SystemInfo.Replace("PP", "P");
            //        string[] FormNos = SystemInfo.Split('P');
            //        string RepeatFormStr = "";
            //        if (FormNos.Length > 0) {
            //            foreach (string FormNo in FormNos) {
            //                if (!string.IsNullOrEmpty(FormNo)) {
            //                    FormDS.FormDataTable tbForm = taForm.GetDataByID(int.Parse(FormNo.Split(':')[0]));
            //                    if (tbForm != null && tbForm.Count > 0) {
            //                        RepeatFormStr += "P" + tbForm[0].FormID + ":" + tbForm[0].FormNo + "P";
            //                    }
            //                }
            //            }
            //        }
            //        item.SystemInfo = RepeatFormStr;
            //        taInvoice.Update(item);
            //    }
            //}

            FormReimburseInvoiceTableAdapter taInvoice = new FormReimburseInvoiceTableAdapter();
            FormTableAdapter taForm = new FormTableAdapter();

            FormDS.FormReimburseInvoiceDataTable tbInvoice = taInvoice.GetData();
            foreach (FormDS.FormReimburseInvoiceRow item in tbInvoice)
            {
                if (!item.IsSystemInfoNull())
                {
                    string SystemInfo = item.SystemInfo;
                    SystemInfo = SystemInfo.Replace("PP", "P");
                    string[] FormNos       = SystemInfo.Split('P');
                    string   RepeatFormStr = "";
                    if (FormNos.Length > 0)
                    {
                        foreach (string FormNo in FormNos)
                        {
                            if (!string.IsNullOrEmpty(FormNo))
                            {
                                FormDS.FormDataTable tbForm = taForm.GetDataByID(int.Parse(FormNo.Split(':')[0]));
                                if (tbForm != null && tbForm.Count > 0)
                                {
                                    RepeatFormStr += "P" + tbForm[0].FormID + ":" + tbForm[0].FormNo + ":" + tbForm[0].PageType + "P";
                                }
                            }
                        }
                    }
                    item.SystemInfo = RepeatFormStr;
                    taInvoice.Update(item);
                }
            }
        }
Ejemplo n.º 8
0
        //审批方法
        public void ApproveForm(APHelper AP, int formID, int stuffUserId, string stuffName, bool pass, string comment, string ProxyStuffName, int OrganizationUnitID)
        {
            string email = string.Empty;
            SqlTransaction transaction = null;
            try {
                FormTableAdapter TAMainForm = new FormTableAdapter();

                transaction = TableAdapterHelper.BeginTransaction(TAMainForm);

                FormDS.FormRow formRow = TAMainForm.GetDataByID(formID)[0];

                string returnValue = AP.approve(pass, comment, stuffUserId.ToString(), stuffName, formRow.ProcID, ProxyStuffName, formRow.OrganizationUnitID, ref email);
                string[] approveinfo = AP.GetProcessApproveUser(formRow.ProcID);
                if (AP.GetProcessIsEnd(formRow.ProcID)) {
                    formRow.LastApprover = stuffUserId.ToString();
                    formRow.Comment = comment;
                    formRow.ApprovedDate = Convert.ToDateTime(approveinfo[0]);
                }
                formRow.ApproverIds = approveinfo[3];
                if (returnValue == null) {
                    formRow.InTurnUserIds = "P";
                    formRow.InTurnPositionIds = "P";
                    //formRow.SubmitDate = DateTime.Now;

                    if (pass) {
                        //如果审批通过且返回值为空则该流程结束

                        formRow.StatusID = (int)SystemEnums.FormStatus.ApproveCompleted;
                        //mailTitle = string.Format("您申请的编号为{0}的单据已经通过审批", formRow.FormNo);
                        //mailBody = string.Format(mailBody, formRow.FormNo);
                        //email = AP.getUserEmailByID(formRow.UserID);

                        //AP.sendMail(email, "", mailTitle, mailBody);

                    } else {
                        //如果不通过则为驳回
                        formRow.StatusID = (int)SystemEnums.FormStatus.Rejected;

                        //mailTitle = string.Format("您有单据申请被{0}退回", stuffName);
                        //mailBody = string.Format(mailBody, formRow.FormNo);
                        //email = AP.getUserEmailByID(formRow.UserID);

                        //AP.sendMail(email, "", mailTitle, mailBody);

                    }
                } else {
                    string[] InTurn = returnValue.Split('&');//不同流程角色下的人员和职位
                    string ids = "";
                    string pids = "";
                    for (int a = 0; a < InTurn.Length; a++) {
                        ids += InTurn[a].Split('$')[0].ToString();///人员
                        pids += InTurn[a].Split('$')[1].ToString();//职位
                    }
                    formRow.InTurnUserIds = ids;//下一步的人员
                    formRow.InTurnPositionIds = pids;//下一步的人员职位

                    //mailTitle = string.Format(mailTitle, stuffName, formRow.FormNo);
                    //mailBody = string.Format(mailBody, formRow.FormNo);
                    //AP.sendMail(email, "", mailTitle,mailBody);

                }

                TAMainForm.Update(formRow);

                transaction.Commit();
            } catch (Exception ex) {
                if (transaction != null)
                    transaction.Rollback();
                throw ex;
            } finally {
                if (transaction != null)
                    transaction.Dispose();
            }
            //System.Threading.Thread.Sleep(3000);
        }
Ejemplo n.º 9
0
        static void Main(string[] args)
        {
            //FormReimburseInvoiceTableAdapter taInvoice = new FormReimburseInvoiceTableAdapter();
            //FormTableAdapter taForm = new FormTableAdapter();
            //FormDS.FormReimburseInvoiceDataTable tbInvoice = taInvoice.GetData();
            //foreach (FormDS.FormReimburseInvoiceRow item in tbInvoice) {
            //    if (!item.IsSystemInfoNull()) {
            //        string SystemInfo = item.SystemInfo;
            //        string[] FormNos = SystemInfo.Split(',');
            //        string RepeatFormStr = "";
            //        if (FormNos.Length > 0) {
            //            foreach (string FormNo in FormNos) {
            //                if (!string.IsNullOrEmpty(FormNo)) {
            //                    FormDS.FormDataTable tbForm = taForm.GetDataByFormNo(FormNo);
            //                    if (tbForm != null && tbForm.Count > 0) {
            //                        RepeatFormStr += "P" + tbForm[0].FormID + ":" + tbForm[0].FormNo + "P";
            //                    }
            //                }
            //            }
            //        }
            //        item.SystemInfo = RepeatFormStr;
            //        taInvoice.Update(item);
            //    }
            //}

            //FormReimburseInvoiceTableAdapter taInvoice = new FormReimburseInvoiceTableAdapter();
            //FormTableAdapter taForm = new FormTableAdapter();
            //FormDS.FormReimburseInvoiceDataTable tbInvoice = taInvoice.GetData();
            //foreach (FormDS.FormReimburseInvoiceRow item in tbInvoice) {
            //    if (!item.IsSystemInfoNull()) {
            //        string SystemInfo = item.SystemInfo;
            //        SystemInfo = SystemInfo.Replace("PP", "P");
            //        string[] FormNos = SystemInfo.Split('P');
            //        string RepeatFormStr = "";
            //        if (FormNos.Length > 0) {
            //            foreach (string FormNo in FormNos) {
            //                if (!string.IsNullOrEmpty(FormNo)) {
            //                    FormDS.FormDataTable tbForm = taForm.GetDataByID(int.Parse(FormNo.Split(':')[0]));
            //                    if (tbForm != null && tbForm.Count > 0) {
            //                        RepeatFormStr += "P" + tbForm[0].FormID + ":" + tbForm[0].FormNo + "P";
            //                    }
            //                }
            //            }
            //        }
            //        item.SystemInfo = RepeatFormStr;
            //        taInvoice.Update(item);
            //    }
            //}

            FormReimburseInvoiceTableAdapter taInvoice = new FormReimburseInvoiceTableAdapter();
            FormTableAdapter taForm = new FormTableAdapter();
            FormDS.FormReimburseInvoiceDataTable tbInvoice = taInvoice.GetData();
            foreach (FormDS.FormReimburseInvoiceRow item in tbInvoice) {
                if (!item.IsSystemInfoNull()) {
                    string SystemInfo = item.SystemInfo;
                    SystemInfo = SystemInfo.Replace("PP", "P");
                    string[] FormNos = SystemInfo.Split('P');
                    string RepeatFormStr = "";
                    if (FormNos.Length > 0) {
                        foreach (string FormNo in FormNos) {
                            if (!string.IsNullOrEmpty(FormNo)) {
                                FormDS.FormDataTable tbForm = taForm.GetDataByID(int.Parse(FormNo.Split(':')[0]));
                                if (tbForm != null && tbForm.Count > 0) {
                                    RepeatFormStr += "P" + tbForm[0].FormID + ":" + tbForm[0].FormNo + ":" + tbForm[0].PageType + "P";
                                }
                            }
                        }
                    }
                    item.SystemInfo = RepeatFormStr;
                    taInvoice.Update(item);
                }
            }
        }