Het aanvangstijdstip wordt geïnitialiseerd op het eindtijdstip van de voorgaande prestatie

0000002212     -      28-07-2016

De customer die gekoppeld is aan het invoerscherm voor prestaties maakt het mogelijk om het eindtijdstip van de voorgaande prestatie voor te stellen als aanvangstijdstip van de volgende prestatie. Deze customizer die in de betreffende sequenties moet worden geplaatst, implementeert de volgende interfaces:

Maakt vooral gebruik van het event ProviderTimePanelLoaded en ProviderTimeBeforeOkvan de BillingEngine van het huidige document. Het laatste eindtijdstip wordt opgeslagen in de dictionary MercatorUi.Globals.FreeTags, met de sleutel last_prest_h2.

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.ProviderTimePanelLoaded += new MercatorUi.Engine.Gescom.BillingEngine.ProviderTimePanelLoadedEventHandler(BillingEngine_ProviderTimePanelLoaded);
            BillingEngine.ProviderTimeBeforeOk += new MercatorUi.Engine.Gescom.BillingEngine.ProviderTimeBeforeOkEventHandler(BillingEngine_ProviderTimeBeforeOk);
        }

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

        void BillingEngine_ProviderTimePanelLoaded(object sender, MercatorUi.Engine.Gescom.BillingEngine.ProviderTimePanelLoadedEventArgs e)
        {
            if (Globals.FreeTags.ContainsKey("last_prest_h2") && (e.ProviderTimePanel.HourMinBegin.Text == "00:00"))
                e.ProviderTimePanel.HourMinBegin.Text = Globals.FreeTags["last_prest_h2"].ToString();
        }

        void BillingEngine_ProviderTimeBeforeOk(object sender, MercatorUi.Engine.Gescom.BillingEngine.ProviderTimeBeforeOkEventArgs e)
        {
            if (Globals.FreeTags.ContainsKey("last_prest_h2"))
                Globals.FreeTags["last_prest_h2"] = e.ProviderTimePanel.HourMinEnd.Text;
            else
                Globals.FreeTags.Add("last_prest_h2", e.ProviderTimePanel.HourMinEnd.Text);
        }
    }
}

 



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)