ya encontre el error de hecho es muy tonto

en esta sentencia:
set @producto = SUBSTRING(@producto, 1,len(ltrim(@producto))-1) la utilizo para quitarle la ultima coma y como le resto -1 marca error por que cuando trae 0 e intenta quitarle 1 pues truena la aplicacion

, bueno al menos ya tengo un problema menos en mi vida

muchas gracias por tu ayuda iislas

en verdad se te agradece