-
Hallo Herr Fürchau, danke für die Antwort.
Was ich herausgefunden habe:
- Egal ob physische Tabelle oder View, der zweite Insert schlägt fehl
- Egal ob ich im SELECT x FINAL TABLE die Spalten angebe oder mit JOKER-Zeichen arbeite, der zweite Insert schlägt fehl
- Im Jobprotokoll beschwert sich das System über den o.g. Fehler für die Spalte WSNAM (also eines der Systemfelder am Ende der Tabelle)
Code:
SQL-Status: 22011
Vendorencode: -138
Nachricht: [SQL0138] Argument *N der Funktion SUBSTRING oder LEFT ungültig.
Entferne ich diese Systemfelder (Ersteller, Erstellzeit etc.) aus der SQL Prozedur u. dem darin enthaltenen Spalten auch beim Insert, beanstandet mir die Runtime zuletzt einen Fehler mit der Spalte "Rabattwert"
Code:
SQL-Status: 22023
Vendorencode: -406
Nachricht: [SQL0406] Umsetzungsfehler bei der Zuordnung zu Spalte RABATTWERT. Ursache . . . . : Bei dem Versuch, Spalte RABATTWERT mit einer Anweisung INSERT, UPDATE, ALTER TABLE oder REFRESH TABLE einen Wert zuzuordnen, ist ein Umsetzungsfehler der Art 6 aufgetreten. Wurde eine Vorkompilierung durchgeführt, ist der Fehler aufgetreten, als eine numerische Konstante in dieselben Attribute wie Spalte RABATTWERT umgesetzt werden sollte. Mögliche Fehlerarten sind: -- Fehlerart 1 - Überlauf. -- Fehlerart 2 - Gleitkommaüberlauf. -- Fehlerart 3 - Gleitkommaunterlauf. -- Fehlerart 4 - Gleitkommaumsetzungsfehler. -- Fehlerart 5 - Ungenaues Ergebnis. -- Fehlerart 6 - Ungültige numerische Daten. -- Fehlerart 7 - Ungültige DBCS-Daten. Fehlerbeseitigung: Die Anweisung so ändern, dass der Ergebniswert in Spalte RABATTWERT passt und gültig ist, oder die Tabelle oder Sicht unter Angabe einer neuen Art oder einer neuen Länge für Spalte RABATTWERT erneut erstellen, so dass der Ergebniswert zugeordnet werden kann. Technische Beschreibung . . . . . . . : Während der Vorkompilierung wurde versucht, numerische Konstanten in INSERT- und UPDATE-Anweisungen in die Attribute der Zielspalte umzusetzen. Dies hätte eine Leistungssteigerung beim Aufrufen des Programms zur Folge.
Das Problem liegt also nicht an den Systemfeldern die es anfangs im Joblog beanstandet, sondern eigentlich an dem numerischen Rabattfeld mit Decimal(5,2). Wenn ich diesen Prozedurparameter mit IN pRabattWert decimal (11,3) definiere, funktioniert es. Am Select des Final-Table Statements dürfte es nicht liegen, da ich hier mit
Code:
SELECT RabattId, Menge, cast(RabattWert as decimal(5,2)) RabattWert... FROM FINAL TABLE (
keinen Erfolg hatte.
Bislang hatte ich folgende Datentypen verwendet:
- Int(eger) für ganze Zahlen
- Decimal(x,y) für Fließkommazahlen
- [N]VarChar(x) für Texte
Ist Decimal hier evtl. nicht ideal und führt zu Konvertierungsproblemen gerade auch mit C# im Nachgang?
PS: Ich hatte die Feldnamen im Zuge der Überarbeitung angepasst u. die Suffixe des Tabellennamens für die Spalten weggelassen!!!
Similar Threads
-
By svit in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 03-03-16, 11:11
-
By JotSo in forum IBM i Hauptforum
Antworten: 9
Letzter Beitrag: 22-12-15, 12:08
-
By Etherion in forum NEWSboard Programmierung
Antworten: 6
Letzter Beitrag: 30-09-14, 13:36
-
By mk in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 22-09-14, 06:58
-
By JMH in forum IBM i Hauptforum
Antworten: 7
Letzter Beitrag: 15-01-14, 14:53
Tags for this Thread
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks