Lizenzbereiche herausfiltern

18. September 2008 08:35

Halloo,
ich habe da ein kleines Problemchen ;).

Und zwar:
Ich möchte Lizenz Bereiche von allen Objekten (Table, Form, Report, Codeunit, Dataports, XMLPort) auslesen und herausfiltern.
Ich möchte dies in einer Excel Tabelle ausgeben lassen, wo dann beschrieben wird, wieviele Lizenzen vorhanen sind, wieviele belegt sind und wieviele noch frei sind.
Ich habe die entsprechenden ID's (von..bis) und müsste dies nun irgendwie lösen.

Ich habe eine Variable erstellt (ObjectREC) mit dem DataType "Record" und habe folgenden Code geschrieben bisher:

MESSAGE(FORMAT(ObjectREC.COUNT));
ObjectREC.SETRANGE(Type,ObjectREC.Type::Table);
MESSAGE(FORMAT(ObjectREC.COUNT));
ObjectREC.SETRANGE(ID,IDVon,IDBis);
MESSAGE(FORMAT(ObjectREC.COUNT));

Gibt soweit alles richtig aus, aber ich muss nun selber noch ausrechnen wieviele belegt sind und wieviele frei sind.

Ich bin noch sehr neu in Sachen Navision und muss mich da erst einmal richtig rein arbeiten und damit zurecht kommen.
Über eine Hilfe wäre ich sehr dankbar.

Mit freundlichen Grüßen
InSiDeR
Zuletzt geändert von InSiDeR am 25. September 2008 11:02, insgesamt 2-mal geändert.

Re: Lizenzbereiche herausfiltern

18. September 2008 08:44

Um zu ermitteln, welche bzw. wieviele Objekt-IDS frei sind, erstelle eine integer-Variable (hier i) und verwende sie grundsätzlich so (wobei MaxID der dir bekannte max. ID ist), hier am Beispiel der Tabellen:

Code:
FOR i := 1 to MaxID DO BEGIN
  ObjectREC.SETRANGE(Type,ObjectREC.Type::Table);
  ObjectREC.SETRANGE(ID, i);
  IF ObjectREC.ISEMPTY THEN
    MESSAGE('Tabelle %1 ist noch nicht vergeben', i);
END;


Das geht auch noch etwas eleganter weil mit weniger Datenbankabfragen, aber für den Anfang sollte das reichen.

Re: Lizenzbereiche herausfiltern

18. September 2008 08:56

Ich möchte alles aber auf einer Seite ausgeben lassen. Wenn ich das jetzt durchlaufe, gibt er mir 201 Seiten aus.

Re: Lizenzbereiche herausfiltern

18. September 2008 09:02

Hast du im Quelltext die Variablen durch IDVon und IDBis ersetzt? Sonst rennt der Quelltext natürlich über zu viele Objekte.

Re: Lizenzbereiche herausfiltern

18. September 2008 09:09

Das sind ja gar keine Variablen sondern Zahlen. Die richtigen ID's. Hab sie hier nur nicht gepsotet.

Re: Lizenzbereiche herausfiltern

18. September 2008 09:28

Ich habe da mal etwas aus meiner Tools-DB hochgeladen:

:greenarrow: Licensed Object Range
Mit diesem Report ist es möglich, die lizensierten/nicht lizensierten verwendeten/noch freien Objektnummernbereiche zu überprüfen.

Re: Lizenzbereiche herausfiltern

25. September 2008 11:03

Dankeschön... ich schau mir das alles mal so an...

//edit: Leider ist dies ein fertiges Tool und wird in meiner Firma nicht anerkannt. Ich soll selbst eine eigenständige kleine Lösung herausfinden und wäre über entsprechende Hilfe sehr dankbar.

Re: Lizenzbereiche herausfiltern

25. September 2008 11:18

InSiDeR hat geschrieben://edit: Leider ist dies ein fertiges Tool und wird in meiner Firma nicht anerkannt. Ich soll selbst eine eigenständige kleine Lösung herausfinden und wäre über entsprechende Hilfe sehr dankbar.

Aha, hier geht es nicht um eine Lösung, sondern um den Weg dorthin...

Mein Tipp: Studiere den Report und schaue dir an, welche Tabellen er hierfür nutzt.
Versuche dann, mit dem erlangten Wissen einen deutlich einfach gestrickteren Report zu entwerfen, welcher nur eine ganz spezielle Auswertung ausführt.
Anschließend erweiterst du den Report um weitere Möglichkeiten.

Re: Lizenzbereiche herausfiltern

25. September 2008 11:21

Hört sich alles easy an, nur habe ich keinerlei große Erfahrung mit Navision und dessen Programmierung.
Ich kenne noch nicht diese ganzen Befehle und weiß nicht, wie ich vorzugehen habe.