Le clonage d'environnement PeopleSoft
Date de publication : 21/03/2007 , Date de mise à jour : 21/03/2007
		Par
		Jaouad Zouaghi  (autres articles)
 
		
		Administration PeopleSoft : Clonage d'environnement 
		
	
	 
	I. Introduction
		
		
		
	
	
	II. Base de données
		
		
		
		II-1. Partie Oracle
			
			
			
			
			
			
				
			
				
			
				
			
				
			
				
		
		II-2. Partie PeopleSoft
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
		
	
	
	III. Partie PeopleSoft
		
		III-1. Application Server
			
			
			
			
			
			
			
			
			
			
			
			
		
		
		III-2. Process Scheduler
			
			
			
			
			
			
			
					
			
			
	
			
			
			
				
	
	
	IV. WebServer
		
		IV-1. Création automatique
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			
		
		
		IV-2. Création Manuelle
			
			
			
			
			
			
			
			
			
			
			
			
		
	
	
	I. Introduction
		
		
		Lorsqu'une application PeopleSoft est en production, il est nécessaire d'avoir des bases de pré-production, de recette et de développement afin de pouvoir suivre le cheminement normal d'un développement jusqu'à la mise en production.
		Dans ce document nous allons voir comment mettre en place un environnement PeopleSoft à partir de la production : Clonage. 
		Cette documentation concernant la mise en place d'une copie de l'environnement de la production peut également servir lorsque nous avons besoin uniquement de rafraichir les données. 
		La configuration : 
		OS : AIX 5.5 
		Base de données : Mono Instance Oracle standart  10.2.0.1
		Peopletools : 8.46.06
		Tuxedo : 8.1 
		Webserver : IBM Websphere 5.1
		Situation : clonage de la base de production (Prod) vers une pré-production: (prgprd) 
		Nous allons voir les trois parties essentielles :
		-	Base de données 
		-	Tools (Appserv et PRCS ) 
		-	Webserver 
		
		
	
	
	II. Base de données
		
		
		Il existe une multitude de documentation qui  explique comment cloner une base de données  Oracle. Nous ne reviendrons pas là dessus. Je vous conseille, si vous n'êtes toujours pas familier avec cette mécanique assez simple, une documentation très simple :
		-	
 Copie de bases de données
 Copie de bases de données par 
Orafrance. 
		Si vous souhaitez avoir une vue plus précise sur les mécanismes de la sauvegarde, restauration totale et partielle, je vous invite à  lire la documentation suivante : 
		-	
 Sauvegarde et restauration
 Sauvegarde et restauration par 
Jaouad Zouaghi 
		Pour information, je vous rappelle la mécanique : On démarre la base en mode 
NoMount, on recrée les controfiles, ce qui permet non seulement de pouvoir générer de nouveaux controfiles, mais également de mettre à jour le tablespace SYSTEM et les headers (entête) de tous les tablespaces. 
		Une ouverture de la base en mode RESETLOGS est obligatoire vu que le numéro de séquence repart à zéro.
		Lorsque cette tâche de copie et de restauration Oracle a été effectuée, il reste encore quelques actions, qui se divisent en deux parties. La première concerne l'instance Oracle et la seconde est une mise à jour du dictionnaire PeopleSoft. 
		
II-1. Partie Oracle
			
			
			Ici il s'agit essentiellement de l'identification de la base.
			Dans un premier temps nous allons mettre à jour le GLOBAL NAME  :
			
| 
SQL>select*fromglobal_name ; 
GLOBAL_NAME
PRODSQL>ALTERDATABASERENAMEGLOBAL_NAMETOPRGPRD ;
Base de données modifiée.SQL>select*fromglobal_name ; 
GLOBAL_NAME
PRGPRD
 | 
			Une autre mise à jour importante est celle de l'ID de la base. L'ID de la base est un numéro qui va identifier de manière unique la base de données.		
			
| 
SQL>SELECTdbid,nameFROMv$database; 
      DBIDNAME2058528667PRGPRD
 | 
			Pour Pouvoir mettre à jour ce numéro d'identification, Oracle met à notre disposition un Binaire : NID pour New identification number
			Tout d'abord il faut redémarrer la base en mode mount. C'est assez logique car le nid met à jour les entêtes de fichiers de données ( Header ), le tablespace System et enfin les contrôlfiles, donc il a besoin d'avoir monter les fichiers de données avec l'instance Oracle.
			Démarrer la base en Mode Mount : 
			
			
| 
SQL>startup mount
ORACLE instance started.
Total System Global Area3472883712bytes
Fixed Size2075216bytes
Variable Size788530608bytesDatabaseBuffers2667577344bytes
Redo Buffers14700544bytesDatabasemounted.
 | 
			Ensuite lancer le NID : 		
			
				
| 
sproerp07-oracle:/home/oracle>nidDBNEWID:Release10.2.0.2.0-ProductiononTue Feb2010:44:362007Copyright (c)1982,2005, Oracle.Allrights reserved.
Keyword     Description                    (Default)
TARGET      Username/Password              (NONE)
DBNAMENewdatabasename(NONE)
LOGFILE     OutputLog(NONE)
REVERT      Revert failed change           NO
SETNAMESetanewdatabasenameonly   NO
APPEND      AppendtooutputlogNO
HELP        Displays these messages        NO
sproerp07-oracle:/home/oracle>
 | 
			NID est présent dans le répertoire $ORACLE_HOME/bin		
			
				
| 
nid target='sys as sysdba'logfile=/home/ora10G/nid_PRGPRD.logDBNEWID:Release10.2.0.2.0-ProductiononTue Feb2010:46:162007Copyright (c)1982,2005, Oracle.Allrights reserved.Password:ConnectedtodatabasePRGPRD (DBID=2058528667)
Connectedtoserver version10.2.0Control Filesindatabase:/oracle/ctl/prgprd/control01.ctl/oracle/ctl/prgprd/control02.ctl/oracle/ctl/prgprd/control03.ctl
ChangingdatabaseIDfrom2058528667to1942856571ControlFile/oracle/ctl/prgprd/control01.ctl-modified
    ControlFile/oracle/ctl/prgprd/control02.ctl-modified
(...) 
    ControlFile/oracle/ctl/prgprd/control03.ctl-dbid changed
    Instance shut downDatabaseIDfordatabasePRGPRD changedto1942856571.Allprevious backupsandarchived redo logsforthisdatabaseare unusable.Databaseisnotawareofprevious backupsandarchived logsinRecovery Area.Databasehas been shutdown,opendatabasewithRESETLOGSoption.
Succesfully changeddatabaseID.
DBNEWID-Completed succesfully.
 | 
			Nous pouvons apercevoir notre nouvel ID. 
			La base ayant été arrêté par NID, il convient de la redémarrer en effectuant un open resetlogs nécessaire suite à notre nouvel ID. 
			
				
| 
SQL*Plus:Release10.2.0.2.0-ProductiononTue Feb2010:48:342007Copyright (c)1982,2005, Oracle.AllRights Reserved.SQL>conn/assysdba
Connectedtoan idle instance.SQL>startup mount
ORACLE instance started.
Total System Global Area3472883712bytes
Fixed Size2075216bytes
Variable Size788530608bytesDatabaseBuffers2667577344bytes
Redo Buffers14700544bytesDatabasemounted.SQL>alterdatabaseopenresetlogs  ;Databasealtered.
 | 
			Si nous vérifions à nouveau l'ID :
			
				
| 
SQL>SELECTdbid,nameFROMv$database;
      DBIDNAME1942856571PRGPRD
 | 
			Bien sûr ne pas oublier de mettre à jour la partie Net*8 : Listener et Résolution de nom, uniquement s'il s'agit d'une nouvelle base.		
			
				
		
		II-2. Partie PeopleSoft
			
			
			Ensuite nous allons nous attaquer à ce qui concerne la mise à jour du dictionnaire PeopleSoft via la partie Oracle.
			Il s'agit donc de mettre à jour les références de la production par la nouvelle base. 
			
			
| 
DELETEPS.PSDBOWNER;INSERTINTOPS.PSDBOWNER (DBNAME,OWNERID)values('PRGPRD','SYSADM');COMMIT;
 | 
			La table PSDBOWNER va permettre d'identifier de manière précise à quelle utilisateur appartient une base de données au sens PeopleSoft. De plus lors de la connexion, il va dire quel schéma Oracle utiliser. 		
			
			
| 
UPDATESYSADM.PSOPTIONSSETSYSTEMTYPE='INT',SHORTNAME='PRGPRD',LONGNAME='PRGPRD',GUID=' ',F1URL='http://10.2.2.23/PSOL/htmldoc/index.htm',CTRLF1URL='http://10.2.2.23/PSOL/htmldoc/index.htm';COMMIT;
 | 
			Ici nous mettons à jour les références de la nouvelle base. Le GUID est tout comme l'identification number, le numéro qui identifie de manière unique une base de données PeopleSoft.
			Le F1URL  et le CTRLF1URL indique à PeopleSoft ou trouver l'aide lorsque celle ci est installé.
			La mise à jour de cette identification se fait en deux temps. La première est de mettre à jour à blanc, le GUID dans la table PSOPTIONS. Ensuite lors du démarrage des Applications servers, un nouvel GUID lui sera attribué.
			Exemple : 		
			
			
| 
SQL>selectshortname ,guidfrompsoptions  ;
SHORTNAME       GUID
PRGPRD          ee03c76c-1dd1-11b2-a51a-c6a27d6b7216SQL>updatepsoptionssetguid=' ';1ligne mise à jour.SQL>commit;
Validation effectuée.SQL>selectshortname ,guidfrompsoptions  ;
SHORTNAME       GUID
PRGPRD
 | 
			On redémarre les Applications servers :		
			
			
| 
SQL>psadmin-c boot-d PRGPRDSQL>selectshortname ,guidfrompsoptions
SHORTNAME       GUID
PRGPRD          81851b12-1dd2-11b2-a520-c6a27d6b7216
 | 
			Le GUID a été modifié. 
			Mise à jour de la PS_CDM_DIST_NODE : 
			
			
| 
UPDATEsysadm.PS_CDM_DIST_NODESETDISTNODENAME='Node FINA',OPSYS='4',FTPID='psoft84',OPERPSWD='zuxGwr6qWiimqIVQLgo8HA==',FTPADDRESS='127.0.0.1',FTPDIRECTORY='/psoftsp1/psreports',URL='http://127.0.0.1/psreports/PRGPRD',WINNETWORKPATH=' ',DIRLOCATION=' ',URI_HOST=' ',URI_PORT='0',URI_QUERY=' ',URI_RESOURCE=' ',URI_SCHEME=' ',URI_RPT='http://127.0.0.1/psc/PREPRD/EMPLOYEE/ERP/c/CDM_RPT.CDM_RPT.GBL?Page=CDM_RPT_INDEX'||'&'||'Action=U'||'&'||'CDM_ID=',CDM_DIR_TEMPLATE='%DBNAME%/%CURRDATE%/%REPORTID%',DESCRLONG='Noeud de distribution de la base de PREPRD';COMMIT;
 | 
			La table PS_CDM_DIST_NODE définit les paramètres du nœud de distribution de l'application PeopleSoft. Notamment où va être stocké les fichiers suite aux traitements.		
			
			
| 
SELECT*FROMPS_CDM_LISTWHEREprcsinstance=:1
 | 
			Mise à jour des Mots de passe : 
			Mise à jour des mots de passe utilisateurs : 
			Ici nous allons mettre à jour les mots de passe utilisateurs : ou le mot de passe est égal au nom d'utilisateur. La table impactée est la table PSOPRDEFN. 
			Le champ OPRID correspond à l'utilisateur et le champ OPERPSWD à celui du mot de passe.
			
			
			
			
			Le champs encrypted doit être à 0 pour que DATA MOVER ré encrypte ce mot de passe.
			Attention, une modification du mot de passe de l'utilisateur par lequel se connecte le serveur Web et les AS et PRCS, sinon il faudra reconfigurer toute la chaine. 
			Le changement du mot de passe de l'utilisateur par lequel se connectent les APPSERV et les PRCS nécessite la reconfiguration de ces derniers, et de le reconfigurer via PSADMIN.
			Quant à l'utilisateur du serveur Web, il faut modifier son mot de passe dans le fichier configuration.properties dans le répertoire :
			
|  | 
| 
$PS_HOME/webserv/serveurNode_serveurNode_SERVERNAME/peoplesoft.ear/PORTAL/WEB-INF/psftdocs
 | 
			Pour modifier le mot de passe du schéma (au sens Oracle) propriétaire de l'application PeopleSoft, la procédure est plus simple :
			
			
			
			L'acces password correspond à la colonne symbolicid de la table psoprdefn. TOTO correspond au nouveau password. Cette procédure permet de changer et de crypter le mot de passe.
			Mise à zéro des séquences :
			Dans cette séquence nous allons remettre à 0 les différentes séquences présentes dans PeopleSoft. Les séquences sont gérées dans la table :
			
			
| 
SQL>SELECT*FROMPS_PRCSSEQUENCE ;
PR SEQUENCENO MIN_SEQ_NBR MAX_SEQ_NBR025689919999999114117919999999214186019999999348710199999994719999999
 | 
			La colonne PRCSSEQKEY recense les différentes séquences :
			
			
| 
0=Process Instance1=Report Instance2=Transfer Instance
 | 
			Il suffit pour ce faire de remettre à 0 la colonne SEQUENCENO.
			Nettoyages des tables du Process scheduler :
			Ici nous supprimons les données de certaines tables notamment les tables de process schédulere créons les index et enfin mettons à jour les statistiques :
			
			
