Tuesday, March 13, 2018

End Dating Seeded Responsibilities

End dating seeded responsibilities that are not assigned to user, meaning no users are assigned to the responsibility

--Get List of responsibilities

SELECT fr.responsibility_id,
               fr.application_id,
               fr.data_group_application_id,
               fr.data_group_id,
               fr.menu_id,
               fr.web_host_name,
               fr.web_agent_name,
               fr.group_application_id,
               fr.request_group_id,
               fr.responsibility_key,
               frt.responsibility_name,
               frt.description,
               fr.start_date,
               fr.version
          FROM fnd_responsibility_tl frt, fnd_responsibility fr
         WHERE frt.responsibility_name in ('India Local Order Management')
               AND frt.language = 'US'
               AND fr.responsibility_id = frt.responsibility_id;
             
             
--Run Below API to end date responsibility

/* Responsibility End Date */
DECLARE
    CURSOR c1
    IS
        SELECT fr.responsibility_id,
               fr.application_id,
               fr.data_group_application_id,
               fr.data_group_id,
               fr.menu_id,
               fr.web_host_name,
               fr.web_agent_name,
               fr.group_application_id,
               fr.request_group_id,
               fr.responsibility_key,
               frt.responsibility_name,
               frt.description,
               fr.start_date,
               fr.version
          FROM fnd_responsibility_tl frt, fnd_responsibility fr
         WHERE     frt.responsibility_name IN
                       ('India Local Order Management')
               AND frt.language = 'US'
               AND fr.responsibility_id = frt.responsibility_id;
BEGIN
    FOR i IN c1
    LOOP
        BEGIN
            FND_RESPONSIBILITY_PKG.UPDATE_ROW (
                X_RESPONSIBILITY_ID           => i.responsibility_id,
                X_APPLICATION_ID              => i.application_id,
                X_WEB_HOST_NAME               => i.web_host_name,
                X_WEB_AGENT_NAME              => i.web_agent_name,
                X_DATA_GROUP_APPLICATION_ID   => i.data_group_application_id,
                X_DATA_GROUP_ID               => i.data_group_id,
                X_MENU_ID                     => i.menu_id,
                X_START_DATE                  => i.start_date,
                X_END_DATE                    => SYSDATE - 1,
                X_GROUP_APPLICATION_ID        => i.group_application_id,
                X_REQUEST_GROUP_ID            => i.request_group_id,
                X_VERSION                     => i.version,
                X_RESPONSIBILITY_KEY          => i.responsibility_key,
                X_RESPONSIBILITY_NAME         => i.responsibility_name,
                X_DESCRIPTION                 => i.description,
                X_LAST_UPDATE_DATE            => SYSDATE,
                X_LAST_UPDATED_BY             => -1,
                X_LAST_UPDATE_LOGIN           => 0);

            COMMIT;

            DBMS_OUTPUT.put_line (
                i.responsibility_name || ' has been updated !!!');
        EXCEPTION
            WHEN OTHERS
            THEN
                DBMS_OUTPUT.put_line ('Inner Exception: ' || SQLERRM);
        END;
    END LOOP;
EXCEPTION
    WHEN OTHERS
    THEN
        DBMS_OUTPUT.put_line ('Main Exception: ' || SQLERRM);
END;
/

Verify Below Documents and take decision based on usage of applications/modules in your Organization.
What Is The Impact Of Disabling Oracle Seeded Users? (Doc ID 418767.1)
Is it Safe To End Date Some Applications Users like GUEST (Doc ID 783428.1)
End Dating Seeded Responsibilities (Doc ID 390448.1)

Sunday, March 4, 2018

When Login to ODI 11g Studio Integrated With BI Apps 11.1.1.7.1 later "ODI-10199: Incorrect ODI username or password"


Following command used to generate new wallet on BI
Reference: (Doc ID 1913660.1)

