Another issue is that sometimes surfaces do not have parametrizations which cover the whole surface; this is true for example for the surface of a cylinder (of finite height). The obvious solution is then to split that surface in several pieces, calculate the surface integral on each piece, and then add them all up. This is indeed how things work, but when integrating vector fields, one needs to again be careful in choosing the normal-pointing vector for each piece of the surface, so that when the pieces are put back together, the results are consistent. For the cylinder, this means that if we decide that for the side region the normal will point out of the body, then for the top and bottom circular parts, the normal must point out of the body too.