| 
TRUNCATETABLESYSADM.PS_CDM_AUTH;TRUNCATETABLESYSADM.PS_CDM_FILE_LIST;TRUNCATETABLESYSADM.PS_CDM_LIST;TRUNCATETABLESYSADM.PS_CDM_LIST_ARCH;TRUNCATETABLESYSADM.PS_CDM_TEXT;TRUNCATETABLESYSADM.PS_CDM_TRANSFER;TRUNCATETABLESYSADM.PS_CDM_TRNFR_RJCT;TRUNCATETABLESYSADM.PS_MESSAGE_LOG;TRUNCATETABLESYSADM.PS_MESSAGE_LOGPARM;TRUNCATETABLESYSADM.PS_PRCSRQSTDIST;TRUNCATETABLESYSADM.PS_PRCSRQSTNOTIFY;TRUNCATETABLESYSADM.PSAPMSGARCHPC;TRUNCATETABLESYSADM.PSAPMSGARCHPD;TRUNCATETABLESYSADM.PSAPMSGARCHPH;TRUNCATETABLESYSADM.PSAPMSGARCHPT;TRUNCATETABLESYSADM.PSAPMSGARCHSC;TRUNCATETABLESYSADM.PSAPMSGARCHST;TRUNCATETABLESYSADM.PSAPMSGPCONDATA;TRUNCATETABLESYSADM.PSAPMSGPUBCERR;TRUNCATETABLESYSADM.PSAPMSGPUBCERRP;TRUNCATETABLESYSADM.PSAPMSGPUBCON;TRUNCATETABLESYSADM.PSAPMSGPUBDATA;TRUNCATETABLESYSADM.PSAPMSGPUBERR;TRUNCATETABLESYSADM.PSAPMSGPUBERRP;TRUNCATETABLESYSADM.PSAPMSGPUBHDR;TRUNCATETABLESYSADM.PSAPMSGSCONDATA;TRUNCATETABLESYSADM.PSAPMSGSUBCERR;TRUNCATETABLESYSADM.PSAPMSGSUBCERRP;TRUNCATETABLESYSADM.PSAPMSGSUBCON;TRUNCATETABLESYSADM.PSIBLOGDATA;TRUNCATETABLESYSADM.PSIBLOGDATAARCH;TRUNCATETABLESYSADM.PSIBLOGERR;TRUNCATETABLESYSADM.PSIBLOGERRP;TRUNCATETABLESYSADM.PSIBLOGHDR;TRUNCATETABLESYSADM.PSIBLOGHDRARCH;TRUNCATETABLESYSADM.PSPRCSCHLDINFO;TRUNCATETABLESYSADM.PSPRCSPARMS;TRUNCATETABLESYSADM.PSPRCSQUE;TRUNCATETABLESYSADM.PSPRCSRQST;TRUNCATETABLESYSADM.PSPRCSRQSTFILE;TRUNCATETABLESYSADM.PSPRCSRQSTMETA;TRUNCATETABLESYSADM.PSPRCSRQSTSTRNG;TRUNCATETABLESYSADM.PSPRCSRQSTTEXT;TRUNCATETABLESYSADM.PSPRCSRQSTTIME;TRUNCATETABLESYSADM.PSPRCSRQSTXFER;TRUNCATETABLESYSADM.PSRF_RATTR_TBL;TRUNCATETABLESYSADM.PSRF_RINFO_TBL;TRUNCATETABLESYSADM.PSRF_RSCRTY_TBL;DELETESYSADM.PSRF_FINFO_TBLWHEREPSRF_PRNT_FLDR_ID<>0;
analyzetablesysadm.PSPRCSRQST         estimate statistics ;
analyzetablesysadm.PSPRCSQUE          estimate statistics ;
analyzetablesysadm.PSPRCSCHLDINFO     estimate statistics ;
analyzetablesysadm.PSPRCSPARMS        estimate statistics ;
analyzetablesysadm.PSPRCSRQSTTEXT     estimate statistics ;
analyzetablesysadm.PSPRCSRQSTXFER     estimate statistics ;
analyzetablesysadm.PS_PRCSRQSTDIST    estimate statistics ;
analyzetablesysadm.PS_MESSAGE_LOG     estimate statistics ;
analyzetablesysadm.PS_MESSAGE_LOGPARM estimate statistics ;
analyzetablesysadm.PSPRCSRQSTFILE     estimate statistics ;
analyzetablesysadm.PSPRCSRQSTMETA     estimate statistics ;
analyzetablesysadm.PSPRCSRQSTSTRNG    estimate statistics ;
analyzetablesysadm.PSPRCSRQSTTIME     estimate statistics ;
analyzetablesysadm.PS_PRCSRQSTNOTIFY  estimate statistics ;
analyzetablesysadm.PS_CDM_LIST        estimate statistics ;
analyzetablesysadm.PS_CDM_AUTH        estimate statistics ;
analyzetablesysadm.PS_CDM_TEXT        estimate statistics ;
analyzetablesysadm.PS_CDM_FILE_LIST   estimate statistics ;
analyzetablesysadm.PS_CDM_TRANSFER    estimate statistics ;
analyzetablesysadm.PS_CDM_TRNFR_RJCT  estimate statistics ;
analyzetablesysadm.PS_CDM_LIST_ARCH   estimate statistics ;
analyzetablesysadm.PSAPMSGPUBHDR      estimate statistics ;
analyzetablesysadm.PSAPMSGPUBDATA     estimate statistics ;
analyzetablesysadm.PSAPMSGPUBCON      estimate statistics ;
analyzetablesysadm.PSAPMSGSUBCON      estimate statistics ;
analyzetablesysadm.PSAPMSGPUBERR      estimate statistics ;
analyzetablesysadm.PSAPMSGPUBERRP     estimate statistics ;
analyzetablesysadm.PSAPMSGPUBCERR     estimate statistics ;
analyzetablesysadm.PSAPMSGPUBCERRP    estimate statistics ;
analyzetablesysadm.PSAPMSGSUBCERR     estimate statistics ;
analyzetablesysadm.PSAPMSGSUBCERRP    estimate statistics ;
analyzetablesysadm.PSAPMSGPCONDATA    estimate statistics ;
analyzetablesysadm.PSAPMSGSCONDATA    estimate statistics ;
analyzetablesysadm.PSIBLOGHDR         estimate statistics ;
analyzetablesysadm.PSIBLOGDATA        estimate statistics ;
analyzetablesysadm.PSIBLOGERR         estimate statistics ;
analyzetablesysadm.PSIBLOGERRP        estimate statistics ;
analyzetablesysadm.PSAPMSGARCHPH      estimate statistics ;
analyzetablesysadm.PSAPMSGARCHPD      estimate statistics ;
analyzetablesysadm.PSAPMSGARCHPC      estimate statistics ;
analyzetablesysadm.PSAPMSGARCHSC      estimate statistics ;
analyzetablesysadm.PSAPMSGARCHPT      estimate statistics ;
analyzetablesysadm.PSAPMSGARCHST      estimate statistics ;
analyzetablesysadm.PSIBLOGHDRARCH     estimate statistics ;
analyzetablesysadm.PSIBLOGDATAARCH    estimate statistics ;
analyzetablesysadm.PSRF_RATTR_TBL     estimate statistics ;
analyzetablesysadm.PSRF_RSCRTY_TBL    estimate statistics ;
analyzetablesysadm.PSRF_RINFO_TBL     estimate statistics ;
analyzetablesysadm.PSRF_FINFO_TBL     estimate statistics ;DROPINDEXSYSADM.PS_CDM_AUTH/DROPINDEXSYSADM.PSACDM_AUTH/CREATEUNIQUEINDEXSYSADM.PS_CDM_AUTHONsysadm.PS_CDM_AUTH (CONTENTID,
   PRCSINSTANCE,
   DISTID,
   DISTIDTYPE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSACDM_AUTHONsysadm.PS_CDM_AUTH (DISTIDTYPE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_CDM_FILE_LIST/CREATEUNIQUEINDEXSYSADM.PS_CDM_FILE_LISTONsysadm.PS_CDM_FILE_LIST
 (PRCSINSTANCE,
   CONTENTID,
   FILENAME)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_CDM_LIST/DROPINDEXSYSADM.PSACDM_LIST/CREATEUNIQUEINDEXSYSADM.PS_CDM_LISTONsysadm.PS_CDM_LIST (PRCSINSTANCE,
   CONTENTID)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSACDM_LISTONsysadm.PS_CDM_LIST (DISTSTATUS,
   TRANSFERINSTANCE,
   PRCSINSTANCE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_CDM_LIST_ARCH/CREATEUNIQUEINDEXSYSADM.PS_CDM_LIST_ARCHONsysadm.PS_CDM_LIST_ARCH (ARCHIVE_DT,
   PRCSINSTANCE,
   CONTENTID)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_CDM_TEXT/CREATEUNIQUEINDEXSYSADM.PS_CDM_TEXTONsysadm.PS_CDM_TEXT (PRCSINSTANCE,
   CONTENTID,
   CDMTEXTTYPE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_CDM_TRANSFER/CREATEUNIQUEINDEXSYSADM.PS_CDM_TRANSFERONsysadm.PS_CDM_TRANSFER
 (TRANSFERINSTANCE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_CDM_TRNFR_RJCT/CREATEUNIQUEINDEXSYSADM.PS_CDM_TRNFR_RJCTONsysadm.PS_CDM_TRNFR_RJCT
 (TRANSFERINSTANCE,
   PRCSINSTANCE,
   CONTENTID,
   TRANSFERSEQUENCENO)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_MESSAGE_LOG/CREATEUNIQUEINDEXSYSADM.PS_MESSAGE_LOGONsysadm.PS_MESSAGE_LOG
 (PROCESS_INSTANCE,
   MESSAGE_SEQ)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_MESSAGE_LOGPARM/CREATEUNIQUEINDEXSYSADM.PS_MESSAGE_LOGPARMONsysadm.PS_MESSAGE_LOGPARM
 (PROCESS_INSTANCE,
   MESSAGE_SEQ,
   PARM_SEQ)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PRCSRQSTDIST/CREATEUNIQUEINDEXSYSADM.PS_PRCSRQSTDISTONsysadm.PS_PRCSRQSTDIST (PRCSINSTANCE,
   DISTID,
   DISTIDTYPE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PRCSRQSTNOTIFY/CREATEINDEXSYSADM.PS_PRCSRQSTNOTIFYONsysadm.PS_PRCSRQSTNOTIFY (PRCSINSTANCE,
   DISTID,
   DISTIDTYPE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGARCHPC/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGARCHPCONsysadm.PSAPMSGARCHPC (PUBNODE,
   CHNLNAME,
   PUBID,
   SUBNODE,
   IB_SEGMENTINDEX)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGARCHPD/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGARCHPDONsysadm.PSAPMSGARCHPD (PUBNODE,
   CHNLNAME,
   PUBID,
   SEGMENTNO,
   SUBSEGMENTNO,
   DATASEQNO)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGARCHPH/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGARCHPHONsysadm.PSAPMSGARCHPH (PUBNODE,
   CHNLNAME,
   PUBID,
   EXTERNALMESSAGEID)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGARCHPT/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGARCHPTONsysadm.PSAPMSGARCHPT (PUBNODE,
   CHNLNAME,
   PUBID,
   SUBNODE,
   IB_SEGMENTINDEX,
   SEGMENTNO,
   SUBSEGMENTNO,
   DATASEQNO)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGARCHSC/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGARCHSCONsysadm.PSAPMSGARCHSC (PUBNODE,
   CHNLNAME,
   PUBID,
   MSGNAME,
   SUBNAME,
   IB_SEGMENTINDEX)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGARCHST/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGARCHSTONsysadm.PSAPMSGARCHST (PUBNODE,
   CHNLNAME,
   PUBID,
   MSGNAME,
   SEGMENTNO,
   SUBSEGMENTNO,
   DATASEQNO)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGPCONDATA/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGPCONDATAONsysadm.PSAPMSGPCONDATA (PUBNODE,
   CHNLNAME,
   PUBID,
   SUBNODE,
   IB_SEGMENTINDEX,
   SEGMENTNO,
   SUBSEGMENTNO,
   DATASEQNO)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGPUBCERR/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGPUBCERRONsysadm.PSAPMSGPUBCERR (PUBNODE,
   CHNLNAME,
   PUBID,
   SUBNODE,
   IB_SEGMENTINDEX,
   ERRORTIMESTAMP,
   SEQNO)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGPUBCERRP/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGPUBCERRPONsysadm.PSAPMSGPUBCERRP (PUBNODE,
   CHNLNAME,
   PUBID,
   SUBNODE,
   IB_SEGMENTINDEX,
   ERRORTIMESTAMP,
   SEQNO,
   PARM_SEQ)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGPUBCON/DROPINDEXSYSADM.PSAPSAPMSGPUBCON/DROPINDEXSYSADM.PSBPSAPMSGPUBCON/DROPINDEXSYSADM.PSCPSAPMSGPUBCON/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGPUBCONONsysadm.PSAPMSGPUBCON (PUBNODE,
   CHNLNAME,
   PUBID,
   SUBNODE,
   IB_SEGMENTINDEX)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSAPSAPMSGPUBCONONsysadm.PSAPMSGPUBCON (CHNLNAME)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSBPSAPMSGPUBCONONsysadm.PSAPMSGPUBCON (CHNLNAME,
   LASTUPDDTTM)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSCPSAPMSGPUBCONONsysadm.PSAPMSGPUBCON (CHNLNAME,
   PUBCONSTATUS,
   PUBLISHTIMESTAMP,
   PUBID,
   SUBCHANNEL,
   SUBNODE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGPUBDATA/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGPUBDATAONsysadm.PSAPMSGPUBDATA (PUBNODE,
   CHNLNAME,
   PUBID,
   SEGMENTNO,
   SUBSEGMENTNO,
   DATASEQNO)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGPUBERR/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGPUBERRONsysadm.PSAPMSGPUBERR (PUBNODE,
   CHNLNAME,
   PUBID,
   ERRORTIMESTAMP,
   SEQNO)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGPUBERRP/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGPUBERRPONsysadm.PSAPMSGPUBERRP (PUBNODE,
   CHNLNAME,
   PUBID,
   ERRORTIMESTAMP,
   SEQNO,
   PARM_SEQ)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGPUBHDR/DROPINDEXSYSADM.PSAPSAPMSGPUBHDR/DROPINDEXSYSADM.PSBPSAPMSGPUBHDR/DROPINDEXSYSADM.PSCPSAPMSGPUBHDR/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGPUBHDRONsysadm.PSAPMSGPUBHDR (PUBNODE,
   CHNLNAME,
   PUBID,
   EXTERNALMESSAGEID)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSAPSAPMSGPUBHDRONsysadm.PSAPMSGPUBHDR (CHNLNAME)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSBPSAPMSGPUBHDRONsysadm.PSAPMSGPUBHDR (CHNLNAME,
   LASTUPDDTTM)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSCPSAPMSGPUBHDRONsysadm.PSAPMSGPUBHDR (CHNLNAME,
   PUBSTATUS,
   PUBLISHTIMESTAMP,
   PUBID,
   SUBCHANNEL)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGSCONDATA/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGSCONDATAONsysadm.PSAPMSGSCONDATA (PUBNODE,
   CHNLNAME,
   PUBID,
   MSGNAME,
   SEGMENTNO,
   SUBSEGMENTNO,
   DATASEQNO)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGSUBCERR/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGSUBCERRONsysadm.PSAPMSGSUBCERR (PUBNODE,
   CHNLNAME,
   PUBID,
   MSGNAME,
   SUBNAME,
   IB_SEGMENTINDEX,
   ERRORTIMESTAMP,
   SEQNO)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGSUBCERRP/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGSUBCERRPONsysadm.PSAPMSGSUBCERRP (PUBNODE,
   CHNLNAME,
   PUBID,
   MSGNAME,
   SUBNAME,
   IB_SEGMENTINDEX,
   ERRORTIMESTAMP,
   SEQNO,
   PARM_SEQ)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSAPMSGSUBCON/DROPINDEXSYSADM.PSAPSAPMSGSUBCON/DROPINDEXSYSADM.PSBPSAPMSGSUBCON/DROPINDEXSYSADM.PSCPSAPMSGSUBCON/CREATEUNIQUEINDEXSYSADM.PS_PSAPMSGSUBCONONsysadm.PSAPMSGSUBCON (PUBNODE,
   CHNLNAME,
   PUBID,
   MSGNAME,
   SUBNAME,
   IB_SEGMENTINDEX)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSAPSAPMSGSUBCONONsysadm.PSAPMSGSUBCON (CHNLNAME)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSBPSAPMSGSUBCONONsysadm.PSAPMSGSUBCON (CHNLNAME,
   LASTUPDDTTM)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSCPSAPMSGSUBCONONsysadm.PSAPMSGSUBCON (CHNLNAME,
   SUBCONSTATUS,
   PUBLISHTIMESTAMP,
   PUBID,
   SUBCHANNEL,
   SUBNAME)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSIBLOGDATA/CREATEUNIQUEINDEXSYSADM.PS_PSIBLOGDATAONsysadm.PSIBLOGDATA (ORIGPUBNODE,
   CHNLNAME,
   GUID,
   MSGNAME,
   APMSGVER,
   DATASEQNO,
   LOGTYPE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSIBLOGDATAARCH/CREATEUNIQUEINDEXSYSADM.PS_PSIBLOGDATAARCHONsysadm.PSIBLOGDATAARCH
 (ORIGPUBNODE,
   CHNLNAME,
   GUID,
   MSGNAME,
   APMSGVER,
   DATASEQNO,
   LOGTYPE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSIBLOGERR/CREATEUNIQUEINDEXSYSADM.PS_PSIBLOGERRONsysadm.PSIBLOGERR (ORIGPUBNODE,
   CHNLNAME,
   GUID,
   ERRORTIMESTAMP,
   SEQNO)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSIBLOGERRP/CREATEUNIQUEINDEXSYSADM.PS_PSIBLOGERRPONsysadm.PSIBLOGERRP (ORIGPUBNODE,
   CHNLNAME,
   GUID,
   ERRORTIMESTAMP,
   SEQNO,
   PARM_SEQ)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSIBLOGHDR/CREATEUNIQUEINDEXSYSADM.PS_PSIBLOGHDRONsysadm.PSIBLOGHDR (ORIGPUBNODE,
   CHNLNAME,
   GUID,
   MSGNAME,
   APMSGVER,
   TRXTYPE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSIBLOGHDRARCH/CREATEUNIQUEINDEXSYSADM.PS_PSIBLOGHDRARCHONsysadm.PSIBLOGHDRARCH (ORIGPUBNODE,
   CHNLNAME,
   GUID,
   MSGNAME,
   APMSGVER,
   TRXTYPE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSPRCSCHLDINFO/CREATEUNIQUEINDEXSYSADM.PS_PSPRCSCHLDINFOONsysadm.PSPRCSCHLDINFO
 (PRCSINSTANCE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSPRCSPARMS/CREATEUNIQUEINDEXSYSADM.PS_PSPRCSPARMSONsysadm.PSPRCSPARMS (PRCSINSTANCE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSPRCSQUE/DROPINDEXSYSADM.PSAPSPRCSQUE/DROPINDEXSYSADM.PSBPSPRCSQUE/DROPINDEXSYSADM.PSCPSPRCSQUE/DROPINDEXSYSADM.PSDPSPRCSQUE/DROPINDEXSYSADM.PSEPSPRCSQUE/CREATEUNIQUEINDEXSYSADM.PS_PSPRCSQUEONsysadm.PSPRCSQUE (PRCSINSTANCE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSAPSPRCSQUEONsysadm.PSPRCSQUE (SERVERNAMERQST,
   SERVERNAMERUN,
   OPSYS,
   RUNSTATUS)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSBPSPRCSQUEONsysadm.PSPRCSQUE (SERVERNAMERUN,
   PRCSINSTANCE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSCPSPRCSQUEONsysadm.PSPRCSQUE (PRCSINSTANCE,
   SESSIONIDNUM,
   OPRID)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSDPSPRCSQUEONsysadm.PSPRCSQUE (MAINJOBINSTANCE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSEPSPRCSQUEONsysadm.PSPRCSQUE (RECURORIGPRCSINST,
   RECURNAME,
   INITIATEDNEXT)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSPRCSRQST/DROPINDEXSYSADM.PSAPSPRCSRQST/DROPINDEXSYSADM.PSBPSPRCSRQST/DROPINDEXSYSADM.PSCPSPRCSRQST/CREATEUNIQUEINDEXSYSADM.PS_PSPRCSRQSTONsysadm.PSPRCSRQST (PRCSINSTANCE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSAPSPRCSRQSTONsysadm.PSPRCSRQST (JOBINSTANCE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSBPSPRCSRQSTONsysadm.PSPRCSRQST (OPRID,
   RQSTDTTM,
   PRCSTYPE,
   PRCSJOBSEQ)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/CREATEINDEXSYSADM.PSCPSPRCSRQSTONsysadm.PSPRCSRQST (MAINJOBINSTANCE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSPRCSRQSTFILE/CREATEUNIQUEINDEXSYSADM.PS_PSPRCSRQSTFILEONsysadm.PSPRCSRQSTFILE (PRCSINSTANCE,
   SEQNUM)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSPRCSRQSTMETA/CREATEUNIQUEINDEXSYSADM.PS_PSPRCSRQSTMETAONsysadm.PSPRCSRQSTMETA (PRCSINSTANCE,
   METAPARM)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSPRCSRQSTSTRNG/CREATEUNIQUEINDEXSYSADM.PS_PSPRCSRQSTSTRNGONsysadm.PSPRCSRQSTSTRNG
 (PRCSINSTANCE,
   RQSTSTRINGTYPE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PSAPSPRCSRQSTTEXT/CREATEUNIQUEINDEXSYSADM.PSAPSPRCSRQSTTEXTONsysadm.PSPRCSRQSTTEXT (PRCSINSTANCE,
   RQSTTEXTTYPE)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSPRCSRQSTTIME/CREATEUNIQUEINDEXSYSADM.PS_PSPRCSRQSTTIMEONsysadm.PSPRCSRQSTTIME (PRCSINSTANCE,
   SEQNUM)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSPRCSRQSTXFER/CREATEUNIQUEINDEXSYSADM.PS_PSPRCSRQSTXFERONsysadm.PSPRCSRQSTXFER (PRCSINSTANCE,
   KEYNAME)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSRF_FINFO_TBL/CREATEUNIQUEINDEXSYSADM.PS_PSRF_FINFO_TBLONsysadm.PSRF_FINFO_TBL
 (PSRF_FOLDER_ID)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSRF_RATTR_TBL/CREATEUNIQUEINDEXSYSADM.PS_PSRF_RATTR_TBLONsysadm.PSRF_RATTR_TBL
 (PSRF_REPORT_ID,
   PSRF_ATTRIBUT_NAME)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSRF_RINFO_TBL/CREATEUNIQUEINDEXSYSADM.PS_PSRF_RINFO_TBLONsysadm.PSRF_RINFO_TBL
 (PSRF_REPORT_ID)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/DROPINDEXSYSADM.PS_PSRF_RSCRTY_TBL/CREATEUNIQUEINDEXSYSADM.PS_PSRF_RSCRTY_TBLONsysadm.PSRF_RSCRTY_TBL (USERID,
   PSRF_REPORT_ID)TABLESPACEPSINDEXSTORAGE(INITIAL40000NEXT100000MAXEXTENTSUNLIMITEDPCTINCREASE0)PCTFREE10/COMMIT/analyzeindexsysadm.PS_CDM_AUTH	 estimate statistics ;
analyzeindexsysadm.PSACDM_AUTH        estimate statistics ;
analyzeindexsysadm.PS_CDM_FILE_LIST   estimate statistics ;
analyzeindexsysadm.PS_CDM_LIST        estimate statistics ;
analyzeindexsysadm.PSACDM_LIST        estimate statistics ;
analyzeindexsysadm.PS_CDM_LIST_ARCH   estimate statistics ;
analyzeindexsysadm.PS_CDM_TEXT        estimate statistics ;
analyzeindexsysadm.PS_CDM_TRANSFER    estimate statistics ;
analyzeindexsysadm.PS_CDM_TRNFR_RJCT  estimate statistics ;
analyzeindexsysadm.PS_MESSAGE_LOG     estimate statistics ;
analyzeindexsysadm.PS_MESSAGE_LOGPARM estimate statistics ;
analyzeindexsysadm.PS_PRCSRQSTDIST    estimate statistics ;
analyzeindexsysadm.PS_PRCSRQSTNOTIFY  estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGARCHPC   estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGARCHPD   estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGARCHPH   estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGARCHPT   estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGARCHSC   estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGARCHST   estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGPCONDATA estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGPUBCERR  estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGPUBCERRP estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGPUBCON   estimate statistics ;
analyzeindexsysadm.PSAPSAPMSGPUBCON   estimate statistics ;
analyzeindexsysadm.PSBPSAPMSGPUBCON   estimate statistics ;
analyzeindexsysadm.PSCPSAPMSGPUBCON   estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGPUBDATA  estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGPUBERR	 estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGPUBERRP  estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGPUBHDR   estimate statistics ;
analyzeindexsysadm.PSAPSAPMSGPUBHDR   estimate statistics ;
analyzeindexsysadm.PSBPSAPMSGPUBHDR   estimate statistics ;
analyzeindexsysadm.PSCPSAPMSGPUBHDR   estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGSCONDATA estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGSUBCERR  estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGSUBCERRP estimate statistics ;
analyzeindexsysadm.PS_PSAPMSGSUBCON   estimate statistics ;
analyzeindexsysadm.PSAPSAPMSGSUBCON   estimate statistics ;
analyzeindexsysadm.PSBPSAPMSGSUBCON   estimate statistics ;
analyzeindexsysadm.PSCPSAPMSGSUBCON   estimate statistics ;
analyzeindexsysadm.PS_PSIBLOGDATA     estimate statistics ;
analyzeindexsysadm.PS_PSIBLOGDATAARCH estimate statistics ;
analyzeindexsysadm.PS_PSIBLOGERR      estimate statistics ;
analyzeindexsysadm.PS_PSIBLOGERRP     estimate statistics ;
analyzeindexsysadm.PS_PSIBLOGHDR      estimate statistics ;
analyzeindexsysadm.PS_PSIBLOGHDRARCH  estimate statistics ;
analyzeindexsysadm.PS_PSPRCSCHLDINFO  estimate statistics ;
analyzeindexsysadm.PS_PSPRCSPARMS     estimate statistics ;
analyzeindexsysadm.PS_PSPRCSQUE       estimate statistics ;
analyzeindexsysadm.PSAPSPRCSQUE       estimate statistics ;
analyzeindexsysadm.PSBPSPRCSQUE       estimate statistics ;
analyzeindexsysadm.PSCPSPRCSQUE       estimate statistics ;
analyzeindexsysadm.PSDPSPRCSQUE       estimate statistics ;
analyzeindexsysadm.PSEPSPRCSQUE       estimate statistics ;
analyzeindexsysadm.PS_PSPRCSRQST      estimate statistics ;
analyzeindexsysadm.PSAPSPRCSRQST      estimate statistics ;
analyzeindexsysadm.PSBPSPRCSRQST      estimate statistics ;
analyzeindexsysadm.PSCPSPRCSRQST      estimate statistics ;
analyzeindexsysadm.PS_PSPRCSRQSTFILE  estimate statistics ;
analyzeindexsysadm.PS_PSPRCSRQSTMETA  estimate statistics ;
analyzeindexsysadm.PS_PSPRCSRQSTSTRNG estimate statistics ;
analyzeindexsysadm.PSAPSPRCSRQSTTEXT  estimate statistics ;
analyzeindexsysadm.PS_PSPRCSRQSTTIME  estimate statistics ;
analyzeindexsysadm.PS_PSPRCSRQSTXFER  estimate statistics ;
analyzeindexsysadm.PS_PSRF_FINFO_TBL  estimate statistics ;
analyzeindexsysadm.PS_PSRF_RATTR_TBL  estimate statistics ;
analyzeindexsysadm.PS_PSRF_RINFO_TBL  estimate statistics ;
analyzeindexsysadm.PS_PSRF_RSCRTY_TBL estimate statistics ;
 | 
III. Partie PeopleSoft
		
		III-1. Application Server
			
			
			
			Cette partie va server à configurer la connexion entre le serveur Web (et donc les utilisateurs ) à la base de données. 
			Pour la mise en œuvre, il va nous falloir créer un domaine APPSERV. 
			Pour la création du domaine PSAPPSRV, il faut lancer psadmin avec comme répertoire courant $PS_HOME/appserv 
			Et renseigner les paramètres suivants :
			-	Nom du domaine 
			-	Modèle de configuration ( ici nous prendrons le Template Developper qui est à modifier par la suite à la main et à reconfigurer ) 
			
			
| 
Command toexecute (1-4, q) :2Please enternameofdomaintocreate:TEST
Configuration templates:1) developer2) large3) medium4) smallSelectconfig templatenumber:1Creating domain...
Copying application server configuration files...Usingubx template developer.ubx...
Copying Jolt repositoryfile...
Copying Java Query client files...
Domain created.
Would youliketoconfigure this domain now? (y/n)[y]:
Quick-configure menu 
      Features                      Settings====================1) Pub/Sub Servers   : No13) DBNAME     :[TEST]2) Quick Server      : No14) DBTYPE     :[ORACLE]3) Query Servers     : No15) UserId     :[QEDMO]4) Jolt              : Yes16) UserPswd   :[QEDMO]5) Jolt Relay        : No17) DomainID   :[TESTSERV]6) PC Debugger       : Yes18) AddToPATH  :[C:\Apps\DB\MSSQL\Binn]7) Event Notification: Yes19) ConnectID  :[people]8) MCF Servers       : No20) ConnectPswd:[peop1e]9) Perf Collator     : No21) ServerName :[]10) Analytic Servers  : No22) WSL Port   :[7000]23) JSL Port   :[9000]24) JRAD Port  :[9100]Actions=========11) Load configasshown12) Custom configuration
  h) Helpforthis menu
  q)Returntoprevious menuHINT:Enter13toedit DBNAME,then11toload
