hallo liebe gemeinde,
ich habe da wieder ein kleines für euch, ein großes problem für mich.
ich versuche eine weitere spalte an eine bestimmte liste dranzuhängen.
der unten aufgeführte script soll euch ein wenig dabei helfen.
dieses script liest erst einmal daten aus einer exceltabelle aus. die daten was er auslesen soll, werden vorher mittels einem hauptscript an die include.js übermittelt. diese daten beinhalten, die exceldatei, -tabelle, zeilenanfang, spaltenanfang, ausgangsdatei, arbeitsordner, ...
nachdem die liste aus excel ausgelesen wurde, wandelt er diese um, um sie für weitere zwecke zu gebrauchen. nachdem umwandeln werden die entsprechenden daten aus einem großen ordner gesucht und in eine von mir vorgegebene ausgangsdatei gespeichert.
bsp.:
excelliste:
a123-45678-000-00 (a123-45678-000 -> hauptteil der datei)
a123-45679-002-00
...
umgewandelte liste:
a123_45678_000
a123_45679_002
...
ungewandelte liste ist im script die "infile"!!!
die "list" ist die gesamte liste aus dem ordner, wo alle dateien drin sind.
das script vergleicht nun unter function checkifinfilelist() ob die infile zu der liste passt. wenn ja, dann gibt er die entsprechende liste aus.
in der liste sind alle dateien enthalten. aber benötigt wird nur die aktuellste datei, erkennbar an einem kennbuchstaben.
sollten also mehrere dateien mit dem hauptteil der infile vorhanden sein, dann soll er nur die "entnehmen", welche den höchsten buchstaben haben.
a123_45678_000A
a123_45678_000B
a123_45679_002D
a123_45679_002AA
...
das wird bereits bewerkstelligt.
aber ab und zu kommt es auch dazu das unter einem bestimmten hauptteil und dem akt. buchstaben, verschiedene materialien existieren. d.h. eine infile kann aus mehreren teilen bestehen.
bsp:
a123_45678_000B
a123_45678_000B_10b
a123_45678_000B_11b
a123_45678_000B_12b
...
jetzt müssen alle gespeichert werden, da sie ja die einzelnen teile sind, welchen den hauptteil wiederspiegeln. das macht das script ebenfalls.
aber nun kommts. wie schaffe ich, dass die entsprechende anzahl zu infile auch zur entsprechenden list passt?
ich denke, es liegt in der function checkifinfilelist(), da da infile und list verglichen wird.
die anzahl aus der excelliste sieht so aus:
a123-45678-000-00 // 5
a123-45679-002-00 // 22 (-> // spiegelt die andere spalte wieder)
aussehen am ende muss es so:
a123_45678_000B_10b_5
a123_45678_000B_11b_5
a123_45678_000B_12b_5
a123_45679_002AA_11b_22
a123_45679_002AA_22b_22
...
habe versucht, die anzahl am ende einzufügen, aber da macht er nur folgendes:
a123_45678_000B_10b_5
a123_45678_000B_11b_22
a123_45678_000B_12b_(andere anzahl)
...
wenn ich aber bei function checkifinlifelist(), bei function findinlist() die anzahl mit angebe, bringt er mir für die anzahl "undefined", weil list größer ist als die tatsächliche liste des ordners.
also nun die frage an euch. Wie bekomm ich wie oben unter "aussehen am ende muss es so:" beschrieben, die entsprechende anzahl unter die einzelnen einzelteilen?
lg romero