Esempio n. 1
0
        private void InitControlsByItem(int OItemID, string Lines, string ULOOrgCode, string PrevReviewer)
        {
            txtItemID.Value = OItemID.ToString();

            if (Lines == "" || Lines == "0")
            {
                //init by item properties:
                lblLines.Text = "all";

                int reviewer_id;
                if (PrevReviewer == "" || PrevReviewer == "0")
                {
                    reviewer_id = 0;
                }
                else
                {
                    reviewer_id = Int32.Parse(PrevReviewer);
                }
                var item = new OpenItem(OItemID, (new PageBase()).LoadID, ULOOrgCode, reviewer_id);

                txtCurrentReviewer.Value = item.ReviewerUserID.ToString();
                lblPrevReviewer.Text     = item.Reviewer;
                lblDocNumber.Text        = item.DocNumber;
                lblOrgCode.Text          = item.ULOOrgCode;

                InitAssignUsersList(OItemID, ULOOrgCode, 0);
            }
            else
            {
                //init by lines properties:
                lblLines.Text = Lines;

                var line_num = 0;
                Int32.TryParse(Lines, out line_num);
                if (line_num == 0)
                {
                    //we have multiline selection:
                    lblDocNumber.Text = Request.QueryString["doc"];

                    var str_org   = "";
                    var str_names = "";
                    var ds        = Item.GetULOOrganizationsByItemLines(OItemID, Lines);

                    foreach (DataRow dr in ds.Tables[0].Rows)
                    {
                        if (str_org.IndexOf((string)dr["ULOOrgCode"]) == -1)
                        {
                            str_org = str_org + (string)dr["ULOOrgCode"] + ", ";
                        }

                        if (str_names.IndexOf((string)dr["ReviewerName"]) == -1)
                        {
                            str_names = str_names + (string)dr["ReviewerName"] + "<br/>";
                        }
                    }

                    lblOrgCode.Text      = str_org.Substring(0, str_org.Length - 2);
                    lblPrevReviewer.Text = str_names;

                    InitAssignUsersList(OItemID, ULOOrgCode, 0);
                }
                else
                {
                    //one line selected
                    var line = new LineNum(OItemID, line_num);

                    txtCurrentReviewer.Value = line.ReviewerUserID.ToString();
                    lblPrevReviewer.Text     = line.Reviewer;
                    lblDocNumber.Text        = line.DocNumber;
                    lblOrgCode.Text          = line.ULOOrgCode;

                    InitAssignUsersList(OItemID, line.ULOOrgCode, 0);
                }
            }

            //init with default settings:
            InitUsersOrganizationsList("", 0);
        }
Esempio n. 2
0
        public int RequestReassignItem(int iOItemID, string sOrgCode, string sLines, int iPrevReviewerUserID,
                                       string sResponsibleOrg, string sNewOrganization, string sNewOrgCode, int iNewReviewerUserID, string sComments)
        {
            //ApplicationAssert app_log = new ApplicationAssert();
            if (Settings.Default.WriteExtendedLog)
            {
                var str = String.Format("{0:MM/dd/yyyy hh:mm}   On RequestReassignItem before calculating lines: OItemID {1}, OrgCode {2}, Lines {3}, PrevReviewerUserID {4}, ResponsibleOrg {5}, NewOrganization {6}, NewOrgCode {7}, NewReviewerUserID {8}, Comments: {9}",
                                        DateTime.Now, iOItemID, sOrgCode, sLines, iPrevReviewerUserID, sResponsibleOrg, sNewOrganization, sNewOrgCode, iNewReviewerUserID, sComments);
                Utility.WriteLogEntry(str);
            }

            int return_value;
            var request_id = 0;

            var       arr_lines = sLines.Split(new char[] { ',' });
            DataTable dt        = null;

            DataRow[] dr;

            if (arr_lines.Length > 1)
            {
                //could be more than one ULOOrgCodes for these lines
                var dsLines = Item.GetULOOrganizationsByItemLines(iOItemID);
                if (dsLines != null && dsLines.Tables[0].Rows.Count > 1)
                {
                    dt = dsLines.Tables[0];
                }
            }

            if (Settings.Default.WriteExtendedLog)
            {
                var str = String.Format("{0:MM/dd/yyyy hh:mm}   On RequestReassignItem before Transaction: OItemID {1}, OrgCode {2}, Lines {3}, PrevReviewerUserID {4}, ResponsibleOrg {5}, NewOrganization {6}, NewOrgCode {7}, NewReviewerUserID {8}",
                                        DateTime.Now, iOItemID, sOrgCode, sLines, iPrevReviewerUserID, sResponsibleOrg, sNewOrganization, sNewOrgCode, iNewReviewerUserID);
                Utility.WriteLogEntry(str);
            }


            try
            {
                string ULOOrgCode;
                int    ReviewerUserID;
                foreach (var line_num in arr_lines)
                {
                    if (dt == null)
                    {
                        ULOOrgCode     = sOrgCode;
                        ReviewerUserID = iPrevReviewerUserID;
                    }
                    else
                    {
                        dr = dt.Select("ItemLNum = " + line_num);
                        if (dr.Length > 0)
                        {
                            ULOOrgCode     = (string)dr[0]["ULOOrgCode"];
                            ReviewerUserID = (int)dr[0]["ReviewerUserID"];
                        }
                        else
                        {
                            ULOOrgCode     = sOrgCode;
                            ReviewerUserID = iPrevReviewerUserID;
                        }
                    }

                    return_value = Dal.RequestRerouteItem(iOItemID, ULOOrgCode, Convert.ToInt32(line_num), ReviewerUserID, sResponsibleOrg, sNewOrganization, sNewOrgCode, iNewReviewerUserID, sComments, OpenItemStatus.stReassignRequest);
                    if (return_value != 0 && request_id == 0)
                    {
                        request_id = return_value;
                    }

                    if (Settings.Default.WriteExtendedLog)
                    {
                        var str = String.Format("{0:MM/dd/yyyy hh:mm}   On RequestReassignItem In Loop: OItemID {1}, OrgCode {2}, Line {3}, PrevReviewerUserID {4}, ResponsibleOrg {5}, NewOrganization {6}, NewOrgCode {7}, NewReviewerUserID {8}, Return Code {9}",
                                                DateTime.Now, iOItemID, sOrgCode, line_num, iPrevReviewerUserID, sResponsibleOrg, sNewOrganization, sNewOrgCode, iNewReviewerUserID, return_value);
                        Utility.WriteLogEntry(str);
                    }
                }



                if (Settings.Default.WriteExtendedLog)
                {
                    var str = String.Format("{0:MM/dd/yyyy hh:mm}   On RequestReassignItem after Commit Transaction: OItemID {1}, OrgCode {2}, Lines {3}, PrevReviewerUserID {4}, ResponsibleOrg {5}, NewOrganization {6}, NewOrgCode {7}, NewReviewerUserID {8}",
                                            DateTime.Now, iOItemID, sOrgCode, sLines, iPrevReviewerUserID, sResponsibleOrg, sNewOrganization, sNewOrgCode, iNewReviewerUserID);
                    Utility.WriteLogEntry(str);
                }
            }
            catch (SqlException ex)
            {
                if (Settings.Default.WriteExtendedLog)
                {
                    var str = String.Format("{0:MM/dd/yyyy hh:mm}   On RequestReassignItem on ROLLBACK TRANSACTION: OItemID {1}, OrgCode {2}, Lines {3}, PrevReviewerUserID {4}, ResponsibleOrg {5}, NewOrganization {6}, NewOrgCode {7}, NewReviewerUserID {8}, Error: {9}",
                                            DateTime.Now, iOItemID, sOrgCode, sLines, iPrevReviewerUserID, sResponsibleOrg, sNewOrganization, sNewOrgCode, iNewReviewerUserID, ex.Message);
                    Utility.WriteLogEntry(str);
                }
                //send an email notification to administrator
                new EmailUtility().SendAlertToSysAdmin("ULO/FundStatus application alert",
                                                       String.Format("An error has occurred in ULO/FundStatus application. Function: {0}. Error: {1}", "AssignBO - RequestReassignItem", ex.Message));

                throw new Exception("Item reroute did not succeed. Please try again.");
            }
            return(request_id);
        }
