IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Erreur Lors de l'exécution d'un Job sur Sql Server ( Serveur Lié) [2017]


Sujet :

Développement SQL Server

  1. #1
    Candidat au Club
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Janvier 2021
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Consultant SAP
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2021
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Erreur Lors de l'exécution d'un Job sur Sql Server ( Serveur Lié)
    Bonjour Link,
    Je vous écris ce matin pour vous demander votre aide concernant un blocage que je rencontre sur un Job à exécuter sur serveur SQL.
    J'explique :
    lorsque j'exécute la procedure stocke du Job manuellement, il se déroule sans problème*:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    ALTER PROCEDURE [dbo].[_My_ReplicationPONT]
    AS
    BEGIN
    DECLARE @numTicketmaxi AS BIGINT
    -- récupération du Numero Ticket Maxi
    SELECT @numTicketmaxi = MAX(CAST([IDSAP_LIVRAISON] AS BIGINT)) FROM [testDatabase].[dbo].[SAP_LIVRAISON]
     
    -- vérification si la valeur existe déjà dans la table @PESEE
    IF NOT EXISTS (SELECT 1 FROM [IDHTEST].[PONT].[dbo].[@PESEE] WHERE Code = CAST(@numTicketmaxi AS NVARCHAR(255)))
    BEGIN
    -- récupération et insertion des données
    PRINT CONCAT('Num Ticket Maxi = ', @numTicketmaxi)
    INSERT INTO [IDHTEST].[PONT].[dbo].[@PESEE]
    (
    [U_Annule],
    [U_Nom_Frns],
    [U_Poids_Net],
    [U_Cod_Frns],
    [U_Nom_Prdt],
    [U_Cod_Prdt],
    [U_Vehicule],
    [U_Heure],
    [U_Date],
    [U_Cod_Pesee],
    [Name],
    Code
    )
    SELECT
    [LV_ANNULE],
    [LV_FOURNISSEUR],
    [LV_POIDS],
    [FO_CODE],
    [LV_PRODUIT],
    [PR_CODE],
    [VE_CODE],
    CONVERT(VARCHAR, LV_HEURE, 108),
    CONVERT(VARCHAR, LV_DATE, 104),
    [LV_CODE],
    [IDSAP_LIVRAISON],
    [IDSAP_LIVRAISON]
    FROM [SQL-SERV].[testDatabase].[dbo].[SAP_LIVRAISON]
    END
    END
    Mais avec l'agent SQLserver pour effectuer un Job, voici le message d'erreur*:
    Le serveur 'SQL-SERV' n'est pas configuré pour RPC. [SQLSTATE 42000] (Erreur 7411). L’étape a échoué.
    Cependant, il est configuré en RPC.
    Vous pouvez le voir dans la capture d'écran de la propriété du serveur lié.
    Nom : Capture.PNG
