Let $L$ be a first-order language, let $T$ be an $L$-theory, and let $A$ be a parameter set, viewed in the expanded language $L(A)$ by adding a constant symbol for each element of $A$. Let $x = (x_1,\dots,x_n)$ be a tuple of variables, and let $\Sigma(x)$ be a set of $L(A)$-formulas with free variables among $x_1,\dots,x_n$.
Assume that $\Sigma(x)$ is finitely satisfiable over $T \cup \operatorname{Diag}(A)$, meaning that for every finite subset $\Sigma_0(x) \subset \Sigma(x)$, the theory
\begin{align*}
T \cup \operatorname{Diag}(A) \cup \{\exists x\, \bigwedge_{\varphi \in \Sigma_0} \varphi(x)\}
\end{align*}
is satisfiable.
Then there exists an $L(A)$-structure $N$ such that $N \models T \cup \operatorname{Diag}(A)$ and a tuple $b = (b_1,\dots,b_n) \in N^n$ such that
\begin{align*}
N \models \varphi(b)
\end{align*}…