MercatorPenguin in schrijven: een lijst met gegevens verkrijgen en het resultaat toepassen in een gebied

0000003099     -      01-05-2025

MercatorPenguin 2.10.9 of later maakt het mogelijk om een EditListButton aan een bewerkbaar gebied (EditEntry) toe te wijzen. Met deze knop kunt u een SQL-query uitvoeren in de Mercator-database en het resultaat weergeven als een lijst. De waarde die is gekoppeld aan de geselecteerde regel wordt vervolgens geplaatst in de bijbehorende EditEntry.

Voorbeeld van XAML-configuratie


<m:EditEntry Placeholder="N° série" Source="LINE|NUM_SERIE" HorizontalOptions="FillAndExpand" Grid.Column="0" Grid.Row="6" />
<m:EditListButton TargetSource="LINE|NUM_SERIE" ReqSql="select num_serie as id,num_serie as lib from NUMSERIES where (id_art=@LINE|ID_ARTICLE) and (id_depot=@id_depot)" Grid.Column="1" Grid.Row="6" />

 

Deze eigenschappen zijn verplicht :

  • TargetSource : de bron van de gekoppelde EditEntry
  • ReqSql : SQL-query voor het ophalen van gegevens

 

Regels voor het samenstellen van de SQL-query

  • Het moet één enkele tabel retourneren
  • In deze resultaattabel zijn de volgende kolommen verplicht en moeten ze van het karaktertype zijn :
    • ID : de waarde die in de EditEntry wordt geplaatst
    • LIB : de waarde die wordt weergegeven in de selectielijst
  • Het kan SQL-parameters accepteren vanuit alle bronnen van bestaande bedieningselementen in de XAML Tab 1-code. In ons voorbeeld :
    • @id_depot
    • @LINE|ID_ARTICLE
  • Het kan geen wijzigingen aanbrengen in de database

 

Opmerkingen

  • Als de geretourneerde lijst leeg is, wordt er een trilling gegeven en wordt het bericht "Geen records gevonden!" weergegeven
  • Als de geretourneerde lijst slechts één record bevat, wordt het resultaat direct in de bijbehorende EditEntry geplaatst
  • Deze functionaliteit is slechts een hulpmiddel voor gegevensinvoer. Het bevat geen "business logica". Bijvoorbeeld, in ons voorbeeld, zou deze knop geïnstalleerd in een offerte-sequentie uiteindelijk dienen om een serienummer in een offerte in te voeren (wat uiteindelijk zal worden afgewezen bij het opslaan).
  • MercatorPenguinServer : min. versie = 2.10.9

Als men na het invoeren van de waarde in de EditEntry wil dat deze gevalideerd wordt (bijvoorbeeld voor een signaletiekzoekopdracht), moet de eigenschap ValidateEntry op True worden gezet..

<m:EditListButton TargetSource="LINE|ID_MPLACE" ValidateEntry="True" ReqSql="select m_id as id,m_nom as lib from MPLACE where m_id_depot=@id_depot" />

Min. versie: 3.0.17



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)