![]() |
Languages »
C# »
General
Intermediate
License: The Code Project Open License (CPOL)
zeta HelpDeskBy Uwe KeimAn application to manage support request with tickets and events |
C#, SQL, VC8.0, Windows, .NET 2.0, ADO.NET, SQL 2000, SQL 2005, VS2005, DBA, Dev
|
||||||||||
|
Advanced Search Add to IE Search |
|
|
|
||||||||||||||||
(Please see the version history below for the latest changes)
(Please visit zeta-helpdesk.com for latest up-to-date information about zeta HelpDesk)

Image: Main window of zeta HelpDesk, showing the current tasks tab
Some time ago, early in 2005, our rather small (7 person) company felt that it was in the need to somehow collect, document and hopfully bill the support requests we got for our many applications and websites we have created for our customers.
Of course, I did some research about free/inexpensive applications. I found nothing suitable (probably every programmer behaves that way when searching for apps he could develop by himself). Then I search some more and still found nothing.
Now the idea was born: Develop my own application to fit the requirements we had and have. I wanted to reach the following goals:
I will constantly enhance this article, as I implement new features and build new releases of the application. See the version history for changes.
The version you will find in this article is a snapshot version. Please do keep this in mind all the time! It is not tested in-deep, and the setup process (especially setting up the database) could be a kind difficult.
In short, the following items apply, potentially having negative effects:
Nonetheless we use the application daily by ourself and the application is in a very stable state for our requirements. So you should be able to successfully install and use the application.
I encourage everyone that is looking for a lightweight helpdesk system to use this application. I try to do my best to reply to any support calls you write to the comments section at the bottom of the article as fast as I can.

Image: Main window of zeta HelpDesk, showing the tickets tab
As said before, my core definition of a helpdesk system is a practical view (my practical view), not a theoretical:
The application introduced here does have more than these features (and will add in the future), but this is my core definition.
The zeta HelpDesk application consists of the following blocks of functionality:
The first three items are currently implemented and working. Not all in-deep, but rather good working. From the "Miscellaneous" item, the printing functionality is working, the search functionality is the next thing I'm going to implement.

Image: Ticket edit window of zeta HelpDesk
(Added 2005-10-20). The dialog for searching for tickets now works in a first, very simple, version:

Image: Search dialog for tickets
In the first version of this I article, please excuse that I don't write much about the code. I'm going to enhance this section as the application evolves and code enances. Nevertheless I'm convinced that the code is rather stable and "good".
The zeta HelpDesk application itself is developed with the newest Visual Studio .NET 2005, which is the release candidate (RC) from september 2005. The compiled version in the attachment of this article therefore requires the "dotnetfx.exe" that comes with the Visual Studio .NET 2005 RC.
In all of my .NET 1.1 applications I wrote until now, I used my own developed wrappers to access the ADO.NET classes. I really tried to give the database-related classes, wizards, wrappers, typed DataSets, etc. of Visual Studio .NET 2005 a chance. But after several tries, I again went back to my own, well-tested and proofen classes.
I really do hate all this database-related stuff that ships with Visual Studio .NET 2005. Probably I'll give it another try some day, but currently I do not have the time for experiments.

Image: Ticket event edit window of zeta HelpDesk
If you were ever in the need for a Windows Forms TimeSpanPicker control (I searched for one without success some time ago), the application contains a library with a TimeSpanPicker control a co-worker of mine (Stephan Ruhland) developed some month ago.
No source for this control is included yet, but if you really need the source, just use Lutz Roeder's .NET Reflector to view it for now (or maybe asking Stephan to release it would help, too).
Due to requests in the comments section below, I now published the base library that the zeta HelpDesk uses as a separate article. Please look there if you want to use the base library in your own projects.
The application itself currently has no installation routine (i.e. no "setup.exe"). Instead, please perform the following steps to get a running version:
Because I got a response from Sven that he has no access to SQL Server Query Analyzer, I enhanced the application with a new dialog to setup up the database directly through zeta HelpDesk.

Image: Executing a SQL query from within zeta HelpDesk
To use the integrated method, open the "Execute SQL query" dialog by clicking the "Tools" main menu and then the "Execute SQL query" menu item. Open the "ZetaHelpDesk.sql" script and execute it.
When you first start the zeta HelpDesk (being unconfigured) it is likely that it brings you an exception window. This window has a drop down menu (the button on the lower left side) that opens a configuration menu:

Image: Exception window with drop down menu
Use the "Execute SQL query" menu item to show the dialog mentioned above.
To simplify your live when it comes to report errors to me (the author of the software) and to get updates of the software, I added the following three functions/items:


In this article I introduced a first version of my helpdesk system "zeta HelpDesk".
It was and is a lot of fun to develop this application. I hope that this is the helpdesk tool you searched for all of your life. Or that one day it will become your system of choice! Currently it is under heavy/medium development; i.e. I will add and adjust/refactor features from time to time making it a more "round" application. Of course I will quickly fix any occuring bugs. Just write them in the comments section below.
Also, please notify me of any suggestions, tips, questions, bugs, enhancments or whatever you want to give me feedback about! Thank you!
Please remember: Your feedback drives my development efforts and directions.
I don't give much on all this license stuff. But if you do, it would be nice if you follow these terms:
Use the software and source code for whatever you want; e.g. install it, compile it, enhance it, take parts of the source into your own projects. If you plan to sell your enhanced version, I would of course be glad to get a small percentage of the money you make or that you just mention my name. But that is all up to you, of course.
This applies to all source code and binaries that you can download from this article on the CodeProject website.

General
News
Question
Answer
Joke
Rant
Admin
|
PermaLink |
Privacy |
Terms of Use
Last Updated: 4 Nov 2006 Editor: |
Copyright 2005 by Uwe Keim Everything else Copyright © CodeProject, 1999-2009 Web20 | Advertise on the Code Project |