-
Feldnamen im Sql als Überschrift
Hi *all,
kann ich ein SQL (5250 strsql) so aufrufen, das ich statt des COLGHG den feldnamen bekomme?
Hintergrund: die Datei hat gefühlte 10.000 Felder, die Überschrift ist ein Roman, ich sehe max. 3 Felder am BS. Alle (für mich relevanten) Felder mit "...as FELDX" um zu definieren ist
1. aufwendig und
2. brauch ich sowieso die 'echten' Feldnamen.
Danke
Robi
Das Notwendige steht über dem technisch machbaren.
(klingt komisch, funktioniert aber!)
-
Schwarz/Grün soweit ich weiß nicht.
IBM i Navigator - Eine Prozedur ausführen ist das Standard (da kann man auch umschalten)
... zum Trost, eine Datei/Tabelle kann höchstens 8.000 Spalten haben 
Birgitta
-
Hallo Robi,
erstelle dir doch mit folgenden kleinen Programm eine View.
PHP-Code:
h dftactgrp(*no)
d MakeView pr ExtPGM('MAKEVIEW')
d View_Lib 10
d View_Name 10
d File_Lib 10
d File_Name 20
d MakeView pi
d View_Lib 10
d View_Name 10
d File_Lib 10
d File_Name 20
d
d True c *On
d False c *Off
d
d String_SQL s 32766 Inz( *Blanks )
d String_SQL1 s 32766 Inz( *Blanks )
d
d DS_Satz ds Qualified
d FeldName 10
d Type 8
d Laenge 5s 0
d Scale 5s 0
/free
*InLr = true;
Exec SQL set option commit=*none;
String_SQL = 'Create view ' + %Trim( View_Lib ) + '/' +
%Trim( View_Name ) + ' as (Select ';
String_SQL1 = 'Select sys_cname, Cast(ColType as Char(8)), ' +
'Cast(length as dec(5, 0)), ' +
'case when scale is NULL then 0 else Cast(scale as dec(5, 0)) end' +
' from syscolumns where sys_tname=''' + %Trim( File_Name ) +
''' and sys_dname=''' + %Trim( File_Lib ) + '''';
Exec SQL Declare CursorXX Cursor For String_SQL1;
Exec SQL Prepare String_SQL1 From :String_SQL1;
Exec SQL Open CursorXX;
DoW sqlcod >= 0 and sqlcod <= 100;
Exec SQL Fetch Next From CursorXX into :DS_Satz;
If sqlcod <> 0;
Leave;
EndIf;
ExSr SR_Work;
EndDo;
Exec SQL Close CursorXX;
String_SQL = %SubSt( %Trim( String_SQL ) : 1 :
%Len( %Trim( String_SQL ) ) -1);
String_SQL = %Trim( STring_SQL ) +
' from ' + %Trim( File_Lib ) + '/' +
%Trim( File_Name) + ')';
Exec SQL Execute Immediate :String_SQL;
BegSr SR_Work;
Select;
When ds_satz.type = 'DECIMAL' or
ds_satz.type = 'NUMERIC';
String_SQL = %Trim( String_SQL ) +
' Cast( ' + %Trim(ds_satz.feldname) +
' as Dec(' +%Trim(%Char(ds_satz.Laenge)) + ', ' +
%Trim(%Char(ds_satz.Scale)) + ')) as ' +
%Trim(ds_satz.feldname) + ', ';
When ds_satz.type = 'CHAR';
String_SQL = %Trim( String_SQL ) +
' Cast( ' + %Trim(ds_satz.feldname) +
' as Char(' +%Trim(%Char(ds_satz.Laenge)) + ')) ' +
' as ' + %Trim(ds_satz.feldname) + ', ';
EndSl;
EndSr;
/end-free
Eventuell musst du dir in der SR_Work noch weitere Feldtype bearbeiten.
Auch sollte keine View mit dem Namen in der Lib schon existieren.
Aufruf mit
Call Makeview (ViewLib ViewName Mylib MyFile)
Gruß
Ronald
-
Sauber ...
Wie cool ist das den !!!
Copiert, gewandelt, aufgerufen, angesehn begeistert!!!
Echt hilfreich, DANKE
(wir haben zwar auch Pgmme , die Views nach best. Mustern / Vorgaben erstellen, aber auf die Idee das so zu lösen muß man erstmal kommen!)
Vielen vielen Dank
Sonnigen Gruß vom Steinhuder Meer
Robi
Das Notwendige steht über dem technisch machbaren.
(klingt komisch, funktioniert aber!)
-
Das ist das Ergebnis, wenn man schon im Urlaubmodus ist, und Nachts nicht schlafen kann..
Schönes Wochenende
Ronald
(Der dann ab Morgen im Elsass ist)
Similar Threads
-
By Stefan_R in forum NEWSboard Drucker
Antworten: 2
Letzter Beitrag: 11-06-01, 09:55
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