-
Hallo Mitglieder , habe eine Nachfrage dazu und aus Vereinfachungsgründen , nicht ein neues Thema erstellt . Die Frage/Problem welches ich habe und sich jetzt zeigte ist , dass beim laden der XML , die Umlaute nicht korrekt umgesetzt werden . Ich weiß , dies hat was mit der CCSID zu tun , was ich nicht weiß ist , wie ich dies einstellen kann in dem SQLRPG , dass die Umlaute ( üäö usw. ) ebenfalls korrekt empfangen und in die CLOB_File eingestellt werden . Danke für erue Hilfe .. PS: alles andere klappt mit eurer Hilfe hervorragend ..
-
Im zu ladenden XML-File steht im Header :
< ?xml version = "1.0" encoding="UTF-8"?>
zur Info ...
-
Die CCSID wird aus der Datei entnommen. Wenn sie aus Windows kommt hat sie u.U. 819 bestenfalls 1252 erhalten.
Für UTF8 musst du zuvor einen CHGATR mit *CCSID = 1208 anwenden.
-
okay, also vor dem laden , vor dem insert , wenn ich den Pfad und den Namen der file vom share erhalte , chgatr auf das objekt auf dem server um dann den insert im RPG durchzuführen , so richtig ?
-
Wenn du als Server deine IBM i meinst und der Share ein IFS-Pfad ist, dann stimmt das so.
-
nein, die XML liegt auf einem Windows Server ...
heißt also , ich kann dies dann so nicht machen .. wenn nicht .. wie kann ich die Daten dann korrekt in die CLOB laden ?
-
kann ich den insert parametrisieren mit CCS-angaben , oder sollte die Ziel-CLOB-File entsprecht definiert werden ? hier besteht die Herausforderung , dass ich direkt vom windowsserver lade ( Freigabe ist definiert ) , ohne Umwege , was ja auch problemlos funktioniert ...
-
Da hast du aber keine CCSID-Unterstützung, da Windows das nicht beherrscht.
Für eine CCSID-Konvertierung musst du die Datei vorher lokal ins IFS kopieren, ansonsten wird wieder der Default des Netservers (819/1252) verwendet.
Das geht z.B. mit CPY.
-
okay , danke . wir werden die files ins IFS stellen und dann mit CHGATR die CCSID ändern und die Daten laden ..
-
Hallo Brigitta,
dein Beispiel oben läuft bei mir rudimentär.
Ich möchte eine IFS-CSV-Datei lesen, und zwar Satzweise,
bis EOF.
Was muss ich noch beachten ?
Danke im voraus.
-
Nur mal so als Frage: Warum erstellst du nicht eine passende Tabelle und nutzt CPYFRMIMPF?
Satzweises lesen geht u.U. nur mit der neuen SQL-Functions IFS_READ.
-
Hallo,
Mit SQL Gibt es auch viele Möglichkeiten.
Hier hab ich ein Beispiel, wie du mit SQL das CSV nicht nur Zeile für Zeile einlesen kannst, sondern auch schon auf die entsprechenden Spalten aufgesplittet bekommst:
Code:
With csv2rows as (Select Element as Satz
from Table(SYSTOOLS.SPLIT(
GET_CLOB_FROM_FILE('/home/prouza/test.csv'), x'0D25')
)
),
rows2col as (select regexp_replace(satz, '(.+),(.+),(.+),(.+),(.+),(.+)', '$1') Spalte1,
regexp_replace(satz, '(.+),(.+),(.+),(.+),(.+),(.+)', '$2') Spalte2,
regexp_replace(satz, '(.+),(.+),(.+),(.+),(.+),(.+)', '$3') Spalte3,
regexp_replace(satz, '(.+),(.+),(.+),(.+),(.+),(.+)', '$4') Spalte4,
regexp_replace(satz, '(.+),(.+),(.+),(.+),(.+),(.+)', '$5') Spalte5,
regexp_replace(satz, '(.+),(.+),(.+),(.+),(.+),(.+)', '$6') Spalte6
from csv2rows
)
select * from rows2col;
Das (.+) steht für ein Feld im CSV. Diese Felder sind mit dem "," getrennt.
Es gibt auch noch andere Möglichkeiten wie man diese auf Spalten aufsplitten kann.
Die Frage der Performance wäre dann halt auch noch nebenbei.
Ich denke von diesem Aspekt ist der CPYFRMIMPF womöglich am schnellsten.
lg Andreas
Similar Threads
-
By KingofKning in forum NEWSboard Programmierung
Antworten: 8
Letzter Beitrag: 04-11-19, 07:59
-
By programmer400 in forum NEWSboard Drucker
Antworten: 7
Letzter Beitrag: 26-07-17, 10:58
-
By _MG_ in forum NEWSboard Programmierung
Antworten: 10
Letzter Beitrag: 14-12-16, 15:45
-
By dibe in forum NEWSboard Programmierung
Antworten: 20
Letzter Beitrag: 25-02-16, 15:33
-
By gerhardsw in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 20-12-13, 09:27
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