Fehler "Crystal Print Engine Error 515 – Error in Formula" beim Drucken von Berichten in Microsoft Dynamics SL

In diesem Artikel werden die Gründe für die Fehlermeldung Crystal Print Engine Error 515 beim Drucken von Berichten in Microsoft Dynamics SL sowie Möglichkeiten zum Beheben dieses Problems beschrieben.

Gilt für: Microsoft Dynamics SL
Ursprüngliche KB-Nummer: 873549

Problembeschreibung

Wenn Sie Berichte in Microsoft Dynamics SL drucken, erhalten Sie die folgende Fehlermeldung:

Crystal Print Engine Fehler 515 – Fehler in der Formel

Lösung

Hinweis

Bevor Sie die Anweisungen in diesem Artikel befolgen, stellen Sie sicher, dass Sie über eine vollständige Sicherungskopie der Datenbank verfügen, die Sie wiederherstellen können, wenn ein Problem auftritt.

Ursache und Lösung 1

Dieses Problem tritt auf, wenn der Datensatz in der BATCH-Tabelle leere Werte in einem oder beiden der folgenden Felder enthält:

  • BaseCuryID
  • CuryID

Um dieses Problem zu beheben, füllen Sie eines oder beide dieser Felder auf. Gehen Sie dazu wie folgt vor:

  1. Verwenden Sie SQL Query Analyzer oder SQL Server Management Studio, um auf die entsprechende Anwendungsdatenbank zuzugreifen, und führen Sie dann die folgende Anweisung aus, um die Datensätze in der BATCH-Tabelle zu identifizieren, die leere Werte im Feld BaseCuryID oder im Feld CuryID enthalten:

    SELECT status,* from BATCH where BaseCuryID = '' or CuryID = ''
    

    Hinweis

    • In dieser Anweisung müssen Sie zwei Paare von einfachen Anführungszeichen verwenden.
    • Machen Sie sich keine Gedanken über Batches, die von dieser Abfrage generiert werden, wenn diese Batches über eine status von "V" oder "D" verfügen.
  2. Verwenden Sie die Werte im Feld BatNbr , um die Batchnummern zu bestimmen. Verwenden Sie den Wert im Feld Modul , um das Modul zu bestimmen. Bestimmen Sie, ob die Währung die Basiswährung oder eine Fremdwährung ist. Das Feld BaseCuryID identifiziert die Basiswährung, und das CuryID-Feld identifiziert entweder die Basiswährung oder eine Fremdwährung.

  3. Verwenden Sie die folgende Anweisung, um die Datensätze in der BATCH-Tabelle zu aktualisieren. Stellen Sie sicher, dass Sie die entsprechende Währungs-ID für das Feld BaseCuryID und für das CuryID-Feld angeben:

    UPDATE BATCH SET BaseCuryID = 'BBB', CuryID = 'CCC' where BatNbr = 'XXXXXX' and Module = 'YY'
    

    Hinweis

    In dieser Anweisung stellt BBB die entsprechende Basiswährungs-ID dar, CCC stellt die entsprechende Basis- oder Fremdwährungs-ID dar, XXXXXX stellt die entsprechende Batchnummer und YY die entsprechende Zweibuchstaben-Modulkürzel dar.

Ursache und Lösung 2

Dieses Problem tritt auf, wenn Sie Auftragsverwaltungsberichte oder Einkaufsberichte drucken. Um dieses Problem zu beheben, führen Sie den Installationsvorgang für die Auftragsverwaltungsstation aus, um zu überprüfen, ob die Installation der Auftragsverwaltungsstation abgeschlossen wurde. Gehen Sie dazu wie folgt vor:

  1. Wählen Sie in der Liste Moduledie Option Auftragsverwaltung aus.
  2. Wählen Sie im Bereich Auftragsverwaltung unter Prozesse die Option OM-Arbeitsstationsinstallation aus.
  3. Wählen Sie Beginnen aus.
  4. Wiederholen Sie diesen Vorgang für alle Arbeitsstationen.

Hinweis

Wenn Die Fehlermeldung weiterhin angezeigt wird, lesen Sie den Abschnitt Ursache und Lösung 6 .

Ursache und Lösung 3

Dieses Problem tritt auf, wenn Sie Rechnungen über den Bildschirm Rechnungen (40.680.00) drucken und sich eine falsche Version der Crufladg.dll-Datei im OM-Ordner befindet.

Überprüfen Sie, ob die Version der Crufladg.dll-Datei im OM-Ordner korrekt ist. Gehen Sie dazu wie folgt vor:

  1. Verwenden Sie Windows Explorer, um alle Vorkommen der Crufladg.dll-Datei zu suchen. Diese Datei sollte sich an den folgenden drei Speicherorten befinden:

    • Solomon IV\OM
    • Winsys\Register
    • Winnt\System32 or Windows\System32
  2. Untersuchen Sie die Datumsangaben, Größen und Versionen der Crufladg.dll Dateien. Alle drei Crufladg.dll Dateien müssen das gleiche Änderungsdatum, die gleiche Dateigröße und die gleiche Versionsnummer aufweisen.

  3. Wenn die Crufladg.dll Datei das Datum 21.05.99 oder die Versionsnummer 4.01 hat, ersetzen Sie diese Datei durch eine höhere Version der Datei.

Ursache und Lösung 4

Dieses Problem tritt auf, wenn die U2lsol4.dll Datei fehlt, beschädigt oder falsch ist. Um dieses Problem in Microsoft Solomon 5.5 und früheren Versionen von Microsoft Solomon zu beheben, kopieren Sie die U2lsol4.dll Datei in den Winnt\Crystal Ordner oder in den Windows\Crystal Ordner. Gehen Sie dazu wie folgt vor:

  1. Stellen Sie sicher, dass alle Berichte die Fehlermeldung Fehler 515 erzeugen.
  2. Benennen Sie die vorhandenen U2lsol4.dll Dateien im Winnt\Crystal Ordner oder im Windows\Crystal Ordner in U2lsol4.old um.
  3. Kopieren Sie die U2lsol4.dll Datei aus dem Solomon\Wrkstn\Windows\Crystal Ordner in den lokalen Winnt\Crystal Ordner oder in den lokalen Windows\Crystal Ordner.
  4. Versuchen Sie erneut, einen Bericht zu drucken. Wenn das Problem weiterhin besteht, kopieren Sie die U2lsol4.dll Datei aus dem Winnt\Crystal Ordner oder aus dem Windows\Crystal Ordner in den Winnt\System32 Ordner oder in den \Windows\System32 Ordner.

Hinweis

Diese Lösung gilt nur für Microsoft Solomon 5.5 und frühere Versionen von Microsoft Solomon.

Ursache und Lösung 5

Dieses Problem tritt auf, wenn Sie versuchen, einen Datensatz zu drucken oder eine Vorschau eines Datensatzes im Bericht Bestellungen (04.600.00) zu drucken, wenn das CuryID-Feld oder das BaseCuryID-Feld in einer der folgenden Tabellen leer ist:

  • PURCHORD
  • PURORDDET
  • POREQHDR
  • POREQDET

Um dieses Problem in Microsoft Solomon 5.5 und früher zu beheben, aktualisieren Sie die Tabelle mit dem leeren CuryID-Feld oder dem leeren BaseCuryID-Feld . Gehen Sie dazu wie folgt vor:

  1. Verwenden Sie SQL Query Analyzer oder SQL Server Management Studio, um auf die entsprechende Anwendungsdatenbank zuzugreifen, und führen Sie dann die folgenden Anweisungen aus, um zu ermitteln, ob das CuryID-Feld in einer oder mehreren der vier Tabellen, die weiter oben in diesem Abschnitt aufgeführt sind, leer ist:

    SELECT CuryID, BaseCuryID, PONbr, * from PURCHORD where CuryID in ('', '2345') or BaseCuryID in ('', '2345')
    SELECT CuryID, BaseCuryID, PONbr, * from PURORDDET where CuryID in ('', '2345') or BaseCuryID in ('', '2345')
    SELECT CuryID, BaseCuryID, ReqNbr, * from POREQDET where CuryID in ('', '2345') or BaseCuryID in ('', '2345')
    SELECT CuryID, BaseCuryID, ReqNbr, * from POREQHDR where CuryID in ('', '2345') or BaseCuryID in ('', '2345')
    

    Hinweis

    In jeder dieser Anweisungen müssen Sie zwei Paare von einfachen Anführungszeichen verwenden.

  2. Wenn Datensätze zurückgegeben werden, verwenden Sie die folgenden Updateanweisungen, um das CuryID-Feld aufzufüllen :

    UPDATE PURCHORD SET CuryID = 'YYY', BaseCuryID = ('ZZZ') where (CuryID in ('', '2345') or BaseCuryID in ('', '2345')) and PONbr = 'XXXXXX'
    UPDATE PURORDDET SET CuryID = 'YYY', BaseCuryID = ('ZZZ') where (CuryID in ('', '2345') or BaseCuryID in ('', '2345')) and PONbr = 'XXXXXX'
    UPDATE POREQDET SET CuryID = 'YYY', BaseCuryID = ('ZZZ') where (CuryID in ('', '2345') or BaseCuryID in ('', '2345')) and ReqNbr = 'XXXXXX'
    UPDATE POREQHDR SET CuryID = 'YYY', BaseCuryID = ('ZZZ') where (CuryID in ('', '2345') or BaseCuryID in ('', '2345')) and ReqNbr = 'XXXXXX'
    

    Hinweis

    • In jeder dieser Anweisungen müssen Sie zwei Paare von einfachen Anführungszeichen verwenden.
    • In jeder dieser Aussagen stellt YYY die richtige Fremdwährungs-ID, ZZZ die richtige Basiswährungs-ID und XXXXXX die entsprechende Bestellnummer des zu aktualisierenden Datensatzes dar, den Sie in Schritt 1 identifiziert haben.

Um dieses Problem in Microsoft Solomon 6.0 und höher zu beheben, aktualisieren Sie die Tabelle mit dem leeren CuryID-Feld . Gehen Sie dazu wie folgt vor:

  1. Verwenden Sie SQL Query Analyzer oder SQL Server Management Studio, um auf die entsprechende Anwendungsdatenbank zuzugreifen, und führen Sie dann die folgenden Anweisungen aus, um zu ermitteln, ob das CuryID-Feld in einer oder mehreren der vier Tabellen, die weiter oben in diesem Abschnitt aufgeführt sind, leer ist:

    SELECT CuryID, PONbr, * from PURCHORD where (CuryID in ('', '2345')
    SELECT CuryID, PONbr, * from PURORDDET where (CuryID in ('', '2345')
    SELECT CuryID, ReqNbr, * from POREQDET where (CuryID in ('', '2345')
    SELECT CuryID, ReqNbr, * from POREQHDR where (CuryID in ('', '2345')
    

    Hinweis

    In jeder dieser Anweisungen müssen Sie zwei Paare von einfachen Anführungszeichen verwenden.

  2. Wenn Datensätze zurückgegeben werden, verwenden Sie die folgenden Updateanweisungen, um das CuryID-Feld aufzufüllen :

    UPDATE PURCHORD SET CuryID = 'YYY' where (CuryID in ('', '2345')
    UPDATE PURORDDET SET CuryID = 'YYY' where (CuryID in ('', '2345')
    UPDATE POREQDET SET CuryID = 'YYY' where (CuryID in ('', '2345')
    UPDATE POREQHDR SET CuryID = 'YYY' where (CuryID in ('', '2345')
    

    Hinweis

    In jeder dieser Anweisungen müssen Sie zwei Paare von einfachen Anführungszeichen verwenden.

Ursache und Lösung 6

Dieses Problem tritt auf, wenn die Crufladg.dll Datei nicht registriert ist. Um dieses Problem zu beheben, registrieren Sie die Crufladg.dll-Datei manuell. Gehen Sie dazu wie folgt vor:

  1. Verwenden Sie Windows Explorer, um die Crufladg.dll-Datei auf der Arbeitsstation zu suchen.
  2. Klicken Sie mit der rechten Maustaste auf die Datei, zeigen Sie auf Öffnen mit, und wählen Sie dann Andere aus.
  3. Sehen Sie sich das lokale Laufwerk an. Dabei handelt es sich in der Regel um Laufwerk C. Wählen Sie entweder Regsvr32.exe im \Winnt\System32 Ordner oder Regsvr.exe im \Windows\System Ordner aus.
  4. Klicken Sie auf Öffnen.
  5. Wählen Sie OK aus. Eine Meldung gibt an, ob die Datei erfolgreich registriert wurde.

Ursache und Lösung 7

Dieses Problem tritt auf, wenn Sie Berichte von einer bestimmten Arbeitsstation drucken. Führen Sie die folgenden Schritte aus, um dieses Problem in Microsoft Solomon 5.5 und früheren Versionen von Microsoft Solomon zu beheben:

  1. Verwenden Sie Software in Systemsteuerung, um das Microsoft Solomon IV-Clientprogramm zu deinstallieren.
  2. Benennen Sie den Winnt\Crystal Ordner um.
  3. Installieren Sie das Microsoft Solomon IV-Clientprogramm neu.

Hinweis

Diese Lösung gilt nur für Microsoft Solomon 5.5 und frühere Versionen von Microsoft Solomon.

Ursache und Lösung 8

Dieses Problem tritt auf, wenn der Druckername zu lang ist. Um dieses Problem zu beheben, ändern Sie den Standarddruckernamen so, dass er weniger als 25 Zeichen enthält.

Ursache und Lösung 9

Dieses Problem tritt auf, wenn Sie ein Upgrade von Microsoft Solomon IV 4.21 mit Crystal Reports 6.0 auf Microsoft Solomon 5.5 mit Crystal Reports 8.5 durchführen. In diesem Fall verweist die Fehlermeldung auf die Rt-Summenfunktion. Gehen Sie wie folgt vor, um das Problem zu beheben:

  1. Verwenden Sie die In Crystal Reports 8.5 enthaltenen Summenfunktionen, um das Formelfeld zu überarbeiten.
  2. Befolgen Sie die Anweisungen im Artikel c2002613 in der Crystal Knowledge Base, um die richtigen DLL-Dateien zu installieren.

Die Kontaktinformationen zu den in diesem Artikel erwähnten Drittanbietern sollen Ihnen helfen, den benötigten technischen Support zu finden. Diese Kontaktinformationen können ohne vorherige Ankündigung geändert werden. Microsoft garantiert nicht die Richtigkeit dieser Kontaktinformationen von Drittanbietern.

Ursache und Lösung 10

Dieses Problem tritt auf, wenn Dateien im lokalen Crystal-Ordner fehlen. Um dieses Problem in Microsoft Solomon 5.5 und früheren Versionen von Microsoft Solomon zu beheben, bestimmen Sie die Anzahl der Dateien im lokalen Crystal-Ordner, und ersetzen Sie dann den Ordner, falls erforderlich. Gehen Sie dazu wie folgt vor:

  1. Verwenden Sie Windows Explorer oder "Arbeitsplatz", um den lokalen Winnt-Ordner oder den lokalen Windows-Ordner zu suchen.
  2. Klicken Sie mit der rechten Maustaste auf den Ordner Crystal, und wählen Sie dann Eigenschaften aus.
  3. Notieren Sie sich die Anzahl der Dateien in diesem Ordner. Wenn der Ordner für Microsoft Solomon 5.5 weniger als 129 Dateien enthält, benennen Sie den Ordner Crystal um, oder löschen Sie diesen.
  4. Suchen Sie auf dem Server den Installationsordner Solomon.
  5. Öffnen Sie den Ordner Wrkstn\Windows, und kopieren Sie dann den Crystal-Ordner in den lokalen Winnt- oder Windows-Ordner.

Hinweis

  • Diese Lösung gilt nur für Microsoft Solomon 5.5 und frühere Versionen von Microsoft Solomon.
  • Wenn der Fehler weiterhin auftritt, finden Sie weitere Informationen im Abschnitt Ursache und Lösung 7 .

Weitere Informationen

Die in diesem Artikel genannten Drittanbieterprodukte stammen von Herstellern, die von Microsoft unabhängig sind. Microsoft gewährt keine implizite oder sonstige Garantie in Bezug auf die Leistung oder Zuverlässigkeit dieser Produkte.