Enter selection (1-24, h,orq):11Loading validationtable...
  setting DBName=TEST
  setting DBType=ORACLE
  setting UserId=QEDMO
  setting UserPswd=QEDMO
  setting ConnectId=people
  setting ConnectPswd=peop1e
  setting ServerName=setting Port=7000setting Port=9000setting Listener Port=9100setting Domain ID=TESTSERV
  settingAddtoPATH=C:\Apps\DB\MSSQL\BinnNewCFGfilewrittenwithmodified Startup parametersLogDirectoryentrynotfoundinconfigurationfile.
SettingLogDirectorytothedefault...[PS_SERVDIR/LOGS]Spawning disabledforserver PSAPPSRV.
Configurationfilesuccessfully created.
CFG setting changes completed, loading configuration...
Domain configuration complete.
 | 
			Il est possible d'automatiser cela en créant le domaine en ligne de commande :
			
| 
sproerp07-psoft84:/psoftsp1/appserv>psadmin-ccreate-d TEST-t developer
Creating domain...
Copying application server configuration files...Usingubx template developer.ubx...
Copying Jolt repositoryfile...
Copying Java Query client files...
Domain created.
 | 
			Ce qui à pour but de créer un répertoire dans $PS_HOME/appserv du nom du domaine, en l'occurrence TEST et d'y mettre les fichiers suivants :		
			
			
| 
sproerp07-psoft84:/psoftsp1/appserv/TEST>ls-ltr
total1456-rw-r-rw-r-rw-r-rw-r-rw-r-rw-r-rw-r-rw-r-rw-r-rw-r
drwxr-xr-x2psoft84dba256Feb2016:06LOGS-rw-r
 | 
			Le fichier principale ou s'effectue les modifications est psappsrv.cfg. Le fichier binaire issu de la reconfiguration de ce domaine est PSTUXCFG.
			Ensuite après avoir créé le domaine, il va nous falloir le configurer, cette étape en mode interactive,  
 			 4) Configure this domain
			Peux également être automatisé via une ligne de commande 
			
| 
sproerp07-psoft84:/psoftsp1/appserv>psadmin-c configure-d TEST
Loading UBBGEN configuration utility ...
Loading validationtable...LogDirectoryentrynotfoundinconfigurationfile.
SettingLogDirectorytothedefault...[PS_SERVDIR/LOGS]Spawning disabledforserver PSAPPSRV.
Configurationfilesuccessfully created.
Loadingnewconfiguration...
 | 
			Si nous modifions une valeur dans le fichier de configuration, il nous faut reconfigurer le domaine. Un autre PSTUXCFG sera donc généré. 
			La reconfiguration se fait ainsi de la même manière que la configuration.
			Le paramètre -c nous indique qu'il s'agit des Application server ( il est à -p pour les process Schedulers ) . La valeur après -d permet d'indiquer le domaine.
			Pour pouvoir accès à l'aide sur psadmin il suffit de taper :
			
			
			Ensuite il suffit de démarrer les application server.
			
			
			Une autre méthode consiste à se connecter en mode 3 tiers, en renseignant dans le configuration manager :
			-	Nom du domaine : TEST 
			-	IP ou Nom du server : 127.0.0.1
			-	Port du WSL (Workstation listener) 
			Si la connexion fonctionne, c'est que l'application server est bien configurée et démarrée.
			
			
		
		
		III-2. Process Scheduler
			
			
			La configuration des process schéduler se fait également grâce à PSADMIN en fournissant les informations suivantes :
			-	Base de données accédée.
			-	Informations de connexions et Templates 
			Tout comme les Applications servers, il y a un certain nombre de fichiers qui sont crées.
			Mais dans le répertoire suivant : PS_HOME/appserv/prcs/DOMAINE
			-	psprcs.cfg
			-	psprcsrv.ubx
			-	psprcsrv.ubb
			-	psprcsrv.env
			Ici également il existe un fichier binaire PSTUXCFG qui est généré lorsque de la configuration ou de la reconfiguration des process scheduler, qui s'effectue aisément en ligne de commande :
			
			
| 
sproerp07-psoft84:/psoftsp1/appserv>psadmin-p configure-d TEST
Unabletoopenvalidationfile! DataentrywillNOTbe validated!
Spawning enabledforserver PSDSTSRV.
Configurationfilesuccessfully created.
CFG setting changes completed, loading configuration...
Process Scheduler Server configuration complete.
 | 
			Attention à ne pas lancer cette configuration lorsque les PRCS sont en marche :
			Sinon vous risquez d'avoir une erreur TUXEDO :
			
			
| 
CMDTUX_CAT:883: ERROR: tmloadcf cannotrunonan active node==============ERROR!================Unabletoload the configuration!Checkthe TUXEDOlogfordetails.==============ERROR!================
 | 
			Pensez donc à arrêter votre environnement :
			
			
| 
sproerp07-psoft84:/psoftsp1/appserv>psadmin-p stop-d TEST
Shutting downalladminandserver processesin/psoftsp1/appserv/prcs/PRGPRD/PSTUXCFG
Shutting down server processes ...
        Server Id=1GroupId=MONITOR Machine=sproerp07:   shutdown succeeded
        Server Id=101GroupId=BASE Machine=sproerp07:    shutdown succeeded
        Server Id=103GroupId=BASE Machine=sproerp07:    shutdown succeeded
        Server Id=102GroupId=BASE Machine=sproerp07:    shutdown succeeded
Shutting down admin processes ...
        Server Id=0GroupId=sproerp07 Machine=sproerp07: shutdown succeeded5processes stopped.
 | 
			Une des grandes forces de PeopleSoft est d'avoir une base de donnée qui stocke énormément d'informations, sauf pour les SQR et les Crystal Reports. 
			Pensez donc à mettre à jour également le répertoire des SQR et des crystaux (uniquement sur NT).
			Le plus simple étant d'ajouter ces répertoires lors de la sauvegarde Oracle afin d'être sur de les restaurer en même temps que la base.
			Les sources SQR sont stockés dans le chemin PSSQR1 de la section [SQR] dans le psprcs.cfg :
			
			
| 
[SQR];=========================================================================; SettingsforSQR Software
;=========================================================================SQRBIN=%PS_HOME%/bin/sqr/%PS_DB%/bin
PSSQRFLAGS=-ZIF%PS_HOME%/sqr/pssqr%LANGUAGECD%.unx
PrintLog=N
Enhanced HTML=N
PSSQR1=%PS_HOME%/PRGPRD/sqr
PSSQR2=PSSQR3=PSSQR4=
 | 
			Quand aux crystaux, le chemin est celui définit par la variable :
			
			
| 
CRWRPTPATH=%PS_HOME%\PREPRD\CRW\
 | 
			Si vous utilisez des REMOTE COBOL, il faut également s'assurer de la variable : CBLBIN.
			
				
	
	
	IV. WebServer
		
		IV-1. Création automatique
			
			
			Ici nous allons créer le point d'entrée de l'application. Afin d'avoir une URL ou les utilisateurs vont pouvoir se connecter.
			Ici comme notre configuration inclus un serveur web IBM : Websphere. 
			Les répertoires vont être crées dans :
			
			
