You are here:   Silverlight 4.0 > Expense Report
  |  Login
 Expense Reports (Live Demo)
 A DotNetNuke Silverlight Expense Report Module


This module allows you to easily gather, and process Expense Reports, from users in your DotNetNuke portal.

Note: Make sure you install, and run LinqPrep before installing the module.

Creating An Expense Report

When portal users access the module, they will enter a name and a description for each of their Expense Reports.

They will enter the report details in the bottom section.

Because this is a Silverlight application, they can attach a scan of their receipt, that can be any size.

They simply click, Insert to add the detail item.

  • The line items show up in a sortable Grid.
  • Items can be deleted by clicking the "X" next to each line (a confirmation box will show).
  • The scans can be viewed by clicking the paper clip icon.
  •  A summary and total is displayed on the right side.

The Expense Report can then be Printed.

The Expense Report, is printed, using a template that can easily be altered using Microsoft Expression Blend.

The default template provides a line to sign, and date the report.

For some organizations, it is convenient to have the users scan in their signed Expense Report.

When an Administrator logs in, they will see a dropdown that shows the users that have submitted an Expense Report. They can select the user to see all their reports.

The Administrator will usually Lock the report while they are processing it.

The original user, will still be able to see the report, but they will not be able to make any changes unless the Administrator unlocks it.

The Administrator will usually mark it Approved after reviewing all the scanned receipts. This allows the accounting personnel to know when they should reimburse the user.

After accounting has reimbursed the user, the Expense Report is then marked Completed.

Advantages of Using Silverlight

  • It is faster - When viewing the Expense Reports for a single user, there are no post-backs. The application moves considerably faster than a normal web application.
  • It will not time-out - Normal web applications require you to input something every 20 minutes, or you will be timed-out, and will lose any un-saved information.
  • Large file uploads - Users can upload scans of any size.
  • It can be re-designed with no code - This application was created using View Model / MVVM. This allows a designer, to completely redesign this application using Microsoft Expression Blend, with no code changes. Simply open the source up and make changes. When you compile the changes, it will create a "ExpenseReports.xap" file. Simply replace the file in the "DesktopModules\ExpenseReports\ClientBin" directory and you're done!