Het event DuringSave van BookingEgine wordt net voor de transfer van de lijnen van de tijdelijke tabel #LIGNES_C_TMP vers #LIGNES_C uitgevoerd op de SQL-server. Op dat ogenblik zijn de lijnen in de tijdelijke tabel volledig.
Let op: met deze tool moet u voorzichtig zijn, aangezien het op een tijdelijke tabel werkt, is het niet meer mogelijk om een UpdateAmount uit te voeren om de totalen opnieuw te berekenen. De op deze plaats aangebrachte wijzigingen mogen dus geen wijzigingen inhouden in de hoofding van het document.
Het event heet als volgt:
bookingEngine.DuringSave += new MercatorUi.Engine.Cpta.BookingEngine.DuringSaveEventHandler(bookingEngine_DuringSave);
Een typecode kan de volgende zijn:
void bookingEngine_DuringSave(object sender, MercatorUi.Engine.Cpta.BookingEngine.DuringSaveEventArgs e)
{
e.SqlCommand.CommandText = "update #lignes_c_tmp set..." ;
if (!Api.SqlExec(e.SqlCommand))
e.CancelSave = true ;
}
Er zijn twee eigenschappen in het eventArgs:
Gebruiksvoorbeeld: Meerdere vervaldata hebben bij het boeken van een verkoop