ORA-01438 Value Larger Than Specified Precision Allowed For This Column AP_AC_TABLE_HANDLER_PKG.INSERT_ROW

March 1st, 2023, posted in Oracle EBS Application
Share

SYMPTOMS

Payment Workbench(APXPAWKB) > When try to save the payment , following error appear:

ERROR
-----------------------
APP-SQLAP-10000 ORA-01438 Value Larger than specified Precision allowed for this column occurred
in AP_AC_TABLE_HANDLER_PKG.INSERT_ROW <AP_CHECKS_PKG.INSERT_ROW>
With Parameter (ROWID= , CHECK_ID=&check_id) while performing the following operation insert into ap_checks

 

ORA-01438 Value Larger,R12: AP: APXPAWKB,ORA-01438 Value Larger Than Specified Precision Allowed,AP_AC_TABLE_HANDLER_PKG.INSERT_ROW

Click to Viewer Larger

 

CAUSE

The cause of the issue is invalid / incorrect Payment Document Number
Payment Document Number should not have more than 15 digits

 

 

SOLUTION

This error is displayed when you enter more than 15 digits in the payment document number.
Please enter the payment document number less than 15 digits and recheck.

 

 

Click to Viewer Larger

Share

Retrieve Forgotten Apps Password in Oracle EBS R12

February 20th, 2023, posted in Oracle Queries
Share
I am going to share steps to retrieve the password in Oracle Apps.
But no guarantee that it will work on all EBS version. It was tested on R12.2.3.
 

Steps:

 
1: log in to the database server with sys user
 sqlplus / as sysdba
 
2: Create Function to decrypt the encrypted password
SQL> create FUNCTION apps.decrypt_pin_func(in_chr_key IN VARCHAR2,in_chr_encrypted_pin IN VARCHAR2)
 RETURN VARCHAR2  AS  LANGUAGE JAVA NAME ‘oracle.apps.fnd.security.WebSessionManagerProc.decrypt(java.lang.String,java.lang.String)
return java.lang.String’;
 /
 
3 : Query for Encrypted password
SQL> select ENCRYPTED_FOUNDATION_PASSWORD from apps.fnd_user where USER_NAME=’GUEST’;

Output

 ENCRYPTED_FOUNDATION_PASSWORD
 ——————————————————————————–  ZG37E123746712BDB2D99E048FE44AE662F2713E2EDB443391BABA0414CADDB7A2E6DD45BBAFA7270A663E5EEBA837F5548A
 
4: Past the Encrypted password from the above query output into the below query and execute
SELECT apps.decrypt_pin_func
(‘GUEST/ORACLE’,’ZG37E123746712BDB2D99E048FE44AE662F2713E2EDB443391BABA0414CADDB7A2E6DD45BBAFA7270A663E5EEBA837F5548A’)
from dual;

Output

 APPS.DECRYPT_PIN_FUNC
(‘GUEST/ORACLE’,’ZG37E123746712BDB2D99E048FE44AE662F2713E2EDB443391BABA0414CADDB7A2E6DD45BBAFA7270A663E5EEBA837F5548A’)
 ——————————————————————————–
 oracle123
 
5: Test apps password is working or not
 SQL> conn apps/oralce123;
Connected.
Share

Delete Files Older Than X days in Unix or Solaris

February 5th, 2023, posted in Solaris
Share

Delete Files Older Than X days in Unix or Solaris,Delete Files Older Than X days in Solaris,

 

Introduction :

In Production server, there is always a need to free up the disk space from time to time. The best way to achieve is to have a cron job or an autosys job which will delete the older log files from the directory.

In this simple tutorial, we’ll quickly look at the solution to this problem. In order to delete files older than X number of days, try using Unix find command. find command is more powerful than you can really imagine. It comes up with multiple options which when gets handy can help you cover a lot of functional requirements like moving files among directories, deleting old files, archiving files etc.

Recently I came across one such requirement of deleting files older than X days from a directory in Unix server and I thought of sharing the solution with you.


Solution :

Unix find command is used to achieve the desired result.

find /path/to/the/directory/ -type f -name '*' -mtime +30 -exec rm {} \;


