Re: DTC Fehler

Tech-Archive recommends: Fix windows errors by optimizing your registry

From: Reiner Höhnke (anonymous_at_discussions.microsoft.com)
Date: 05/08/04

  • Next message: Klaus Rathke: "Re: Index unter SQL"
    Date: Sat, 8 May 2004 07:14:48 -0700
    
    

    Hallo Helge,

    danke für die Hilfe.

    Hier die gesamte Konfiguration:

    Auf dem Windows Server ist SQL Server 2000 SP3a und
    DokuWare installiert. Wenn in DokuWare ein Dokument mit
    Barcode im Archiv abgelegt wird, wird der Barcode im SQL
    Server abgespeichert und der Trigger ausgelöst (After
    insert). Der Trigger holt die entsprechenden
    Rechnungsdaten für den Barcode aus der AS/400 und schreibt
    diese auch in den SQL Server 2000.

    Die Verbindung zur AS/400 wird über den IBM Client Access
    ODBC Treiber V5R10 ausgeführt. Dazu schreibt die IBM:
    "Microsoft Transaction Server (MTS) and COM+ distributed
    transactions are supported by R510 and later of Client
    Access Express ODBC to a R510 or later OS/400 system. The
    Client Access Service Pack SI02795 or later is required.
    No other version of Client Access ODBC and no version of
    Client Access OLE DB (IBMDA400) supports the MTS/COM+ two-
    phase commit transactions."

    Im SQL Server ist dann der Microsoft OLE DB Treiber für
    ODBC installiert.

    Das Netzwerk ist ein Ethernet mit 100/10 MBit/s und TCP/IP.
    Die AS/400 hat eine 10 MBit/s Karte.

    Wir haben uns schon überlegt, ob wir anstelle des Triggers
    nicht eine andere Lösung machen sollten.

    Es ist uns bisher aber keine eingefallen.

    Gruss

    Reiner
    >-----Originalnachricht-----
    >Hi Reiner,
    >
    >MSDTC kann manchmal schon etwas nervend sein.
    >Ich gehe mal davon aus, dass der MSDTC Dienst auf dem
    Server läuft.
    >
    >Ein entscheidender Punkt ist, dass dein verwendeter ODBC
    Treiber DTC
    >unterstützt - er muss die Option SQL_ATT_ENLIST_IN_DTC
    implementieren und
    >aktiv gesetzt haben.
    >
    >Wenn dies nicht das Problem ist solltest Du die
    Connectivity zwischen den
    >Servern testen.
    >Der folgende Artikel kann dabei helfen.
    >http://support.microsoft.com/default.aspx?scid=kb;EN-
    US;306843
    >
    >Wenn das alles nichts hilft solltest Du mal eine
    ausführliche Beschreibung
    >Deiner Konfiguration des SQL Servers, des Netzwerkes und
    AS/400 inkl.
    >verwendeter Treiber geben.
    >
    >Generell solltest Du aber auch überlegen ob Du die AS/400
    Abfrage wirklich
    >im Trigger machen musst, da diese Konstellation etwas
    bedenklich bzgl.
    >Antwortzeit ist, und erhebliche Blockierungsprobleme
    bewirken könnte.
    >Andernfalls solltest Du eine schnelle und zuverlässige
    Netzwerkverbindung
    >garantieren können.
    >
    >Ciao,
    >Helge
    >
    >"Reiner Höhnke" <anonymous@discussions.microsoft.com>
    schrieb im Newsbeitrag
    >news:9c6401c43429$c3b6ff30$a001280a@phx.gbl...
    >Hallo,
    >
    >ich habe einen Datenbanktrigger geschrieben, der nach
    >einem insert aus einem lokalen Programm, sich über ODBC an
    >eine AS/400 verbindet, und von der AS/400 Daten abholt,
    >und in den SQL Server 2000 schreibt.
    >
    >Ich habe Windows 2000 Server SP4 und SQL Server 2000 SP3a.
    >
    >Wenn der Trigger ausgelöst wird, bekomme ich immer
    >folgende Fehlermeldung:
    >
    >Server: Msg 7391, Level 16, State 1, Line 1
    >The operation could not be performed because the OLE DB
    >provider 'MSDASQL' was unable to begin a distributed
    >transaction.
    >OLE DB error trace [OLE/DB Provider 'MSDASQL'
    >ITransactionJoin::JoinTransaction returned 0x8004d00a].
    >
    >Weiß jemand, wo der Fehler liegt, und wie ich den Fehler
    >behebe.
    >
    >
    >Gruss
    >
    >Reiner
    >
    >
    >.
    >


  • Next message: Klaus Rathke: "Re: Index unter SQL"

    Relevant Pages

    • RE: Invalid cursor state when using PRINT in MSSQL
      ... Interesting article but I seriously doubt you are using the ODBC 2.0 MS SQL ... DBD::ODBC does call SQLError immediately after SQLExecute returns ... I was unable to reproduce this with the ODBC 3 MS SQL Server driver ...
      (perl.dbi.users)
    • Re: DTC Fehler
      ... Lege im SQL Server einen Linked Server für die AS/400 an. ... Einstellungen für den Providerstring - vergleiche auch Angaben zum ODBC ... Die Verbindung zur AS/400 wird über den IBM Client Access ...
      (microsoft.public.de.sqlserver)
    • Re: MS Access database to gradually become a server based database - which one ?
      ... Server 2008 Express Edition. ... SQL server is indeed a high performance system, and also a system that can ... Before Microsoft started "really" selling sql server, they rated JET could ... (this ONLY applies to odbc to sql server...you CAN and are FREE to do this ...
      (microsoft.public.access.gettingstarted)
    • ODBC-Verbindung zu {SQL Native Client}(schulelb002) fehlgeschlagen.
      ... Muss ich etwa einen ODBC Driver am Server oder am Client installieren? ... OleDb ist nicht etwa besser oder so... ... den kriegst Du indem Du {SQL Server} durch ersetzt. ...
      (microsoft.public.de.german.entwickler.dotnet.datenbank)
    • Re: Cannot use openrowset with a trigger
      ... XACT_ABORT ON to the trigger and got the same error. ... It's definitely worth the effort to solve the DTC issue, ... Are both source server and target server SQL 2000? ...
      (comp.databases.ms-sqlserver)