PDA

View Full Version : ACS Run SQL Scripts: Wie UTF-8 ohne BOM erstellen?



Arnie
13-09-19, 09:35
Hallo zusammen,

hat schon jemand herausgefunden, wie man über IBM i ACS Run SQL Scripts SQL-Dateien in UTF-8 ohne Byte Order Mark (BOM) erstellen kann - oder eine andere Lösung?

Die SQL-Dateien werden vom genannten Tool standardmäßig mit BOM erzeugt und lassen sich so leider nicht per RUNSQLSTM nutzen. Die Dateien jedes mal per Notepad++ in UTF-8 ohne BOM zu konvertieren, ist lästig.

Danke!

Amos
26-09-19, 09:04
Hallo Arnie,

ich speichere meine Scripts, die ich mit ACS Run SQL erstellt habe, im IFS unserer iSeries in einem separaten Ordner "ACS_Run_SQL".


Wenn ich ein neues Script erstellt habe, hat dieses das BOM und die CCSID 850.

Jetzt kann ich auf der iSeries die CCSID nur dieses neuen Scripts auf die 1208 ändern, dann ist das BOM weg.

Damit ich aber nicht jedesmal den Script-Namen angeben muss, nutze ich ein kleines Command, mit dem ich immer die CCSID des kompletten Ordners ändere. Dahinter steht dieser Befehl:

CHGATR OBJ('/home/username/ ACS_Run_SQL‘)
ATR(*CCSID)
VALUE(1208)
SUBTREE(*ALL)

Der SUBTREE-Parameter bewirkt, dass immer alle Objekte im Verzeichnis auf die neue CCSID gesetzt werden.

Auch, wenn Du danach das Script inhaltlich änderst, bleibt die CCSID 1208 erhalten, es kommt kein neues BOM rein und Du kannst Deine Scripts somit immer auch problemlos mit RunSqlStm aufrufen.

Außerdem habe ich mir den Script-Ordner in Windows auch noch als Laufwerk gemappt - schließlich hat eine Anzeige mit dem Windows-Explorer gegenüber dem ACS Plugin fürs IFS einige Vorteile – von WRKLNK wollen wir schon gar nicht sprechen.

Gruß,

Thomas

Gutmann
29-09-19, 19:58
Wofür habt ihr diese im IFS gespeichert bzw. warum wollt ihr diese per RUNSQLSTM aufrufen?

Amos
30-09-19, 11:50
Hallo Gutmann,

einen Aufruf mit RUNSQLSTM kann ich auch in ein CL-Programm einbauen und damit auch batch laufen lassen. Außerdem ist bei uns die Performance beim Aufruf im Green-Screen besser als im ACS-Tool.

Im IFS stehen die Skripts, da ich im RUNSQLSTM diesen Speicherort als Alternative zu einer Sourcedatei in QSYS verwenden kann (Parameter Quellendatenstromdatei / SRCSTMF).

Gruß,
Thomas