PDA

View Full Version : SYSROUTINES nicht vollständig



svit
13-10-22, 14:08
Hallo *all,

ich habe ein Problem mit SYSROUTINES.
Ich habe durch RSTLIB eine Libl auf der i erstellt leider sind die Proceduren aus der Bibliothek stehen nicht in der SYSROUTINES drin. Wie kann SYSROUTINES aktualisiert werden?

Kann mir bitte einer helfen?

Vielen Dank.

Fuerchau
13-10-22, 15:22
Versuche es mal mit RCLDBXREF.

svit
13-10-22, 15:35
habe gerade versucht, leider negativ

Fuerchau
13-10-22, 15:43
Dann gibt es wahrscheinlich folgendes Problem:
https://www.ibm.com/support/pages/stored-procedures-restore-overview

Die Programmobjekte enthalten aus im Link genannten Gründen die Registrierungsinfo nicht.
Du benötigst in diesem Fall die SQL-Anweisungen, die deine Externen Routinen definiert haben.
Bei Internen Routinen besteht das Problem i.d.R. nicht, da ja auch die Programmobjekte dann von SQL erstellt werden.

svit
13-10-22, 16:36
D.h. beim restor von 5000 Proceduren von Maschiene A auf die Maschiene B muss ich anschliessend alle (per hand) noch ein mal mir SQL erstellen?

Fuerchau
13-10-22, 20:39
Wenn du Maschine A noch hast, kannst du ja die Scripte u.U. noch generieren.
Wenn ich eine SQL-Prozedur/-Function erstelle, verwalte ich diese auch in einer Quelle um u.U. auch Modifikationen machen zu können.
Dabei ist eis egal, ob es eine reine SQL-Prozedur oder um eine externe Prozedur handelt.
Wenn ihr also keine Quellen habt, musst du das halt mit der Hand erledigen.
Tut mir wirklich Leid für dich.

svit
14-10-22, 08:56
Das Problem was ich habe ist, auf die Maschine B habe ich SRC und OBJ restort. Es ist alles da und ich muss trotzden alle proceduren noch mal per SQL erzeugen.
Das ergibt doch keinen Sin.

RobertMack
14-10-22, 09:01
Durchforste mal die QGPL oder eigene Bibliotheken in der SYSLIBL - ich kann mir schwer vorstellen dass da keiner jemals eine Releasewechsel- oder Maschinenwechsel-Installationsroutine geschrieben hat...

Fuerchau
14-10-22, 11:34
1.
Wie im IBM-Link angegeben, ist das externe Objekt zum Zeitpunkt der Registrierung nicht in der LIBL erreichbar gewesen. Somit ist die SQL-Info nicht ins Objekt geschrieben worden.
2.:
Wenn Objekte neu erstellt werden, wird das Alte ja in QRPLOBJ verschoben und ein neues Objekt erstellt.
Auch in diesem Fall ist die Registrierung der Prozedur neu erforderlich, da die Info ja nur im alten Objekt steht. Und die Compiler wissen ja nichts vom externen Bezug.
Für SQL ist ja immer noch bekannt, welches Objekt aufgerufen werden muss.

Und wenn du die Quellen hast, gehts mit PDM und Auswahl 25 ja spielend leicht;-).