-
Cpyf und alternativer Tabellenname
Hallo Forum.
Ich möchte eine Tabelle mit neuem Namen in die gleiche Bibliothek kopieren. Die Tabelle wurde mit Create Table erstellt
und hat einen Namen > 10 Stellen.
Name: ScannerRueckmeldung
Von AS400 vergeben: SCANN00001
Beim CPYF muss ich mit dem von der AS400 erzeugten Namen (SCANN00001) arbeiten.
Wie ändere ich dabei gleichzeitig den Alternativen Tabellennamen (Originalname aus Craete Table) ?
Gruß Joe
-
Die Frage verstehe ich so nicht ganz.
Die Tabelle/PF wird mit dem Namen erstellt, der beim CPYF angegeben wird.
Einen alternativen SQL-Namen gibt es dabei nicht.
Ggf. kannst du das ja auch per SQL erledigen:
create table as
select ....
-
 Zitat von Fuerchau
Die Frage verstehe ich so nicht ganz.
Die Tabelle/PF wird mit dem Namen erstellt, der beim CPYF angegeben wird.
Einen alternativen SQL-Namen gibt es dabei nicht.
Ggf. kannst du das ja auch per SQL erledigen:
create table as
select ....
Hallo.
Danke für die schnelle Antwort.
Hier nochmal die Copy Parameter:
Datei kopieren (CPYF)
Ausgangsdatei . . . . . . . . . > SCANN00001
Bibliothek . . . . . . . . . . > test
Zieldatei . . . . . . . . . . . > SCANN00002
Bibliothek . . . . . . . . . . > test
Von Teildatei . . . . . . . . . *FIRST
Nach Teildatei oder Kennsatz . .*FIRST
Sätze ersetzen od. hinzufügen . > *ADD
Datei erstellen . . . . . . . . > *YES
Fehler: CPF327E Alternativer Name für Datei SCANN00002 nicht zulässig.
Als Ausgangs-u.Zieldatei muss ich den obigen Namen verwenden. Oder habe ich die Möglichkeit, hier den langen Originalnamen einzugeben?
Oder geht das mit einem anderen Befehl (ausser SQL)
Gruß
Joe
-
Schau dir die Nachricht mit F1 mal genauer an. Es gibt da detailiertere Hinweise.
-
 Zitat von Fuerchau
Schau dir die Nachricht mit F1 mal genauer an. Es gibt da detailiertere Hinweise.
Das habe ich schon mehrfach getan, deshalb ja meine Anfrage hier im Forum.
F1-Fehlerbeseitigung:
2 - Den alternativen oder den Bibliotheksnamen im Befehl so ändern, dass der alternative Name keine Kopie des alternativen Namens einer anderen Datei ist.
Das interpretiere ich so, dass der Name ScannerRueckmeldung als alternativer Name bezeichnet wird. Dieser Name ist auch z.B. in der SYSTABLES vorhanden und kann nicht doppelt vorkommen.
Stehe ich etwa total auf dem Schlauch?
Gruß Joe
-
Hallo,
bei SQL Langnamen werden vom System bei Bedarf Kurznamen generiert, nach dem Regelwerk Name = XXXXXyyyyy
wobei XXXXX die ersten 5 Buchstaben des Langnamens in upper Case sind und yyyyy eine fortlaufende Nummer, startend mit 00001
In deinem Fall sieht es so aus, dass es bereits eine Datei mit dem Namen SCANN00002 gibt, oder das OS wieder mal spinnt.
Fazit: SQL nehmen und Langnamen verwenden, oder CPYF und anderen Namen wählen.
mfg
Dieter Bender
 Zitat von Joe
Das habe ich schon mehrfach getan, deshalb ja meine Anfrage hier im Forum.
F1-Fehlerbeseitigung:
2 - Den alternativen oder den Bibliotheksnamen im Befehl so ändern, dass der alternative Name keine Kopie des alternativen Namens einer anderen Datei ist.
Das interpretiere ich so, dass der Name ScannerRueckmeldung als alternativer Name bezeichnet wird. Dieser Name ist auch z.B. in der SYSTABLES vorhanden und kann nicht doppelt vorkommen.
Stehe ich etwa total auf dem Schlauch?
Gruß Joe
-
 Zitat von BenderD
...In deinem Fall sieht es so aus, dass es bereits eine Datei mit dem Namen SCANN00002 gibt, oder das OS wieder mal spinnt.
Hello,
wenn er denn nun wirklich den Ursachencode 2 hat.
2 - Der alternative Name ist ein doppelter alternativer Name für die
Datenbankdatei &5, die bereits in der Bibliothek &2 vorhanden ist.
Steht ja dann so im Joblog!?
k.
-
 Zitat von kuempi von stein
