Announcement

Collapse
No announcement yet.

Drucken nicht mehr möglich

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

  • Drucken nicht mehr möglich

    Ich hoffe hier kann mir jemand helfen, denn momentan bin ich mit meinem Latein völlig am Ende.

    Ich habe unter VB.Net 2003 ein Modul zum Drucken von Etiketten geschrieben, welches Daten aus einem Formular in ein Dataset schreibt. Dann habe ich mit Crystal Reports einen Bericht erstellt, welcher auf diesem Dataset basiert.

    An meinem Entwicklungsrechner funktioniert dieses Etikettenmodul wunderbar. An dem Rechner, des Kunden, welcher das Etikettenmodul nutzt funktionierte es bis vor einigen Tagen auch wunderbar. Jedoch funktionierte das Drucken von heut auf morgen nicht mehr. Der Bericht war zwar noch kurz in der Druckerwarteschleife zu sehen, wurde jedoch nicht mehr ausgedruckt. Nachdem ich einige Tage mit der Fehlersuche verbracht hatte, entschied ich mich dafür, den Rechner komplett neu zu installieren (WinXP Home) und das Programm ebenfalls neu zu installieren. Nach der Neuinstallation ging es jedoch ebensowenig. Ich habe dann (zum Test und um das Problem weiter ein zu grenzen) einfach mal Visual Studio installiert und bekomme in der Zeile, in der ich den Bericht ausdrucken möchte den Fehler.

    Hier mal der Quellcode der bisher wunderbar funktionierte:

    Dim Rep As New CrystalReport1

    Rep.SetDataSource(myDataset)
    Rep.Refresh()

    Rep.PrintToPrinter(1, True, 1, 1)

    In der letzten Zeile (Rep.PrintToPrinter(1, True, 1, 1)) tritt dann folgender Fehler auf:

    CrystalDecisions.CrystalReports.Engine.LogOnExcept ion
    Message: "Fehler bei Anmeldung"

    Ich kann das absolut nicht nach vollziehen, zumal ich mich nirgens anmelde, keine Datenbank verwende, der fehler nur am Kundenrechner auftritt der komplett neu installiert ist und das Modul an meinem Entwicklungsrechner ohne Probleme läuft.

    Ich bin für jeden Tip oder Hinweis dankbar.

  • #2
    Hallo,

    wie wurde der Report in Visual Studio-Designer gestaltet, war dort eine Datenbankverbindung aktiv? Denn erst dann, wenn die Berichtsgestaltung abgeschlossen ist, wird über Database | Set DataSource Location... im Dialog Set DataSource Location die Datenquelle über Project Data -> ADO.NET Data Sets ausgetauscht.

    Die Standardantwort auf die Fehlermeldung CrystalDecisions.CrystalReports.Engine.LogOnExcept ion lautet in der Regel, TableLogOnInfo auszufüllen:

    Code:
      Dim aCREngTbl As CrystalDecisions.CrystalReports.Engine.Table 
      Dim aCRTLOI As CrystalDecisions.Shared.TableLogOnInfo 
      For Each aCREngTbl In osLoginDemo21.Database.Tables 
        aCRTLOI = aCREngTbl.LogOnInfo 
        With aCRTLOI.ConnectionInfo 
          .ServerName = "(local)" 
          .UserID = "sa" 
          .Password = "xyz" 
          .DatabaseName = "Northwind" 
        End With 
        aCREngTbl.ApplyLogOnInfo(aCRTLOI) 
      Next aCREngTbl
    Allerdings passt diese Fehlermeldung nicht zur Aussage, das überhaupt keine direkte Verbindung zur Datenbank besteht. Aus irgend einem Grund will der Bericht eine im DataSet fehlende Datenquelle aus einer Datenbank nachladen, die auf dem Kundenrechner nicht vorhanden ist.

    Comment


    • #3
      In dem Projekt wird definitiv keine Datenbank verwendet. Die Daten für das Dataset kommen aus einem Formular, das zuvor eingeblendet wird.

      Im Assistenten von Crystal Report ist das Dataset unter ADO-Net Datasets verfügbar.

      Das mit dem TableLogonInfo hatte ich auch mal probiert. Da ich jedoch keine Datenbank verwende hate ich die Werte leer gelassen, jedoch hat das nicht funktioniert (ist ja eigentlich logisch aber man versucht halt alles mögliche).

      Das Einzige was mir jetzt noch als Lösung einfallen würde (vorausgesetzt das klappt) währe, das ich eine Datanbenk einbinde. Jedoch finde ich das eigentlich recht sinnlos nur um einige Daten aus einem Formular in einen Bericht zu bringen und aus zu drucken.

      Oder gint es vielleicht irgendwo eine versteckte Option mittels der man sich an einem Dataset anmelden kann (vielleicht steht da irgendwelcher Müll drin und es geht deswegen nicht).

      Was mich jedoch irritiert ist, da es an einem Rechner geht und an dem anderen Rechner nicht obwohl der Code genau der selbe ist.

      Comment

      Working...
      X