[applbi3@bitest03 ~]$ /u01/oracle/Middleware/Oracle_BI1/common/bin/wlst.sh /u01/oracle/Middleware/Oracle_BI1/bifoundation/install/createJPSArtifactsODI.py embedded --ADMIN_USER_NAME weblogic --DOMAIN_HOSTNAME bitest03.plsa.com.sa --DOMAIN_PORT 7001 --DOMAIN_HOME_PATH /u01/oracle/Middleware/user_projects/domains/bifoundation_domain

CLASSPATH=/u01/oracle/Middleware/patch_wls1036/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/u01/oracle/Middleware/patch_ocp371/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/u01/oracle/jdk/lib/tools.jar:/u01/oracle/Middleware/wlserver_10.3/server/lib/weblogic_sp.jar:/u01/oracle/Middleware/wlserver_10.3/server/lib/weblogic.jar:/u01/oracle/Middleware/modules/features/weblogic.server.modules_10.3.6.0.jar:/u01/oracle/Middleware/wlserver_10.3/server/lib/webservices.jar:/u01/oracle/Middleware/modules/org.apache.ant_1.7.1/lib/ant-all.jar:/u01/oracle/Middleware/modules/net.sf.antcontrib_1.1.0.0_1-0b2/lib/ant-contrib.jar::/u01/oracle/Middleware/Oracle_BI1/common/wlst/lib/webcenter-admin-commands.jar:/u01/oracle/Middleware/Oracle_BI1/analytics-collector/archives/applications/analytics-collector-jee.jar:/u01/oracle/Middleware/Oracle_BI1/common/wlst/lib/webcenter-admin-commands.jar:/u01/oracle/Middleware/oracle_common/modules/oracle.jrf_11.1.1/jrf-wlstman.jar:/u01/oracle/Middleware/oracle_common/common/wlst/lib/adfscripting.jar:/u01/oracle/Middleware/oracle_common/common/wlst/lib/adf-share-mbeans-wlst.jar:/u01/oracle/Middleware/oracle_common/common/wlst/lib/mdswlst.jar:/u01/oracle/Middleware/oracle_common/common/wlst/resources/auditwlst.jar:/u01/oracle/Middleware/oracle_common/common/wlst/resources/igfwlsthelp.jar:/u01/oracle/Middleware/oracle_common/common/wlst/resources/jps-wlst.jar:/u01/oracle/Middleware/oracle_common/common/wlst/resources/jps-wls-trustprovider.jar:/u01/oracle/Middleware/oracle_common/common/wlst/resources/jrf-wlst.jar:/u01/oracle/Middleware/oracle_common/common/wlst/resources/oamap_help.jar:/u01/oracle/Middleware/oracle_common/common/wlst/resources/oamAuthnProvider.jar:/u01/oracle/Middleware/oracle_common/common/wlst/resources/ossoiap_help.jar:/u01/oracle/Middleware/oracle_common/common/wlst/resources/ossoiap.jar:/u01/oracle/Middleware/oracle_common/common/wlst/resources/ovdwlsthelp.jar:/u01/oracle/Middleware/oracle_common/common/wlst/resources/sslconfigwlst.jar:/u01/oracle/Middleware/oracle_common/common/wlst/resources/wsm-wlst.jar:/u01/oracle/Middleware/utils/config/10.3/config-launch.jar::/u01/oracle/Middleware/wlserver_10.3/common/derby/lib/derbynet.jar:/u01/oracle/Middleware/wlserver_10.3/common/derby/lib/derbyclient.jar:/u01/oracle/Middleware/wlserver_10.3/common/derby/lib/derbytools.jar::
Picked up _JAVA_OPTIONS: -Djava.io.tmpdir=/u01/tmp

Initializing WebLogic Scripting Tool (WLST) ...

Welcome to WebLogic Server Administration Scripting Shell

Type help() for help on available commands

[Enter the password for user :weblogic]
Connecting to t3://bitest03.plsa.com.sa:7001 with userid weblogic ...
Successfully connected to Admin Server 'AdminServer' that belongs to domain 'bifoundation_domain'.

Warning: An insecure protocol was used to connect to the
server. To ensure on-the-wire security, the SSL port or
Admin port should be used instead.

