Menusuite Berechtigungen dokumentieren

5. Juni 2009 10:01

Hallo,

ich würde gern einen Report erstellen der dokumentiert welcher Benutzer welche Menüpunkte zugewiesen bekommen hat. Soweit ich weiß ist das in der Tabelle 2000000061 User Menu Level in einem BLOB Feld gespeichert, wie komme ich da ran?

Danke,
Gruss
Christian

Re: Menusuite Berechtigungen dokumentieren

5. Juni 2009 14:47

du muesstest evtl. rausfinden welches Dateiformat dort gespeichert wird.

Tipps:
- was sagt da die Hilfe?
- ausprobieren (ich meine Text isses nicht)

wenn du das weisst, einfach ueber rec.Object.Export('c:\datei.XX'); ausgeben lassen.

ich weiss, keine gute, aber wenigstens eine Antwort!

Re: Menusuite Berechtigungen dokumentieren

5. Juni 2009 15:19

Ich vermute einfach mal, dass es sich in dem BLOB-Feld um eine Art MenuSuite (quasi Level 91 bzw. Level 92) handeln könnte.

Re: Menusuite Berechtigungen dokumentieren

5. Juni 2009 15:45

Danke, auch wenn ich bisher nicht allzu viel damit anfangen konnte :/

Hab mal mit in einem Report mit "User Menu Level" als Dataitem
Code:
"User Menu Level".Object.EXPORT('C:\testnav.txt');

versucht, dann kommt aber nur "Sie können kein leeres BLOB Feld exportieren".

Hilfe-technisch hab ich weder in der F1 zum Thema Menusuite, noch im Application Designers Guide etwas gefunden.

Re: Menusuite Berechtigungen dokumentieren

5. Juni 2009 16:15

Mit txt wirst du keinen Erfolg haben.
Aber die Fehlermeldung wirst du los ;)
Code:
"User Menu Level".CALCFIELDS(Object);
"User Menu Level".Object.EXPORT('C:\testnav.txt');

Aber ich vermute mal das in dem BLOB-Feld nur die Änderungen des Nutzers drinnen stehen.
Sprich: Die Shortcuts und ausgeblendeten Elemente.
Was für eine MS das ist wirst du vermtl. nicht darin finden.

Re: Menusuite Berechtigungen dokumentieren

5. Juni 2009 18:00

Aus eigener Erfahrung sollte man noch prüfen, ob tatsächlich etwas in dem BLOB-Feld steht:
Danjo hat geschrieben:
Code:
"User Menu Level".CALCFIELDS(Object);
IF "User Menu Level".HASVALUE THEN
  "User Menu Level".Object.EXPORT('C:\testnav.txt');

Aber ich vermute mal das in dem BLOB-Feld nur die Änderungen des Nutzers drinnen stehen.
Sprich: Die Shortcuts und ausgeblendeten Elemente.
Was für eine MS das ist wirst du vermtl. nicht darin finden.

Betrachte "Benutzereinschränkungen", als wäre sie Level 91 und "Benutzeränderungen" wie einen Level 92.
In den Benutzereinschränkungen dürften meiner Meinung nach nur (vom Systemadministrator) ausgeblendete Menüs stehen.
In den Benutzeränderungen befinden sich sowohl die persönlichen Shortcuts, als auch vom Benutzer selbst ausgeblendete Menüs, Gruppen und Elemente sowie geänderte Sortierungen einzelner Menüs.

Ich vermute mal, dass diese "virtuellen MenuSuites" ebenfalls - wie alle anderen Objekte - in kompilierter Form (und nicht im XML-Format) gespeichert sind.

Re: Menusuite Berechtigungen dokumentieren

8. Juni 2009 11:26

Danke für eure Mühen, ich glaube ich gebe das Vorhaben auf das automatisiert auszulesen.
Der Code von Timo hat funktioniert, allerdings kommt dort (natürlich) nur Binary Code raus.
Wird man halt alle paar Monate von Hand die Zuweisungen durchgehen und per Copy + Paste extrahieren müssen.

Danke,
Gruss
Christian