# Extending Tracking Log

**URL:** <https://forum.servoy.com/t/extending-tracking-log/5426>\
**Category:** Classic Servoy\
**Created:** [February 1, 2006, 8:45pm UTC](https://forum.servoy.com/t/extending-tracking-log/5426 "2006-02-01T20:45:32Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![clifwlkr](https://avatars.discourse-cdn.com/v4/letter/c/848f3c/32.png) [@clifwlkr](https://forum.servoy.com/u/clifwlkr)\
**Post date:** [February 1, 2006, 8:45pm UTC](https://forum.servoy.com/t/extending-tracking-log/5426/1 "2006-02-01T20:45:32Z")

</div>

OK, I have another one for the forum…

Is there any way in servoy (or through a plugin) to extend the information placed into the tracking log? I have a global variable that contains information about additional identity information that really is needed to be compliant with a standard. As of right now, I can see no way to add in an additional column to the tracking log. I want this global stored with every tracking item at the time the tracking occurs. I can try to fix it up afterwards, but that is not very secure (i.e. through a stored calculation).

Does servoy provide any method for extending the internal modules in general? I am a very good java programmer and would be happy to super class some of these internals to do what I need, but I can’t find any methodology to do this. It seems that the plugin interface does not provide this level of functionality.

Are my assumptions correct on this? Can anyone think of a clever way around my tracking problem?

With the many different security standards out there, it would be very nice to have access to the tracking and session information from within Servoy.

Jim Olsen

---

<div class="post-metadata">

**Author:** ![Jan\_Blok](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@Jan\_Blok](https://forum.servoy.com/u/Jan_Blok)\
**Post date:** [March 21, 2006, 8:38am UTC](https://forum.servoy.com/t/extending-tracking-log/5426/2 "2006-03-21T08:38:55Z")

</div>

In Servoy 3.0 final, it will be possible to define/have your own user\_uid (also to be able to use LDAP id and such) whould it help we store that user\_uid besides the current user\_name in the log table? (if you don’t use the custom user\_uid it will use the currrent user\_id)

Whould this help?

---

<div class="post-metadata">

**Author:** ![clifwlkr](https://avatars.discourse-cdn.com/v4/letter/c/848f3c/32.png) [@clifwlkr](https://forum.servoy.com/u/clifwlkr)\
**Post date:** [March 21, 2006, 2:49pm UTC](https://forum.servoy.com/t/extending-tracking-log/5426/3 "2006-03-21T14:49:35Z")

</div>

Well in our case it won’t help that much. It would be really nice to register a call back that allowed us to log our own information alongside the standard information. In our case, the information is actually about a patient record and the name of the patient they are changing at that time. I got around the problem by creating an sql trigger and populating the tracking log that way. I would much prefer to keep the solution entirely within Servoy.

I would love to see some call backs or event mechanisms within Servoy. It would expand the power of the plugin mechanism and create a more dynamic solution.

Jim

---

<div class="post-metadata">

**Author:** ![bcusick](https://avatars.discourse-cdn.com/v4/letter/b/ed8c4c/32.png) [@bcusick](https://forum.servoy.com/u/bcusick)\
**Post date:** [March 21, 2006, 5:32pm UTC](https://forum.servoy.com/t/extending-tracking-log/5426/4 "2006-03-21T17:32:15Z")

</div>

You can use the onDataChange event on a field to make log entries. I’ve done this on other medical applications - and it works great.

SAMPLE

```auto
var oldData = arguments[0] //always has the "before" value
var newData = fieldName //new value

forms.myLogForm.controller.newRecord()
forms.myLogForm.oldValue = oldData
forms.myLogForm.newValue = newData
forms.myLogForm.pk = pk_id
forms.myLogForm.user = globals.user_id
forms.myLogForm.controller.saveData()

```

Hope this helps point you in the right direction.
