Showing posts with label PeopleSoft General. Show all posts
Showing posts with label PeopleSoft General. Show all posts

Saturday, August 20, 2022

Elastic Search and Security Around It !

 Elastic Search is now widely used in PeopleSoft and especially with organisations wanting to implement Kibana Analytics.

Just trying to pen down some basic understanding in this article in the most lucid language.

Terms Involved:-

Search Definition -  Define the data that the end users can run their searches against. 

Search Category - Organizing search definitions in manageable, logical group of data. Search Queries run against search categories and not search defnitions. Search definitions should be a member of a Search Category.

Search Groups - Search group are those search categroes that have a Search Group check box checked. This is done when search categories are created. This check box is on the Search Catogories page.

Peopletools- Search Framework - Designer - Search Category

Why do we have this setting  Search Group?

This is used when we decide who should be allowed to search on which category. 

All employees may not get the right to search Job Data, it will go only to the power users.

So to achieve this we have to configure permission lists. When you create a permission list there is a tab Search Group. Here we add all the necessary groups. We add this permission list to a role.

So all the users who have the role will get the rights to search on those specific search groups included in the Permission List.

Eg. 

Permission List - PL_rch_job_data has permission to to HC_HR_JOB_DATA search group. PL_srch_job_data is attached to RL_srch_job_Data. 

All users that have the role RL_Srch_job_data will be able to search job data.

Finally below 5 steps to enable elastic search for any user - 

1 - Create connected Query / PS Query

2 - Create Search Definition Search add query from step 1 above.

3 - Create Search Category - ( check if this category is search group). Search category can have more than one Search Definitions.

4. Create a Permission List - Search Group created in step 4 will be available to be added to permission list.

5 - Add Permission List to the Role and Assign the role to the appropriate users.  

You Tube link to a informative Video.

https://www.youtube.com/watch?v=xQuDOo3EvO4


Sunday, May 29, 2022

Ren Server configurations

Follow the below steps to configure complete new set up for Ren Server.

Step 1 - Stop web domain, application domain and process scheduler

Step 2 - delete existing configuration from the below tables.

PSREN

PSMCFRENURLID

PSRENCLUSTER

PSRENCLUS_OWNER

Step 3 - Open psappsrv.cfg and in the Ren Server section make the below changes.

default_http_port=7180

default_https_port=7143

default_auth_token=abc.xyz.com

Step 4 - from Application Domain directory open psrenconfig.txt

set address <ip address >

set hostname <uat1win19>

Step 5 -  Boot the web domain , application domain

Step 6 - Navigate to Ren Server Cluster page

PeopleTools - REN Server Configuration - REN Server Cluster Page

Step 7 - Configure ren server cluster url with the name given in the renconfig.txt 

               http://uat1win19:7180

Step 8 - Configurate ren sever Browser URL - (Load balanced)

              http://npuat1win19.abc.xyz.com:443

Step 9 - Authentication Domain 

              abc.xyz.com

Step 10 - Stop all the Application Domain/Web Domain/ Process Scheduler 

Step 11 - Clear all the cache from Appliction domian/ Web Domain (site) , Process Scheduler

Step 12 - Clear browser cache from all the browser that are being used. 

Step 13 - Boot all the appropriate domains.

--------------------------------------------------------------------------------------------------------------

If you do not follow the above sequence you could likely end up with the below error.

Ren Server Definition Errors with 'The page at xxxx psren' was loaded over HTTPS, but requested an insecure frame (http) 

 PS- Steps 5, 10 , 11 , 12 play an important role. 

Friday, April 24, 2020

PeopleSoft - Force Logon Page User Id to UpperCase

Introduction 
Many times its observed that the login id for PeopleSoft Applications are in upper case , but the users enter their ids in lower case and are confronted with Invalid Userid or Password. So to overcome this , replace the below code in 

SIGNIN.HTML 

Look for input type as text. 

Replace the following string to force userid in upper case. You will see it change to upper case even though your caps lock in off.
replace the following string

Please add the "<"  and ">" before input and after class respectively.

input type="text" id="userid" name="userid"
class="PSEDITBOX"

with

input type="text" id="userid" name="userid"
onKeyUp="event.returnValue = true; userid.value=userid.value.toUpperCase();"
class="PSEDITBOX"

replace the following string for accepting the password in upper case

input TYPE="password" id="pwd" name="pwd"
class="PSEDITBOX"

with

input TYPE="password" id="pwd" name="pwd"
onKeyUp="event.returnValue = true; pwd.value=pwd.value.toUpperCase();"
class="PSEDITBOX"


The above changes will result the Key Strokes to be conversion to UPPERCASE no matter CAPS Lock is ON. This will ONLY change it for the web signon NOT the client.

Saturday, May 11, 2019

Change ESAdmin Password - Elastic Search

Steps To Change Elasticsearch Password
1. Change directory to ES_HOME/bin
2. Run the following to change the password for esadmin user, enter ‘Y’ when prompted for password change. For the default user, “esadmin”, default password is “esadmin”:
elasticsearchuser.bat adduser esadmin
User Exists. Do you wish to change the password?(Y/N)Y
Enter your old password:
Enter new password:
Confirm new password:
Password for esadmin changed.
3. Run the following to change the password for people user, enter ‘Y’ when prompted for password change. For the default user, “people”, default password is “peop1e”:
elasticsearchuser.bat adduser people
User Exists. Do you wish to change the password?(Y/N)Y
Enter your old password:
Enter new password:
Confirm new password:
Password for people changed.
4. To add new users, follow Step 1, with new username and password. To add roles to these users, run the following:
elasticsearchuser.bat addrole user1
Enter password:
Enter comma seperated list of roles : admin,read,security
Roles added for user user1C

Wednesday, May 30, 2018

Check Windows service and start if down

@ECHO OFF
SET SName=%~1
 
SC QUERYEX "%SName%" | FIND "STATE" | FIND /v "RUNNING" > NUL && (
    ECHO %SName% is not running
    ECHO START %SvcName%
 
    NET START "%SName%" > NUL || (
        ECHO "%SName%" wont start
        EXIT /B 1
    )
    ECHO "%SName%" is started
    EXIT /B 0
) || (
    ECHO "%SName%" is running
    EXIT /B 0
)

Saturday, August 19, 2017

Elastic Search

           Many times we have seen clips of a kid / adult standing in a room and all sort of numbers , characters, equations revolving around him!!!! 

          Some may see it as a millions of thoughts and numbers going through the mind of the person and being able to understand all that or something “out of world” is going to happen..
  
For me .. being into the technology is just data  

Have we ever wonder with the advent of this inventions in technology world there is so much of data that is floating around that is being used for a variety of purposes?  Every time you tap your finger on a keyboard of any size/shape/material you are unleashing data.  

From out of this world say Mars to a trivial thing like booking an Uber to work. 

So, how do I search this data, so that I be optimally used for the benefit of every one.  That’s where elastic search comes into play.   ElasticSearch is spreading it’s wings very very fast .. and I am amazed with the ease with which it functions. 

So, what is Elastic Search 
It’s a opensource software that makes massive amounts of structured and unstructured data available for search, logging, analytics and more in mission critical systems and applications. 
ElasticSearch is based on LUCENE. LUCENE is an information retrieval software library. 

Before I dive into Elastic search , let me give you a few use case of how different corporates from different businesses use Elastic Search.  

So, let me start from the Mars 

NASA : uses the ELK stack (ElasticSearch, LogStash , Kibana)  
Nasa says the uses the ELK stack to log more than 30K messages and 100k 4 times everyday from Mars ROVER to optimize our space missions 

The Guardian uses it for marketing Insights , Business Development and to capture customer sentiments. 

Goldman Sachs/ Verizon use it for IT Operations, Application Management. Verizon’s Elastic Search works for over 500 million documents.

Facebook uses it for variety of things along with ElasticSearch’s Security Plugin. 

Ebay/ Github uses it for Website Search / Internal and Intranet Search and url searchs. Github everyone know .. every line of code that your search uses Elastic Search.  

Wikimedia – Full text searches are powered by Elastic Search

UBER – Information about your ride every 4 seconds is sent to Elastic search. This is used for get your details, drivers detail and used so that they can serve you better. 
 
 
 
I was exposed to Elastic Search when Oracle PeopleSoft started using it for searches with PeopleSoft Applications. As a PeopleSoft Administrator, Elastic Search lifted off from the me the burden of maintaining SES search.  Elastic Search is fast to install and so easy to implement and almost zero maintenance. 
 
PeopleSoft Search Framework integrates with Elasticsearch to allow for high availability, failover, and scalable search deployments for PeopleSoft users 
 
The searches implemented in SES can be easily built in ElasticSearch, just Undeploy  - Re-Deploy and Rebuilt. 
 
Taking control fo the logs can also be done with ElasticSearch 
 
 
Advantage of moving to Elastic Search 
  • Better crawl and search capabilities and performance 
  • Better resource utilization 
  • Easy to install and maintain 
More to come...

Wednesday, December 23, 2015

SSH KEYS Authetication with PuTTY and Linux

Step 1: Run / Open PuTTYgen.exe.

Step 2: Click on Generate button and move the mouser over blank space to generate key. Give a key passphrase.

Step 3: Save Public Key, Private Key

Step 4: Copy to key that you see, in a notepad

Step 5: Login to the Linux box with the user that you want to use.

Step 6: Do not change the directory and create a new directory
             mkdir .ssh
             chmod 700 .ssh
             cd .ssh
             vi authorized_keys2 (this is name to be used)
             Insert / Paste the key copied to the notepad in step 4 above. Ensure that it is one line. This is very important.
             Save and quit the authorized_keys2 file
             chmod 600 authorized_keys

Step 7: Start PAGEANT.exe from your putty software directory. You will see the in your syspanel.
             Your will see an icon the right hand bottom corner.

Step 8: Right click on the pageant icon and choose Add Key. Give the  private key

YOU ARE DONE!!!

Open putty: save an entry as username@servername and enjoy !1

Wednesday, June 25, 2014

SSL Configuration with GoDaddy

I already have a post for configuration of SSL .. but that was more to do with Verisign.

Very recently I configured one for GoDaddy. There is a slight change so putting it up...

Requesting and Importing SSL certificate for Integration Broker.

Requirement: Integration Broker URL needed to be SSL.

Why did we need the a New Certificate: We were using wildcard certificate. We cannot use it with PeopleSoft Integration broker. SSL Header gives the hostname which is not possible with a wildcard certificateS.

Steps taken:

1. Request for a new Certificate : Navigate to your PIA Domain's piabin directory (%PS_HOME%\webserv\peoplesoft\piabin
    pskeymanager.cmd -create
    Give appropriate values - important ones that matter
        alias : Generally the same name as the hostname on which PIA is installed.
        common name - the URL that you are going to use. eg. prdigw.mydomain.com
        encryption - 2048

2. Send the Generated CSR to the signing authority.

3. Importing the Certificate
    Once you receive a reply from the signing authority .. in this case GoDaddy follow the following steps.
    1. Get the root and intermediate certificate from GoDaddy
        to get this one does not need to download from godaddy.com, you will get it along with the certificate
        a. View the certificate - prdigw.crt (double click)
        b. Click on Certification Path to see three entries.
            1. Top one is the root certificate.
            2. Middle one is the intermediate.
            3. Last one is the actual certificate.
        c. Click on root certificate -> click on view certificate -> details tab -> copy to file
        d. Click on intermediate certificate -> click on view certificate -> details tab -> copy to file  
       
    2. Now you have the root , intermediate  and main certificate.
        a. Open an editor like ultra edit
        b. Save the blank one as combined.crt
        c. Now copy the three certificates one below the other in combined.crt in the sequence mentioned below
                1. prdigw.crt (main certificate)
                2. intermediate certificate
                3. root certificate  
   
    3. Copy the root certificate and combined.crt to piabin directory.
   
    4. pskeymanager -import  to import the root certificate first (you can give a meaning alias)
   
    5. pskeymanager -import to import the combined.crt ( hit enter for the alias as this should be the same as what you gave while creating the CSR)

    6. Login to console and navigate to
            Servers - PIA - Keystores
                    change Keystores to Custom Identity and Custom Trust
                    give passphrase (4 in all) and save
            Servers - PIA  - SSL
                    give the private alias: this is the one we gave while creating the CSR and importing the certificate (step 5 above)
                    give passphrase
                    Click on advanced and check the checkbox for Use JSSE SSL

    7. Bounce the necessary web servers/ application servers.

Thursday, November 28, 2013

Changing Weblogic Admin Console Password

[orapsoft@box1 bin]$ MW_HOME=/data/Oracle/product/11.1.2.2.0/ses/seshome;export MW_HOME

 DOMAIN_HOME=/data/Oracle/product/11.1.2.2.0/ses/seshome/search/base_domain;export DOMAIN_HOME

  ./stopWebLogic.sh

 mv /data/Oracle/product/11.1.2.2.0/ses/seshome/search/base_domain/servers/AdminServer/data /data/Oracle/product/11.1.2.2.0/ses/seshome/search/base_domain/servers/AdminServer/data_old

 ./setDomainEnv.sh

 cd $DOMAIN_HOME/security

 java weblogic.security.utils.AdminAccount epsys Password1
 failed with Error: Could not find or load main class weblogic.security.utils.AdminAccount

  java -cp /data/Oracle/product/11.1.2.2.0/ses/wlserver/server/lib/weblogic.jar:$CLASSPATH weblogic.security.utils.AdminAccount epsys Passw0rd .

cd /data/Oracle/product/11.1.2.2.0/ses/seshome/search/base_domain/servers/AdminServer/security

edited boot.properities
username=xyz
password=abc

cd $DOMAIN_HOME/bin and startweblogic.sh
 nohup ./startWebLogic.sh >/dev/null 2>&1 &

Tuesday, May 8, 2012

http-ping utility

HTTP-PING utility
(google .. to download)

http-ping.exe
very good utility to check urls.  I use to to check is ps gateway urls are up and ok , ps sites are up and working.


http-ping [-t] [-n count] [-i interval] [-f file-name] [-s] [-v]
          [-q] [-c] [-r] [-w timeout] [-p] [-d] [-o data | -of file-name] URL

Where:
    URL            The URL you wish to check. For example, http://www.kiva.org,
                   http://209.191.122.70, or http://www.yourhost:8080.
                   Be sure to surround an IPv6 address with square brackets. For
                   example, http://[2a00:1450:4007:800::1014].

Options:
    -t             Ping the specified URL until stopped.
                   To see statistics and continue - type Control-Break;
                   To stop - type Control-C.
    -n count       Send 'count' requests. Supercedes -t.
    -i interval    Wait 'interval' seconds between each request. There is a
                   1-second wait if this option is not specified.
    -f file-name   Save responses to file 'file-name'. Please specify the full
                   path, and use quotes around file names with spaces.
    -s             Silent. Print no output.
    -v             Verbose. Print detailed output. Supercedes -s.
    -q             Quick. Perform HTTP HEAD requests instead of GETs. This will
                   retrieve headers only, and bytes reported will be 0.
    -c             Perform a full connection on each request; ignore keep-alive.
    -r             Follow HTTP redirects.
    -w timeout     Wait 'timeout' seconds for a response before timing out.
                   Specify 0 to avoid timing out.
                   If not specified, the default timeout is 30 seconds.
    -p             Use the proxy defined in the Windows Internet settings.
    -d             Print the date and time of each ping attempt.
    -o data        Perform HTTP POSTs sending the given data. Please enclose
                   the data in quotes if it contains spaces.\n"
    -of file-name  Perform HTTP POSTs sending the contents of file 'file-name'.
                   Please specify the full path, and use quotes if the file name
                   contains spaces.

Tuesday, December 20, 2011

Xml Publisher setting

The XML publisher reports now seem to be working when using the template builder.

The problem seemed to be related to one of the solutions you sent me last week. Essentially all of the fields in the report need to be edited via the word properties - Add help text option so that the default fields in the form field help text window beginning with 'ref' are replaced with the actual field names. So for example:



Replaced with



Importantly the F and E fields which are at the start and end of all fields listed in a template that has repeating values need to be replaced as follows:

F field at the beginning:

replaced with

And

E field at the end:

Replaced with

This allows all of the values to be listed in a report table.

Monday, December 12, 2011

Peoplesoft on YouTube

PeopleSoft on YouTube

Search for PSFTOracle

Search for PeopleSoftTechnology
http://download.oracle.com/peopletools/viewlets.html

PeopleTools 8.52 is supporting PeopleSoft on iPAD, mobile Safari


You can find demo PeopleSoft Environments at the url below
www.connectnd.us

Tuesday, October 18, 2011

psmail to send mails

Pretty handy!!

C:\pshome\bin\server\winx86\psmail -TO"devendra.vaidya@myeemail.com" -FROM"PeopleSoft@peoplesoft.com" -SUBJECT"give your subject" -BODY"Give your body" -FILE"filename with path" >>D:\maillogs\mail1.log

Tuesday, October 11, 2011

Script to extract last 'n' number of lines from a text file

@echo off > newfile.TXT & setLocal enableDELAYedexpansion

set N=
for /f "tokens=* delims= " %%a in (C:\TEST.TXT) do (
set /a N+=1
)
set /a X=!N!-4
set N=

for /f "tokens=* delims= " %%a in (C:\TEST.TXT) do (
set /a N+=1
if !N! gtr !X! echo %%a >> newfile.TXT
)

Wednesday, October 5, 2011

Find status of Services From command line

Use sc query

FOR /F "tokens=4 delims= " %%A IN ('SC QUERY peoplesoft ^| FIND "STATE"') DO

Process Scheduler delays in kicking the process

Seen Process Scheduler kicking off a process after a while.

its worth have a look at Heartbeat
Heartbeat : The Process Server Agent needs to track server status-running, down, or suspended. Every time it checks the server status it updates the LAST_UPD_DTTM field in the PS_SERVERDEFN table with the current date and time of the database engine. This prevents the database from accepting more than one Process Server Agent with the same name on one or multiple servers.

If there are too many processes in Error or in No Success status, it somehow affects running App Engines Clear them and check it.

Wednesday, March 30, 2011

Integration Broker Queues

Integration Broker Queues

  • Publication Contracts

select queuename,statusstring,count(*) from psapmsgpubcon where trunc(createdttm) = trunc(sysdate) group by queuename,statusstring

  • Subsription Contracts

select queuename,statusstring,count(*) from psapmsgsubcon where trunc(createdttm) = trunc(sysdate) group by queuename,statusstring order by 1

For a date range.

  • Publication Contracts

