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

De naam van een object kennen in een hiƫrarchie van objecten

0000001739     -      28-07-2016
Verouderd

De supportafdeling van Mercator krijgt vaak de vraag wat de namen zijn van de objecten waaruit de Mercator-schermen bestaan. Deze vraag is niet echt interessant aangezien Visual FoxPro als dusdanig een systeem biedt om alle objecten binnen een hiërarchisch niveau in een formulier op te sommen.

Elk formulier of subelement in de hiërarchie beschikt over de controls-reeks die alle op dat niveau geplaatste controles (objecten) omvat. Via de functie stop kan men vervolgens makkelijk de verkregen naam weergeven.

Voorbeelden

Voor een verkoopscherm

stop(ventes.controls(1).name)
stop(ventes.controls(2).name)
stop(ventes.controls(3).name)
...

Voor het tabblad "Extra" van de artikelfiche

stop(f_stock.pageframe.complement.controls(1).name)
stop(f_stock.pageframe.complement.controls(2).name)
...


Om alle objecten van een hiërarchisch niveau op te sommen, volstaat het een code uit te voeren die lijkt op de code waarmee een bestand 'c:\test\objets.txt' wordt gegenereerd dat de naam van alle objecten bevat.

delete file 'c:\test\objets.txt'
local i_ctl
for i_ctl=1 to f_stock.pageframe.complement.controlCount
    strtofile(f_stock.pageframe.complement.controls(m.i_ctl).name+chr(13)+chr(10),'c:\test\objets.txt',1)
endfor
stop('OK')

 



Wij raden af om in uw modules de objecten op te roepen via de reeks controls(). De volgorde in de reeks kan immers gewijzigd worden telkens als er een nieuwe Mercator-versie verschijnt, terwijl de objectnamen niet veranderen.

 

Voorbeeld:

  • f_stock.pageframe.complement.controls(1).visible = .F. -> NIET OK!
  • f_stock.pageframe.complement.num_serie.visible = .F. -> OK!

 

 


 

Om de naam van het actieve venster te kennen, volstaat het parameters in te stellen voor een functietoets met als commandostring:

stop(wontop()).

Activeer vervolgens het gewenste venster en druk op de aldus ingestelde functietoets.

 


 

Deze functionaliteiten zijn geen eigen Mercator-functionaliteiten, maar kunnen wel door elke Visual Fox Pro-programmeur worden opgeroepen.

 

De supportafdeling van Mercator zal de gevraagde objectnamen niet langer geven, aangezien ze via deze methode makkelijk zelf te vinden zijn.



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)

De pagina die u wenst te bekijken heeft betrekking op een versie van Mercator die commercieel niet meer beschikbaar is en niet meer wordt ondersteund.

Mercator is een applicatie .net en maakt gebruik van een database SQL Server. De gegevens op deze pagina stemmen niet overeen met deze eigenschappen.