Datei umbenennen

24. Januar 2007 12:33

Hallo,

wie bzw. mit welcher Funktion kann ich eine Datei aus Navision heraus umbenennen ?
Geht sowas überhaupt ?

Danke und Gruß

Daniel

24. Januar 2007 12:36

Ja, das geht. Schau mal in der C/SIDE Onlinehilfe nach unter Rename

Code:
[Ok:=] File.RENAME(OldName, NewName)

Re: Datei umbenennen

11. Juni 2012 11:12

siehe viewtopic.php?f=40&t=16310



Hallo und guten Tag :)

vorab: Wir benutzen Dynamics NAV SP1 (Classic + RTC)

denooch würde ich gerne dieses Thema noch einmal in abgewandelter Form aufgreifen....

Und zwar...

Wir haben eine Codeunit entwickelt, die bei Anlage eines neuen Artikels einen entsprechenden
Ordner erstellt und diesen mit dem Artikel verlinkt. Durch ein boolesches Feld wird signalisiert ob
Dateien in dem entsprechenden Ordner vorhanden sind. (Als Dokumentenablage für techn. Zeichnungen, etc.)

Auf gehts....

Tabelle 27 - OnInsert()
--> AufrufderCodeunit.Create("No.");

Code:
//Create
IF ItemNo = '' THEN
  EXIT;

InvSetup.GET;
InvSetup.TESTFIELD("Document Folder5");

Folder := InvSetup."Document Folder5"+ItemNo;

CREATE(WshFSO,TRUE,TRUE);
IF NOT WshFSO.FolderExists(Folder) THEN
  WshFSO.CreateFolder(Folder)
ELSE
  MESSAGE(Text000,Folder);
CLEAR(WshFSO);


--> Das ganze funktioniert Prima :)

Jetzt sollte diese Funktionalität auf das Löschen von Artikeln erweitert werden...

Tabelle 27 - OnDelete()
--> AufrufderCodeunit.Delete("No.");

Code:
//Delete
IF ItemNo = '' THEN
  EXIT;

InvSetup.GET;
InvSetup.TESTFIELD("Document Folder5");               

CREATE(WshFSO,TRUE,TRUE);
WshFSO.DeleteFolder(InvSetup."Document Folder5"+ItemNo);
CLEAR(WshFSO);


--> Das ganze funktioniert auch Prima :)


----------------------> Aber nun kommt der Knackpunkt!!!! Das Umbenennen von Artikeln!!!

Tabelle 27 - OnRename()
--> AufrufderCodeunit.Rename("No.");

Code:
///  TEST!!
IF ItemNo = '' THEN
  EXIT;

InvSetup.GET;
InvSetup.TESTFIELD("Document Folder5");

Item.GET(ItemNo);

CREATE(WshFSO,TRUE,TRUE);
OrigFolder := InvSetup."Document Folder5"+ItemNo;
NewFolder := InvSetup."Document Folder5"+'TEST!!!!';
//FILE.RENAME(OrigFolder, NewFolder);
WshFSO.MoveFolder(OrigFolder , NewFolder);
CLEAR(WshFSO);
///


Das Problem ist, so denke ich, das zu diesem Zeitpunkt der Artikel bereits seinen neuen Namen erhält und
die Information des Ursprünglichen Artikelnamens und Ordners nicht mehr vorhanden ist..

Ursprungsartikel "TEST" soll in "TEST123" umbenannt werden.

Fehlermeldung: -- Artikel Nr. "TEST123" existiert nicht. --


Habt ihr eine Idee???