// Send to Excel Implementation


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

            using (var ctx = new AsycudaDocumentEntryDataRepository())
            {
                lst = await ctx.GetAsycudaDocumentEntryDatasByExpressionNav(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 <AsycudaDocumentEntryDataExcelLine, List <AsycudaDocumentEntryDataExcelLine> >
            {
                dataToPrint = lst.Select(x => new AsycudaDocumentEntryDataExcelLine
                {
                    EntryDataId = x.EntryDataId
                }).ToList()
            };

            using (var sta = new StaTaskScheduler(numberOfThreads: 1))
            {
                await Task.Factory.StartNew(s.GenerateReport, CancellationToken.None, TaskCreationOptions.None, sta).ConfigureAwait(false);
            }
        }
예제 #2
0
 internal async void OnCurrentAsycudaDocumentEntryDataIDChanged(object sender, NotificationEventArgs <string> e)
 {
     using (AsycudaDocumentEntryDataRepository ctx = new AsycudaDocumentEntryDataRepository())
     {
         CurrentAsycudaDocumentEntryData = await ctx.GetAsycudaDocumentEntryData(e.Data).ConfigureAwait(continueOnCapturedContext: false);
     }
     NotifyPropertyChanged(m => CurrentAsycudaDocumentEntryData);
 }
        public async Task SelectAll()
        {
            IEnumerable <AsycudaDocumentEntryData> lst = null;

            using (var ctx = new AsycudaDocumentEntryDataRepository())
            {
                lst = await ctx.GetAsycudaDocumentEntryDatasByExpressionNav(vloader.FilterExpression, vloader.NavigationExpression).ConfigureAwait(continueOnCapturedContext: false);
            }
            SelectedAsycudaDocumentEntryDatas = new ObservableCollection <AsycudaDocumentEntryData>(lst);
        }
        public IList <AsycudaDocumentEntryData> LoadRange(int startIndex, int count, SortDescriptionCollection sortDescriptions, out int overallCount)
        {
            try
            {
                if (FilterExpression == null)
                {
                    FilterExpression = "All";
                }
                using (var ctx = new AsycudaDocumentEntryDataRepository())
                {
                    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 <AsycudaDocumentEntryData>());
            }
        }