Esempio n. 3
0
        private void InitControlsByItem(int OItemID, string Lines, string ULOOrgCode, string PrevReviewer)
        {
            txtItemID.Value = OItemID.ToString();

            if (Lines == "" || Lines == "0")
            {
                //init by item properties:
                lblLines.Text = "all";

                int reviewer_id;
                if (PrevReviewer == "" || PrevReviewer == "0")
                {
                    reviewer_id = 0;
                }
                else
                {
                    reviewer_id = Int32.Parse(PrevReviewer);
                }
                var item = new OpenItem(OItemID, (new PageBase()).LoadID, ULOOrgCode, reviewer_id);

                txtPrevOrganization.Value = item.Organization + " : " + item.ULOOrgCode;
                txtPrevReviewer.Value     = item.ReviewerUserID.ToString();
                lblDocNumber.Text         = item.DocNumber;

                lblPrevOrganization.Text = item.Organization;
                lblPrevOrgCode.Text      = item.ULOOrgCode;
                lblPrevReviewerName.Text = item.Reviewer;
            }
            else
            {
                //init by lines properties:
                lblLines.Text = Lines;

                var line_num = 0;
                Int32.TryParse(Lines, out line_num);
                if (line_num == 0)
                {
                    //we have multiline selection:
                    lblDocNumber.Text = Request.QueryString["doc"];

                    var str_org   = "";
                    var str_names = "";
                    var ds        = Item.GetULOOrganizationsByItemLines(OItemID, Lines);

                    foreach (DataRow dr in ds.Tables[0].Rows)
                    {
                        if (str_org.IndexOf((string)dr["Organization"]) == -1)
                        {
                            str_org = str_org + (string)dr["Organization"] + ", ";
                        }

                        if (str_names.IndexOf((string)dr["ReviewerName"]) == -1)
                        {
                            str_names = str_names + (string)dr["ReviewerName"] + "<br/>";
                        }
                    }

                    lblPrevOrganization.Text = str_org.Substring(0, str_org.Length - 2);
                    lblPrevOrgCode.Style.Add("display", "none");
                    lblPrevReviewerName.Text = str_names;
                }
                else
                {
                    //one line selected
                    var line = new LineNum(OItemID, line_num);

                    txtPrevOrganization.Value = line.Organization + " : " + line.ULOOrgCode;
                    txtPrevReviewer.Value     = line.ReviewerUserID.ToString();
                    lblDocNumber.Text         = line.DocNumber;

                    lblPrevOrganization.Text = line.Organization;
                    lblPrevOrgCode.Text      = line.ULOOrgCode;
                    lblPrevReviewerName.Text = line.Reviewer;
                }
            }

            ctrlOrgUsers.OrganizationLabel = "Select Organization:";
            ctrlOrgUsers.UsersLabel        = "Select Reviewer:";
            ctrlOrgUsers.InitLists();
        }