[Gelöst] Import von fob Objekten mit Konflikten

27. April 2006 10:39

Hallo,

Bin noch ziemlich neu in Navision, hätte da trotzdem schon eine Frage. Wollte den User Disk Monitor importieren, den ich von hier habe:

http://www.mibuso.com/dlinfo.asp?FileID=170

Allerdings ist die Table-ID 50009 anderweitig vergeben. Wollte dann hingehen und die vorhandene temporär abändern um die beiden Objekte dann mit anderer Nummer wieder exportieren. Scheint aber schwieriger zu sein. Das Tool funktioniert aber soweit. Allerdings will ich natürlich der temporär geändertet Tabelle wieder ihre alte ID zuweisen. Wenn ich dies tue funzt das Tool aber erstmal nichtmehr da es ja die Tabelle nicht mehr dort findet.

Wenn ich jetzt in den Code der Form gehe, um diese dann auf die neue Tabelle umzubiegen komme ich nur teilweise weiter.

Code:
IF Session.FIND('-') THEN
  REPEAT
    IF NOT UserManager.GET(Session."Verbindungs ID") THEN BEGIN
      UserManager.ID := Session."Verbindungs ID";
      UserManager."User ID" := Session."Benutzer ID";
      UserManager."Cache Reads" := Session."Lesezyklen Cache";
      UserManager."Record Scans" := Session."Durchsuchte Datensätze";
      UserManager."Disk Reads" := Session."Lesezyklen Platte";
      UserManager."Disk Writes" := Session."Schreibzyklen Platte";
      UserManager."Total Cache Reads" := Session."Lesezyklen Cache";
      UserManager."Total Record Scans" := Session."Durchsuchte Datensätze";
      UserManager."Total Disk Reads" := Session."Lesezyklen Platte";
      UserManager."Total Disk Writes" := Session."Schreibzyklen Platte";
      UserManager.INSERT;
    END ELSE BEGIN
      UserManager."User ID" := Session."Benutzer ID";
      UserManager."Cache Reads" := Session."Lesezyklen Cache" - UserManager."Total Cache Reads";
      UserManager."Record Scans" := Session."Durchsuchte Datensätze" -  UserManager."Total Record Scans";
      UserManager."Disk Reads" := Session."Lesezyklen Platte"- UserManager."Total Disk Reads";
      UserManager."Disk Writes" := Session."Schreibzyklen Platte" - UserManager."Total Disk Writes";
      UserManager."Total Cache Reads" := Session."Lesezyklen Cache";
      UserManager."Total Record Scans" := Session."Durchsuchte Datensätze";
      UserManager."Total Disk Reads" := Session."Lesezyklen Platte";
      UserManager."Total Disk Writes" := Session."Schreibzyklen Platte";
      UserManager.MODIFY;;
    END;
  UNTIL Session.NEXT = 0;
FIND('-');
CurrForm.UPDATE(FALSE);


Er hat nämlich obigen Record UserManager mit den Feldern der Tabelle gefüllt, die der alten temporär umbenannten Tabelle entsprechen. Manuell ändern bringt hier auch nichts. Wie kann ich dem Record denn die neuen Felder zuweisen. Es kommt immer die Fehlermeldung:

Unbekannte Variable eingegeben. Definieren sie sie in CA/L Globals.

Seltsamerweise ist allerdings die Globals völlig leer. Weder Record noch sonst eine Variable ist da zu finden.

Als das nichts brachte wollte ich hergehen und statt der .fob die Textdatei importieren und diese dann soweit abändere das die Tabelle 50009 eine neue freie ID hat. Import geht soweit, muss dann allerdings nocht die Form kompilieren. Kann aber immer noch nicht starten, da bringt er mir:

Das CA/L Objekt wurde in nicht kompilierter Form gespeichert. Kompilieren Sie das Objekt vom Object Designer aus und starten Sie es erneut.

Mehrmals F11 auf der Form und in der Form bringt nichts. Gibt zwar an das er kompiliert hat, mahnt aber weiterhin an das es nicht kompiliert ist. Bin ratlos.
Zuletzt geändert von holger1076 am 27. April 2006 11:53, insgesamt 1-mal geändert.

Re: Import von fob Objekten mit Konflikten

27. April 2006 10:57

holger1076 hat geschrieben:Das CA/L Objekt wurde in nicht kompilierter Form gespeichert. Kompilieren Sie das Objekt vom Object Designer aus und starten Sie es erneut. Mehrmals F11 auf der Form und in der Form bringt nichts. Gibt zwar an das er kompiliert hat, mahnt aber weiterhin an das es nicht kompiliert ist.


Wenn Du eine Form hast, die auf einer Table basiert, muss auch die Table kompiliert werden. Der Aufruf der Form kann sonst die Table nicht nutzen und meldet sich dann mit der von dir angegeben Meldung. Also anders gesagt, alle Objekte, die als Variable in der Form drin sind, müssen ebenfalls kompiliert sein.

27. April 2006 11:00

Vielen Dank! Das funzte :-). Juhuu.