Hallo ich bin ein neuling was Applescript angeht.ich bräuchte daher mal hilfe von euch Experten. ich bräuchte ein script was einen neuen ordner erstellt und diesen mit einem namen z.B J_201800001 erstellt.beim nächsten erstellten Ordner soll dann die nummer fortlaufen sein J_20180002. den Ordner erstellen und mit namen versehen schaffe ich, aber wie geht das mit der fortlaufenden nummerierung?
Dass Du es schaffst, einen Ordner zu erstellen und diesen mit einem Namen zu versehen, ist doch schon etwas.
Um die fortlaufenden Nummern zu bekommen, muss man eine Schleife einrichten. Dann liefert der automatische Zähler bei jedem Umgang die aktuelle Nummer. Mit dieser kann der aktuelle Name zusammengesetzt werden.
Wie das geht, werde ich Dir gerne zeigen. Aber ich werde erst Montag gegen Abend wieder zu Hause sein.
wieviele Ordner sollen denn erzeugt werden? Auch wenn die Anzahl kleiner ist, alst die möglichen 9999, sollte ein Hauptordner gewählt werden. Dessen Wahl kann man im Script einbauen.
Und auch die Start- und End-Nummer kann abgefragt werden. Damit wird später das Erzeugen weiterer Ordner vereinfacht.
Wie gesagt, werde ich erst morgen Abend versuchen können, eine erste Version zustandezubringen.
hi vielen dank für deine hilfe mach dir bitte keinen stress:-)
ich würde das gerne so haben: bei ausführung des scripts soll ein Ordner in einem nach abfrage (wo er erstellt werden soll)Verzeichniss erstellt werden. dann kommt die abfrage wie z.B der Kunde heissen soll.dann wird der ordner mit dem Kundennamen erstellt. Das schaffe ich aber jetzt möchte ich das vor dem Namen noch die z.B J_201800001 kommen soll.somit soll der Ordner dann J_201800001 Kundenname heißen.
Es muss also immer nur ein Ornder erstellt werden. nach dem nächsten aufruf des Scripts heisst dann z.B der Ordner J_201800002 KUndenname. ich hoffe ich habe das rel. verständlich geschrieben.
das definitive Script habe ich Dir endlich per PM zustellen können.
[ @ alle: Wir haben uns privat ausgetauscht, weil ich zuerst die Aufgabe nicht richtig verstanden hatte ... ]
Weil kaum jemand die gleiche Aufgabe zu lösen hat, macht es keinen grossen Sinn, den Code zu posten. Deshalb nur die folgende Outline mit einem Erklärungsversuch, wie das Hochzählen funktioniert.
***** Nach dem ersten Starten muss ein Hauptordner gewählt werden, dann den ersten Kundennamen eingeben. Zum Beispiel "Mueller". Das Script erzeugt im Hauptordner einen Ordner namens "J_201800001_Mueller".
Beim jedem weiteren Start erscheint nur der Dialog mit dem Text-Eingabefeld für den Kundennamen. Zum Beispiel "Mayer". Das Script erzeugt im Hauptordner einen zweiten Ordner und benennt ihn "J_201800002_Mayer".
Die fünfstellige Ordnungszahl wird jedes Mal um Eins erhöht.
Das Script erstellt dazu ein Liste der vorhandenen Ordnernamen. Aus dem letzten zieht es die aktuelle Zahl mit:
Der Variablen 'lastNumber' werden die Zeichen sieben bis 11 des letzen Namens zugewiesen. Dann wird der neue Wert so errechnet:
Zuerst wird der alte Wert in eine Ganzzahl umgewandelt. Dabei gehen die führenden Nullen verloren. Zum Ergebnis wird Eins addiert. Und so wird der neue Wert wieder mit den Nullen versehen:
An die vier Nullen wird der neue Wert gehängt. Das ergibt zunächst fünf Stellen. Später werden es sechs oder sieben oder acht (usw.) sein. Doch es sind nur fünf Stellen vorgesehen. Durch text -5 thru -1 bekommt man genau das. Minus 5 bedeutet: Beginne ab der fünften Stelle vom Ende her gezählt. Das Wort thru heisst bis. Und mit -1 ist das letzte Zeichen gemeint.
Anschliessend wird der neue Ordnername gebildet: An den Basisnamen "J_2018" wird die neue Nummer gehängt, gefolgt von einem Underscore und dem neuen Kundennamen. Dieser String wird dem "Finder" übergeben mit der Bitte, einen neuen Ordner mit diesem Namen zu erzeugen.
Marco gab mir durch, dass das Script immer noch perfekt läuft. Das freute mich natürlich.
Jetzt möchte er, dass in jedem neu erzeugten Ordner der Unterordner "Rohdaten" angelegt wird. Das ist recht einfach zu lösen: Dem Finder-Befehl 'make new folder' ein 'as string' anhängen und zugleich einer Variablen zuweisen. Dann kann ein Unterordner in diesem neuen Ordner erzeugt werden:
Um eventuell einen zweiten Ordner an gleicher Stelle erzeugen zu lassen: Ganz einfach die zweite Zeile duplizieren und den Namen "Rohdaten" durch den weiteren Namen ersetzen.