Ver Mensaje Individual
  #1  
Antiguo 21-07-2006
Avatar de Cabanyaler
Cabanyaler Cabanyaler is offline
Miembro
 
Registrado: jun 2003
Ubicación: País Valencià
Posts: 339
Reputación: 22
Cabanyaler Va por buen camino
Unhappy el objeto 'sysmergearticles' no es válido....

Hola compañeros.
Tengo un error que me sale al ejecutar un procedimiento almacenado sobre un total de dos tablas sql. A continuación expongo el contexto y cual es el mensaje de error.

Contexto.
Tengo una BBDD en el servidor que a su vez se replica en su modo de mezcla con otras dos BBDD de otros dos servidores en ciudades diferentes. La sincronización es correctamente realizada todos los días. En los tres servidores tengo el w2003 server con los MSSQL 2000 con sus services packs.
En la tabla destino la clave principal es un campo autoincrementativo, el cual no está incluido en el select del procedimiento. Pero creo que no será necesario incluirlo ya que se asignará de modo automático el valor al hacerse la inserción ¿o no?. tampoco inserto ningún campo memo, ni tipo Blob.

Operación deseada a realizar
Quiero insertar todas las tuplas que existan en una tabla y no existan en la otra, pero me salta el error, y creo que debe ser por la replicación

Código SQL [-]
INSERT INTO Clientes (Codigo_Cli, ApeNom_Cli, Nif_Cli, Dir_Cli, Loc_Cli, NumPos_Cli, CodPos_Cli, CodCen_Cli, NumPta_Cli, NumTel_Cli, NumFax_Cli, Email_Cli, Comentario_Cli, Company_Cli, Pais_Cli, Apellido1FIS_Cli, Apellido2FIS_Cli, DNIFIS_Cli, NombreFIS_Cli, DirFIS_Cli, LocFIS_Cli, ProFIS_Cli, Seguro_Cli, Fecha_Cli, Via_Cli, CodigoComCli)
SELECT Codigo_Cli, ApeNom_Cli, Nif_Cli, Dir_Cli, Loc_Cli, NumPos_Cli, CodPos_Cli, CodCen_Cli, NumPta_Cli, NumTel_Cli, NumFax_Cli, Email_Cli, Comentario_Cli, Company_Cli, Pais_Cli, Apellido1FIS_Cli, Apellido2FIS_Cli, DNIFIS_Cli, NombreFIS_Cli, DirFIS_Cli, LocFIS_Cli, ProFIS_Cli, Seguro_Cli, Fecha_Cli, Via_Cli, CodigoComCli
FROM Fichero_txt
WHERE NOT EXISTS (SELECT *
                  FROM Clientes
                  WHERE ((Clientes.Codigo_Cli = Fichero_Txt.Codigo_Cli) AND (Clientes.ApeNom_Cli = Fichero_Txt.ApeNom_Cli)))


Error que me sale:
Desde la ejecución de la aplicación llamando al store procedure mediante un ADOCommand:
"El objeto 'dbo.sysmergearticles' no es válido"

Si ejecuto el comando directamente desde el Enterprise manager:
Servidor:mensaje 208, nivel 16, estado 1, procedimiento ins_C20F2A050A90444F8FF636DACD62A23A, línea 16
El nombre de objeto 'dbo.sysmergearticles' no es válido.


Si en lugar de ejecutarlo mediante SP, lo hago con bucle recorriendo la tabla Fichero_txt hasta el final y si no Locate sobre la Clientes entonces insertar, me sale tambien el error "El objeto 'dbo.sysmergearticles' no es válido"

He estado mirando y dbo.sysmergearticles contiene una fila por cada artículo de mezcla definido en la base de datos local. Esta tabla se almacena en la base de datos de publicaciones. Y me pregunto ¿que tiene esto que ver con el UPDATE que estoy haciendo o intento hacer yo?. Bien es cierto que la primera UPDATE deberá insertar aproximadamante 8800 tuplas, ¿y qué!!?.

Si alguien me puede ayudar, quizá este viernes pueda ver algo, sino después e Benicassim el Lunes seguiré... ¡peligro!
__________________
El meu país és tan petit, que des de dalt d'un campanar es pot veure el campanar veí.

Última edición por Cabanyaler fecha: 21-07-2006 a las 10:34:46.
Responder Con Cita