Thursday, March 15, 2018

How to download form personalization and upload it to another instance

Step 1: Download your personalization.
From Linux, set the environment file, your .ldt file will be created on the current directory

FNDLOAD <apps_user>/<password> 0 Y DOWNLOAD

$FND_TOP/patch/115/import/affrmcus.lct <file_name>.ldt FND_FORM_CUSTOM_RULES

form_name=<form_name>

 Here three parameters are used :

<apps_user>    = apps user name normally apps
<password>     = apps password
<file_name>      = file name (in our case test.ldt)
<form name>    = form name can be get form Help > About Oracle Applications

Usage:
FNDLOAD apps/*** 0 Y DOWNLOAD $FND_TOP/patch/115/import/affrmcus.lct test.ldt

FND_FORM_CUSTOM_RULES form_name=FNDSCAUS


Step 2: Upload your personalization to another instance.

 From Linux, set the environment file, go to the path where .ldt file is copied

 FNDLOAD <apps_user>/<password> 0 Y UPLOAD$FND_TOP/patch/115/import/affrmcus.lct

 <file_name>.ldt

Usage:
FNDLOAD apps/*** 0 Y UPLOAD $FND_TOP/patch/115/import/affrmcus.lct test.ldt


Example :

TO DOWNLOAD:
FNDLOAD apps/$CLIENT_APPS_PWD 0 Y DOWNLOAD $FND_TOP/patch/115/import/affrmcus.lct OEXOEORD.ldt FND_FORM_CUSTOM_RULES fnd_form_name="ONT_OEXOEORD" 


TO UPLOAD: 
FNDLOAD apps/$apps_pwd 0 Y UPLOAD $FND_TOP/patch/115/import/affrmcus.lct OEXOEORD.ldt FND_FORM_CUSTOM_RULES form_name='OEXOEORD'

Friday, March 9, 2018

PL/SQL - BULK COLLECT INTO,SELECT MULTIPLE ROWS

DECLARE
  TYPE nt_fName IS TABLE OF VARCHAR2 (20);
  TYPE nt_lName IS TABLE OF VARCHAR2 (20);

  fname nt_fName;
  lName nt_lName;
 BEGIN
  SELECT first_name, last_name
   BULK COLLECT INTO fName, lName
  FROM employees;

   --Print values from the collection--
  FOR idx IN 1..fName.COUNT
  LOOP
   DBMS_OUTPUT.PUT_LINE (idx||' - '||fName (idx) ||' '||lName (idx));
  END LOOP;
 END;

USES :
  • BULK COLLECT: SELECT statements that retrieve multiple rows with a single fetch, improving the speed of data retrieval
  • FORALL: INSERTs, UPDATEs, and DELETEs that use collections to change multiple rows of data very quickly

SQL - STRING QUERY

--Enter any name in the select field return string query.

SELECT  substr('Surya DTJ Chennai', 1, Instr('Surya DTJ Chennai',' ',1,1)-1)name,
     Substr('Surya DTJ Chennai', Instr('Surya DTJ Chennai',' ',1,1)+1,Instr('Surya DTJ Chennai',' ',1,2)-Instr('Surya DTJ Chennai',' ',1,1))company,
     Substr('Surya DTJ Chennai', Instr('Surya DTJ Chennai',' ',1,2)+1) city
FROM DUAL;
   
Select Substr('suriya$$dtj$$chennai',1,Instr('suriya$$dtj$$chennai','$',1,1)-1)Name,
Substr('suriya$$dtj$$chennai',Instr('suriya$$dtj$$chennai','$',1,2)+1,Instr('suriya$$dtj$$chennai','$',1,3)-1-Instr('suriya$$dtj$$chennai','$',1,2))Company,
Substr('suriya$$dtj$$chennai',Instr('suriya$$dtj$$chennai','$',1,4)+1)city
FROM DUAL;


SELECTSubstr('kumaravelu/dtj/madurai/600082',1,Instr('kumaravele/dtj/madurai/600082','/',1,1)-1)Name,
Substr('kumaravelu/dtj/madurai/600082',Instr('kumaravele/dtj/madurai/600082','/',1,1)+1,Instr('kumaravelu/dtj/madurai/600082','/',1,2)-1
-Instr('kumaravelu/dtj/madurai/600082','/',1,1))company,
 Substr('kumaravelu/dtj/madurai/600082',Instr('kumaravele/dtj/madurai/600082','/',1,2)+1,Instr('kumaravelu/dtj/madurai/600082','/',1,3)-1
-Instr('kumaravelu/dtj/madurai/600082','/',1,2))City,
Substr('kumaravelu/dtj/madurai/600082',Instr('kumaravelu/dtj/madurai/600082','/',1,3)+1)Pincode From Dual;

SELECT  Substr(:Get_Char,1,Instr(:Get_Char,'/',1,1)-1)Name1,
Substr(:Get_Char,Instr(:Get_Char,'/',1,1)+1,Instr(:Get_Char,'/',1,2)-1-Instr(:Get_Char,'/',1,1))Company,
Substr(:Get_Char,Instr(:Get_Char,'/',1,2)+1,Instr(:Get_Char,'/',1,3)-1
-Instr(:Get_Char,'/',1,2))City,
Substr(:Get_Char,Instr(:Get_Char,'/',1,3)+1)Pincode From Dual;

PL/SQL - FOR LOOP

BEGIN
  FOR someone IN (
    SELECT * FROM employees
    WHERE employee_id < 120
    ORDER BY employee_id
  )
  LOOP
    DBMS_OUTPUT.PUT_LINE('First name = ' || someone.first_name ||
                         ', Last name = ' || someone.last_name);
  End Loop;
End;

OUTPUT:
 First name = Steven, Last name = King
First name = Neena, Last name = Kochhar
First name = Lex, Last name = De Haan
First name = Alexander, Last name = Hunold
First name = Bruce, Last name = Ernst

PL/SQL - ANONYMOUS BLOCK, UPDATE COLUMNS

Declare
   V_dept_id xxdtj_Employees.department_Id%Type:=10;
Begin
   Update Xxdtj_Employees Set Salary=Salary + 1000
   Where Department_Id=V_dept_id;
   Dbms_Output.Put_Line(V_DEPT_ID);
End;

OUTPUT :
   10