Solved

Developer Studio Best Practice Remove Report

  • 17 October 2022
  • 7 replies
  • 265 views

Userlevel 4
Badge +11

I created a custom report using IFS Developer Studio.   When I deployed the .rdf to the target database, the report itself was created and registered in the application.  The _RPI, _REP, and _RPT  database objects were also created.

If I want to (or must) use IFS Developer Studio to remove the report from the target instance, what is the best practice to do so?   

I see that I can make the entire model obsolete, but I also want to remove (not just ungrant) the report and drop the database objects.

I also see the following procedures but I’m unsure if I should incorporate these into my existing rdf so that when it’s deployed to the target instance the objects are removed. 

report_sys.remove_report_definition

database_sys.remove_package

database_sys.remove_table

database_sys.remove_view

 

icon

Best answer by hamalk 18 October 2022, 05:01

View original

7 replies

Userlevel 5
Badge +13

Hi @Tracy Norwillo 

 

Hope following information in techdoc will help you to handle your requirement

Remove Obsolete Objects Section

This section should be placed at the end of the UPG file. Here obsolete views, packages, report tables, temporary tables, indexes, constraints and sequences can be dropped. Developers should never 'drop' any columns or tables that could cause data loss for the customer. Instead, there are methods in Database_SYS for obsoleting these two objects, Obsolete_Column and Obsolete_Table. These methods drop constaints etc. and renames them with a certain pattern. Columns are prefixed with OBSOLETE_COLUMN and tables with OBSLETE, but also suffixed with the component name. The removal of the renamed objects should be handled in the <Component-short-name>cl.sql file (clear-script).

 

https://docs.ifs.com/techdocs/22r2/060_development/027_base_server_dev/007_concepts/200_upgrade_scripts/020_cdb_files/#remove_obsolete_objects

 

https://docs.ifs.com/techdocs/22r2/060_development/027_base_server_dev/007_concepts/200_upgrade_scripts/010_upg_files/#remove_obsolete_objects_section

 

/Harshini 

Userlevel 4
Badge +11

Thanks @hamalk , that makes sense for the database objects. 

Are the “404 Not Found” errors for the examples just a temporary thing or have examples not yet been created for the tech docs?  I was looking for an example of the clear script.

Is there any advice on removing the report model related files like the .rdf, xsd, and report projection?

Userlevel 5
Badge +13

Hi @Tracy Norwillo 

 “404 Not Found” errors are there for non working links which need to be fixed.

 

tagging @ChanakaAmarasekara , any comments on following? 

Is there any advice on removing the report model related files like the .rdf, xsd, and report projection?

\

/Harshini

Userlevel 4
Badge +11

Thanks again @hamalk, I did find an existing clear script to reference on one of our client’s instances.  I also found the database_sys.obsolete_table procedure. 

This isn’t related to my question, but on Cloud 21r2, I could not find the database_sys.obsolete_column procedure that’s referenced in the tech doc.

Userlevel 7
Badge +15

Hi,

I guess Harshini has pointed you on how you can remove the database objects (table, view and package etc)

To remove the report instance and all related connections like projection, clients, definitions etc. you can use the report_sys.remove_report_definition and pass the report ID as a parameter. This should be in your drop script.

As for the physical files, RDF, XSD, RDL etc. You can obsolete it as the normal way that you would obsolete a file in your repo by replacing it will dummy files.

Eg. proj\source\proj\database\ProjctItemReservedMat.rdf

 

@hamalk I guess it’s ok to replace the .report  module file with a dummy file as well. If not suggest what to do.

 

Regards,

Chanaka

Userlevel 5
Badge +13

@ChanakaAmarasekara , if you want to remove .report model file you can always obsolete the model file using the Navigator RMB option “Obsolete File” in Developer studio tool 

 

Userlevel 4
Badge +11

@hamalk  and @ChanakaAmarasekara - Thanks to both of you.

Reply