Ejemplo n.º 1
0
        /// <summary>
        ///     Sorts the grid by header.
        /// </summary>
        /// <param name="headerName">Name of the header.</param>
        /// <param name="sortingOrder">The sorting order.</param>
        /// <exception cref="System.ArgumentException">The ArgumentException.</exception>
        public void SortByHeader(string headerName, SortOrder sortingOrder)
        {
            var            pagingView      = new BaseGridView();
            IList <Button> headerButtons   = new List <Button>();
            var            headersAppeared = Waiter.SpinWait(
                () =>
            {
                headerButtons = pagingView.GridHeaders.Where(x => x.Text.Equals(headerName)).ToList();
                return(headerButtons.Count > 0);
            },
                TimeSpan.FromSeconds(5));

            if (!headersAppeared)
            {
                throw new ArgumentException(string.Format(CultureInfo.InvariantCulture, "Header with name {0} not exists",
                                                          headerName));
            }

            var foundHeader = headerButtons.First();

            if (sortingOrder.Equals(SortOrder.Ascending))
            {
                while (foundHeader.GetAttribute("aria-sort") == null || !foundHeader.GetAttribute("aria-sort").Equals("ascending"))
                {
                    foundHeader.Click();
                }
            }
            else
            {
                while (foundHeader.GetAttribute("aria-sort") == null || !foundHeader.GetAttribute("aria-sort").Equals("descending"))
                {
                    foundHeader.Click();
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        ///     Gets the count values from bottom left corner.
        /// </summary>
        /// <param name="position">The position.</param>
        /// <returns>The value.</returns>
        private int GetCountValuesFromBottomLeftCorner(int position)
        {
            var gridView = new BaseGridView();
            var number   = gridView.ShowEntriesMessage.Text.Split(' ').ElementAt(position);

            return(Convert.ToInt32(number, CultureInfo.InvariantCulture));
        }
Ejemplo n.º 3
0
        /// <summary>
        ///     Navigates to last page.
        /// </summary>
        public void NavigateToLastPage()
        {
            var pagingView = new BaseGridView();

            if (pagingView.PageNumbersButtons.Any())
            {
                NavigateByPageNumber(pagingView.PageNumbersButtons.Count);
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        ///     Gets the active page number.
        /// </summary>
        /// <returns>Active Page Number.</returns>
        public int GetActivePageNumber()
        {
            var numberAsText =
                new BaseGridView().PageNumbersButtons.Where(button => button.GetAttribute("class").Contains("current"))
                .Select(b => b.Text)
                .FirstOrDefault();

            return(Convert.ToInt32(numberAsText, CultureInfo.InvariantCulture));
        }
Ejemplo n.º 5
0
        /// <summary>
        ///     Gets the paginate text button.
        /// </summary>
        /// <param name="pagingItem">The paging item.</param>
        /// <returns>The button.</returns>
        private Button GetPaginateTextButton(PagingItem pagingItem)
        {
            var pagingView   = new BaseGridView();
            var foundButtons =
                pagingView.PageTextButtons.Where(button => button.Text.Equals(pagingItem.ToStringValue())).ToList();

            if (!foundButtons.Any())
            {
                throw new ArgumentException("The paginate button " + pagingItem.ToStringValue() + " is not displayed");
            }

            return(foundButtons.First());
        }
Ejemplo n.º 6
0
        /// <summary>
        ///     Selects the entries amount to show.
        /// </summary>
        /// <param name="entriesAmount">The entries amount.</param>
        public void SelectEntriesAmountToShow(int entriesAmount)
        {
            var validAmountValues = new[] { 10, 25, 50, 100 };

            if (!validAmountValues.Contains(entriesAmount))
            {
                throw new ArgumentException(string.Format(CultureInfo.InvariantCulture,
                                                          "You have entered invalid amount to show. The valid amounts are {0}.", string.Join(",", validAmountValues)));
            }

            var gridView = new BaseGridView();

            gridView.ShowEntriesSelect.SelectByValue(entriesAmount.ToString(CultureInfo.InvariantCulture));
        }
Ejemplo n.º 7
0
        private void CheckTranslateGridViewHeader(BaseGridView control)
        {
            for (int index = 0; index < control.Columns.Count; index++)
            {
                if (control.Columns[index].HeaderText.StartsWith("$") && control.Columns[index].HeaderText.EndsWith("$"))
                {
                    if (!string.IsNullOrEmpty(this.ProgramCode))
                    {
                        try
                        {
                            string translateControl = string.Concat(control.ID, ".Columns[", index.ToString(), "]", ".HeaderText");
                            string translateWord    = control.Columns[index].HeaderText.TrimStart('$').TrimEnd('$');

                            SuGlobalTranslate translate = new SuGlobalTranslate();
                            translate.ProgramCode      = this.ProgramCode;
                            translate.TranslateSymbol  = string.Empty;
                            translate.TranslateControl = translateControl;
                            translate.Active           = true;
                            translate.CreBy            = UserAccount.UserID;
                            translate.UpdBy            = UserAccount.UserID;
                            translate.UpdPgm           = UserAccount.CurrentProgramCode;

                            long translateID = SuGlobalTranslateService.AddProgramTranslateControl_Symbol(translate);

                            if (translateID > 0)
                            {
                                IList <SuGlobalTranslateLang> translateLangList = new List <SuGlobalTranslateLang>();
                                SuGlobalTranslateLang         translateTH       = this.BuildSuGlobalTranslateLang(translateID, ParameterServices.DefaultLanguage, translateWord);
                                translateLangList.Add(translateTH);

                                SuGlobalTranslateLang translateEN = this.BuildSuGlobalTranslateLang(translateID, ParameterServices.EnglishLanguageID, translateWord);
                                translateLangList.Add(translateEN);

                                SuGlobalTranslateLangService.UpdateGlobalTranslateLang(translateLangList);
                            }
                        }
                        catch (Exception) { }
                    }
                }
            }
        }
Ejemplo n.º 8
0
        /// <summary>
        ///     Navigates by the page number.
        /// </summary>
        /// <param name="pageNumber">The page number.</param>
        /// <exception cref="System.ArgumentException">The page number  + pageNumber+ is not displayed.</exception>
        public void NavigateByPageNumber(int pageNumber)
        {
            var pagingView = new BaseGridView();

            if (pageNumber <= pagingView.PageNumbersButtons.Count)
            {
                for (var i = 0; i < pagingView.PageNumbersButtons.Count; i++)
                {
                    var pagingButton = pagingView.PageNumbersButtons[i];
                    if (pageNumber == i + 1)
                    {
                        pagingButton.Click();
                        break;
                    }
                }
            }
            else
            {
                throw new ArgumentException("The paginate button " + pageNumber + " is not displayed");
            }
        }
 protected void ctlRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
 {
     if (e.Item.DataItem != null)
     {
         InvoiceData  invoice  = (InvoiceData)e.Item.DataItem;
         LinkButton   edit     = (LinkButton)e.Item.FindControl("ctlEdit");
         LinkButton   delete   = (LinkButton)e.Item.FindControl("ctlDelete");
         BaseGridView gridview = (BaseGridView)e.Item.FindControl("ctlInvoiceItem");
         if (string.IsNullOrEmpty(invoice.InvoiceNo))
         {
             edit.Visible   = false;
             delete.Visible = false;
             ShowButton     = true;
             //gridview.Columns[6].Visible = true;
         }
         else
         {
             ShowButton = false;
             //gridview.Columns[6].Visible = false;
         }
         gridview.DataSource = invoice.Item;
         gridview.DataBind();
     }
 }
Ejemplo n.º 10
0
        protected void ctlInvoiceItem_DataBound(object sender, EventArgs e)
        {
            BaseGridView gridview = (BaseGridView)sender;

            if (DocumentType.Equals(ZoneType.Domestic))
            {
                gridview.Columns[5].Visible = false;
                gridview.Columns[4].Visible = false;
                gridview.Columns[6].Visible = false;
            }
            else
            {
                gridview.Columns[5].Visible = true;
                gridview.Columns[4].Visible = true;
                gridview.Columns[6].Visible = true;
            }

            if (IsRepOffice)
            {
                SS.Standard.WorkFlow.DTO.WorkFlow workflow = null;
                if (!string.IsNullOrEmpty(Request.Params["wfid"]) && UIHelper.ParseInt(Request.Params["wfid"]) > 0)
                {
                    long workFlowID = UIHelper.ParseLong(Request.Params["wfid"]);

                    try
                    {
                        workflow = WorkFlowQueryProvider.WorkFlowQuery.FindByIdentity(workFlowID);
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }
                }

                gridview.Columns[7].Visible    = true; //local currency
                gridview.Columns[7].HeaderText = string.Format(GetMessage("AmountCurrencyHeaderColumn"), "(" + SelectedCurrency + ")");

                ExpenseDataSet expDs = (ExpenseDataSet)TransactionService.GetDS(TransactionId);

                ExpenseDataSet.FnExpenseDocumentRow expRow = expDs.FnExpenseDocument.FindByExpenseID(this.ExpDocumentID);
                if (!expRow.IsMainCurrencyIDNull())
                {
                    DbCurrency mainCurrency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(expRow.MainCurrencyID);
                    if (mainCurrency != null)
                    {
                        gridview.Columns[8].HeaderText = string.Format(GetMessage("AmountCurrencyHeaderColumn"), "(" + mainCurrency.Symbol + ")");
                    }
                }

                if ((workflow != null && workflow.CurrentState.Ordinal >= 5) && (UserAccount.IsAccountant || UserAccount.IsPayment))
                {
                    if (!expRow.IsMainCurrencyIDNull() && !expRow.IsLocalCurrencyIDNull() && (expRow.MainCurrencyID == expRow.LocalCurrencyID))
                    {
                        gridview.Columns[8].Visible = false;  //hide main currency
                    }
                    else
                    {
                        gridview.Columns[8].Visible = true; //show main currency
                    }
                    gridview.Columns[9].Visible = true;     //THB
                }
                else
                {
                    gridview.Columns[8].Visible = false;
                    gridview.Columns[9].Visible = false;
                }
            }
            else
            {
                gridview.Columns[7].Visible = false;
                gridview.Columns[8].Visible = false;
                gridview.Columns[9].Visible = true;
            }
        }
Ejemplo n.º 11
0
        protected void ctlRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            string url = string.Empty;

            if (e.Item.DataItem != null)
            {
                ExpenseDataSet expDs = (ExpenseDataSet)TransactionService.GetDS(TransactionId);
                ExpenseDataSet.FnExpenseInvoiceRow  invoice            = (ExpenseDataSet.FnExpenseInvoiceRow)e.Item.DataItem;
                ExpenseDataSet.FnExpenseDocumentRow expenseDocumentRow = expDs.FnExpenseDocument.FindByExpenseID(this.ExpDocumentID);

                PopupCaller popupEdit       = (PopupCaller)e.Item.FindControl("ctlEditPopupCaller");
                PopupCaller popupView       = (PopupCaller)e.Item.FindControl("ctlViewPopupCaller");
                LinkButton  edit            = (LinkButton)e.Item.FindControl("ctlEdit");
                LinkButton  delete          = (LinkButton)e.Item.FindControl("ctlDelete");
                LinkButton  view            = (LinkButton)e.Item.FindControl("ctlView");
                Literal     totalBaseAmount = (Literal)e.Item.FindControl("ctlTotalAmount");
                Literal     totalNetAmount  = (Literal)e.Item.FindControl("ctlNetAmount");

                if (IsRepOffice)
                {
                    totalBaseAmount.Text = UIHelper.BindDecimal(invoice.TotalBaseAmountLocalCurrency.ToString());
                    totalNetAmount.Text  = UIHelper.BindDecimal(invoice.NetAmountLocalCurrency.ToString());
                }
                else
                {
                    totalBaseAmount.Text = UIHelper.BindDecimal(invoice.TotalBaseAmount.ToString());
                    totalNetAmount.Text  = UIHelper.BindDecimal(invoice.NetAmount.ToString());
                }

                if (!invoice.IsInvoiceDocumentTypeNull() && invoice.InvoiceDocumentType.Equals(InvoiceType.Perdiem))
                {
                    popupEdit.URL = ShowPerdiemPopup(FlagEnum.EditFlag, invoice.InvoiceID);
                    popupView.URL = ShowPerdiemPopup(FlagEnum.ViewFlag, invoice.InvoiceID);
                }
                if (!invoice.IsInvoiceDocumentTypeNull() && invoice.InvoiceDocumentType.Equals(InvoiceType.General))
                {
                    url           = ShowExpenseGeneral(invoice.InvoiceID);
                    popupEdit.URL = url.Replace("[mode]", FlagEnum.EditFlag);
                    popupView.URL = url.Replace("[mode]", FlagEnum.ViewFlag);
                }

                // Show Mileage.
                if (!invoice.IsInvoiceDocumentTypeNull() && invoice.InvoiceDocumentType.Equals(InvoiceType.Mileage))
                {
                    popupEdit.URL = ShowMileagePopup(FlagEnum.EditFlag);
                    popupView.URL = ShowMileagePopup(FlagEnum.ViewFlag);
                }

                SS.Standard.WorkFlow.DTO.WorkFlow workflow = SS.Standard.WorkFlow.Query.WorkFlowQueryProvider.WorkFlowQuery.GetWorkFlowByDocumentID(this.DocumentID);

                if (InitialFlag.Equals(FlagEnum.ViewFlag))
                {
                    edit.Visible   = false;
                    delete.Visible = false;
                    view.Visible   = true;
                }
                else
                {
                    edit.Visible = true;
                    view.Visible = false;

                    if (!invoice.IsInvoiceDocumentTypeNull() && invoice.InvoiceDocumentType.Equals(InvoiceType.Mileage))
                    {
                        delete.Visible = false;
                    }
                    else
                    if (workflow != null && workflow.CurrentState.Name.Equals(WorkFlowStateFlag.Hold))
                    {
                        delete.Visible = false;
                    }
                    else
                    {
                        delete.Visible = true;
                    }
                }

                Literal seq = (Literal)e.Item.FindControl("ctlSeq");

                seq.Text += e.Item.ItemIndex + 1;

                BaseGridView gridview = (BaseGridView)e.Item.FindControl("ctlInvoiceItem");

                string filter = String.Format("InvoiceID = {0}", invoice.InvoiceID);
                gridview.DataSource = expDs.FnExpenseInvoiceItem.Select(filter);
                gridview.DataBind();
            }
        }
Ejemplo n.º 12
0
 public void RegisterScriptForGridView(BaseGridView ctlUserGrid)
 {
 }