Mercator heeft een algemene optie die toegankelijk is via "Tools / Opties / Anderen : Enkel hoofdletters" (id = FORCE_MAJ ) waarmee u alle tekst velden in configureerbare schermen (informatiebestanden, CRM-acties, commercieel beheer documenten, inventarissen, depot-transfers, boekingen) zo kunt configureren dat ze altijd in hoofdletters worden ingevoerd. Deze optie is algemeen, omdat ze invloed heeft op alle tekst velden behalve e-mails, URL's en afdrukmodellen.
Als je hoofdletters slechts in een beperkt aantal velden wil forceren, volstaat het om een aangepaste code te implementeren zoals in de voorbeelden hieronder.
Voor het leverancier informatiebestand
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorExtensions;
using MercatorUi;
using System.Windows.Forms;
using System.Linq;
namespace SigFou
{
public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer
{
public void FormLoadCustomize(Form form)
{
MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
string[] sourcesUppercase = new string[] { "F_NOM", "F_ADRESSE", "F_ADRESSE2", "F_VILLE" };
foreach (string sourceUppercase in sourcesUppercase)
foreach (var textBox in sigForm.MovableControls.Values.OfType<MercatorUi.MovableControls.MovableTextBox>().Where(t => t.Source == sourceUppercase))
{
textBox.CharacterCasing = CharacterCasing.Upper;
}
}
}
}
Voor een document van het commercieel beheer
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorExtensions;
using MercatorUi;
using System.Windows.Forms;
using System.Linq;
namespace Billing
{
public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer
{
public void FormLoadCustomize(Form form)
{
MercatorUi.Forms.Billing.BillingForm billingForm = (MercatorUi.Forms.Billing.BillingForm)form;
string[] sourcesUppercase = new string[] { "REFERENCE", "NOTE1", "LIBRE1" };
foreach (string sourceUppercase in sourcesUppercase)
foreach (var textBox in billingForm.MovableControls.Values.OfType<MercatorUi.MovableControls.MovableTextBox>().Where(t => t.Source == sourceUppercase))
{
textBox.CharacterCasing = CharacterCasing.Upper;
}
}
}
}