No conozco ese motor de base de datos, pero si dieras el mensaje de error que te da quizás alguna búsqueda en San Google te pueda ayudar.
De todos modos, veo que estás haciendo una conversión de fecha a string. Luego lo concatenas con la hora y vuelta a convertir a fecha.
Te sugiero que rompas el problema en varios trozos y pruebes dónde está el error... por eso de "divide y vencerás"...
Empiezas por:
Código SQL
[-]
SELECT Fecha1, Hora1, fecha2, Hora2
FROM CP_MOVIMIENTO
Ves lo que devuelve y si es correcto sigues.
Aquí puede ser que el formato de la hora no sea correcto... o que tenga nulos o que tenga letras o que ponga la hora 25:73...
Código SQL
[-]
SELECT convert(Fecha1,SQL_CHAR), convert(fecha2,SQL_CHAR)
FROM CP_MOVIMIENTO
Ves lo que devuelve y si es correcto sigues:
Código SQL
[-]
SELECT convert(convert(Fecha1,SQL_CHAR)+' '+Hora1,SQL_TIMESTAMP), convert(convert(fecha2,SQL_CHAR)+' '+Hora2,SQL_TIMESTAMP)
FROM CP_MOVIMIENTO
Ves lo que devuelve y si es correcto sigues:
Código SQL
[-]
SELECT TIMESTAMPDIFF(SQL_TSI_Minute, convert(convert(Fecha1,SQL_CHAR)+' '+Hora1,SQL_TIMESTAMP), convert(convert(fecha2,SQL_CHAR)+' '+Hora2,SQL_TIMESTAMP))
FROM CP_MOVIMIENTO
Ves lo que devuelve y si es correcto es que el problema no está en el SQL.