Synon Y files

546 Views


1. Using this synon Y file, we can find the help text of a field.

SELECT * FROM MDLLIB/YTXTDTA00L WHERE @@OBJ in (SELECT @@FLD FROM MDLLIB/YFLDDTA1JL WHERE upper(fld)='Reject Code' )       

YTXTDTA00L contains Help text of all fields.

YFLDDTA1JL contains all synon Fields.   

2. Find all fields with word reject code in Synon in Synon Y Files

SELECT * FROM MDLLIB/YFLDDTA1JL WHERE upper(fld) like '%COMPLEX%'      

 

 SELECT FLD, INTLEN FROM MDLLIB/YFLDDTA1JL WHERE  (upper(fld) like '%REJ%CD%' or upper(fld) like '%REJ%CDE%'   or upper(fld) like '%REJ%COD%' ) 

 

3. Find all fields of length 3,4,12 in Synon

SELECT * FROM MDLLIB/YFLDDTA1JL WHERE INTLEN in (2,3, 12) and 
(upper(fld) like '%REJ%CD%' or upper(fld) like '%REJ%CDE%' or 
upper(fld) like '%REJ%COD%' ) 

4. Find reference fields of particular fields in Synon in Synon Y files

SELECT * FROM MDLLIB/YFLDDTA1JL WHERE @@DOM in (SELECT @@FLD 
FROM MDLLIB/YFLDDTA1JL WHERE @@FLD in (SELECT DISTINCT @@DOM 
FROM MDLLIB/YFLDDTA1JL WHERE upper(fld) like '%REJ%CD%' or upper(fld) like '%REJ%CDE%' or 
upper(fld) like '%REJ%COD%' )) 

5. Get Field Mode used in a Screen Program in Synon

SELECT a.IMPNME, b.IOOVR, c.fld FROM MDLLIB/YMDLOBJ00L a,        
MDLLIB/YSCRENT02L b, MDLLIB/YFLDDTA1JL c WHERE @@OBJ = @@MSG  
and b.@@FLD =c.@@FLD and upper(fld)='REJECT CDE'          

SQL Output:

Implement. Name  NPT               Field       
                 usage (override)  name        
  XXXCRL010              O          Reject Cde  
  CXXCRL011              O          Reject Cde  
  XXCRL005               O          Reject Cde  
  XXEIZ002               I          Reject Cde  
  XXCRL012               O          Reject Cde  
********  End of data  ********      

         

6. SQL to get FIeld Mode, Screen name, Field name in Synon

SELECT DISTINCT                                                     
T02.IOOVR, T01.IMPNME, T01.OBJNME, T01.OBJATR, T01.FUNTYP,T02.@@FLD, T03.FLD                                        FROM                                                                
MDLLIB/YMDLOBJ00L T01,                                           
MDLLIB/YSCRENT02L T02,                                           
MDLLIB/YFLDDTA1JL T03,                                           
ACMSCTL.OBJSRELOBJ  T04,                                                                                                                           
(SELECT * FROM MDLLIB/YFLDDTA1JL WHERE                                                               
 (UPPER(FLD) LIKE '%DIA%' AND UPPER(FLD) LIKE '%CD%' and            
  UPPER(FLD) LIKE '%QL%'   )       OR                               
 (UPPER(FLD) LIKE '%DIAGNOSIS CDE QL%'  )                                                                                                
OR UPPER(FLD) LIKE '%DIAGNOSIS CODE Q%') as T05   
WHERE                                                           
T01.@@OBJ  = T02.@@MSG                 AND                    
T02.@@FLD  = T03.@@FLD                 AND                    
T01.IMPNME = T04.OBJNAME               AND                    
T03.@@FLD  = t05.@@FLD                 AND                    
T01.IMPNME        <> ' '               AND                    
T01.IMPNME        NOT LIKE '%BK'       AND                    
T02.IOOVR         IN       ('I','O')   AND                    
T01.FUNTYP        <>       'PRTFIL'                 
ORDER BY T02.IOOVR, T01.IMPNME   

7. Get Field Conditions:
SELECT * FROM MDLLIB/YCNDDTA1JL WHERE @@OWN in                   
(SELECT @@DOM FROM MDLLIB/YFLDDTA1JL WHERE FLD ='Flag IFSInp')   
 
8. Retrieving Condition Value of a Field:
SELECT * FROM MDLLIB/YCNDDTA1JL inner  
join MDLLIB/YFLDDTA1JL on @@OWN = @@DOM where                  
FLD ='TCD Claim Status'                                           
and CND='Accepted'   

Select * from mdlib/y2vllsp

9. Get Aldon Objects using SQL:

SELECT ENH, substr(OBJNAME,1,12), OBJFMLY FROM ACMSCTL/ENHOBJENH 
WHERE ENH ='BC2152112' ORDER BY OBJNAME                         

select  ENH, substr(OBJNAME,1,12), OBJFMLY, (select FUNTYP from 
MDLLIB/YMDLOBJ00L where IMPNME = OBJNAME)
FROM ACMSCTL/ENHOBJENH 
WHERE IMPNME in (select OBJNAME from ACMSCTL/ENHOBJENH           
WHERE ENH ='BC2152112')       

with temp as ( select ENH, substr(OBJNAME,1,12) obj, OBJFMLY ,     
FUNTYP from ACMSCTL/ENHOBJENH left outer join MDLLIB/YMDLOBJ00L 
on trim(IMPNME)=trim(OBJNAME) where ENH ='BC2152112' ORDER BY      
OBJNAME) select * from temp where OBJFMLY <> '*BNDDIR' and (FUNTYP  
='EXCEXTPGM' or FUNTYP='EXCUSRSRC'  or FUNTYP is NULL)             
order by OBJ    

Post Comments