29. Juli 2015 23:58
Im Anhang befinden sich die Beispielobjekte für den Classic Client, erstellt mit NAV 2009 R2.
PS_ExportScript1.jpg
Anwendung:
Die Dateien t1.txt bzw. t2.txt werden von den Skripten jeweils im temporären Pfad des Benutzers (
C:\Benutzer\<BENUTZERNAME>\AppData\Local\Temp)) abgelegt bzw. müssen als Startdatei (bei den Funktionen 3. und 4.) dort liegen. Zum einfachen Aufrufen kann man dafür einen Link unter Favoriten ablegen. Ich hatte anfangs C:\Temp\ verwendet, aber das kann bei Remotezugriff zu Konflikten führen, wenn mehrere Leute im Homeoffice sitzen
. Für individuelle Pfadänderungen kann man den Code anpassen, im C/AL die Stellen
TEMPORARYPATH und im Skriptbereich die Stellen
$env:temp.1. Export mit festem IndexDazu muss ein Ordner mit den einzelnen Dateien vorhanden sein (im Beispielskript wird C:\Objexp\OPPINDEX verwendet) die man aus der Datenbank ziehen möchte. Bei mir liegen darin z.B. 139 Dateien, die bei jedem monatlichen Cumulative Update mindestens ggf. gemergt werden müssen. Der Inhalt dieser Dateien ist nicht relevant, die können auch
leer sein, aber die Dateinamen müssen exakt stimmen, TAB…,PAG…,REP… usw., also so wie das Split-Cmdlet trennt.
TestIndex.png
2. Export mit ObjektfilterDazu ruft man den Lookup von der Datenbanktabelle auf, die Objektfiltertabelle stellt den Filterstring aus den einzelnen Feldern automatisch zusammen.
Häufig benötigte Filter kann man hier auch mit einem eindeutigen Code abspeichern, dann müssen diese beim nächsten Export nur noch direkt aufgerufen werden.
PS_ExportScript2.jpg
3. Export mit temporärem IndexWie heute
hier schon beschrieben
. Wie alle anderen Punkte wahlweise für t1.txt und t2.txt nutzbar.
Dieser temporäre Indexliste wird aus der t1.txt oder t2.txt durch das Skript erzeugt und dann für die aktuelle Datenbank abgearbeitet und erzeugt daraus ein Objektpaket als t2.txt bzw. t1.txt.
TempIndex.png
4. SprachlayerentfernungVon der Wirkungsweise wie
dieses Skript (dort kann man einen beliebigen Dateipfad verwenden), nur eben auf t1.txt bzw. t2.txt im Tempordner angewendet.
PS-Menüpunkte: Führen das jeweilge Skript direkt in der PowerShell-Konsole aus und schließt diese nach der Ausführung.
PS-ISE-Menüpunkte: Rufen das Skript im Skriptbereich im PowerShell ISE auf. Mit F5 kann es dann ausgeführt werden, das ISE bleibt danach natürlich offen. Sollte dort noch ein gleichnamiges aus einem vorigen Lauf stehen, muss das vorher geschlossen werden, bzw. das aktuelle muss man hinterher im Skriptbereich selber schließen.
Die Nummernserie ist zur Vereinfachung des Beispiels hart codiert.
Sonstige Voraussetzungen:- NAV 2015 Installation im normalen Clientordner 80, von dort werden die Cmdlets geladen. Dafür gab es auch Hotfixes, diese sollten von einer aktuellen Install-DVD ggf. ausgetauscht werden, wenn noch mit einem alten Build gearbeitet wird.
- Exportdatenbanken: ab NAV 2013. Die Verwaltungsdatenbank, die die Skripte erzeugt, kann dagegen auch eine 2.x sein .
- Im "Name Clientordner" muss der Name des Ordners stehen, der eine finsql.exe mit dem Build enthält, mit der die angegebene Datenbank ohne Konvertierung geöffnet werden kann. Diese Namen kurz halten (80_9,80_8 usw.)
- In der PowerShell Set-Executionpolicy mindestens RemoteSigned
t in den Dateinamen steht für 'temporär' und ist auch so zu verstehen
, diese Dateien werden durch den aktuellen Lauf jeweils überschrieben.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.