Hallo zusammen,
meine Aufgabe war es, zu 18 verschiedenen Lieferanten 15 unterschiedliche Rechnungen aus eine MSSQL 2005 DB zu ziehen.
Diese Rechnungen sind in einem Bestimmten Format abgelegt. In der Datenbank kann ich anhand eines bestimmten Rechnungsschlüssels Dateipfad und Dateiname herausfinden.
Um diese Rechnungsschlüssels zu erhalten waren meine Arbeitsschritte wie folgt:
SELECT doc_id, supplier_num from docs where supplier_num = 72714
OR supplier_num = 73149
[…]
OR supplier_num = 71904 ORDER by supplier_num
Hier schon die erste Frage: Ich bekam nat. viel mehr Ergebnisse wie ich wollte. Vom Prinzip hätten mir von jedem „Supplier“ die ersten 15 oder irgendwelche 15 Rechnungsschlüssels gereicht.
Ich hatte sie nun alle. Das Ergebnis habe ich mir nach Excel kopiert und mit einem Filter auf die Supplier (5 stellig) versehen. So konnte ich jetzt 15 Rechnungen manuell heraus kopieren. Das Ergebnis hab ich in einen weiteren Excel Sheet kopiert.
Ergebisse sahen in etwa so aus:
021AFE88A06141D4B6D41DF0A3A0ACC5 71107
0031C2D358A044129EE379F1166F4591 71190
01D0F34CE1DF42E7993D7448A01373DA 71207
150DC0E2A7D549EC82268F8AD6A850F5 71107
006068F66B4E42AA9EA0C716CDB945A1 71190
164CBECA918A4D33819370520233A45D 71207
[…] 71107 […] 71190 […] 71207
In einer anderen Tabelle kann ich anhand der Schlüssel (32 Stellen) den Dateinamen und Pfad erfragen. Das habe ich auch wieder für alle 18 Supplier manuell machen müssen. Dabei ist jedesmal folgendes Statement anzupassen:
select doc_id, file_resource, doc_file from doc_files where doc_id in
(‚021AFE88A06141D4B6D41DF0A3A0ACC5‘,
[…]
‚7667F864EE394B3D9C9AE306096BBF35‘);
Ich brauchte unbedinngt alle Ergebnisse pro Supplier separat.
Einzelne Ergebnisse sahen so aus:
078F3CCE81054D3C99D77BD33BBEF0B7 \dc6\Server\Image\2008\09\02\
00001CC1_1
078F3CCE81054D3C99D77BD33BBEF0B7 \dc6\Server\Image\2008\09\02\
00001CC1_2
[…]
usw.
Das habe ich wieder aus der Datenbank heraus nach Excel kopiert. Dort habe ich mit der Formel „=CONCATENATE(B17;C17;".tif")“ Pfad und Namen verkettet.
Das scheint mir ziemlich umständlich. Ich wäre froh wenn mir jemand dafür einen Ansatz für einen leichteren Weg liefern könnte. Es wäre ja schon mal super, wenn ich Excel weglassen könnte und das ganze in einer virtuelle Tabelle bearbeiten kann.
SQL technisch bin ich bisher eher ein Noob J Aber ich bin gewillt mein weniges Wissen auszubauen.
Vielen Dank für euren Hirnschmalz.
Beste Grüße, olli