11. Juni 2012 11:12
siehe viewtopic.php?f=40&t=16310Hallo 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???