| 
$PS_HOME/webserv/serveurNode_serveurNode_SERVERNAME/peoplesoft.ear/PORTAL/WEB-INF/psftdocs
 | 
			et dans :
			
			
| 
$PS_HOME/webserv/serveurNode_serveurNode_SERVERNAME/peoplesoft.ear/PORTAL/
 | 
			serveur: doit être remplacé par le nom du serveur.
			SERVERNAME : doit être remplacé par le nom du node que l'on a crée lors de l'installation de PeopleSoft.
			Voici l'écran d'accueil :
			
			
			
			
			
			Renseignez le $PS_HOME : 
			
			
			
			
			Choisir le serveur Web d'installer :
			
			
			
			
			Il s'agit de la variable : $WEB_HOME/AppServer
			
			
			
			
			Puis il ne reste plus qu'à se laisser guider : 
			-	Nom du domaine 
			-	Lieu  des reports 
			L'interface graphique peut être assez lourde à charger et assez lente. 
			Une autre solution consiste à lancer cet utilitaire mais en mode console :
			
| 
/psoftsp1/setup/mpinternet>./setup.aix-console
InstallShield Wizard
Initializing InstallShield Wizard...
SearchingforJava(tm) Virtual Machine...
............
Welcometothe InstallShield WizardforPeopleSoft Internet Architecture.Usingthe InstallShield Wizard you will install PeopleSoft Internet
Architectureonyour computer.Version:8.46.06Note:Ifinstalling onto a BEA WebLogic Server, make suretoshutdownanyrunning web serverstoavoid web server corruption.SelectNexttocontinueorCanceltoexit.
Press1forNext,3toCancelor4toRedisplay[1]
 | 
			Puis se laisser guider en répondant aux diverses questions.
			Un arrêt et redémarrage du webserver est obligatoire :
			
| 
cd $WEB_HOME/AppServer/bin
./stopServer.sh SERVERNAME 
./startServer.sh  SERVERNAME
 | 
IV-2. Création Manuelle
			
			
			Lorsque l'on est assez à l'aise avec les webserver on peut envisager une création à "la main" des domaines WEBSERV.
			Il suffit de copier un répertoire existant dans les  répertoires suivants : 
			
			
| 
$PS_HOME/webserv/serveurNode_serveurNode_SERVERNAME/peoplesoft.ear/PORTAL/
 | 
			Puis de modifier les fichiers signon.html :
			La ligne suivante : 
			
			
| 
<meta HTTP-EQUIV='Refresh'CONTENT='1; URL=../psp/NOM_DOMAINE/?cmd=login'>
 | 
			et dans :
			
			
| 
$PS_HOME/webserv/serveurNode_serveurNode_SERVERNAME/peoplesoft.ear/PORTAL/WEB-INF/psftdocs
 | 
			Configuration.properties :
			
			
			
			Ici on fait référence à l'host et au port du JSL. Il s'agit de faire la connexion entre le webserver et le serveur d'application.
			Puis un arrêt - redémarrage du serveur Web est nécessaire.
			Exemple de création :
			
			
| 
$>cd $PS_HOME/webserv/serveurNode_serveurNode_SERVERNAME/peoplesoft.ear/PORTAL/$>cp-r PROD PRGPRD
$>cd PRGPRD
$>vi signon.html
Et Modifier la ligne<meta HTTP-EQUIV='Refresh'CONTENT='1; URL=../psp/PRGPRD/?cmd=login'>$>cd $PS_HOME/webserv/serveurNode_serveurNode_SERVERNAME/peoplesoft.ear/PORTAL/WEB-INF/psftdocs
$>cp-r PROD PRGPRD
$>cd PRGPRD
$>vi configuration.properties
Et Modifier la ligne 
psserver=serveur:port
 | 


		Ce document est issu de http://www.developpez.com et reste la propriété exclusive de son auteur.
		La copie, modification et/ou distribution par quelque moyen que ce soit est soumise à l'obtention préalable de l'autorisation de l'auteur.