Background: Secret Sharing and Multiplication Triples
For the second question. The mistake was exactly that the asker did the XOR as 
$$
d_a = x_a \oplus a \\
d_b = x_b \oplus a
$$
But the correct way is 
$$
d_a = x_a \oplus a\\
d_b = x_b
$$
Thus to compute the shares for 
$$
[z] = [c]\oplus e[x]\oplus d[y]\oplus ed
$$
You would set
$$
z_a = c_a \oplus ex_A \oplus dy_a \oplus ed\\
z_b = c_b \oplus ex_b \oplus dy_b
$$
You can check that this gives the expected result. 

I am not sure what you first question is about. The purpose of the having secret shared a random multiplication triple $[a],[b],[c]$ is solely to use it later in this protocol to perform a multiplication operation (in this case AND). Not sure if this answers you question.