select queuename,statusstring,count(*) from psapmsgpubcon where trunc(createdttm) between trunc(sysdate-

  • Subsription Contracts

select queuename,statusstring,count(*) from psapmsgsubcon where trunc(createdttm) between trunc(sysdate-

______________________________________________________________________________________________________________________

Domain Status

SELECT DOMAIN_STATUS INTO DSTAT FROM PSAPMSGDOMSTAT

______________________________________________________________________________________________________________________

Domain is active, but messages not being processed

For publication messages

SELECT IBTRANSACTIONID,QUEUENAME,CREATEDTTM,PUBLISHTIMESTAMP,STATUSSTRING ,

floor(((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60)/3600)

|| ' HOURS ' ||

floor((((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60) -

floor(((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60)/3600)*3600)/60)

|| ' MINUTES ' ||

round((((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60) -

floor(((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60)/3600)*3600 -

(floor((((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60) -

floor(((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60)/3600)*3600)/60)*60) ))

|| ' SECS ' time_difference

FROM PSAPMSGPUBCON

WHERE STATUSSTRING IN ('NEW','ERROR') AND trunc(createdttm) = trunc(sysdate) ORDER BY 4

For subscription messages

Looking at the above query and this query we can find out if the domain is active but still messages are not being proecessed.

SELECT IBTRANSACTIONID,QUEUENAME,CREATEDTTM,PUBLISHTIMESTAMP,STATUSSTRING ,

floor(((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60)/3600)

|| ' HOURS ' ||

floor((((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60) -

floor(((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60)/3600)*3600)/60)

|| ' MINUTES ' ||

round((((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60) -

floor(((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60)/3600)*3600 -

(floor((((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60) -

floor(((CREATEDTTM-PUBLISHTIMESTAMP)*24*60*60)/3600)*3600)/60)*60) ))

|| ' SECS ' time_difference

FROM PSAPMSGSUBCON

WHERE STATUSSTRING IN ('NEW','ERROR') AND trunc(createdttm) = trunc(sysdate) ORDER BY 4

Tuesday, March 15, 2011

Activate Domain Status

**** Be Sure that PUB/SUB processes are up and running before using this script ****
SET SERVEROUT ON;
SPOOL D:\APPS\MONITORDOMAIN\MONITORDOMAIN.LOG;
DECLARE

DSTAT VARCHAR2(1) := 'T';

BEGIN

BEGIN
SELECT DOMAIN_STATUS INTO DSTAT FROM PSAPMSGDOMSTAT WHERE DOMAIN_STATUS = 'I';
EXCEPTION
WHEN NO_DATA_FOUND THEN
DSTAT:='A';
WHEN TOO_MANY_ROWS THEN
DSTAT:='I';
END;
IF DSTAT ='I' THEN

UPDATE PSIBFAILOVER SET IB_FAILOVER_FLAG = 1;

UPDATE PSAPMSGDSPSTAT SET DSPSTATUS = 0 , STATUSSTRING = 'ACT' WHERE STATUSSTRING='INACT';

UPDATE PSAPMSGDOMSTAT SET DOMAIN_STATUS = 'A' WHERE DOMAIN_STATUS = 'I';

END IF;
DBMS_OUTPUT.PUT_LINE(DSTAT);

END;
/

SPOOL OFF;
EXIT;

Tuesday, July 27, 2010

Portal Strucure

Portal Structure

PSPRSMDEFN is a Portal Structure Definition table. A good example is to use this table to find portal path for a specific component.

PSPRSMPERM: Shows the permission lists that are assigned to a portal registry structure (content reference). The permission list name is under field PORTAL_PERMNAME.

Thursday, July 15, 2010

Pside Params

Pside parameters

HIDE

Use to hide the PeopleSoft Application Designer interface. Always use this parameter when performing a command line Copy process.

-CT

Source database type.

Enter the type of source database to which you are connecting (for example, ORACLE, SYBASE, and so on).

-CS

Source server name.

Enter the name of the source database server for the database to which you’re connecting.

-CD

Source database name.

Enter the name of the source database to which you're connecting, as you would enter it into the PeopleSoft Login dialog box.

-CO

Source user ID.

Enter the PeopleSoft user ID to use to sign in to the source database.

-CP

Source user password.

Enter the password for the specified user ID for source database.

-TS

Target server name.

Enter the name of the target database server for the database to which you’re connecting.

-TD

Target database name.

Enter the name of the target database to which you're connecting, as you would enter it into the PeopleSoft Login dialog box.

-TO

Target user ID.

Enter the PeopleSoft user ID to use to sign in to the target database.

-TP

Target user password.

Enter the password for the specified user ID for the target database.

-LF

Log file name.

Enter the name of the file in which error messages are logged during the command line Upgrade Copy process.

-PJC

Source project name.

Enter the name of the project that is to be copied from the source database to the target database. This project should be available in the source database before starting the command line Upgrade Copy process to target database.

-PJB

Project name.

Enter the name of the project to be built. This project should be available in the database before starting the command line project build.

-PJTF

Copy Project To File project name.

Enter the name of the project to be copied from the source database to the file.

-PJFF

Copy Project From File project name.

Enter the name of the project to be copied from the file into the source database.

-FP

Project file path.

Enter the path to the project for a Copy to File or Copy From File process.

-OVD

Override dependencies (0 or 1).

Enter 1 to override the checks for unapplied dependency incidents during the Copy From File process and to perform the copy even if the project's dependency incidents have not been applied to the source database.

-CL

Commit limit.

Enter the Commit limit (a number greater than 0) for the number of objects to be copied or compared before a commit is issued. Example: -CL 150

-AF

Audit flags on records (0 or 1).

Enter 1 to keep the target audit flags as is. Enter 0 to take them from the source database. Example: -AF 0

-DDL

Data definition language (DDL) on records and indexes (0 or 1).

Enter 1 to keep the target database DDL flags as is. Enter 0 to take them from the source database. Example: -DDL 0

-PPL

Portal registry structures permission list references.

Enter 1 to keep the target portal registry permission list references as is. Enter 0 to take them from the source database.

-EXP

Export project definition (0 or 1).

Enter 1 to export the project definition to the target database when using the Database Copy process. Not applicable for Copy Project to File process.

-OBJ

Object types to copy

List the object types as numbers with commas as delimiters. For example, if you choose records and indexes alone for copying, use the appropriate numbers for records and indexes from the Definition Type Selection table. For records, the number is 0, and for the indexes, the number is 1. Example: -OBJ 0,1

-RST

Reset done flags (0 or 1).

Enter 1 to reset the done flags before initiating the Copy process. Enter 0 to not reset them. Example: -RST 0

-OVW

Overwrite existing project (0 or 1). Enter 1 to overwrite any existing projects with the same name in the specified path during the Copy Project To File process, or in the database in the Copy Project From File process. Enter 0 to not overwrite existing projects. This applies to the Copy Project To and From File processes only.

-LNG

Copy languages.

List the language codes with commas as delimiters, or enter ALL to select all available languages. For new languages that are not listed in the Language Selection table, use the xlat short name from the LANGUAGE_CD field in the translate table. For example, if you choose English and Spanish for copying, enter the appropriate codes for English and Spanish from the Language Selection table. For English, the code is ENG, and for Spanish, the code is ESP. Example: -LNG ENG,ESP.

-CFD

Keep Target ChartField PageField Display Size.

(Number 1 or 0). This parameter indicates whether or not the target chartfield page field display size attributes are to be kept, or whether they should be set from source during copy. See Upgrade Options for more information.

Enter 1 to keep the target chartfield page field display size attributes.

Enter 0 to set these attributes from the source values.

-CFF

Keep Target ChartField Field Format.

(Number 1 or 0) This parameter indicates whether or not the target chartfield field format attributes are to be kept, or whether they should be set from the source during Copy. See Upgrade Options for more information.

Enter 1 to keep the target chartfield field format attributes.

Enter 0 to set these attributes from the source values.