How To Retry or Skip Workflow Oracle E-Business Suite?

You can retry the workflow with the following script.

1
2
3
4
5
6
7
8
9
BEGIN
	wf_engine.handleerror (itemtype	 => 'POAPPRV',
			itemkey 	 => 27013,
			activity	 => 'APPROVE_PO_NEW',
			command 	 => 'RETRY',
			result		 => NULL);
	COMMIT;
END;
/

You can skip the workflow with the following script.

1
2
3
4
5
6
7
8
9
BEGIN
	wf_engine.handleerror (itemtype	 => 'POAPPRV',
			itemkey 	 => 27013,
			activity	 => 'APPROVE_PO_NEW',
			command 	 => 'SKIP',
			result		 => NULL);
	COMMIT;
END;
/

Oracle 12c VARCHAR2 32K Extended Limit – Arttırılmış Boyut

oracle12cVARCHAR ve VARCHAR2 için farklı boyutlar tartışılsada 12C öncesi VARCHAR için 2000, VARCHAR2 için karakter limiti 4000 di. Bunun yanında bildiğiniz gibi VARCHAR null durum içinde alanı kaplaraken VARCHAR2 sadece dolu olduğu kadar yer kaplamaktadır. Bu nedenle kodlamalrda daha çok VARCHAR2 tercih edilmekteydi. Eğer Unicode data tutuyorsanız NVARCHAR2 tercih edebilirsiniz.

Bu boyutlar bir çok işte yetersiz geliyordu ve CLOB kullanmak zorunda kalıyorduk. 12C ile CLOB ihtiyacı azalacak. Database tarafında yapılan bir kurulum parametresi ile VARCHAR2, NVARCHAR2 ve RAW boyutlarını arttırabiliyorsunuz.

Yeni boyutlar aşağıdaki gibi oluyor:

  • VARCHAR2   32767
  • NVARCHAR2   16383
  • RAW      32767

NOT: Veritabanı yöneticizden destek alarak max_sql_string_size parametresi EXTENDED olarak ayarlanmalıdır.

Oracle 12c Invisible Column – Gizli Kolon

oracle12cInvisible column yani Türkçesi gizli kolonun DML işlemlerinde yapısal olarak bir farkı bulunmamaktadır.

Normal kolondan tek farklı tablo açıklamalarında ve oracle genel tablo yapılarını tutan tablolarında gözükmemesidir.

Kolonu select cümlesi ile görüntüleyebilmek için doğrudan select cümlesinde kolon adını vermelisiniz. Yoksa * ile çekerseniz kolonu göremezsiniz.

Buda size tablo hakında bilgisi olamayan yetkisiz kişilerden içerideki bilgiyi saklamanızı sağlar.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
SQL> CREATE TABLE ornek_tablo (col1 NUMBER, col2 NUMBER INVISIBLE);
SQL> desc ornek_tablo;
Name  Null? Type
----- ----- -----
COL1      NUMBER
SQL> INSERT INTO ornek_tablo VALUES (1);
1 row created.
SQL> SELECT * FROM ornek_tablo;
COL1
-----
1
SQL> SELECT col1, col2 FROM ornek_tablo;
COL1   COL2
------ ------
1
SQL> INSERT INTO ornek_tablo (col1,col2) VALUES (2,2);
1 row created.

Alter komutu ile tablonun bir kolonunu gizli yada açık yapabilirsiniz.

1
2
3
4
5
6
7
8
SQL> ALTER TABLE ornek_tablo MODIFY col1 INVISIBLE;  
Table altered. 
SQL> ALTER TABLE ornek_tablo MODIFY col2 VISIBLE;  
Table altered. 
SQL> desc ornek_tablo;
Name  Null? Type
----- ----- -----
COL2      NUMBER

COLINVISIBLE ON parametresini set ederek gizli kolonların görünmesini sağlayabilirsiniz.

1
2
3
4
5
6
7
8
SQL> SET COLINVISIBLE ON
SQL> DESC ornek_tablo
Name              Null?    Type
----------------- -------- ------------
COL1                       NUMBER
COL2 (INVISIBLE)           NUMBER
SQL> CREATE INDEX in_ornek_tablo ON ornek_tablo(col2);
Index created.