yo recogeria todas las variables antes de la consulta, y luego preguntaria por cada una para agregarla a la consulta, asi:
por ejemplo
Código PHP:
$CertNum = $_POST[CertNum];
$Obra = $_POST[Obra];
$q = "select * from $Tabla where "; //ojo con el espacio al final
if($CertNum!='')
{
$q.="CertNum =".$CertNum."";
}
if($Obra!='')
{
$q.="Obra=".$Obra."";
}
y asi seguiria con todas la variables, igual tendria algunas precauciones por ejemplo si viene activado el check "ver todos" en $q al final deberia no ir el where, o si vienen mas de una variable que salga un and entremedio y asi...
asi yo armaria la consulta
saludos