public static void MakeAccountStatement(ImportedFile obj, MethodReturnEventArgs <AccountStatement> e)
        {
            var ctx  = obj.Context;
            var stmt = ctx.Create <AccountStatement>();

            stmt.File = obj.MakeReadonlyFile();
            stmt.File.AttachedTo.SetObject(stmt);
            e.Result = stmt;
        }
        public static void MakeOtherExpense(ImportedFile obj, MethodReturnEventArgs <OtherExpenseReceipt> e)
        {
            var ctx = obj.Context;
            var dlg = _factory.CreateViewModel <DataObjectSelectionTaskViewModel.Factory>().Invoke(ctx, null, typeof(OtherExpenseReceipt).GetObjectClass(_frozenCtx), null, (sel) =>
            {
                if (sel != null)
                {
                    var receipt      = (OtherExpenseReceipt)sel.First().Object;
                    receipt.Document = obj.MakeReadonlyFile();
                    receipt.Document.AttachedTo.SetObject(receipt);
                    e.Result = receipt;
                }
            }, null);

            _factory.ShowDialog(dlg);
        }
        public static void MakeInvoice(ImportedFile obj, MethodReturnEventArgs <PurchaseInvoice> e)
        {
            var ctx = obj.Context;
            var dlg = _factory.CreateViewModel <DataObjectSelectionTaskViewModel.Factory>().Invoke(ctx, null, typeof(PurchaseInvoice).GetObjectClass(_frozenCtx), null, (sel) =>
            {
                if (sel != null)
                {
                    var invoice      = (PurchaseInvoice)sel.First().Object;
                    invoice.Document = obj.MakeReadonlyFile();
                    invoice.Document.AttachedTo.SetObject(invoice);
                    e.Result = invoice;
                }
            }, null);

            _factory.ShowDialog(dlg);
        }