Pues es que no tiene pies ni cabeza. Un Sum debiera producir un Float o en todo caso un Integer, pero ¿cómo puede producir un String?
No me has contestado en qué versión de MySql es donde se genera un StringField.
Ahora- aunque no pareciera ser necesario -¿qué pasa si obligas el tipo de datos en la consulta?
Código SQL
[-]
...
sum(if(id_Documento=1,folio_inicio,null)) + 0 as Factura_Inicio,
...
Al sumar el 0, si no mal recuerdo, obligas a MySql a convertir el dato a entero o numérico.
// Saludos