Pues la verdad es que no sé muy bien qué puede estar fallando pero te voy a recomendar algo:
Código PHP:
switch ($_POST['motivo_salida']) {
case "Venta Directa":
echo 'ENTROOOOOO';
echo '<br>';
$sql1 = "SELECT cantidad FROM activo WHERE serial_emp = '".$variable(no sé cual es, tan sólo sustitúyela)."' LIMIT 0, 30 ";
$result2=mysql_query($sql1);
$row=mysql_fetch_array($result2);
$cantsalida1= $row['cantidad'];
echo $totventa;
echo '<br>';
echo $cantsalida1;
echo '<br>';
$total=$totventa - $cantsalida1;
$sql1 = "UPDATE activo SET cantidad = '".$total."' WHERE serial_emp = '".$variable(igual que arriba)."'";
$res= mysql_query( $sql1 ) or die(mysql_error());
break;
}
Con los echos puedes comprobar si el switch se ejecuta bien. Es una buena manera de detectar errores. Comprueba eso y dime que valores introduces en el formulario, qué valores te imprime, si coinciden, si entra en ese case del switch, y si al hacer el UPDATE mysql te tira algún error o se ejecuta bien.
Un saludo.