-
Umsetzung Klein- in Großbuchstaben
Hallo @all,
wie kann ich elegant ganze Felder von Klein- in Großbuchstaben umsetzen, am Besten im free-Format ?
Ich bin hier im Forum über das API QDCXLATE gestolpert.
Hilft das weiter ? Und wenn ja, wo bekomme ich die Umsetzungstabellen her ?
Oder geht das Ganze noch einfacher ?
Die einzelnen Buchstaben per Schleife durch den LOOKUP zu schicken wäre ja wohl die letzte Lösung.
Vielen Dank im voraus
Holger Lossin
-
Hi,
versuchs mal mit
PHP-Code:
dUP c CONST('ABCDEFGHIJKLMNOPQRSTUVWXYZ')
dLO c CONST('abcdefghijklmnopqrstuvwxyz')
dMyString s 255a
.
.
/Free
MyString = %XLATE(lo:up:MyString);
/End-Free
Gruß
Sascha
-
P.s.:
Wenn es sich um eine SQL-Quelle handelt, kannst du natürklich auch SQL bemühen
PHP-Code:
DMyString S 255A inz('kleinschrift')
C/Exec SQL Set :MyString = Upper(:MyString)
C/End-Exec
Gruß
Sascha
-
Vielen Dank !
Werde beides testen, wobei ich SQL erstmal
schöner finde.
Holger Lossin
-
Hallo @lossin,
zu RPG Handbuch SC09-1817-00 RPG400 Reference Seite 377.
-
SQL ist insoweit auch eleganter, da Sonderzeichen je nach CCSID entsprechend berücksichtigt werden.
-
Mit SQL muss man erst prüfen, denn
z.B.
select upper(trim(usnam1) concat ' ' concat usnam2 )
liefert HANS MüLLER
Richtig:
select trim(upper(usnam1)) concat trim(upper(usnam2))
-
Zitat von mariupol1963
Mit SQL muss man erst prüfen, denn
z.B.
select upper(trim(usnam1) concat ' ' concat usnam2 )
liefert HANS MüLLER
Richtig:
select trim(upper(usnam1)) concat trim(upper(usnam2))
Sorry aber ich vestehe die Problematik nicht?! Bei mir sieht beides gleich aus. Oben eben mit Blank dazwichen. Es geht ja aber hier auch um die direkte Variablenumsetzung in einem PGM. Da ist mit Select dann ja eh nichts.
-
Klar geht das im PGM mit SQL:
set :myvar = upper(:myvar)
Ich muss nicht immer Dateizugriffe programmieren.
-
Moin,
sag ich ja aber wo ist denn im genannten Bsp. der Unterschied (also ich meine in der Ausgabe außer dem selbst eingefügten Blank)?
Gruß
Sascha
-
Zitat von JonnyRico
Moin,
sag ich ja aber wo ist denn im genannten Bsp. der Unterschied (also ich meine in der Ausgabe außer dem selbst eingefügten Blank)?
Gruß
Sascha
H
allo Sascha.
Der Unterschied ist beim NICHT umgesetzten Umlaut 'ü' !!!
Gruß Joe
-
Auch hier gibt's wieder mal ein CCSID-Problem:
Bei "trim(upper(usnam1)) concat trim(upper(usnam2))" wird die CCSID des Datenbankfeldes verwendet, so dass wohl eine korrekte Umsetzung erfolgen kann.
Bei "select upper(trim(usnam1) concat ' ' concat usnam2 )" muss ein temporäres Feld angelegt werden. Dieses erhält die CCSID des Job's.
Steht der Job aber auf 65535 (aus Systemwert QCCSID), kann nur eine korrekte Umsetzung der nicht varianten Zeichen erfolgen.
Setze den Job auf eine korrekte CCSID, dann erfolgt auch hier eine Umwandlung.
Similar Threads
-
By Beate in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 06-06-06, 09:34
-
By ADAM in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 10-02-06, 10:43
-
By mmaschke in forum IBM i Hauptforum
Antworten: 11
Letzter Beitrag: 06-04-05, 08:53
-
By DEVJO in forum IBM i Hauptforum
Antworten: 12
Letzter Beitrag: 24-03-05, 11:29
-
By sufukli in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 09-07-02, 14:16
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