Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MS SQL Server
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-07-2006
Avatar de Cabanyaler
Cabanyaler Cabanyaler is offline
Miembro
 
Registrado: jun 2003
Ubicación: País Valencià
Posts: 339
Poder: 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 11:34:46.
Responder Con Cita
  #2  
Antiguo 03-08-2006
Avatar de Cabanyaler
Cabanyaler Cabanyaler is offline
Miembro
 
Registrado: jun 2003
Ubicación: País Valencià
Posts: 339
Poder: 22
Cabanyaler Va por buen camino
Perdón se me olvidó poner cual era la solución .
Es un bug o fallo del SQL Server.
¿Y como lo sé?, muy sencillo.
Lo que hice fué crearme una BBDD deprueba para probar los nuevos trozos de código de la ampliación de mi aplicación. La BBDD original, tiene una replicación de mezcla con otrso dos servidores.
Pues bien al hacer esa BBDD de prueba a partir de la restauración de una copia de seguridad de la original, seguramente algún proceso no se copia o restaura, en este caso, dando este error a la ejecución de la aplicación.
Hice la pruaba sobre los datos originales y validos y todo funciono como la seda.
Gracias y un saludo.
__________________
El meu país és tan petit, que des de dalt d'un campanar es pot veure el campanar veí.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
rango valido FGarcia Varios 2 28-04-2006 02:51:01
basededatos.fdb no es un archivo valido RONPABLO Firebird e Interbase 4 23-08-2005 20:37:13
Conexion ADO , argumento no valido VRO Conexión con bases de datos 2 09-06-2005 13:06:53
Impedir salir de un DBEdit si el valor no es válido gluglu Varios 3 17-01-2005 18:35:33
Como valido un null?? jbetancurt Firebird e Interbase 2 11-11-2004 17:19:39


La franja horaria es GMT +2. Ahora son las 00:50:43.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi