Thursday 29 December 2016

How to set up Tracing for Web ADI Error

We can configure tracing for Web ADI activity by using below Profile options.
  • BNE Server Log Level : Set it to Trace
  • BNE Server Log Path : Enter directory path 
  • BNE Server Log Filename : Enter Log file name 
Navigation : Login to Oracle application 
Go to System Administrator Responsibility -> Profile -> System
Eneter User Name and in Profile field enter "BNE%Log%" Then click on Find.



Set all 3 profile options as shown in below mention screenshot at user level.

Once above mentioned setup done . Now you can recreate webadi error, which will create trace file on path mentioned in "BNE Server Log Path" profile option.

Monday 19 December 2016

How to Reconcile Account Payable with GL trial balance


  •  Kindly run the Accounts Payable Trial Balance for a particular period which you have already closed (or) intend to close in both AP and GL.

  • Now Run General Ledger Trial Balance Report for same period.

  • Then compare both trial balance report APTB & GLTB for all accounts. 
  • Submit Create Accounting program from Payable responsibility with proper end date and Final and Post Mode parameter value as 'Yes'.

  • After completing create accounting report again compare APTB and GLTB report.
  • If there is still any difference then submit the GL Account Analysis Report (180 char)" report, which will help to find whether any other source journals are posted to these liability accounts 

  • List out all other source journal amounts (credit less debit) and determine the net value (other than Payables source amounts) to compare with APTB.
  • If there is still a difference between APTB and GLTB after deducting other source journals, then submit the "Account Analysis Report" in Payables for the particular period and liability account code combination. This will help to get detailed transaction level data.
  • Export the output into excel with column sorting options and proceed to reconcile at transaction level to find out the difference between GL trial Balance and AP Trial Balance.
  • Then analyze the transaction accounting entries. If any corruption or partial accounting exist.

Friday 18 November 2016

Oracle XML Publisher related Table Details

Lets take example of standard report AP Invoice Register to check xml publisher related table details.

Concurrent Program screen shot:

For  Data definition we can query using Executable code as shown in below screenshot.

Data Definition Screen shot:

Data definition get stored in below given Tables:
  • XDO_DS_DEFINITIONS_B
  • XDO_DS_DEFINITIONS_TL
We can use below given query to find out details related to data definition.


SELECT * 
FROM XDO_DS_DEFINITIONS_B 
WHERE DATA_SOURCE_CODE = 'APXINRIR';


SELECT *
FROM XDO_DS_DEFINITIONS_TL 
WHERE DATA_SOURCE_CODE = 'APXINRIR';




Template Screenshot:


Template related detail get stored in below given table.
  • XDO_TEMPLATES_B
  • XDO_TEMPLATES_TL
  • XDO_LOBS
We can use below given query to find out template related details from back-end.


SELECT *

  FROM XDO_TEMPLATES_B
  WHERE TEMPLATE_CODE = 'APXINRIR';



SELECT *
  FROM XDO_TEMPLATES_TL
WHERE TEMPLATE_CODE = 'APXINRIR';



SELECT *
  FROM XDO_LOBS
WHERE LOB_CODE = 'APXINRIR';


One can view RTF template attached to this particular report by clicking file data column.

Just click on File data column sign [...] showing value <BLOB> for row which XDO_FILE_TYPE is RTF, it will open new window for RTF file as shown in below screenshot.



Hope this will help you guys.



Wednesday 2 November 2016

How to migrate XML Publisher report with data template from one instance to other using LDT.

In Xml Publisher report when we use data template please follow below given are step to migrate xml publisher report from one instance to another instance using LDT.

Key Object LDT to be downloaded from dev instance.
1. Concurrent Program LDT
2. Any value set or lookup used in lookup for data template query.
3. Data definition and template LDT file.
4. .xml file attached in data definition data template.
5..rtf file attached in template for layout.

LDT Creation scripts:

