In 4.0 zijn de oude vertrouwde menu's (330, 332, 334, ...) verdwenen.
De menuitems in de forms waren gewone commandbuttons, met een handige OnPush trigger waarin je code kon schrijven. Zo kon je bijvoorbeeld code schrijven om met één druk op de knop twee forms na elkaar te openen. Een voorbeeld van een oplossing met een klein beetje maatwerk: als je in het Verkoopmenu op Orders klikt, krijg je de normale form 42 (Sales Order Card), maar tegelijkertijd wordt ook form 45 (Sales Order List) geopend, met een overzicht van de open sales orders die aan jou als gebruiker zijn toegewezen. Zo krijg je als gebruiker meteen te zien welke orders je nog moet verwerken.
In 4.0 zijn de forms vervangen door "MenuSuites". Feit is dat je achter deze menusuites geen code kan schrijven. Ieder item komt overeen met 1 object. M.a.w. de klant verliest hier een stukje functionaliteit. De enige afdoende oplossing lijkt mij om de code uit de onpush trigger te moven naar telkens een nieuwe codeunit. Maar da's meteen wel duur. De code moven naar de OnOpenForm trigger zonder meer is niet voldoende. Of kent iemand hier een workaround voor?
Comments
Er zijn al veel discussies geweest over dit onderwerp op deze site en op mbsonline.org.
Er is geen mogelijkheid om code te maken in de menusuite.
Je kunt een codeunit of een report koppelen aan de menusuite waar je code instaat.
Er is nog een simpelere oplossing die we voor een paar klanten hebben toegepast die zijn geupgrade van 2.x naar 4.x. Wanneer je de menusuites verwijderd uit de database en de oude hooftmenu's terugzet, werkt alles weer als vanouds. Je moet dan wel codeunit 1 aanpassen.
Een ander trukje in geval dat je 1 form met meerdere verschillende filters oproept, kun je een beetje code in de OnOpenForm-trigger zetten die een menu laat zien met de verschillende mogelijkheden en dan zet programmatorisch de filter in filtergroup 6.
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!