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

In de zoekfunctie "Alles" van een informatiebestand, zoeken in extra velden

0000003325     -      10-09-2025

Mercator beschikt over een functionaliteit die het mogelijk maakt om in een informatiebestand in alle sleutels te zoeken. Zie punt 1 van deze pagina: Zoek op alle criteria.

De onderstaande code laat zien hoe deze zoekfunctie ook kan worden toegepast op andere kolommen, eventueel behorend tot andere tabellen.

Op dit punt in het programma genereert Mercator een where-clausule die, bijvoorbeeld voor de artikels, vergelijkbaar is met:

(S_MODELE like '{0}%') or (S_CLE1 like '{0}%') or (S_CLE2 like '{0}%') or (S_ID like '{0}%') 
or exists(SELECT * from ARTFOU (NOLOCK) where (artfou.id_art=stock.s_id) and (REF_FOU like '{0}%'))
or exists(SELECT * from NUMSERIES (NOLOCK) where (numseries.id_art=stock.s_id) and (numseries.NUM_SERIE like '{0}%'))

Deze clausule kan worden aangepast via het event SearchingAll van de klasse MercatorUi.Sig.Sig.

De onderstaande code breidt de zoekfunctie uit naar 

  • S_MODELEN van de tabel STOCK,
  • de naam van het rayon.
Zoom
namespace SigStock
{
    public class Customizer : MercatorUi.ICustomizers.ISigCreated
    {

        public void SigCreated(MercatorUi.Sig.Sig sig) // Mercator moet worden herstart om de wijzigingen in de customizer via SigCreated door te voeren.
        {
            sig.SearchingAll += Sig_SearchingAll;
        }

        private void Sig_SearchingAll(object sender, MercatorUi.Sig.Sig.SearchingAllEventArgs e)
        {
            e.WhereClause += " or (S_MODELEN like '{0}%')"
                           + " or exists(SELECT * from RAYONS (NOLOCK) where (rayons.id=stock.s_id_rayon) and (rayons.nom like '{0}%'))";
        }
    }
}

 

Let op de aanwezigheid van {0} in deze code, die zal worden vervangen door de zoeksleutel. Deze notatie moet worden gerespecteerd.



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)