- 
	
	
		
		
		
		
			Query Problem ändern eines Textfeldes in DEC
		
		
				
					
					
				
				
		
			
				
					Hallo zusamen, 
 
ich bemötige ein wenig Hilfe: 
 
Um eine Query zu schreiben muss ich zunächst einen String zerlegen: 
 
421060105077401 
 
dieser bildet den Buchhaltungsschlüssel ab 
zerlegt sieht dieser nun so aus 
 
42 = t01.office 
16 = t01.verkehr 
507740 = t01.jobclock 
 das sind die felder ich ich benötigt um das entsprechende record zu finden 
soweit sogut 
 
speicher ich das nun und verknüpfe diese Date mit der datei in der sich das record befindet 
 
also: 
 t02.crgicd eq t01.office 
t02.crwuch eq t01.verkehr 
 
und  
t02.crrqrn= t01.jobclock 
 
bekomme ich bei der letzten verknüpfung 
 
eine Fehlermedung da das field t01.jobclock nicht numeric ist 
 
ich muss also bei dem zerlegen und speichern das field t01.jobclock als numeric speichern. 
nur wie geht das oder geht das überhaupt  
Gruß 
Alfred
				 
			 
			
		 
			
				
			
				
			
			
			
		 
	 
	
	 
 
- 
	
	
		
		
		
				
				
		
			
				
					das Problem habe ich auch immer mal wieder.  
Meines Wissens kann Query aus char nicht dec machen. 
Ich löse solche Probleme andersrum, aus dem Dec Feld in der einen Datei (mittels Quey) ein char machen (Zwischendatei) und dann kann ich char mit char verknüpfen. 
 
Was besseres ist mir bis jetzt nicht eingefallen.  
 
kh
				 
			 
			
		 
			
				
			
			
			
		 
	 
	
	 
 
- 
	
	
		
		
		
				
				
		
			
				
					Am Besten legt man sich eine View an, die das Ergebnis korrekt liefert und führt das Query auf die View aus: 
  
STRSQL 
create view MyView as ( 
select ... dec(substr(field, 1, 3), 3, 0) numf1, ... 
from ... 
)
				 
			 
			
		 
			
				
			
			
				
			
			
		 
	 
	
	 
 
- 
	
	
		
		
		
				
				
		
			
				
					
	
		
			
			
				
					  Zitat von  Fuerchau
					 
				 
				Am Besten legt man sich eine View an, die das Ergebnis korrekt liefert und führt das Query auf die View aus: 
  
STRSQL 
create view MyView as ( 
select ... dec(substr(field, 1, 3), 3, 0) numf1, ... 
from ... 
) 
			
		 
	 
 
wenn ich das richtig verstehe kann ich das nicht im bereich "define Result Fields" machen oder?
				 
			 
			
		 
			
				
			
			
			
		 
	 
	
	 
 
- 
	
	
		
		
		
				
				
		
			
				
					Dein Problem ist, dass Du über das Feld verknüpfen musst. 
 
Im Bereich Define Result Fields kannst Du nur Ausgabe-Felder definieren. 
 
Du hast nur zwei Möglichkeiten: 
1. Wie Baldur vorschlägt, Du erstellst entweder selber oder lässt von jemand eine SQL View erstellen, die nicht nur das Feld aufsplittet und konvertiert, sondern auch noch gleich mit der zweiten Datei verknüpft. Diese SQL View kannst Du dann wie jede andere Datei im Query/400 verwenden. 
 
2. Wie kh vorschlägt, du generierst mit Query/400 zwischen Dateien, in denen die Felder aufgesplittet sind, bzw. eine Spalte für das numerische join-Feld (mit DIGITS(NumFld)) gebildet wurde. Diese Dateien verknüpfst Du dann in einem weiteren Query. 
 
(Mit Trick 17 bzw. Konvertierung in Milisekunden ist es auch möglich alpha Felder in numerische Werte zu konvertieren, aber der andere Weg mit Digits aus numerischen Werten alphanumerische Werte zu generieren ist wesentlich einfacher.) 
 
Birgitta
				 
			 
			
		 
			
				
			
			
				
			
			
		 
	 
	
	 
 
- 
	
	
		
		
		
				
				
		
			
				
					Mir blebt nur der weg 2. 
 
Sorry aber ich habe sehr viel verlernt da ich das über 4 Jahre nicht mehr gemacht habe.... 
 
dabei bin ich dann wieder im defeine result fileds da ich hier wohl das feld (das neue ausgabefeld) definiren muss um eine kopie der datei zu bekommen. 
 
soweit richtig? 
 
in field nehm ich einen neuen namen 
aber was kommt dann ins feld expression rein?
				 
			 
			
		 
			
				
			
			
			
		 
	 
	
	 
 
- 
	
	
		
		
		
				
				
		
			
				
					
	
		
			
			
				
					  Zitat von  Khholm
					 
				 
				das Problem habe ich auch immer mal wieder.  
Meines Wissens kann Query aus char nicht dec machen. 
Ich löse solche Probleme andersrum, aus dem Dec Feld in der einen Datei (mittels Quey) ein char machen (Zwischendatei) und dann kann ich char mit char verknüpfen. 
 
Was besseres ist mir bis jetzt nicht eingefallen.  
 
kh 
			
		 
	 
 
nur wir mache ich das?
				 
			 
			
		 
			
				
			
			
			
		 
	 
	
	 
 
- 
	
	
		
		
		
				
				
		
			
				
					Wenn du es mit Query und Ausgabedateien benötigst, kannst du aus Dec-Feldern Char-Felder mit der Funktion DIGITS machen. 
Per SUBSTR kannst du aus Char-Feldern neue Teilfelder generieren. 
  
Allerdings werden deine Abfragen nicht performant werden, da du ja zwei Ausgabedateien miteinander verknüpfst, die jedoch keinen Index aufweisen. 
  
Versuche es besser per SQL z.B. mit QM-Query. 
Per QM-Query kannst du deinen Select stricken und in eine Datei ausgeben, die du dann nur noch per Query/400 schön formatierst.
				 
			 
			
		 
			
				
			
			
				
			
			
		 
	 
	
	 
 
- 
	
	
		
		
		
				
				
					
				
		
			
				
					porblem gelöst  
besten dank! 
 
danke & gruß 
alfred
				 
			 
			
		 
			
				
			
			
			
		 
	 
	
	 
 
		 
		
		
	
 
	
	
 
	
	
	
	
	
	
		Similar Threads
		
			
			
- 
  
    
    
       By Stoeberl in forum NEWSboard Programmierung
     
   
  
    Antworten: 8
       
        Letzter Beitrag: 10-01-07, 11:58
       
   
 
- 
  
    
    
       By Kaufmann in forum IBM i Hauptforum
     
   
  
    Antworten: 6
       
        Letzter Beitrag: 29-11-06, 19:07
       
   
 
- 
  
    
    
       By Stoeberl in forum NEWSboard Programmierung
     
   
  
    Antworten: 11
       
        Letzter Beitrag: 26-10-06, 11:07
       
   
 
- 
  
    
    
       By Flappes in forum IBM i Hauptforum
     
   
  
    Antworten: 0
       
        Letzter Beitrag: 06-10-06, 09:39
       
   
 
- 
  
    
    
       By svente in forum NEWSboard Programmierung
     
   
  
    Antworten: 2
       
        Letzter Beitrag: 03-06-04, 16:45
       
   
 
			 
		 
	 
	
	
	
	
	
		
		
		
		
			
				 
				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