Vanuit een 'Commercieel Beheer'-document wordt het middelenbeheer geactiveerd op projectniveau. De verbruikshoeveelheid komt overeen met de waarde in een optioneel veld Q_RESS. De kleur komt overeen met het documenttype. De omschrijving komt overeen met de waarde uit het vrije veld TEKST.
Installatie van deze configuratie:
- Installeer de trigger TR_LIGNESV_RESS_PROJ_DEL door de content van het bestand TR_LIGNESV_RESS_PROJ_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_LIGNESV_RESS_PROJ_DEL).
- Installeer de trigger TR_LIGNESV_RESS_PROJ_INS door de content van het bestand TR_LIGNESV_RESS_PROJ_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_LIGNESV_RESS_PROJ_INS).
- Plaats deze customizer in de sequentie:
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 = "Gantt";
btnRess.ToolTipText = "Gantt";
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_PROJ"].Value.ToString())
{
billingForm.BillingEngine.LIGNES.Rows[e.RowIndex]["ID_PROJET"] = ressSelect.ret_id_sig;
string lib_proj = MercatorController.xFunctions.xLookUpString("PROJ", "P_ID", ressSelect.ret_id_sig, "P_NOM");
Grid.Rows[e.RowIndex].Cells["lib_proj"].Value = lib_proj;
}
}
}
}
}
}
}
}
Te laden :
0000002557.zip (1 Kb - 09-10-2015)