Explanation :

Time to breakdown the find command mentioned above :

  1. /path/to/the/directory Edit this portion of the code with the path of your target directory.
  2. -type f : It signifies that we are targeting all the ‘files’ in the specified directory.
  3. -name ‘*’We have used a general regex “*” to match all the file names. You can make it more specific if you need. For example , to delete only dat files use-name "*.dat".
  4. -mtime +30This refers to all the files which are older than 30 days. mtime stands for Modification time in Unix.You can change the number based on your requirement.
  5. exec rm {} \ : This is actually the execution command which calls for deletion of all the files filtered by all the above criteria. rm stands to remove in Unix.

Although it is a very simple command, still I want you understand the usage of mtime in find command in a little more detail.

The POSIX specification for find command states that :

-mtime n The primary shall evaluate as true if the file modification time subtracted from the initialization time, divided by 86400 (with any remainder discarded), is n.

In the descriptions, wherever n is used as a primary argument, it shall be interpreted as a decimal integer optionally preceded by a plus ( ‘+’ ) or minus-sign ( ‘-‘ ) sign, as follows: +n More than nn Exactly n-n Less than.

Important point to note in the above statement is that the fractional part is always ignored. So, when you specify -mtime +1 , it looks for files older more than 1 day. Rather to explain it further, it simply says to match files modified two or more days ago.

If you want to delete files older than 1 day, you can try using -mtime +0 or -mtime 1 or -mmin $((60*24)).

Would suggest you to try playing with the combinations on your own to deepen the understanding.
Still in case you have more questions, please feel free to get in touch with me.

 

Share

Oracle : FRM-92102 ERRORS

January 14th, 2023, posted in Oracle
Share

Error reported was

Users are experiencing FRM-92102:A network error has occurred . The forms client attempted to reestablish its connection to the server 5 time(s) witho
ut success. Please check the network connection and try again.

Reference SR is 6782240.992 ( Leviton Mfg Co )

Please read through Note: 365529.1 Ext/Pub Troubleshooting FRM-92XXX Errors in Oracle Applications:
Please provide feedback on the questions listed in sections:
A. General List of Questions
D. Intermittent or Random Disconnects

These sections gave very good understanding on the problem at hand.

The most important point was timeout settings.
What the following timeout settings are set to:
Timeout Parameters:

FORMS60_TIMEOUT = 120

Heartbeat = 2 in $OA_HTML/bin/appsweb.cfg

Self Service Timeout Profile Options:
ICX: Session Timeout = 30
ICX:Limit Time = 4
ICX:Limit connect = 1000

session.timeout=1800000 (zone.properties in Apache)

So analyst recommended following adjustments

The ‘FORMS60_TIMEOUT = 120’ should not be set so high. For users that walk away and stay con
nected, this will consume unnecessary resources.
It is recommended that the ‘FORMS60_TIMEOUT be set to something like 30 minutes with 60 minutes being about the
max.

Concerning the:
ICX:Limit Time = 4
ICX:Limit connect = 1000

The ICX:Limit Time, controls the total time a session can be logged in. If set to 4 hours,
then after 4 hours the user will get disconnected, regardless of what activity
is being done. Bump this setting up to something like 8 to 10 hours.

The ICX:Limit connect, needs to be bumped up to 2000 +, because each time Session Time is
checked it adds another ICX connection. This IS NOT DETERMEND BY THE NUMBER OF U
SER CONNECTIONS. The more ICX checks its self the more ICX connections you are g
oing to see. Session expiration can also occur when the total number of times th
e session is validated exceeds ‘ICX: Limit Connect’.

The above two ICX settings are most likely the source of the errors you are seeing.

So we had to reset above settings and bounce apps.

We had a question about licensing issue as well and analyst said

The ‘ICX:Limit Connect’ has nothing to do with the number of concurrent users connecting to the a
pplications. Increasing ICX:Limit Connect to 2000+ will NOT voilate your licens
ing with Oracle ( Leviton had only 1000 concurrent user license) .

Share

Happy New Year It Sucks

January 1st, 2023, posted in COMiCS, Scarface'S DIARY
Share

Happy New Year Sucks

Share