We have a Windows application that allows users to track time and expenses spent on various projects. To see an application that is very *similar* to ours, please visit <[login to view URL]>.
Users can organize their entries by clients and projects. There can be multiple clients, each of which can have multiple projects, and each project can have multiple entries.
The goal of this project is to create an **"Invoice Generator"** utility that will create invoices based on a list of entries. Our application will allow the user to select a list of entries for a given client and project. It will then pass this list, along with the client and project information to the Invoice Generator.
The Invoice Generator allows the user to select a *"template"* for the invoice. All templates will be stored in one folder (e.g. C:\Program Files\[MyAppName]\InvoiceTemplates).
A template is simply an HTML page with special tags that will be replaced with real data when the invoice is created. For example, a template can include a tag like ** ** OR . When the invoice is generated, this tag will be replaced by the real client name. Any "static" content such as images, text etc. will be ignored. In other words, only populate the special tags that our application recognizes.
After the invoice is generated, it will be loaded and displayed in a resizable dialog box with an embedded browser window. The user can print the invoice from within the dialog.
Here is an example of templates in a product very similar to ours: <[login to view URL]>. Please see the **"indigraf"** template to see how custom tags are used.
## Deliverables
*We are accepting bids from both, Visual C++ and C# developers.
*
**If Visual C++: **Deliverable will be an external DLL (e.g. [login to view URL]). It will export one function or class to invoke the invoice generator user interface. When needed, our application will load the DLL at runtime, and pass it the data needed to do its work.
**If C#:** Deliverable will be a stand-alone C# application. Our application will provide you data using XML or some other means.
You will provide us complete and fully-functional working DLL or EXE as well as complete source code of all work done.
All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
**Development Environment:** Our overall application is written in Visual C++ with MFC support. We welcome bids to develop the invoice generator in either Visual C++ or C# .NET. **Please mention which language you will use in your bid.**
**If Visual C++:** You will need to link against a DLL/library we provide, which will contain classes for the various entities used such as: CClient, CProject, CEntry etc.
**If C#:** We will provide the data in XML format so the .NET app will be completely standalone.
We are currently in the process of migrating the entire application to Visual Studio 2005 (Beta 2) with MFC 8.0. So if you can create the application in Visual Studio 2005, it will be a plus. Visual Studio 2003 is also OK. *Visual C++ 6.0, VB6/VB.NET etc. is not acceptable.* **Please mention which IDE you will be using in your bid.**