In this article we will discuss the 'script to delete concurrent program and executable from backend'.
------------------------------------------------------------------------------
delete concurrent program definition and executable from back-end
-------------------------------------------------------------------------------
-- syntax:
-- delete_program (program_short_name, application_short_name)
-- delete_executable (program_short_name, application_short_name)
-------------------------------------------------------------------------------
DECLARE
lv_prog_short_name VARCHAR2(240);
lv_appl_short_name VARCHAR2(240);
BEGIN
-- set the variables first
lv_prog_short_name := 'XX_BOE_DTLS';-- concurrent program(XX BOE Details Reports) short name
lv_appl_short_name := 'EXE_BOE_DTLS';-- application short name
-- see if the program exists. if found, delete the program
IF fnd_program.program_exists (lv_prog_short_name, lv_appl_short_name) AND
fnd_program.executable_exists (lv_prog_short_name, lv_appl_short_name)
THEN
fnd_program.delete_program(lv_prog_short_name, lv_appl_short_name);
fnd_program.delete_executable(lv_prog_short_name, lv_appl_short_name);
COMMIT;
DBMS_OUTPUT.PUT_LINE (lv_prog_short_name || ' deleted successfully');
-- if the program does not exist in the system
ELSE
DBMS_OUTPUT.PUT_LINE (lv_prog_short_name || ' not found');
END IF;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE ('Error: ' || SQLERRM);
END;
---------------------------------------------------------------------------------
Script for deleting the data definition.
------------------------------------------------>
BEGIN
XDO_DS_DEFINITIONS_PKG.DELETE_ROW('INV','NRGINTR');
END;
--------------------------------------------------------
--------------------------------------------------------
Script for deleting the template.
------------------------------------------------------>
BEGIN
XDO_TEMPLATES_PKG.DELETE_ROW('INV','NRGINTR');
END;
-----------------------------------------------------------------------------------------------------------
We can also use it as below.
Begin
fnd_program.delete_program('program short name','schema');
fnd_program.delete_executable('program short name','schema');
commit;
End;
If we have concurrent program 'XX_BOE_Details_Reports' with short name 'XX_BOE_DTLS' and we have executable name 'EXE_BOE_DTLS' of concurrent program in apps schema then we can just use it to 'delete concurrent program from backend' as below.
Begin
fnd_program.delete_program('XX_BOE_DTLS','APPS');
fnd_program.delete_executable('EXE_BOE_DTLS','APPS');
commit;
End;
Note:- The same concurrent program can be disable through front-end if you decide not to use it.
------------------------------------------------------------------------------
delete concurrent program definition and executable from back-end
-------------------------------------------------------------------------------
-- syntax:
-- delete_program (program_short_name, application_short_name)
-- delete_executable (program_short_name, application_short_name)
-------------------------------------------------------------------------------
DECLARE
lv_prog_short_name VARCHAR2(240);
lv_appl_short_name VARCHAR2(240);
BEGIN
-- set the variables first
lv_prog_short_name := 'XX_BOE_DTLS';-- concurrent program(XX BOE Details Reports) short name
lv_appl_short_name := 'EXE_BOE_DTLS';-- application short name
-- see if the program exists. if found, delete the program
IF fnd_program.program_exists (lv_prog_short_name, lv_appl_short_name) AND
fnd_program.executable_exists (lv_prog_short_name, lv_appl_short_name)
THEN
fnd_program.delete_program(lv_prog_short_name, lv_appl_short_name);
fnd_program.delete_executable(lv_prog_short_name, lv_appl_short_name);
COMMIT;
DBMS_OUTPUT.PUT_LINE (lv_prog_short_name || ' deleted successfully');
-- if the program does not exist in the system
ELSE
DBMS_OUTPUT.PUT_LINE (lv_prog_short_name || ' not found');
END IF;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE ('Error: ' || SQLERRM);
END;
---------------------------------------------------------------------------------
Script for deleting the data definition.
------------------------------------------------>
BEGIN
XDO_DS_DEFINITIONS_PKG.DELETE_ROW('INV','NRGINTR');
END;
--------------------------------------------------------
--------------------------------------------------------
Script for deleting the template.
------------------------------------------------------>
BEGIN
XDO_TEMPLATES_PKG.DELETE_ROW('INV','NRGINTR');
END;
-----------------------------------------------------------------------------------------------------------
We can also use it as below.
Begin
fnd_program.delete_program('program short name','schema');
fnd_program.delete_executable('program short name','schema');
commit;
End;
If we have concurrent program 'XX_BOE_Details_Reports' with short name 'XX_BOE_DTLS' and we have executable name 'EXE_BOE_DTLS' of concurrent program in apps schema then we can just use it to 'delete concurrent program from backend' as below.
Begin
fnd_program.delete_program('XX_BOE_DTLS','APPS');
fnd_program.delete_executable('EXE_BOE_DTLS','APPS');
commit;
End;
Note:- The same concurrent program can be disable through front-end if you decide not to use it.