1. Concurrent Program
Download :
$FND_TOP/bin/FNDLOAD apps/Password O Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct XXCUST_CP.ldt PROGRAM APPLICATION_SHORT_NAME="XXCUST" CONCURRENT_PROGRAM_NAME="XXCUST_SHORT_NAME"

Upload :
FNDLOAD <username>/<password> O Y UPLOAD $FND_TOP/patch/115/import/afcpprog.lct XXCUST_CP.ldt CUSTOM_MODE=FORCE UPLOAD_MODE=REPLACE

2. Data Definition and Template
Download :
FNDLOAD apps/password 0 Y DOWNLOAD $XDO_TOP/patch/115/import/xdotmpl.lct XXCUST_DD.ldt XDO_DS_DEFINITIONS APPLICATION_SHORT_NAME='XXCUST' DATA_SOURCE_CODE='XXCUST_DD_NAME'

Upload:
FNDLOAD apps/XXXX 0 Y UPLOAD ${XDO_TOP}/patch/115/import/xdotmpl.lct XXCUST_DD.ldt

3. Data Template (.xml source file) 
Download :
java oracle.apps.xdo.oa.util.XDOLoader DOWNLOAD -DB_USERNAME apps -DB_PASSWORD userpswd -JDBC_CONNECTION '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST='HOST NAME')(PORT=1234))(CONNECT_DATA=(SERVICE_NAME=DEV)))' -LOB_TYPE DATA_TEMPLATE -LOB_CODE XXCUST_DD_NAME -APPS_SHORT_NAME XXCUST -LANGUAGE en -lct_FILE $XDO_TOP/patch/115/import/xdotmpl.lct -LOG_FILE $LOG_FILE_NAME

Upload :
java oracle.apps.xdo.oa.util.XDOLoader \
UPLOAD \
-DB_USERNAME apps \
-DB_PASSWORD XXXX \
-JDBC_CONNECTION Server:DBPort:InstanceName \
-LOB_TYPE DATA_TEMPLATE \
-APPS_SHORT_NAME XXCUST \
-LOB_CODE XXCUST_DD_NAME \
-TERRITORY 00 \
-XDO_FILE_TYPE XML-DATA-TEMPLATE \
-FILE_NAME DATA_TEMPLATE_XXCUST.xml \
-CUSTOM_MODE FORCE

4. RTF Template (Layout .rtf file)

Download:
java oracle.apps.xdo.oa.util.XDOLoader DOWNLOAD -DB_USERNAME apps -DB_PASSWORD userpswd -JDBC_CONNECTION '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST='HOST NAME')(PORT=1234))(CONNECT_DATA=(SERVICE_NAME=DEV)))'  -LOB_TYPE TEMPLATE -LOB_CODE ZBRAR_WFACT_INV_EXTRACT -APPS_SHORT_NAME AR -LANGUAGE en -TERRITORY US -lct_FILE $XDO_TOP/patch/115/import/xdotmpl.lct -LOG_FILE $LOG_FILE_NAME


Upload :
java oracle.apps.xdo.oa.util.XDOLoader \
UPLOAD \
-DB_USERNAME apps \
-DB_PASSWORD XXXX \
-JDBC_CONNECTION Server:DBPort:InstanceName \
-LOB_TYPE TEMPLATE \
-APPS_SHORT_NAME XXCUST \
-LOB_CODE XXCUST_DD_NAME \
-LANGUAGE en \
-TERRITORY 00 \
-XDO_FILE_TYPE RTF \
-FILE_NAME TEMPLATE_SOURCE_XXCUST_TMP_en.rtf \
-CUSTOM_MODE FORCE

Wednesday 21 September 2016

Shell script to FTP file from oracle apps server to another windows/unix based server

Below given script one can use to FTP file from oracle apps server to unix/windows based client server. kindly register host program in oracle apps by giving executable file name as XXCUST_FTP_SH.prog. This program will FTP file from Oracle EBS source file path to another client server destination path which is defined in variable.

