Bij geldopnames - bankstortingen kan worden gecontroleerd of het opgenomen bedrag het bedrag in de kassa niet overschrijdt. Deze controle wordt uitgevoerd per betaalmethode en per valuta.
Hieronder staat een voorbeeld van code die een waarschuwing weergeeft als deze wordt overschreden:
// <CompileWithRoslyn />
namespace Gescom
{
public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer, MercatorUi.ICustomizers.IFormClosedCustomizer
{
public void FormLoadCustomize(System.Windows.Forms.Form form)
{
if (form is MercatorUi.Forms.Gescom.GescomCashDepositBankRemittingForm gescomCashDepositBankRemittingForm)
gescomCashDepositBankRemittingForm.HandlingError += GescomCashDepositBankRemittingForm_HandlingError;
}
public void FormClosedCustomize(System.Windows.Forms.Form form)
{
if (form is MercatorUi.Forms.Gescom.GescomCashDepositBankRemittingForm gescomCashDepositBankRemittingForm)
gescomCashDepositBankRemittingForm.HandlingError -= GescomCashDepositBankRemittingForm_HandlingError;
}
private void GescomCashDepositBankRemittingForm_HandlingError(object sender, MercatorUi.Forms.Gescom.GescomCashDepositBankRemittingForm.HandlingErrorEventArgs e)
{
e.Action = MercatorUi.Forms.Gescom.GescomCashDepositBankRemittingForm.HandlingErrorEnum.Warning;
}
}
}
Door de waarde van e.Action te veranderen, is het mogelijk ander gedrag te produceren:
- CancelSave : stop het opslaan. De aangepaste code zou idealiter een bericht moeten weergeven.
- AcceptAndContinue :verdergaan
Deze code toont hoe een blokkerend bericht kan worden weergegeven:
private void GescomCashDepositBankRemittingForm_HandlingError(object sender, MercatorUi.Forms.Gescom.GescomCashDepositBankRemittingForm.HandlingErrorEventArgs e)
{
MercatorUi.Dialogs.Stop(string.Format("{0} : het opgenomen bedrag {1} {3} is groter dan het bedrag in kas {2} {3} !"
, e.LibPaiem, Api.Transform(e.Amount, e.PictDev), Api.Transform(e.Caisse, e.PictDev), e.NomDev));
e.Action = MercatorUi.Forms.Gescom.GescomCashDepositBankRemittingForm.HandlingErrorEnum.CancelSave;
}