-
CCSID im IFS per Programm einstellen
Hallo,
ich muss für eine Anwendung sicherstellen, dass eine bestimmte Datei im IFS-Verzeichnis CCSID 1252 besitzt. Mit "umständlichem" CPY über WRKLNK kann ich das hinbekommen, aber gibt es nicht vielleicht auch ein API, mit dem es bequemer geht und das man in ein normales RPG(ILE)-Programm einbinden kann?
Danke im Voraus.
Jörg
-
Hallo,
ist allerdings auf Feldebene. Man kann von der Feldart u.A. die CCSID abfragen. Die Feldart muss natürlich CHAR sein.
select dbiccc
from QSYS/QADBIFLD
where dbilib='BIBLIOTHEKSNAME'
and dbifil='DATEINAME'
and dbifld='FELDNAME'
Mehr fällt mir da im Moment auch nicht ein.
mfg
Fred
-
Hallo!
@Jörg:
Was meinst du mit "sicherstellen"? Ist die Datei bereits vorhanden und soll das Programm die CCSID prüfen, oder soll das Programm die CCSID ändern, oder erstellt das Programm die Datei und soll die CCSID gleich richtig setzen?
@Fred:
Deine Idee zum Prüfen der CCSID auf Feldebene ist gut, aber die geht leider nur für das Bibliothekssystem und nicht für das IFS.
Viele Grüße
Jürgen
-
Danke für die Nachfrage - war wirklich ein wenig unkonkret formuliert:
Genau genommen ist die Datei bereits vorhanden (der Anwender stellt eine JPG-Grafik in ein bestimmtes IFS-Verzeichnis). Um sie verarbeiten zu können, benötigen wir CCSID 1252. Es gilt also jetzt, die CCSID der Datei zu prüfen und bei Bedarf auf 1252 zu ändern.
Zitat von Pikachu
Hallo!
@Jörg:
Was meinst du mit "sicherstellen"? Ist die Datei bereits vorhanden und soll das Programm die CCSID prüfen, oder soll das Programm die CCSID ändern, oder erstellt das Programm die Datei und soll die CCSID gleich richtig setzen?
@Fred:
Deine Idee zum Prüfen der CCSID auf Feldebene ist gut, aber die geht leider nur für das Bibliothekssystem und nicht für das IFS.
Viele Grüße
Jürgen
-
Die CCSID einer IFS-Datei ist nicht änderbar.
Durch das Einstellen vom PC direkt in das Verzeichnis müsste die CCSID eigentlich von selbst auf 1252 gestellt werden.
Erforderlich hierfür ist eine Freigabe (NetServer) ins "/home" und nicht ins "/QDLS".
Für die Weiterverarbeitung einer Grafik-Datei ist die CCSID aber unerheblich !!!
Beim Verarbeiten darf sowieso keine Code-Wandlung durchgeführt werden.
Erstelle am besten per CRTPF eine Datei (autom. CCSID 65535) und kopiere per CPYFRMSTMF / CPYTOIMPF ohne jegliche Konvertierung.
-
Ich weiß auch nicht genau, wieso es vorkommt, aber bei unseren Anwendern war die besagte Datei jetzt schon mehrfach in CCSID 850 und wir haben ein Programm , das aus den Spools PDF-Dateien erzeugt und dabei die Grafik als Hintergrund einbindet. Und dabei wird die Grafik in 1252 erwartet, sonst funktionierts nicht. Weiß nicht genau, warum das so ist, aber so ist's halt....
Inzwischen habe ich herausgefunden, dass ich mit dem Unix-API LSTAT die CCSID der Datei feststellen kann. Duch Hin- und Her-Kopieren mit CPY im WRKLNK kann ich offensichtlich auch die CCSID der Datei ändern, aber ein einfacheres Verfahren scheint es dann wohl doch nicht zu geben. Schade....
Anbei noch eine ganz "dumme" Frage: gibt es eigentlich einen Unterschied zwischen den Begriiffen "CCSID" und "CodePage" oder bezeichen die beide dasselbe?
Zitat von Fuerchau
Die CCSID einer IFS-Datei ist nicht änderbar.
Durch das Einstellen vom PC direkt in das Verzeichnis müsste die CCSID eigentlich von selbst auf 1252 gestellt werden.
Erforderlich hierfür ist eine Freigabe (NetServer) ins "/home" und nicht ins "/QDLS".
Für die Weiterverarbeitung einer Grafik-Datei ist die CCSID aber unerheblich !!!
Beim Verarbeiten darf sowieso keine Code-Wandlung durchgeführt werden.
Erstelle am besten per CRTPF eine Datei (autom. CCSID 65535) und kopiere per CPYFRMSTMF / CPYTOIMPF ohne jegliche Konvertierung.
-
CCSID 850 deutet darauf hin, dass die Datei z.B. in einer DOS-Box (z.B. .bat-File) erstellt wurde.
CCSID 1252 wird aus direkten Windows-Anwendungen verwendet.
CCSID = Coded Character Set Identification
Der Begriff Codepage kommt noch aus den alten DOS-Zeiten, als Codesets noch als Page in den Speicher geladen werden mussten, bedeutet allerdings das Gleiche.
-
Wird die Datei auf der AS/400 erstellt, oder kommt sie vom PC?
Mit dem Qshell-Befehl auf der AS/400 touch -C 1252 dateiname kannst du die Datei vorher mit der richtigen CCSID erstellen. Nachträglich geht da nichts mehr.
Gruß
Bruno
-
@Bruno
Was nützt mir das vorherige Erstellen, wenn die Datei per Copy oder aus der Anwendung per Save erstellt wird ?
Die meisten Anwendungen (incl. Explorer) killen die Datei vorher (Mit Abffrage "Möchten Sie wirklich ersetzten ...").
-
Deshalb wäre es ja wichtig zu wissen, wie die Datei auf die AS/400 kommt. Wenn ich z. B. zuvor eine Datei mit touch und einer bestimmtes CCSID erstellt habe und bringe dann Daten mit CPYTOSTMF rein, bleibt die eingestellte CCSID erhalten.
Gruß
Bruno
-
Wenn die CCSID in Deiner Netserver-Konfiguration auf 850 steht, werden die Dateien, die Du ins IFS stellst auch mit 850 erstellt. Ändere die Konfiguration doch mal auf CCSID 1252 ab und schau mal was dann rauskommt.
Gruß,
KM
-
KM, du hast ja recht, an was man nicht alles denken muss, tztz .
Similar Threads
-
By eps330 in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 26-11-07, 12:24
-
By kroehn in forum NEWSboard Windows
Antworten: 5
Letzter Beitrag: 08-11-06, 19:36
-
By umeis in forum NEWSboard Windows
Antworten: 3
Letzter Beitrag: 11-08-06, 12:45
-
By Hrs28 in forum IBM i Hauptforum
Antworten: 0
Letzter Beitrag: 26-05-05, 13:16
-
By DEVJO in forum IBM i Hauptforum
Antworten: 11
Letzter Beitrag: 26-11-04, 19:01
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks