PDA

View Full Version : Problem bei Anzeige mit EBCDIC nach FTP-Übertragung



sirdidi
03-11-06, 12:43
Hallo ihr hilfsbereiten iSeries User :)

habe ein Problem bei der Datenübertragung mit Copy/(FTP):

Kurze Vorinfo:
Damit mein FTP-User nichts anstellen kann, habe ich auf der iSeries zuerst eine leere Bibliothek angelegt. Diese habe ich dann in seinem Benutzerprofil (CURLIB) hinterlegt. Er sieht also nur den Inhalt dieser Bibliothek und kann auch sonst nichts anstellen.

Ich bekomme von ihm Daten auf die iSeries in diese Bibliothek bereitgestellt.
Diese Dateien beinhalten Werte, sowohl + als auch -.
Bei den MinusWerten 1-9, also 1- bis 9- funzt es auch tadellos. Es wird alles korrekt (EBCDIC) umgesetzt in J,K,L,M etc.
Sobald aber ein Wert kommt z.B. 5600- (der wird mit 560ü überstellt) macht die iSeries 560} draus und ich kann den Wert nicht so verwenden.

Hoffe ich hab mein Problem genau genug geschildert:confused:

Kann mir da jemand weiterhelfen?

Mir "fragenden" Grüßen

Dateiauszug iSeries:
000006580 L000001316
00000560} L00000112}
000000940 L000000188
000000321 L000000642
000000023 L000000046
000000332 L000000664


Auszug aus Übertragungsdatei
369470856 11711920 20060120I000000000006580 L000001316 061102 M
369470856 11711920 20060120I00000000000560ü L00000112ü 061102 M
369470856 11711920 20060120I000000000000940 L000000188 061102 M

alfredo
03-11-06, 12:54
Das ist ein typisches Zeichensatzproblem(273/870).
Vielleicht hilft der bin befehl.

Fuerchau
03-11-06, 13:09
Dies deutet auf die CCSID 500 hin.
Per CHGFTPA kann die CCSID von 819 auf 1252 geändert werden. Leider ist das eine Systemeinstellung.

Alternativ müsste auch

quote type c 1252

vor dem put-Befehl reichen.

Schau dir ggf. die CCSID der PF an und die CCSID deines Job's zur Laufzeit.
Die PF hat ggf. eine CCSID 500, dein Job aber 65535 !
Dann erfolgt auch keine Übersetzung !!!

sirdidi
03-11-06, 13:26
Hallo,

erstmal dankeschön für die "Blitz"-antworten.

Also die File hat wie Fuerchau vermutet hat CCSID 500.

Wie setzt ich denn den quote Befehl ab? Wenn ich mich als externer anmelde und dann den Befehl schreibe, bekomme ich - Ungültiger Befehl ?? (ich hab mich nicht verschrieben:D oder brauch ich da vorher nochwas?)

Nochmal danke für die schnelle Hilfe.....

Ralph

Fuerchau
03-11-06, 13:40
Wenn ich aus einer DOS-Box den FTP zur AS/400 aufrufe kann ich den Befehl:

quote type c 1252

eingeben. Als Antwort erhalte ich dann

200 Representation type is CCSID 1252.

sirdidi
06-11-06, 08:12
Hallo,

Montagfrüh gehts wohl besser, als Freitagnachmittag :D

Der Befehl lässt sich absetzten, allerdings kommt nach dem
Put-Befehl nichts mehr. Mit nichts meine ich, das die Bestätigung das was übertragen wurde fehlt. Also kein
150 Sending file to .... usw.
Außerdem kommt auf der iSeries keine Datei an. Bibliothek ist leer.

????

Gruß Ralph

Fuerchau
06-11-06, 12:27
Dann fehlt wohl noch eine korrekte CCSID in deinem System.
Prüfe mal den Systemwert QCCSID.

sirdidi
06-11-06, 12:46
Hallo,

der lautet: Zeichensatzes (CCSID): 65535

Gruß Ralph

Fuerchau
06-11-06, 12:51
Eben, wie soll die AS/400 erkennen in welche CCSID umgewandelt werden soll ?

Systeme mit QCCSID 65535 gehörten verboten !

Setze eine korrekte CCSID ein (e.g. 273) dann klappts auch.