Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 9 von 9

Thema: WinCC V13 VBS Skript funktioniert nicht

  1. #1
    Registriert seit
    27.05.2014
    Beiträge
    114
    Danke
    43
    Erhielt 4 Danke für 4 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    ich habe von einem externen Dienstleister ein Skript bekommen, welches eine Datenbank anlegen soll. Dieses funktioniert leider im Moment bei mir noch nicht. Der Speicherordner wird angelegt, aber mehr passiert nicht, der Ordner bleibt dann leer. Von VB habe ich leider so gut wie gar keine Ahnung, habe nur Grundkentnisse in C.

    Hier das Skript:

    Code:
    Sub CreateSqlDataBase()
    'Tip:
    ' 1. Verwenden Sie die Tastenkombination <CTRL+SPACE> oder <CTRL+I>, um eine Liste aller Objekte und Funktionen zu öffnen
    ' 2. Schreiben Sie den Code unter Verwendung des HMI Runtime Objekts.
    '  Beispiel: HmiRuntime.Screens("Screen_1").
    ' 3. Verwenden Sie die Tastenkombination <CTRL+J>, um eine Objektreferenz zu erstellen.
    'Schreiben Sie den Code ab dieser Position:
    
        Const ServerInstanceName = ".\SQLEXRESS", DbName = "Batchprotokoll"
        Dim fso, objConnection, objCommand, strConnectionString, strCommandText, strFullPath
        
        On Error Resume Next
    
        Set fso = CreateObject("Scripting.FileSystemObject")
        If Not fso.FolderExists("C:\project\protocol") Then
            fso.CreateFolder("C:\project")
            fso.CreateFolder("C:\project\protocol")
        End If 'Funktioniert, Ordner wurden angelegt'
        
        strConnectionString = "Provider=SQLOLEDB;Data Source='" & ServerInstanceName & "';Integrated Security='SSPI';Initial Catalog='master';"
        
        Set objConnection = CreateObject("ADODB.Connection")
        objConnection.Open strConnectionString
        
        strFullPath = "C:\project\protocol\" & DbName
        
        strCommandText = "IF NOT EXISTS(SELECT * FROM sys.databases WHERE Name = '" & DbName & _
         "') CREATE DATABASE [" & DbName & "] ON PRIMARY ( NAME = '" & DbName & "', FILENAME = N'" & strFullPath & _
         ".mdf' , SIZE = 2048KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB ) LOG ON (NAME = '" & DbName & _
         "_Log', FILENAME = N'" & strFullPath & "_Log.ldf' , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%);"
        
        Set objCommand = CreateObject("ADODB.Command")
        objCommand.ActiveConnection = objConnection
        objCommand.CommandText = strCommandText
        objCommand.Execute
    
        Set objCommand = Nothing
    
        objConnection.Close
        Set objConnection = Nothing
        CreateObject.Open 
    
    End Sub
    Erkennt da jemand einen Fehler?

    Gruß Bob
    Geändert von Bobbybau91 (17.09.2015 um 14:02 Uhr)
    Zitieren Zitieren WinCC V13 VB Skript funktioniert nicht  

  2. #2
    Registriert seit
    19.06.2015
    Beiträge
    459
    Danke
    26
    Erhielt 40 Danke für 35 Beiträge

    Standard

    Was für eine Datenbank Access?

  3. #3
    Registriert seit
    19.06.2015
    Beiträge
    459
    Danke
    26
    Erhielt 40 Danke für 35 Beiträge

    Standard

    Entschuldigung habe gesehen eine SQL Datenbank.Hast du den ganzen Kram installiert?

  4. #4
    Bobbybau91 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    27.05.2014
    Beiträge
    114
    Danke
    43
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Zitat Zitat von silverfreaky Beitrag anzeigen
    Entschuldigung habe gesehen eine SQL Datenbank.Hast du den ganzen Kram installiert?
    Habe Microsoft SQL Express 2014 installiert, mehr brauche ich ja nicht oder?

    Gesendet von meinem Nexus 5 mit Tapatalk

  5. #5
    Registriert seit
    19.06.2015
    Beiträge
    459
    Danke
    26
    Erhielt 40 Danke für 35 Beiträge

    Standard

    Also gut kenne ich mich nicht aus.Aber brauchst du nicht den Microsoft SQL Server?

    strConnectionString = "Provider=SQLOLEDB;Data Source='" & ServerInstanceName & "';Integrated Security='SSPI';Initial Catalog='master';"

  6. #6
    Bobbybau91 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    27.05.2014
    Beiträge
    114
    Danke
    43
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Zitat Zitat von silverfreaky Beitrag anzeigen
    Also gut kenne ich mich nicht aus.Aber brauchst du nicht den Microsoft SQL Server?

    strConnectionString = "Provider=SQLOLEDB;Data Source='" & ServerInstanceName & "';Integrated Security='SSPI';Initial Catalog='master';"
    Das Programm wurde von dem externen Dienstleister mit dem Microsoft SQL Express Server getestet und es hat funktioniert

  7. #7
    Registriert seit
    19.06.2015
    Beiträge
    459
    Danke
    26
    Erhielt 40 Danke für 35 Beiträge

    Standard

    Geht das mit VBS?ist das nicht VBA?

  8. #8
    Bobbybau91 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    27.05.2014
    Beiträge
    114
    Danke
    43
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Zitat Zitat von silverfreaky Beitrag anzeigen
    Geht das mit VBS?ist das nicht VBA?
    Oh ja, du hast recht, da habe ich mich verschrieben.

  9. #9
    Registriert seit
    25.02.2009
    Beiträge
    22
    Danke
    2
    Erhielt 3 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Was mir aufgefallen ist:
    Code:
    Const ServerInstanceName = ".\SQLEXRESS", DbName = "Batchprotokoll"
    Da steht als Instanznahme SQLEXRESS richtig währe (bei einer Standard Installation der MS SQL Express Edition) aber SQLEXPRESS. Somit kann er die Datenbank nicht finden! Den Instanznamen siehst Du z. B. im SQL Server Management Studio falls das mit installiert wurde.

Ähnliche Themen

  1. Antworten: 6
    Letzter Beitrag: 19.07.2015, 23:56
  2. Antworten: 5
    Letzter Beitrag: 29.04.2015, 18:46
  3. Antworten: 17
    Letzter Beitrag: 24.02.2015, 09:08
  4. Antworten: 5
    Letzter Beitrag: 22.08.2014, 23:04
  5. Antworten: 2
    Letzter Beitrag: 27.04.2012, 09:29

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •