Diese Anweisungen können bei häufig auftretenden Problemen im Zusammenhang mit dem Entwickeln von Nachrichtenflüssen mit Dateiknoten hilfreich sein.
Wenn als erste Fehlernachricht BIP3332 ausgegeben wird, brauchen Sie den Fluss nicht zu stoppen, weil der FileInput-Knoten den Fehler vor Beginn der Dateiverarbeitung festgestellt hat. Suchen Sie die Fehlernachricht, die in der Nachricht BIP3332 angegeben ist. In dieser zweiten Fehlernachricht sind der Fehler sowie die Dateien und Verzeichnisse, die ihn verursachen, angegeben.
SET MQSI_FILENODES_MAXIMUM_RECORD_LENGTH=268435456
Wenn Sie keinen eindeutigen Schlüssel für jeden Datensatz erstellen können, teilen Sie den Fluss in zwei separate Flüsse auf. Stellen Sie im ersten Fluss eine Verbindung zwischen dem FileInput-Knoten und einem MQOutput-Knoten her, damit jeder Eingabedatensatz als großes Binärobjekt (BLOB) in eine WebSphere MQ-Warteschlange kopiert wird. Stellen Sie sicher, dass ausreichende WebSphere MQ-Ressourcen vorhanden sind, z. B. dass die Warteschlangengröße angemessen ist, damit der erste Fluss nicht fehlschlägt. Stellen Sie im zweiten Fluss eine Verbindung zwischen einem MQInput-Knoten und dem Fluss her, den Sie zuvor mit dem FileInput-Knoten verbunden haben. Konfigurieren Sie den MQInput-Knoten sowie die anderen Knoten nach Bedarf, um das gewünschte transaktionale Verhalten zu erzielen.
Wenn zu einem bestimmten Zeitpunkt oder nach einem bestimmten Ereignis alle Ausgabedateien für einen nachfolgenden Prozess verfügbar sein müssen, verbinden Sie einen separaten Fluss mit dem Dateibeendigungsterminal des FileOutput-Knotens, über den zum jeweiligen Zeitpunkt oder nach dem jeweiligen Ereignis eine entsprechende Nachricht gesendet wird. Wenn doppelte Nachrichten mit der Angabe derselben Datei beim Dateibeendigungsterminal eingehen, werden sie vom FileOutput-Knoten ignoriert.
Wenn im Fluss die Eigenschaften Verzeichniseigenschaft 'Position' anfordern, Dateinamenseigenschaft 'Position' anfordern (Standardangaben für Verzeichnis und Name im Ordner $LocalEnvironment/Destination/File) oder $LocalEnvironment/Wildcard/WildcardMatch enthalten, stellen Sie sicher, dass die Nachrichten, die an das Dateibeendigungsterminal gesendet werden, die richtigen Elemente und Werte enthalten, um die Ausgabedatei und das Ausgabeverzeichnis korrekt anzugeben.
Wenn die Nachrichtenelemente korrekt festgelegt wurden, überprüfen Sie, ob mit den Eigenschaften Verzeichniseigenschaft 'Position' anfordern und Dateinamenseigenschaft 'Position' anfordern des FileOutput-Knotens die richtigen Elemente in der Nachricht angegeben wurden.
Wenn Sie für die Eigenschaft Datensatzdefinition des FileOutput-Knotens den Wert Datensatz 'Nicht geänderte Daten', Datensatz 'Daten mit fester Länge' oder Datensatz 'Daten mit Begrenzer' angegeben haben, stellen Sie sicher, dass die Überschreibungswerte in den Nachrichten an das Dateibeendigungsterminal und denen an das Eingangsterminal übereinstimmen. Denn wenn die Werte nicht übereinstimmen, beziehen sich die Nachrichten an das Dateibeendigungsterminal und das Eingangsterminal auf unterschiedliche Dateien.