Affichages : 115
Taille : 106,7 Ko

    Que dois-je faire pour résoudre ce problème ?
    J'ai besoin de votre aide Sil vous plait

  2. #2
    Membre confirmé Avatar de licardentaistor
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2021
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juillet 2021
    Messages : 316
    Points : 453
    Points
    453
    Par défaut
    même après reconnexion à SSMS?

  3. #3
    Candidat au Club
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Janvier 2021
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Consultant SAP
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2021
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Oui Même après reconnexion et redémarrage des services

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 779
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 779
    Points : 52 763
    Points
    52 763
    Billets dans le blog
    5
    Par défaut
    Cela ne suffit pas il faut aussi que DTC soit activé sur les deux serveurs et que vous démarriez une transaction explicite distribuée.... Cela dit ce que vous tentez de faire est une usine à gaz qui vous plantera au nez assez souvent. En effet de l’incrémentation manuelle sans un verrouillage TOTAL en mode exclusif de l'ensemble des ressources et avec une transaction distribuée, donnera très souvent des doublons...

    Quel est le but de ce monstrueux code ???

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  5. #5
    Candidat au Club
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Janvier 2021
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Consultant SAP
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2021
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    J'ai pu régler le soucis du RPc en utilisant ce code : exec sp_serveroption @server='SQL-SERV', @optname='rpc out', @optvalue='TRUE'.

    Et concernant le code 'Monstrueux' je l'ai adapter en fonction de mon besoin :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    ALTER PROCEDURE [dbo].[_My_ReplicationPONT]
    AS
    BEGIN
        DECLARE @numTicketmaxi AS BIGINT
        -- récupération du Numero Document Maxi
        SELECT @numTicketmaxi = MAX(CAST(Code AS BIGINT)) FROM [IDHTEST].[PONT].[dbo].[@PESEE]
     
               -- récupération et insertion des données
            PRINT CONCAT('Num Ticket Maxi = ', @numTicketmaxi)
            INSERT INTO [IDHTEST].[PONT].[dbo].[@PESEE]
            (
                [U_Annule],
                [U_Nom_Frns],
                [U_Poids_Net],
                [U_Cod_Frns],
                [U_Nom_Prdt],
                [U_Cod_Prdt],
                [U_Vehicule],
                [U_Heure],
                [U_Date],
                [U_Cod_Pesee],
                [Name],
                Code
            )
            SELECT
                [LV_ANNULE],
                [LV_FOURNISSEUR],
                [LV_POIDS],
                [FO_CODE],
                [LV_PRODUIT],
                [PR_CODE],
                [VE_CODE],
                CONVERT(VARCHAR, LV_HEURE, 108),
                CONVERT(VARCHAR, LV_DATE, 104),
                [LV_CODE],
                [IDSAP_LIVRAISON],
                [IDSAP_LIVRAISON]
            FROM [SQL-SERV].[testDatabase].[dbo].[SAP_LIVRAISON]
          WHERE [IDSAP_LIVRAISON] > @numTicketmaxi
          ORDER BY [LV_CODE] ASC
     
    END

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 779
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 779
    Points : 52 763
    Points
    52 763
    Billets dans le blog
    5
    Par défaut
    Ce sera toujours aussi pourri car en concurrence deux utilisateurs aurons la même valeur.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  7. #7
    Candidat au Club
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Janvier 2021
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Consultant SAP
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2021
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Ce sera toujours aussi pourri car en concurrence deux utilisateurs aurons la même valeur.

    A +
    Du moment j'ai le resultat attendu, et je n'ai pas d'usine a Gaz comme tu le dis... ce code me va bien.
    Thanks pour ton intervention

    A+

  8. #8
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 779
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 779
    Points : 52 763
    Points
    52 763
    Billets dans le blog
    5
    Par défaut
    C'est fou de voir à quel point certain développeurs peuvent persister dans l'erreur !

    Du moment que la route est toujours droite, je n'ai pas besoin de volant sur ma voiture...

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  9. #9
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 136
    Points : 38 893
    Points
    38 893
    Billets dans le blog
    9
    Par défaut
    Bonjour,

    Citation Envoyé par yanntia225 Voir le message
    Du moment j'ai le resultat attendu, et je n'ai pas d'usine a Gaz comme tu le dis... ce code me va bien.
    Thanks pour ton intervention

    A+
    La notion de transaction est fondamentale dans un environnement multi-utilisateur, or, votre réponse démontre que vous n'en avez pas compris l'importance.
    Un résultat issu de tests unitaires dans un environnement peu ou pas concurrentiel, puisque très peu d'utilisateurs y sont connectés, ne permet pas de valider votre procédure.
    En production ce sera tout à fait différent.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur lors de l'exécution d'un Job
    Par zdz16 dans le forum Développement de jobs
    Réponses: 4
    Dernier message: 05/07/2016, 16h19
  2. Erreur lors de l'execution d'eclipse j2ee sur vista
    Par coolio971 dans le forum Eclipse
    Réponses: 1
    Dernier message: 10/03/2009, 19h25
  3. [DI 11.7.3.4] message d'erreur lors de l'exécution d'un Job
    Par cubitus77 dans le forum Alimentation
    Réponses: 1
    Dernier message: 03/10/2008, 06h53
  4. Erreur lors de l'execution d'un Job
    Par knackymax dans le forum Développement
    Réponses: 5
    Dernier message: 30/07/2008, 10h15
  5. Erreurs lors de l'execution d'un job
    Par abdelkefi.stat dans le forum Exécution et industrialisation
    Réponses: 0
    Dernier message: 09/07/2008, 09h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo