-
Zitat von Pikachu
CREATE VIEW ViewName AS ( SELECT ... )
stimmt, auch wieder logisch. man sieht hier die schwächen eines sap-programmieres was SQL anbelangt
-
Zitat von B.Hauser
Die hab' ich unterschlagen, weil war auch in dem Statement, das gestern oder so gepostet wurde nicht drin.
Birgitta
hmmm, wie bring ich das mit der consnumber jetzt noch rein ins sql ?
habe folgenden fall:
Code:
consnumber tel_number flgdefault
1 0662/640 617 X
2 0662/650 440
3 0662/640 552
Der View bringt in Spalte TEL1 jetzt die Nummer mit consnumber 1, das ist richtig.
Aber in TEL2 steht jetzt die TElefonnummer mit consnumber 3 drinnen, das ist falsch. Hier möchte ich die Consnumber 2 haben, also die niedrigste Nummer.
-
so, habe jetzt das ganze fertig, die Performance passt jetzt halbwegs. Habe 2 Subselects drinnen, die sich meiner Meinung nach nicht vermeiden lassen, ABER:
Jetzt habe ich ein neues Problem: wenn ich den View in ein SAVF packe, und den View auf einer anderen AS/400(wo die SAP-Daten liegen) wieder 'auspacke' funktioniert der Zugriff ordnungsgemäss AUSSER die 2 Felder tel2 und mobil2. Dort bekomm ich immer blank im Ergebnis.
Was kann das sein ?
Auf der anderen Maschine funktiokniert der Zugriff, dort liegen Kopien der 3 Datein KNA1,ADR2 und ADR6.
Code:
create view cmsms1/zkna4_view AS
(Select A.MANDT, A.KUNNR, A.NAME1, A.NAME2, A.STRAS, A.ORT01,
A.PSTLZ, A.LAND1, A.SORTL,
Coalesce(Min(Case When B.R3_User = '1' or (B.r3_user = ' ' and
B.flgdefault = 'X')
Then Tel_Number End), '') as Tel1,
Coalesce(Min(Case When B.R3_User = ' ' and B.flgdefault = ' '
and B.consnumber = (Select Min(Consnumber) from
R3P02DATA/adr2 where addrnumer = A.adrnr and
R3_User = ' ' and flgdefault = ' ')
Then Tel_Number End), '') as Tel2,
Coalesce(Min(Case When B.R3_User = '3' or (B.r3_user = '2' and
B.flgdefault = 'X')
Then Tel_Number End), '') as Mobil1,
Coalesce(Min(Case When B.R3_User = '2' and B.flgdefault = ' '
and B.consnumber = (Select Min(Consnumber) from
R3P02DATA/adr2 where addrnumer = A.adrnr and
R3_User = '2' and flgdefault = ' ')
Then Tel_Number End), '') as Mobil2,
Coalesce(Min(Case When C.FLGDEFAULT = 'X'
Then SMTP_ADDR End), '') as EMail1,
Coalesce(Min(Case When C.FLGDEFAULT = ' '
and C.consnumber = (Select Min(Consnumber) from
R3P02DATA/adr6 where addrnumer = A.adrnr and
flgdefault = ' ')
Then SMTP_ADDR End), '') as EMail2, A.STCEG
From R3P02Data/KNA1 a
left outer join R3P02Data/ADR2 b on b.ADDRNUMBER = ADRNR
left outer join R3P02Data/ADR6 c on c.ADDRNUMBER = ADRNR
Where A.KUNNR < '0000999999' AND A.MANDT = '101'
AND A.BEGRU <> 'LOES'
Group By A.MANDT, A.KUNNR, A.NAME1, A.NAME2, A.STRAS,
A.ORT01, A.PSTLZ, A.LAND1, A.SORTL, A.STCEG)
-
Dann würde ich die Datenbasis prüfen, ob die Bedingungen auch dort so stimmen um die Werte zu ermitteln.
-
Zitat von Fuerchau
Dann würde ich die Datenbasis prüfen, ob die Bedingungen auch dort so stimmen um die Werte zu ermitteln.
Das hab ich bereits getan, komm auf keinen grünen Zweig:
Habe die 3 Datein in ein SAVF gepackt, auf die andere AS/400 transferiert, weil ich nur dort ein STRSQL machen kann. Auf der SAP AS/400 gibts das nicht.
Nun, dort hab ich den View erstellt. Und dann hab ich den View auf die SAP AS/400 gestellt.
Und dort bekomm ich die 2 Felder mit blank zurückgeliefert.
OS/400 Release is auf beiden Maschinen gleich (V5R4)
Seltsam !
-
Da die Views ja absolute Verweise auf die Libs und Dateien enthält, vermute ich mal, dass die bezogenen Objekte ggf. falsch sind.
Auch ohne STRSQL kannst du die Views per Code erstellen.
Bette den CREATE VIEW in ein SQLRPG/LE ohne absolute Bezüge (OPTION COMMIT=*NONE), setze die Libl auf dem Zielsystem korrekt und rufe das Programm auf.
Alternativ kannst du den Create auch in ein QM-Query setzen und per STRQMQRY auf dem Zielsystem ausführen.
REXX geht genauso.
Similar Threads
-
By Stefan_Sk in forum NEWSboard Programmierung
Antworten: 8
Letzter Beitrag: 26-05-06, 16:37
-
By Lucky4712 in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 24-05-06, 15:57
-
By cbe in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 08-06-05, 16:21
-
By itec01 in forum IBM i Hauptforum
Antworten: 9
Letzter Beitrag: 16-09-04, 18:38
-
By rebe in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 07-09-01, 13: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