Disconnected from weblogic server: AdminServer
jps-config file created successfully
jps-config-jse.xml file created successfully at:/u01/oracle/Middleware/user_projects/domains/bifoundation_domain/odi-client-config/embedded/jps-config-jse.xml
Connecting to t3://bitest03.plsa.com.sa:7001 with userid weblogic ...
Successfully connected to Admin Server 'AdminServer' that belongs to domain 'bifoundation_domain'.

Warning: An insecure protocol was used to connect to the
server. To ensure on-the-wire security, the SSL port or
Admin port should be used instead.

Creating Bootstrap Credential
Mar 04, 2018 12:04:00 PM oracle.security.jps.internal.config.xml.XmlConfigurationFactory validateFileLocation
INFO: JPS CONFIG:/u01/oracle/Middleware/user_projects/domains/bifoundation_domain/odi-client-config/embedded/jps-config-jse.xml
Mar 04, 2018 12:04:00 PM oracle.security.jps.internal.common.util.XmlSchemaValidationUtil$StrictErrorHandler warning
WARNING: Invalid xml content was found. SchemaLocation: schemaLocation value = 'http://xmlns.oracle.com/oracleas/schema/11/jps-config-11_1.xsd' must have even number of URI's. Location: line 1 column 310.
key updated succesfully
credential updated successfully
Disconnected from weblogic server: AdminServer
JPS config file and credential wallet at location: /u01/oracle/Middleware/user_projects/domains/bifoundation_domain/odi-client-config/embedded
[applbi3@bitest03 ~]$ cp /u01/oracle/Middleware/user_projects/domains/bifoundation_domain/odi-client-config/embedded/cwallet.sso /u01/oracle/Middleware/Oracle_ODI1/oracledi/client/odi/bin/
[applbi3@bitest03 ~]$ cp /u01/oracle/Middleware/user_projects/domains/bifoundation_domain/odi-client-config/embedded/jps-config-jse.xml /u01/oracle/Middleware/Oracle_ODI1/oracledi/client/odi/bin/

Copied new cwallet.sso and jps-config-jse.xml client Oracle_ODI\oracledi\client\odi\bin


You can able to login ODI Studio.

Tuesday, February 20, 2018

[UNEXPECTED]Master node for the current patching cycle is node_name.

Error:

Checking for existing adop sessions.
    Continuing with existing session [Session ID: 13].
    [UNEXPECTED]Master node for the current patching cycle is Node_name.
    [UNEXPECTED]Options such as "allnodes=yes" or "allnodes=no action=db" must be run from the master node.
    [UNEXPECTED]Unrecoverable error occurred. Exiting current adop session.


[STATEMENT] Please run adopscanlog utility, using the command

"adopscanlog -latest=yes"

to get the list of the log files along with snippet of the error message corresponding to each log file.


adop exiting with status = 2 (Fail)


Cause:
This issue normally occurs on cloned instance due to invalid entries in ADOP_VALID_NODES and TXK_TCC_RESULTS table.
Refer: http://www.global-dba.com/2017/12/running-adop-fails-with-error-etcc-not.html

Solution:
Login with apps user and perform the following tasks.

SQL> create table apps.ad_adop_sessions_bkp as select * from apps.ad_adop_sessions;

Table created.

update apps.ad_adop_sessions
set node_name='node_name'
where ADOP_SESSION_ID=13

SQL> commit;

Commit complete.

SQL>

Now abort patch session and run cleanup:

$ adop phase=abort
$ adop phase=cleanup cleanup_mode=full

You can now run the patching successfully on cloned instance

Sunday, February 11, 2018

adop phase=prepare ORA-20008: No Concurrent Manager is running that can run concurrent program


Error

Error while running command: adop phase=prepare

SQL> SQL> Connected.
SQL> select AD_ZD_ADOP.WAIT_FOR_CP_TO_RUN(10847151) from dual
       *
