Announcement

Collapse
No announcement yet.

Microsoft-DTS

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Microsoft-DTS

    Ich will die Microsoft-DTS von SQL-Server 2000
    automatisieren. Ich habe probiert mit den Delphi 5 Wrapper zu
    arbeiten, und TPackage verwenden. (Ich habe „dtspkg.dll“ über Project- Typbibliothek importiert.) Funktioniert alles sehr gut,
    LOADFROMSQLServer, CONNECT, usw. Beim Execute erhalte ich immer eine
    Fehlermeldung "EXCEPTION_ACCES_VIOLATION". Wenn ich den Package mit
    CoPackage.Create erzeuge erhalte ich beim Compilieren eine Fehlermeldung
    "Inkopatible Typen TPackage und _Package "

    // aPack := CoPackage.Create;

    aPack.LoadFromSQLServer('161', 'sa', 'xxxl',
    DTSSQLStgFlag_Default, '', '', '', 'Pack1', v);

    aPack.Execute;

    Viele Grüße,

  • #2
    Hallo,

    der sichere Weg führt immer über CoPackage.Create, da man in diesem Fall potentielle Irrtümer in der automatisch zusammengebauten VCL-Komponente ausschließen kann. Der Zugriff erfolgt dabei immer über eine Interface-Variable vom originalen Typ:
    <pre>
    var
    FPackage : _Package;
    </pre>

    <pre>
    ...
    begin
    FPackage := CoPackage.Create;
    FPackage.LoadFromSQLServer('(local)',
    WideString('sa'),
    WideString('passwort'),
    DTSSQLStgFlag_Default,
    WideString(''), WideString(''),
    WideString(''),
    WideString(Edit1.Text),
    EmptyParam);
    for i := 1 to FPackage.Steps.Count do begin
    FPackage.Steps.Item(i).ExecuteInMainThread := WordBool(False);
    end;
    FPackage.Execute;
    ...
    </pre&gt

    Comment

    Working...
    X