Eindtijdstip afgerond naar het bovenliggend kwartier

0000002214     -      09-10-2015

Met deze customizer is het mogelijk om het eindtijdstip af te ronden naar het bovenliggend kwartier bij het afronden van het invoerscherm van de prestaties. Deze customizer die in de betreffende sequenties moet worden geplaatst, implementeert de volgende interfaces:

Maakt vooral gebruik van het event ProviderTimeBeforeOk van de BillingEngine van het huidige document.

De code wordt als volgt samengesteld:

Zoom
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Windows.Forms;
using MercatorApi;
using MercatorUi;

namespace Billing
{
    public class Customizer : MercatorUi.ICustomizers.IBillingEngineCreated, MercatorUi.ICustomizers.IBillingEngineClosed
    {

        public void BillingEngineCreated(MercatorUi.Engine.Gescom.BillingEngine BillingEngine)
        {
            BillingEngine.ProviderTimeBeforeOk += new MercatorUi.Engine.Gescom.BillingEngine.ProviderTimeBeforeOkEventHandler(BillingEngine_ProviderTimeBeforeOk);
        }

        public void BillingEngineClosed(MercatorUi.Engine.Gescom.BillingEngine BillingEngine)
        {
            BillingEngine.ProviderTimeBeforeOk -= new MercatorUi.Engine.Gescom.BillingEngine.ProviderTimeBeforeOkEventHandler(BillingEngine_ProviderTimeBeforeOk);
        }

        void BillingEngine_ProviderTimeBeforeOk(object sender, MercatorUi.Engine.Gescom.BillingEngine.ProviderTimeBeforeOkEventArgs e)
        {
            int min2 = Api.ValSafeInt(e.ProviderTimePanel.HourMinEnd.Text.Substring(3, 2));
            if ((min2 > 0) && (min2 < 15))
                e.ProviderTimePanel.HourMinEnd.Text = e.ProviderTimePanel.HourMinEnd.Text.Substring(0, 3) + "15";
            else if ((min2 > 15) && (min2 < 30))
                e.ProviderTimePanel.HourMinEnd.Text = e.ProviderTimePanel.HourMinEnd.Text.Substring(0, 3) + "30";
            else if ((min2 > 30) && (min2 < 45))
                e.ProviderTimePanel.HourMinEnd.Text = e.ProviderTimePanel.HourMinEnd.Text.Substring(0, 3) + "45";
            else if ((min2 > 45) && (min2 <= 59))
                e.ProviderTimePanel.HourMinEnd.Text = Convert.ToString(Api.ValSafeInt(e.ProviderTimePanel.HourMinEnd.Text.Substring(0, 2)) + 1).PadLeft(2, '0') + ":00";
        }
    }
}

 



Functionele cookies: Cookies die nodig zijn voor het gebruik van de website en voorkeurscookies. Ze bevatten geen persoonsgegevens. (Meer informatie)

Analytische cookies: Verzamelen van statistieken met betrekking tot het gedrag van internetgebruikers. (Meer informatie)

Marketingcookies: Om bezoekers op verschillende websites te volgen voor advertentiedoeleinden. (Meer informatie)