Hello,
wenn er denn nun wirklich den Ursachencode 2 hat.
2 - Der alternative Name ist ein doppelter alternativer Name für die
Datenbankdatei &5, die bereits in der Bibliothek &2 vorhanden ist.
Steht ja dann so im Joblog!?
k.
Hallo.
Danke für die rege (An)Teilnahme.
Der neue Name SCANN00002 existiert definitiv nicht im gesamten System.
Hier nochmal die Fehlermeldung:
Nachricht . . . : Alternativer Name für Datei SCANN00002 nicht zulässig. Ursache . . . . : Es wurde versucht, die Datenbankdatei SCANN00002 mit dem alternativen Namen SCANNERRUECKMELDUNG zu erstellen, zu ändern oder in die
Bibliothek xxx zu übertragen.
Ich werde das Kopieren der Tabelle mit SQL durchführen.
Gruß
Joe
-
Dies ist kein BUG sondern leider so korrekt.
Der CPYF kommt mit langen Namen nicht zurecht, da diese immer wieder mitkopiert werden.
Z.B. das DDS-Keyword ALIAS erlaubt lange Feldnamen, die beim Erstellen auch kopiert werden. Auf Feldbebene ist das aber egal.
Auf Dateiebene hat man auch keinen Einfluss auf den langen Namen und deshalb wird der CPYF abgelehnt.
Lösung:
a) CPYF in eine andere Lib, wo der lange Name nicht existiert
b) per SQL kopieren
CREATE TABLE ScannerRueckmeldung2
as (select * from ScannerRueckmeldung)
with data
-
Hallo,
Wieso nochmal? ein typisches Beispiel dafür, dass eine klarere Problembeschreibung direkt zur Lösung geführt hätte.
mfg
Dieter Bender
@Baldur: Solange mir keiner dokumentiert zeigt, dass das ein Feature ist, ist das für mich ein Bug!!!
 Zitat von Joe
Hier nochmal die Fehlermeldung:
Nachricht . . . : Alternativer Name für Datei SCANN00002 nicht zulässig. Ursache . . . . : Es wurde versucht, die Datenbankdatei SCANN00002 mit dem alternativen Namen SCANNERRUECKMELDUNG zu erstellen, zu ändern oder in die
Bibliothek xxx zu übertragen.
-
Da native OS-CMD's nur 10-stellige Objektnamen kennen, kann auch nur mit 10-stelligen Namen umgegangen werden.
Da der ALIAS der Datei länger als 10 ist, kann sich das OS keinen Namen "ausdenken", da der Benutzer ja die Namen vorgibt.
Wo soll also CPYF einen langen Namen generieren, wenn doch normalerweise die Kopie ein weitgehend identisches Objekt ergibt ?
Deshalb wird der CPYF abgelehnt und man muss dann halt den "Create as Select" verwenden.
Hier gilt wieder die SQL-Konvention, die aus dem langen Namen wieder einen 10-stelligen Objektnamen generiert.
Es ist ist halt schon ein Problem, mit verschieden Methoden das selbe Objekt zu bearbeiten.
Dies gilt übrigens auch für TABLE/VIEW/INDEX-Objekte, die ich anschließend mit RecordLevel-Access verarbeiten will, wo diese Arten doch für SQL vorgesehen sind.
"Es geht doch" ist für mich in diesem Fall kein Argument.
-
Hallo,
jede PF hat einen 10 stelligen Namen und wenn ich einen CPYF mache gebe ich selbigen als Quelldatei an und als Zieldatei ebenfalls einen, der maximal 10 stellig ist, da gibt es keinerlei Grund einen Langnamen zu erfinden, nur weil die Quelldatei zufällig einen hatte!!!
mfg
Dieter Bender
 Zitat von Fuerchau
Da native OS-CMD's nur 10-stellige Objektnamen kennen, kann auch nur mit 10-stelligen Namen umgegangen werden.
Da der ALIAS der Datei länger als 10 ist, kann sich das OS keinen Namen "ausdenken", da der Benutzer ja die Namen vorgibt.
Wo soll also CPYF einen langen Namen generieren, wenn doch normalerweise die Kopie ein weitgehend identisches Objekt ergibt ?
Deshalb wird der CPYF abgelehnt und man muss dann halt den "Create as Select" verwenden.
Hier gilt wieder die SQL-Konvention, die aus dem langen Namen wieder einen 10-stelligen Objektnamen generiert.
Es ist ist halt schon ein Problem, mit verschieden Methoden das selbe Objekt zu bearbeiten.
Dies gilt übrigens auch für TABLE/VIEW/INDEX-Objekte, die ich anschließend mit RecordLevel-Access verarbeiten will, wo diese Arten doch für SQL vorgesehen sind.
"Es geht doch" ist für mich in diesem Fall kein Argument.
Similar Threads
-
By RLPforum in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 05-07-06, 14:04
-
By V_P in forum IBM i Hauptforum
Antworten: 12
Letzter Beitrag: 14-09-05, 11:04
-
By schojo in forum NEWSboard Programmierung
Antworten: 6
Letzter Beitrag: 17-05-05, 10:24
-
By ASMaus in forum NEWSboard Programmierung
Antworten: 1
Letzter Beitrag: 21-02-05, 13:15
-
By Liebhoff in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 13-02-03, 08:35
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