#! /usr/bin/awk -f # etc2leel.awk # Jorge Fco. Ricarte Lopez # Fri Aug 24 06:55:13 MDT 2007 # jorgericarte@asuni.com.mx # Files to psql # Ultimo cambio: Wed 09 Apr 2008 05:12:54 PM MDT BEGIN { FS=":" "date +%Y%m%d" | getline mHoy # if ( (ARGV[1] ~ /MOCXC/ ) || (ARGV[1] ~ /mocxc/) || (ARGV[1] ~ /.C/) ) # { INSFAC="fnhmcc( hc_cliente, hc_tipodocu, hc_tipoclie, hc_numedocu, hc_refer, hc_fecha, hc_plazo, hc_importe, hc_impuesto, hc_total, hc_vendedor, hc_cobrador, hc_aplicar, hc_serie, hc_numpre )" CI=1 CF=15 # } m1="" l=1 } function fDate(fEsDat) { if (fEsDat==" " || fEsDat=="") { fEsDat=mHoy } lnum=sprintf(",'%s'",fEsDat) return lnum } function fNumero(fEsNum) { if (fEsNum==0 || fEsNum==" " || fEsNum=="" ) { fEsNum=0 } lnum=sprintf(",%s",fEsNum) return lnum } function fCualEs(fNamFld,fValFld) { # print ("'")(fNamFld)("' -- '")(fValFld)("'") # print NR,CF,$0 lval="" if (fNamFld=="Clie prov ") { lval=sprintf("'%s'",fValFld) } if (fNamFld=="Tipo docu ") { lval=sprintf(",'%s'",fValFld) } if (fNamFld=="Tipo clie ") { lval=sprintf(",'%s'",fValFld) } if (fNamFld=="Nume docu ") { lval=sprintf(",'%s'",fValFld) } if (fNamFld=="Refer ") { lval=sprintf(",'%s'",fValFld) } if (fNamFld=="Fecha ") { lval=fDate(fValFld) } if (fNamFld=="Plazo ") { lval=fNumero(fValFld) } if (fNamFld=="Importe ") { lval=fNumero(fValFld) } if (fNamFld=="Impuesto ") { lval=fNumero(fValFld) } if (fNamFld=="Total ") { lval=fNumero(fValFld) } if (fNamFld=="Vendedor ") { lval=sprintf(",'%s'",fValFld) } if (fNamFld=="Cobrador ") { lval=sprintf(",'%s'",fValFld) } if (fNamFld=="Aplicar ") { lval=sprintf(",'%s'",fValFld) } if (fNamFld=="Serie ") { lval=sprintf(",'%s'",fValFld) } if (fNamFld=="Num precio ") { lval=sprintf(",'%s'",fValFld) } return lval } { # print NR,CF,$0 fld=substr($2,2) if (fld ~ /'/) { gsub(/'/," ",fld) } # # if (NR==CI-1) { # # m1=fCualEs($1,fld) # # m1=("'")($2)("'") # # m1=sprintf("'%s'",fld) # # } # # if (NR>=CI && NR<=CF) { # m1=(m1)(fCualEs($1,fld)) # # m1=(m1)(",'")(fld)("'") # # } # if (NR==CF+1) { # CI=CI+15 # CF=CF+16 # mLinea=("INSERT INTO ")(INSFAC)(" VALUES ( ")(m1)(" );") # m1="" # print mLinea # } # # print length($1),$1,length(fld),$2,length(lfld),lfld # esc2lee fld01=$1 fld02=$2 if (fld01) { m1=(m1)(fCualEs($1,fld)) } else { mLinea=("INSERT INTO ")(INSFAC)(" VALUES ( ")(m1)(" );") m1="" print mLinea } } END { #print mHoy }