Advanced topics

1. The myTracker provide a very powerful feature, but there could be situation in which you want to connect your myTracker data with your owns. In my tracker there is no direct possibility to connect for example a choice field with detail table for Master-Detail relationship. So if you want to achieve this for reporting you must add your own detail table to achieve Activity - hourly rate relationship or Customer (Choice list) - customer adress, ... If you add such external objects (detail tables) you can make reports with inner joins to achieve your own customized full featured reports.

2. An another optimization area is the database access. There are several cases in which you need to filter something and you cannot direct write a simple select for this purpose. So can you add your own views, stored procedures or triggers.

Example:
We need a last 10 changed issues query.

So we add a new view:
CREATE VIEW LASTCHANGES ( ISSUE, ATTIME )
AS
SELECT ISSUE, MAX(ATTIME) FROM ISSUECHANGE GROUP BY ISSUE

and the query as:
SELECT FIRST 10 ISSUE.* FROM ISSUE
INNER JOIN LASTCHANGES ON LASTCHANGES.ISSUE = ISSUE.ID ORDER BY ATTIME DESC

3. In myTracker there are is no index on any DB table. So if you have a lot of data records you can consider to add some.

4. If you need generate (update after a new version) the *.lng files. You can start the client console and server console with parameter myTrackerClient.exe [-lang]. So after closing the application it will insert the missing entries. So you can freely delete everything after [MainForm] inclusive and rebuild an actual version of *.lng file.