U bevindt zich nu op een technische pagina over de software Mercator. Deze pagina bevat specifieke informatie die bestemd is voor professionals van de software Mercator. Wenst u naar algemenere informatie over Mercator door te gaan?


   Deze vraag niet meer stellen

Voorbeeld 3: implementatie van middelenverbruik

0000002558     -      08-10-2015

Vanuit een 'Productiebeheer'-document wordt het middelenbeheer geactiveerd op het niveau van het 4e informatiebestand. De verbruikshoeveelheid komt overeen met de waarde in een optioneel veld Q_RESS. De kleur komt overeen met een atelier dat manueel gekozen werd in een optioneel veld ATELIER. De omschrijving komt overeen met de benaming van het artikel op diezelfde lijn.

Installatie van deze configuratie:

  • Installeer de trigger TR_LIGNESA_RESS_DEST_DEL door de content van het bestand TR_LIGNESA_RESS_DEST_DEL.sql te kopiëren op een SQL tabblad van de code editor (deze trigger kan worden verwijderd door uitvoering van het volgende commando: drop trigger TR_LIGNESA_RESS_DEST_DEL).
     
  • Installeer de trigger TR_LIGNESA_RESS_DEST_INS door de content van het bestand TR_LIGNESA_RESS_DEST_INS.sql te kopiëren op een SQL tabblad van de code editor (deze trigger kan worden verwijderd door uitvoering van het volgende commando: drop trigger TR_LIGNESA_RESS_DEST_INS).
     
  • Voeg een kolom bij in de rooster van de sequentie met
    • de eigenschap Source : Werkplaats
    • de eigenschap SqlQuery : <items>Werkplaats 1,Werkplaats 2,Werkplaats 3,Werkplaats 4,Werkplaats 5,Werkplaats 6,Werkplaats 7,Werkplaats 8,Werkplaats 9</items>
       
  • Plaats deze customizer in de sequentie:
Zoom
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Windows.Forms;
using MercatorApi;
using MercatorUi;
using System.Drawing;

namespace Billing
{
    public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer,
        MercatorUi.ICustomizers.IFormClosedCustomizer
    {
        public void FormLoadCustomize(System.Windows.Forms.Form WindowsForm)
        {
            MercatorUi.Forms.Billing.BillingForm billingForm = (MercatorUi.Forms.Billing.BillingForm)WindowsForm;
            LinesEditorGrid_DefineColumns(billingForm.LinesEditor.Grid);
            billingForm.LinesEditor.Grid.CellSuperClick += new MercatorUi.GridPro.CellSuperClickHandler(LinesEditorGrid_CellSuperClick);
        }
        public void FormClosedCustomize(System.Windows.Forms.Form WindowsForm)
        {
            MercatorUi.Forms.Billing.BillingForm billingForm = (MercatorUi.Forms.Billing.BillingForm)WindowsForm;
            billingForm.LinesEditor.Grid.CellSuperClick -= new MercatorUi.GridPro.CellSuperClickHandler(LinesEditorGrid_CellSuperClick);
        }

        private void LinesEditorGrid_DefineColumns(MercatorUi.GridPro.DataGridViewXPro grid)
        {
            MercatorUi.GridPro.DataGridViewHidableButtonXColumn btnRess = new MercatorUi.GridPro.DataGridViewHidableButtonXColumn();
            btnRess.Name = "btnRess";
            btnRess.Width = 30;
            btnRess.HeaderText = "";
            btnRess.Text = "Grantt";
            btnRess.ToolTipText = "Grantt";
            grid.Columns.Add(btnRess);
            grid.Columns["btnRess"].Width = 30;
        }
        private void LinesEditorGrid_CellSuperClick(object sender, DataGridViewCellEventArgs e)
        {
            MercatorUi.GridPro.DataGridViewXPro Grid = (MercatorUi.GridPro.DataGridViewXPro)sender;
            MercatorUi.Forms.Billing.BillingForm billingForm = (MercatorUi.Forms.Billing.BillingForm)Grid.FindForm();

            if ((e.RowIndex > -1) && (e.ColumnIndex > -1))
            {
                if (Grid.Columns[e.ColumnIndex].Name == "btnRess")
                {
                    MercatorUi.GridPro.DataGridViewHidableButtonXCell cellBtnRess = (MercatorUi.GridPro.DataGridViewHidableButtonXCell)Grid.Rows[e.RowIndex].Cells[e.ColumnIndex];

                    using (MercatorUi.Forms.Sig.SigDialogs.Ress.RessSelect ressSelect = new MercatorUi.Forms.Sig.SigDialogs.Ress.RessSelect(MercatorUi.Sig._SigEnum.PROJ, Grid.Rows[e.RowIndex].Cells["ID_PROJ"].Value.ToString(), (DateTime)billingForm.BillingEngine.LIGNES.Rows[e.RowIndex]["MOMENT1"], (DateTime)billingForm.BillingEngine.LIGNES.Rows[e.RowIndex]["MOMENT2"]))
                    {
                        ressSelect.ShowDialog(Globals.iw);
                        if (ressSelect.DialogResult == DialogResult.OK)
                        {
                            billingForm.BillingEngine.LIGNES.Rows[e.RowIndex]["MOMENT1"] = ressSelect.ret_moment1;
                            billingForm.BillingEngine.LIGNES.Rows[e.RowIndex]["MOMENT2"] = ressSelect.ret_moment2;
                            Dialogs.Stop(ressSelect.ret_id_sig);
                            if (ressSelect.ret_id_sig != "" && ressSelect.ret_id_sig != Grid.Rows[e.RowIndex].Cells["ID_DEST"].Value.ToString())
                            {
                                billingForm.BillingEngine.LIGNES.Rows[e.RowIndex]["ID_DESTIN"] = ressSelect.ret_id_sig;
                                string lib_proj = MercatorController.xFunctions.xLookUpString("DEST", "D_ID", ressSelect.ret_id_sig, "D_NOM");
                                Grid.Rows[e.RowIndex].Cells["lib_dest"].Value = lib_proj;
                            }
                        }
                    }
                }
            }
        }
    }
}

 



Te laden : 0000002558.zip (1 Kb - 09-10-2015)