Here is one way to do it. I would avoid passing in variables in the manner that you are attempting. It's too messy.
Code:
while read appname apphandle eitthvad pid
do
[[ ${appname}${apphandle}${eitthvad}${pid} = "" ]] && continue
nawk -F\; -v pid=${pid} -v apphandle=${apphandle} -v appname=${appname} '
$1 == pid {
print $1, $2, $3, $4, $5, $6, $7, $8, apphandle appname
}' $OUTFILE
done < $TEMPFILE