I was looking for an elegant (i.e. lazy) solution for recording changes in a "History" log and I noticed the GET_CHANGES function in the user guide. There is very little explanation and no example of the output. So for what it's worth, here is my experience.
The output is generated as HTML and looks like this (brackets used to generalize the example some):
<div>Created instance [instance #] of [BO]
</div>
<div>
<table border="1" >
<th>Attribute</th>
<th>Old value</th>
<th>New value</th>
<tr>
<td>[Attribute]</td>
<td>This should work</td>
<td>This should work now
</td>
</tr>
</table>
</div>
The table reflects all attributes changed in the BO.
I didn't want the instance/BO stuff at the beginning, so after some trial and error, I was able to remove it using:
[HistoryBO.Attribute]='<div><table '+WORDS_FROM_RIGHT(GET_CHANGES([BO]),WORD_NUMBER(GET_CHANGES([BO]))-5)
I hope that was useful and if you have any suggestions for improvement to my "elegant" solution, please share.
BTW if support sees this, it would be great if you could add a parameter to use the attribute label instead of the attribute name. I realize that this GET_CHANGES function was probably not meant for customers' eyes, but that's the way I want to use it.