// Send to Excel Implementation


        public async Task Send2Excel()
        {
            IEnumerable <SubItems> lst = null;

            using (var ctx = new SubItemsRepository())
            {
                lst = await ctx.GetSubItemsByExpressionNav(vloader.FilterExpression, vloader.NavigationExpression).ConfigureAwait(continueOnCapturedContext: false);
            }
            if (lst == null || !lst.Any())
            {
                MessageBox.Show("No Data to Send to Excel");
                return;
            }
            var s = new ExportToExcel <SubItemsExcelLine, List <SubItemsExcelLine> >
            {
                dataToPrint = lst.Select(x => new SubItemsExcelLine
                {
                    ItemNumber = x.ItemNumber,


                    ItemDescription = x.ItemDescription,


                    Quantity = x.Quantity,


                    QtyAllocated = x.QtyAllocated
                }).ToList()
            };

            using (var sta = new StaTaskScheduler(numberOfThreads: 1))
            {
                await Task.Factory.StartNew(s.GenerateReport, CancellationToken.None, TaskCreationOptions.None, sta).ConfigureAwait(false);
            }
        }
Esempio n. 2
0
 internal async void OnCurrentSubItemsIDChanged(object sender, NotificationEventArgs <string> e)
 {
     using (SubItemsRepository ctx = new SubItemsRepository())
     {
         CurrentSubItems = await ctx.GetSubItems(e.Data).ConfigureAwait(continueOnCapturedContext: false);
     }
     NotifyPropertyChanged(m => CurrentSubItems);
 }
        public async Task SelectAll()
        {
            IEnumerable <SubItems> lst = null;

            using (var ctx = new SubItemsRepository())
            {
                lst = await ctx.GetSubItemsByExpressionNav(vloader.FilterExpression, vloader.NavigationExpression).ConfigureAwait(continueOnCapturedContext: false);
            }
            SelectedSubItems = new ObservableCollection <SubItems>(lst);
        }
        public IList <SubItems> LoadRange(int startIndex, int count, SortDescriptionCollection sortDescriptions, out int overallCount)
        {
            try
            {
                if (FilterExpression == null)
                {
                    FilterExpression = "All";
                }
                using (var ctx = new SubItemsRepository())
                {
                    var r = ctx.LoadRange(startIndex, count, FilterExpression, navExp, IncludesLst);
                    overallCount = r.Result.Item2;

                    return(r.Result.Item1.ToList());
                }
            }
            catch (Exception ex)
            {
                StatusModel.Message(ex.Message);
                overallCount = 0;
                return(new List <SubItems>());
            }
        }