ERROR at line 1:
ORA-20008: No Concurrent Manager is running that can run concurrent program
ADZDPATCH
ORA-06512: at "APPS.AD_ZD_ADOP", line 282
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

    [UNEXPECTED]Error calling runConcurrentProgram subroutine.
    Stopping services on patch file system.
    Stopping admin server.
    Stopping node manager.
    [ERROR]     Prepare phase has failed.


Solution

Set the Run filesystem / environment and run command:
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afcpprog.lct $AD_TOP/patch/115/import/US/adzdpatch.ldt - CUSTOM_MODE=FORCE

Reference: Doc ID 1587419.1

ADOP Prepare Phase Fails With "Error calling runFSSanityValidateConfig"

Error

[UNEXPECTED]Error occurred running "perl /u01/app/fs1/EBSapps/appl/ad/12.0.0/patch/115/bin/txkADOPPreparePhaseSanityCheck.pl -contextfile=/u01/app/fs1/inst/apps/QA_erpqa/appl/admin/QA_erpqa.xml -patchcontextfile=/u01/app/fs2/inst/apps/QA_erpqa/appl/admin/QA_erpqa.xml -promptmsg=hide -mode=update -console=off -sessionid=7 -timestamp=20180211_103444 -outdir=/u01/app/fs_ne/EBSapps/log/adop/7/20180211_103444/prepare/erpqa -action=filesystemcheck"
    [UNEXPECTED]Error calling runFSSanityValidateConfig subroutine
    Stopping services on patch file system.
    Stopping admin server.
    Stopping node manager.
    [ERROR]     Prepare phase has failed.


Solution

To resolve the issue test the following steps in a development instance where the issue can be reproduced and then migrate accordingly:
1. Execute the following ABORT process:
$ adop phase=abort
$ adop phase=cleanup cleanup_mode=full
$ adop phase=fs_clone
2. Increase the file system space to 25 GBs (or more depending on your available resources).

3. Run the ADOP Prepare phase again:
$ adop phase=prepare

4. Confirm the prepare phase completes successfully and the above errors no longer appear in the log.

Reference: Doc ID 2223374.1

Error 1 occurred while Executing txkADOPValidation script on host

Error

Lines #(78-83):
    [PROCEDURE] Calling: /u01/app/fs1/EBSapps/appl/ad/12.0.0/patch/115/bin/txkADOPValidations.pl
    [EVENT]     Log: /u01/app/fs_ne/EBSapps/log/adop/7/20180211_102321/prepare/validate/erpqa
    [UNEXPECTED]Error occurred running "perl /u01/app/fs1/EBSapps/appl/ad/12.0.0/patch/115/bin/txkADOPValidations.pl  -contextfile=/u01/app/fs1/inst/apps/QA_erpqa/appl/admin/QA_erpqa.xml -patchctxfile=/u01/app/fs2/inst/apps/QA_erpqa/appl/admin/QA_erpqa.xml -phase=prepare -logloc=/u01/app/fs_ne/EBSapps/log/adop/7/20180211_102321/prepare/validate/erpqa -promptmsg=hide"
    [UNEXPECTED]Error 1 occurred while Executing txkADOPValidation script on erpqa
[PROCEDURE] [START 2018/02/11 10:24:20] Unlocking sessions table

[STATEMENT] Unlocking ad_adop_sessions table for erpqa with wait interval of 60 seconds and number of tries 2


Solution

To fix this issue test the following to upload the missing PATCH context file to the database:
1. Get the value of your patch context file.
    1.1. Source your PATCH file system
    1.2. Echo the value of $CONTEXT_FILE and take note of it. You will use this value in step #3.
2. Source the RUN filesystem
3. Execute the following command on the run filesystem to upload the patch context file to the database.

$ADJVAPRG oracle.apps.ad.autoconfig.oam.CtxSynchronizer \
action=upload \
contextfile=<Enter Your Full Patch Context XML File Location> \
logfile=/tmp/patchctxupload.log
For Example:
$ADJVAPRG oracle.apps.ad.autoconfig.oam.CtxSynchronizer \
action=upload \
contextfile=/data1/oracle/EBSDEV/fs2/inst/apps/EBSDEV_ebsapp01/appl/admin/EBSDEV_ebsapp01.xml \
logfile=/tmp/patchctxupload.log
 Note: the context file parameter should point to the physical location of the patch context file in your system
