Display Tableau awk xml

to creat send with model CFTUTIL and xml desc of display

  • Tableau colonnes 1er ligne fichier lu
#!/bin/sh
##############################################
#
# to creat send with model CFTUTIL and xml desc of display
#
##############################################
#
## . ~/.bash_profile

##  sort -t' ' -k1,2 - |sed '1,19d'|grep -v "Pour generer"|awk '{ if (NR==1){ Npa=split($0,a," "); for (i=0;i<=Npa;i++){a[i]=toupper(a[i])} ; next } ;
###  sort -t' ' -k1,2 - |sed '1,18d'|awk '{ if (NR==1){ Npa=split($0,a," "); for (i=0;i<=Npa;i++){a[i]=toupper(a[i])} ; next } ;
 sort -t' ' -k1,2 - |sed '1,18d'|awk '{ if (NR==1){ toupper($0) ; Npa=split($0,a," ");split($0,c," "); for (i=0;i<=Npa;i++){ c[i]=match($0,a[i]);a[i]=toupper(a[i])} ; next } ;
###   Npb=split($0,b," "); if ( Npb -ne Npa ) { print "#####AVERTISSEMENT##### Manque valeur pour une ou des colonnes" };
     Npb=split($0,b," ");
  printf("CFTUTIL send type=file, \\\n");
  j=0; for (i=1;i<=Npa;i++) 
  { j=j+1 ; 
   if ( substr($0,c[i],1)==" " ) {  printf("        %s=###Manque valeur colonne### %s\n",a[i],sep) ; i=i+1 ; loop } ;
   if ( substr($0,c[i],1)=="-" ) {  b[j]="" } ;
   sep="";if (i<Npa){sep=", \\"} ; 
   if ( a[i]=="STATE" ) { gsub("X","Disp",b[j]) ; gsub("H","Hold",b[j])  } ;
   if ( a[i]=="FCODE" ) { gsub("A","Ascii",b[j]) ; gsub("B","Binary",b[j]) } ;
   if ( a[i]=="PARM" ) {printf("        %s=\"'\''%s'\''\" %s\n",a[i],b[j],sep) } else { printf("        %s=%s %s\n",a[i],b[j],sep)} ; 
   if ( a[i]=="FLRECL" ) { FLRECL=b[j] } ;
   if ( a[i]=="FNAME" ) { if ( b[j] ~  "/cftdata/CFT/EAIE" ) 
      { printf("#ToRetFname# dsmc ret -verbose -replace=no /apps/data/CFT/REEL/CFT/EAI_CFTE.%s.L%06i.FFB %s\n",substr(b[j],19),FLRECL,b[j]) }
      else
      { printf("#####ToRetFname# dsmc ret -verbose -replace=no /apps/data/CFT/REEL/CFT/%s\n",substr(b[j],14)) }} ;
  }
  print " ";
}' |egrep -v "NREC=|TREC=|DIAGI=|FDATE=|FTIME=|DATEE=|SENS=|IDT="

exit

################### le xml associer a l'appel CFTUTIL : CFTDSPCNF=/tmp/dspcnfsendfic.xml CFTUTIL display type=file,state=h
##########

<?xml content='ascii'?>

<!-- Filter Model for the CFTUTIL DISPLAY command
CFTUTIL DISPLAY  
		listcat-parameters
                + content= | STR                <- nothing means first available
		+ fmodel = DSPCNF | STR         <- DSPCNF is system dependant : ex.: UNIX/Windows is DSPCNF an environment variable
		+ mode   = ANY | column | line  <- ANY means use the model's
		+ na     = ANY | STR            <- idem
		+ empty  = ANY | STR            <- idem
		+ help   = NONE | FIELDS | MODELS 
		
<CFTDisplayFilter
	id='STR'
	mode            = 'column|line'
	title_size      = '-1|NUM'              <- apply only in line mode
	title_align     = 'left|center|right'   <- apply only in line mode
	line_prefix     = '|STR'
	line_suffix     = '\n|STR'
	default_prefix  = '|STR'
	default_suffix  = ' |\n|STR'            <- default is ' ' in column mode and '\n' in line mode
	default_empty   = '-|STR'
	default_na      = '#|STR'
	>
	<Fields>
		<Field 	id        = 'ID' 
				title     = 'id|STR'   <- default uses the id for the title name
				maxlength = '-1|NUM'   <- default(-1) means that no length is used
				minlength = '-1|NUM'  
				prefix    = '|STR' 
				suffix    = '|STR' 
				align     = 'left|center|right'
				na        = '|STR'
				empty     = '|STR' 
		/>
	<Fields>
<CFTDisplayFilter>
-->

<!-- LISTCAT Model : classical CFTUTIL LISTCAT with long IDs -->
<CFTDisplayFilter 	id		='listcat'
			title_align  	='left' >
	<Fields>
<Field id='PART'                  title='PART' />
<Field id='IDF'		title='IDF'		minlength='4' />
<Field id='NIDF'		title='NIDF'		minlength='4' />
<Field id='DIRECT'	title='Sens'	/>
<Field id='STATE'	title='State' align='left' />
<Field id='IDT'                   title='IDT' />
<Field id='FREC'	title='Nrec'	align='left' />
<Field id='NREC'                  title='Trec' align='left' />
<Field id='DATEE'                  title='Datee' />
<Field id='FTYPE'                 title='FTYPE' align='left' />
<Field id='FCODE'                 title='FCODE' align='left' />
<Field id='FRECFM'                title='FRECFM' align='left' />
<Field id='FLRECL'                title='FLRECL' align='left' />
<Field id='SUSER'       title='Suser' maxlength='8'     />
<Field id='RUSER'       title='Ruser' maxlength='8'     />
<Field id='PARM'                  title='Parm' />
<Field id='IDA'                   title='Ida' />
<Field id='FNAME'                 title='FNAME' />

	</Fields>
</CFTDisplayFilter>



Previous page: Codes error CFT
Page suivante : Extraire configuration