Shell script
====================================================================
# @(#) XXCUST_FTP_SH.prog
# ===================================================================
# PURPOSE: This program will FTP file from oracle EBS server to other
# windows/Unix based server
# ===================================================================
# -------------------------------------------------------------------
# PARAMETERS
# $0 = Shell Script Name
# $1 = username/password
# $2 = userid
# $3 = username
# $4 = request_id
# ===================================================================
#!/bin/bash
HOST='xxcust.host.com'
USER='ftpuser'
PASSWD='ftp1234'
SOURCE_PATH='/tmp/erpdev1/xxftp/outbox'
DEST_PATH='/xxcust/ftp/inbox'
FILE_NAME='xxtestftp.txt'
ftp -n $HOST << END_SCRIPT
user $USER $PASSWD
put $SOURCE_PATH'/'$FILE_NAME $DEST_PATH'/'$FILE_NAME
END_SCRIPT
==================================================================


Kindly note this script will only work if FTP port is opened for both source and destination server.
One can easily check by login to putty and check by using ftp command if he can able to connect to ftp server.

command:
ftp xxcust.host.com

it will ask for username
Name : ftpuser
331 Please specify the password.
Password:ftp1234
230 Login successful.




Sunday 28 August 2016

Query to check Business Event and its Subscription details from Backend

Kindly enter Business event name in below query to get details for business event and its subscriptions.

=====================================================

select we.name
  ,we.status event_status
  ,wes.status subscription_status
  ,nvl(wes.phase,0) subscription_phase
  ,wes.licensed_flag subscription_licensed_flag
  ,we.licensed_flag event_licensed_flag
  ,wes.rule_function
from wf_events we
  ,wf_event_subscriptions wes
where
  we.name like 'xxcust.oracle.apps.cust.testBusinessEvent'
  and wes.event_filter_guid = we.guid;

=====================================================




Wednesday 17 August 2016

API to insert notes in AR transactions

To insert notes into AR transaction kindly used ARP_NOTES_PKG.insert_p API.
This API will take record variable as input parameter. we need to assigned value to it as shown in below given script.

================================================
DECLARE
  l_notes_rec ar_notes%rowtype;
begin

  --apps initialize
  mo_global.init('AR');
  mo_global.set_policy_context('S', '204');
  --
   l_notes_rec.customer_trx_id        := 1545557; -- Customer_trx_id
  l_notes_rec.note_type              := 'MAINTAIN';
  l_notes_rec.text                   := 'Test for AR note';
  l_notes_rec.customer_call_topic_id := NULL;
  l_notes_rec.call_action_id         := NULL;
  l_notes_rec.customer_call_id       := NULL;
 -- call API to insert note
  ARP_NOTES_PKG.insert_p(l_notes_rec);
--
  commit;
  dbms_output.put_line('Note inserted reference note id : ' || l_notes_rec.note_id);
END;
==================================================

screenshot for AR invoice workbench transaction notes.



===================================================
One can query this record from backend by using below given query.

select * from ar_notes_v 
where customer_trx_id=1545557;
===================================================

Tuesday 16 August 2016

How to insert/update short text attachment for AR transaction using API

Below given script you can use to insert / update short text attachment for AR invoice.
Kindly pass parameter TRX_Number value for which you want to add short text.


====================================================
DECLARE
  l_rowid                ROWID;
  l_attached_document_id NUMBER;
  l_document_id          NUMBER;
  l_media_id             NUMBER;
  l_user_id              NUMBER;
  l_category_id          NUMBER;
  l_pk1_value            fnd_attached_documents.pk1_value%TYPE;
  l_description          fnd_documents_tl.description%TYPE;
  l_seq_num           NUMBER;
  lv_short_text       VARCHAR2(1000);
  lv_bill_address1    VARCHAR2(1000);
  lv_bill_address2    VARCHAR2(1000);
  lv_bill_city        VARCHAR2(1000);
  lv_bill_state       VARCHAR2(1000);
  lv_bill_countryid   VARCHAR2(1000);
  lv_bill_postalcode  VARCHAR2(1000);
  l_title             VARCHAR2(1000);
  l_security_id       NUMBER;
  l_storage_type      VARCHAR2(1000);
  l_image_type        VARCHAR2(1000);
  l_start_date_active DATE;
  l_end_date_active   DATE;
  l_usage_type        VARCHAR2(1000);
  lv_notes_cnt        NUMBER;
  lv_bill_company     VARCHAR2(1000);
BEGIN
  SELECT customer_trx_id into l_pk1_value
  from ra_customer_trx_all
  where trx_number=&TRX_NUMBER; --AR TRANSACTION NUMBER

  SELECT user_id into l_user_id
  from fnd_user
  where user_name ='XXUSER';

  BEGIN
    SELECT COUNT(1)
      INTO lv_notes_cnt
      FROM fnd_attached_documents
     WHERE entity_name = 'RA_CUSTOMER_TRX'
       AND pk1_value = l_pk1_value;
  EXCEPTION
    WHEN OTHERS THEN
      lv_notes_cnt := NULL;
  END;

  IF lv_notes_cnt = 0 THEN
    l_description := 'Line level Notes';

    BEGIN
      SELECT fnd_documents_s.NEXTVAL INTO l_document_id FROM DUAL;
    EXCEPTION
      WHEN OTHERS THEN
        l_document_id := 1;
    END;

    BEGIN
      SELECT fnd_attached_documents_s.NEXTVAL
        INTO l_attached_document_id
        FROM DUAL;
    EXCEPTION
      WHEN OTHERS THEN
        l_attached_document_id := 1;
    END;

    BEGIN
      SELECT NVL(MAX(seq_num), 0) + 10
        INTO l_seq_num
        FROM fnd_attached_documents
       WHERE pk1_value = l_pk1_value
         AND entity_name = 'RA_CUSTOMER_TRX';
    EXCEPTION
      WHEN OTHERS THEN
        l_seq_num := 1;
    END;

    BEGIN
      SELECT category_id
        INTO l_category_id
        FROM fnd_document_categories_vl
       WHERE name = 'MISC';
    EXCEPTION
      WHEN OTHERS THEN
        l_category_id := NULL;
    END;

    fnd_documents_pkg.insert_row(x_rowid             => l_rowid,
                                 x_document_id       => l_document_id,
                                 x_creation_date     => SYSDATE,
                                 x_created_by        => l_user_id,
                                 x_last_update_date  => SYSDATE,
                                 x_last_updated_by   => l_user_id,
                                 x_last_update_login => l_user_id,
                                 x_datatype_id       => 1,
                                 x_category_id   => l_category_id,
                                 x_security_type => 2,
                                 x_publish_flag  => 'Y',
                                 x_usage_type    => 'O',
                                 x_language      => 'US',
                                 x_description   => l_description,
                                 x_file_name     => NULL,
                                 x_title         => 'Line level Notes',
                                 x_media_id      => l_media_id);
    fnd_documents_pkg.insert_tl_row(x_document_id       => l_document_id,
                                    x_creation_date     => SYSDATE,
                                    x_created_by        => l_user_id,
                                    x_last_update_date  => SYSDATE,
                                    x_last_updated_by   => l_user_id,
                                    x_last_update_login => l_user_id,
                                    x_language          => 'US',
                                    x_description       => l_description                                
                                    );
    fnd_attached_documents_pkg.insert_row(x_rowid                    => l_rowid,
                                          x_attached_document_id     => l_attached_document_id,
                                          x_document_id              => l_document_id,
                                          x_creation_date            => SYSDATE,
                                          x_created_by               => l_user_id,
                                          x_last_update_date         => SYSDATE,
                                          x_last_updated_by          => l_user_id,
                                          x_last_update_login        => l_user_id,
                                          x_seq_num                  => l_seq_num,
                                          x_entity_name              => 'RA_CUSTOMER_TRX',
                                          x_column1                  => NULL,
                                          x_pk1_value                => l_pk1_value,
                                          x_pk2_value                => NULL,
                                          x_pk3_value                => NULL,
                                          x_pk4_value                => NULL,
                                          x_pk5_value                => NULL,
                                          x_automatically_added_flag => 'N',
                                          x_datatype_id              => 1,
                                          x_category_id              => l_category_id,
                                          x_security_type            => 2,
                                          x_publish_flag             => 'Y',
                                          x_language                 => 'US',
                                          x_description              => l_description,
                                          x_media_id                 => l_media_id);
                                       
                                          DBMS_OUTPUT.PUT_LINE ('Media id '||l_media_id);
                                       
                                          lv_short_text := 'Test for short text attachment INSERT';

    INSERT INTO fnd_documents_short_text
    VALUES
      (l_media_id, lv_short_text, NULL);

    COMMIT;
  ELSIF lv_notes_cnt > 0 THEN
    SELECT MAX(document_id),
           category_id,
           seq_num,
           ROWID,
           attached_document_id
      INTO l_document_id,
           l_category_id,
           l_seq_num,
           l_rowid,
           l_attached_document_id
      FROM fnd_attached_documents
     WHERE entity_name = 'RA_CUSTOMER_TRX'
       AND pk1_value = l_pk1_value
     GROUP BY category_id, seq_num, ROWID, attached_document_id;

    SELECT description,
           title,
           fd.media_id,
           fd.security_id,
           fd.storage_type,
           fd.image_type,
           fd.start_date_active,
           fd.end_date_active,
           fd.usage_type
      INTO l_description,
           l_title,
           l_media_id,
           l_security_id,
           l_storage_type,
           l_image_type,
           l_start_date_active,
           l_end_date_active,
           l_usage_type
      FROM fnd_documents_tl fdt, fnd_documents fd
     WHERE fdt.document_id = fd.document_id
       AND fdt.document_id = l_document_id;

    ---------------------
    BEGIN
      fnd_documents_pkg.update_row(x_document_id       => l_document_id,
                                   x_last_update_date  => SYSDATE,
                                   x_last_updated_by   => l_user_id,
                                   x_last_update_login => l_user_id,
                                   x_datatype_id       => 1,
                                   x_category_id       => l_category_id,
                                   x_security_type     => 2,
                                   x_security_id       => l_security_id,
                                   x_publish_flag      => 'Y',
                                   x_image_type        => l_image_type,
                                   x_storage_type      => l_storage_type,
                                   x_usage_type        => 'O',
                                   x_start_date_active => l_start_date_active,
                                   x_end_date_active   => l_end_date_active,
                                   x_language          => 'US',
                                   x_description       => l_description,
                                   x_file_name         => NULL,
                                   x_media_id          => l_media_id,
                                   x_title             => l_title);
    EXCEPTION
      WHEN OTHERS THEN
        NULL;
    END;

    BEGIN
      fnd_documents_pkg.update_tl_row(x_document_id       => l_document_id,
                                      x_last_update_date  => SYSDATE,
                                      x_last_updated_by   => l_user_id,
                                      x_last_update_login => l_user_id,
                                      x_language          => 'US',
                                      x_description       => l_description,
                                      x_title             => l_title);
    EXCEPTION
      WHEN OTHERS THEN
        NULL;
    END;

    BEGIN
      fnd_attached_documents_pkg.update_row(x_rowid                    => l_rowid,
                                            x_attached_document_id     => l_attached_document_id,
                                            x_document_id              => l_document_id,
                                            x_last_update_date         => SYSDATE,
                                            x_last_updated_by          => l_user_id,
                                            x_last_update_login        => l_user_id,
                                            x_seq_num                  => l_seq_num,
                                            x_entity_name              => 'RA_CUSTOMER_TRX',
                                            x_column1                  => NULL,
                                            x_pk1_value                => l_pk1_value,
                                            x_pk2_value                => NULL,
                                            x_pk3_value                => NULL,
                                            x_pk4_value                => NULL,
                                            x_pk5_value                => NULL,
                                            x_automatically_added_flag => 'N',
                                            x_datatype_id              => 1,
                                            x_category_id              => l_category_id,
                                            x_security_type            => 2,
                                            x_publish_flag             => 'Y',
                                            x_usage_type               => l_usage_type,
                                            x_start_date_active        => l_start_date_active,
                                            x_end_date_active          => l_end_date_active,
                                            x_language                 => 'US',
                                            x_description              => l_description,
                                            x_media_id                 => l_media_id,
                                            x_title                    => l_title);
                                            DBMS_OUTPUT.PUT_LINE ('Media id '||l_media_id);
    EXCEPTION
      WHEN OTHERS THEN
        NULL;
    END;

    lv_short_text := 'Test for short text attachment UPDATE';
 
     UPDATE fnd_documents_short_text SET short_text = lv_short_text WHERE media_id = l_media_id;

    COMMIT;
  END IF;
EXCEPTION
  WHEN OTHERS THEN
    NULL;
END;
====================================================================

CHECK FOR AR TRANSACTION ATTACHMENT POST SCRIPT RUN



Wednesday 10 August 2016

Solution for error "fdlget failed due to ORA-24345 : A Truncation or Null fetch error occurs" for Table Type value set.

Solution for error "fdlget failed due to ORA-24345 : A Truncation or Null fetch error occurs" for Table Type value set.



Suppose you define one concurrent program say "Custom Trial Balance Report".
For this program you have three parameter as below given.
a) Ledger Name
b) Period Name
c) Cost Center

While defining value set for Ledger name suppose you set its Maximum size as 20.



And same value set you attached to you concurrent program. While running concurrent program when you try to get value for Ledger Name parameter it may be give you above screenshot error. if it exist ledger name with size greater than 20.

Solution:

Kindly change your value set Maximum size to exact size for table column width.
in this case GL_LEDGERS.NAME column size is 30 char.



Once you made changes to value set. Kindly save the changes and try to run concurrent program.
Now you can see error for value set is resolved.


Friday 5 August 2016

How to create soft link for host program

Kindly create shell script xxcust_test_shell_script and save it as .prog. Then transfer it to XXCUST_TOP/bin folder by using putty/winscp.

How to find XXCUST_TOP folder path?

a)By using Putty : 
simply write below command you will get path.
> echo $xxcust_top
app01(erpdev) /product/appl/apps/apps_st/appl/xxcust

b)By using SQL query:

select variable_name, value
from fnd_env_context 
where variable_name like 'XXCUST%';

Step to create soft link for host program:

Step 1:Go to the custom top as below:
>cd $XXCUST_TOP/bin
app01(erpdev)/product/appl/apps/apps_st/appl/xxcust/12.0.0/bin

Step 2: Use 'fndcpesr' command to create soft link

$pwd
app01(erpdev) /product/appl/apps/apps_st/appl/xxcust/12.0.0/bin

$ln -s $FND_TOP/bin/fndcpesr xxcust_test_shell_script

Note: Kindly mentioned only file name without extension (.prog) while creating soft link.

Once this command executed you can see new xxcust_test_shell_script link file got created. kindly refresh winscp XXCUST_TOP/bin folder to view new file.

Tuesday 12 July 2016

Create User for Oracle cloud/Fusion

Create first implementation user

Login with administrator user for cloud instance. 


Navigation : Setup and Maintenance
In All Task Tab enter Name as "Create Implementation User"


Save it



Click on Go to Task icon it will open identify Manager - Self Service



Click on Administration link on right hand side upper part


Click on Create User Link



Enter details for field like First Name, Last Name, Email, etc.
Also enter User Login which is username for cloud application and enter Password which we need to change again while login first time to cloud.

Save all details and user got created.

Now click on Roles to assign roles to your user. It is same way we assign responsibilities in R11 and R12 version of EBS.


Click on Assign icon to assign different roles to your user.


Enter Name for roles and search for it.
e.g. In the Display Name field, search on Application Implementation Consultant


Search it and Add it to your user.

In the same way we can assign some of below given roles to user.
OIAdministrators, Human Resource Manager, Employee, Application Implementation Consultant, IT Security Manager, System Administrators, Payables, Receivables etc.




Now sign out from current login and by using new user try to login to cloud application. it will ask to reset password for first time.

In this way we can create user for cloud application (Fusion Application)


Sunday 19 June 2016

Get On Hand Quantities using API in Oracle Apps

This script can be used to get the below quantities.
1. On-hand Quantity
2. Available to Reserve
3. Quantity Reserved
4. Quantity Suggested
5. Available to Transact
6. Available to Reserve

You can also get the On-hand quantities from the table mtl_onhand_quantities 

Script :

==========================================================
DECLARE
--  
   x_return_status         VARCHAR2 (50);
   x_msg_count             VARCHAR2 (50);
   x_msg_data              VARCHAR2 (50);
   v_item_id               NUMBER;
   v_org_id                NUMBER;
   v_qoh                   NUMBER;
   v_rqoh                  NUMBER;
   v_atr                   NUMBER;
   v_att                   NUMBER;
   v_qr                    NUMBER;
   v_qs                    NUMBER;
   v_lot_control_code      BOOLEAN;
   v_serial_control_code   BOOLEAN;
--
 BEGIN
--
    -- Set the variable values
    v_item_id := '7867';
    v_org_id := 122;
    v_qoh := NULL;
    v_rqoh := NULL;
    v_atr := NULL;
    v_lot_control_code := FALSE;
    v_serial_control_code := FALSE;
--
    -- Set the org context
    fnd_client_info.set_org_context (26);
--
    -- Call API
    inv_quantity_tree_pub.query_quantities
    (p_api_version_number       => 1.0,
     p_init_msg_lst             => 'F',
     x_return_status            => x_return_status,
     x_msg_count                => x_msg_count,
     x_msg_data                 => x_msg_data,
     p_organization_id          => v_org_id,
     p_inventory_item_id        => v_item_id,
     p_tree_mode                => apps.inv_quantity_tree_pub.g_transaction_mode,     
     p_is_revision_control      => FALSE,
     p_is_lot_control           => v_lot_control_code,     
     p_is_serial_control        => v_serial_control_code,
     p_revision                 => NULL,        
     p_lot_number               => NULL,           
     p_lot_expiration_date      => SYSDATE,
     p_subinventory_code        => NULL,    
     p_locator_id               => NULL,     
     p_onhand_source            => 3,
     x_qoh                      => v_qoh,      
     x_rqoh                     => v_rqoh,           
     x_qr                       => v_qr,
     x_qs                       => v_qs,
     x_att                      => v_att,  
     x_atr                      => v_atr    
    );
--

   DBMS_OUTPUT.put_line ('On-Hand Quantity is: ' || v_qoh);
   DBMS_OUTPUT.put_line ('Available to reserve is: ' || v_atr);
   DBMS_OUTPUT.put_line ('Quantity Reserved is: ' || v_qr);
   DBMS_OUTPUT.put_line ('Quantity Suggested is: ' || v_qs);
   DBMS_OUTPUT.put_line ('Available to Transact is: ' || v_att);
   DBMS_OUTPUT.put_line ('Available to Reserve is: ' || v_atr);
--
 EXCEPTION
    WHEN OTHERS
    THEN
       DBMS_OUTPUT.put_line ('ERROR: ' || SQLERRM);
 END;
========================================================================================

How to resolve issue for BIP RTF template XML tags showing value as <?ref: 0000xx?>

 How to resolve issue for BIP RTF template XML tags showing value as <?ref: 0000xx?>  Sometime these xml data tags automatically chang...