4. Run the following query and it should return one entry for the recently uploaded context file.
select distinct(PATH) from FND_OAM_CONTEXT_FILES where NAME not in ('TEMPLATE','METADATA','config.txt') and CTX_TYPE='A' and (status is null or upper(status) in ('S','F')) and EXTRACTVALUE(XMLType(TEXT),'//file_edition_type') = 'patch';

Reference: Doc ID 2090393.1

Wednesday, February 7, 2018

Temporary Tablespaces Group

Large transactions can sometimes run out of temporary space. Large sort jobs, especially those involving tables with many partitions, lead to heavy use of the temporary tablespaces, thus potentially leading to a performance issue. Oracle Database 10g introduced the concept of a temporary tablespace group, which allows a user to utilize multiple temporary tablespaces simultaneously in different sessions.
Here are some of the main characteristics of a temporary tablespace group:
  • A temporary tablespace group must consist of at least one tablespace. There is no explicit maximum number of tablespaces.
  • If you delete all members from a temporary tablespace group, the group is automatically deleted as well.
  • A temporary tablespace group has the same namespace as the temporary tablespaces that are part of the group.
  • The name of a temporary tablespace cannot be the same as the name of any tablespace group.
  • When you assign a temporary tablespace to a user, you can use the temporary tablespace group name instead of the actual temporary tablespace name.
    You can also use the temporary tablespace group name when you assign the default temporary tablespace for the database.
Creating a Temporary Tablespace Group
When you assign the first temporary tablespace to a tablespace group, you automatically create the temporary tablespace group. To create a tablespace group, simply specify the TABLESPACE GROUP clause in the CREATE TABLESPACE statement, as shown here:

SQL> CREATE TEMPORARY TABLESPACE temp01 TEMPFILE '/u01/oracle/oradata/temp01_01.dbf' SIZE 500M TABLESPACE GROUP TEMP;

The preceding SQL statement will create a new temporary tablespace, temp01, along with the new tablespace group named tmpgrp1. Oracle creates the new tablespace group because the key clause TABLESPACE GROUP was used while creating the new temporary tablespace.
You can also create a temporary tablespace group by specifying the same
TABLESPACE GROUP clause in an ALTER TABLESPACE command, as shown here:

SQL> ALTER TABLESPACE temp02 TABLESPACE GROUP TEMP

The preceding statement will cause Oracle to create a new group named TEMP, since there was no prior temporary tablespace group with that name. If you specify a pair of quotes ('') for the tablespace group name, you are implicitly telling Oracle not to allocate that temporary tablespace to a tablespace group. Here is an example:

SQL> CREATE TEMPORARY TABLESPACE temp02 TEMPFILE '/u01/oracle/oradata/temp02_01.dbf' SIZE 500M TABLESPACE GROUP '';

The preceding statement creates a temporary tablespace called temp02, which is a regular temporary tablespace and does not belong to a temporary tablespace group. If you completely omit the TABLESPACE GROUP clause, you will also create a regular temporary tablespace, which is not part of any temporary tablespace group:

SQL> CREATE TEMPORARY TABLESPACE temp03 TEMPFILE '/u01/oracle/oradata/temp03_01.dbf' SIZE 500M;

Verify Temp tablespace usage:-

SELECT   
   TABLESPACE_NAME, GROUP_NAME
FROM   
   DBA_TABLESPACE_GROUPS;



SELECT USERNAME, SESSION_NUM, TABLESPACE FROM V$SORT_USAGE;




Reference: 
Master Note: Overview of Oracle Temporary Tablespaces (Doc ID 1498442.1)
10g: Temporary Tablespaces Group (Doc ID 245645.1)


Some Tips About FNDLOAD

Data Synchronization  Data Synchronization is a process in which some setup data would be synchronized, and this would be more important w...