Skip to main content
Question

Service Updade 22R1 - 24R2

  • February 6, 2025
  • 5 replies
  • 171 views

Forum|alt.badge.img+1

One of my customers is currently using version 22R1. However, the partner responsible for the implementation did not adhere to the IFS standards and made customizations without deploying them through the BuildPlace delivery system. Instead, they deployed everything directly in the customer's environment.

Considering this, how can we upgrade from 22R1 to 24R2 without removing the manually deployed APIs? Any ideas or solutions would be greatly appreciated.

5 replies

Forum|alt.badge.img+9
  • Do Gooder (Partner)
  • February 6, 2025

Do you know number of packages are directly deployed in 22R1 


hardik
Hero (Partner)
Forum|alt.badge.img+11
  • Hero (Partner)
  • February 6, 2025

@surendar 

If you have all the details of the customization, you can commit everything to the buildplace and prepare a delivery. This will not impact the application functionality, but it will redeploy everything, ensuring that the customer solution is fully synchronized with all customizations.

Once this is done, you can initiate the release update process. During the process, you can uplift the CRIM items in the topic branch, based on the impact assessment results.

Regards,
Hardik


Forum|alt.badge.img+1
  • Author
  • Do Gooder
  • February 6, 2025

The customer does not have a complete record of the changes they deployed directly.


Forum|alt.badge.img+10
  • Hero (Partner)
  • February 7, 2025

Absolute pain! Shame that implementation partner as much as possible.

Identifying impacted database objects will be hard, but you might be able to pick some out. I’m just throwing spaghetti here to see what fits. You could run a query directly against the database while logged on as application owner to see database objects that have been changed recently. There will be a lot of noise from custom objects and that sort of stuff though, so here’s a first stab of a query trying to find table, view and packages changed since a certain date:

SELECT object_name, object_type, created, last_ddl_time
FROM user_objects
WHERE object_type IN ('VIEW', 'PACKAGE', 'PACKAGE BODY', 'TABLE')
AND substr(object_name,-4) NOT IN ('_CFV', '_CFP', '_CFT', '_CLV', '_CLP', '_CLT') -- Custom fields and entities
AND last_ddl_time >= To_Date('2024-01-01','YYYY-MM-DD') -- Optionally

Then create a build place environment and using a tool like SQL Developer pull out the source for each object and compare. Painful, I know.

Another idea could be to compare the number of lines of source code per object in a build place and user place environment.

SELECT name, type, Count(*) AS line_count
FROM user_source
WHERE type IN ('VIEW', 'PACKAGE', 'PACKAGE BODY', 'TABLE')
AND substr(name,-4) NOT IN ('_CFV', '_CFP', '_CFT', '_CLV', '_CLP', '_CLT') -- Custom fields and entities
GROUP BY name, type

Of course, that won’t pick up changes on single lines, so you could add a sum of the number of characters of code, although the query might start running slow, and there could be noise from difference in end-of-line character(s) perhaps.

SELECT name, type, Count(*) AS line_count, Sum(Length(text)) AS source_length
FROM user_source
WHERE type IN ('VIEW', 'PACKAGE', 'PACKAGE BODY', 'TABLE')
AND substr(name,-4) NOT IN ('_CFV', '_CFP', '_CFT', '_CLV', '_CLP', '_CLT') -- Custom fields and entities
and name like 'ABC%'
GROUP BY name, type

 I hope that helps.


DHCRADPA
Hero (Customer)
Forum|alt.badge.img+11
  • Hero (Customer)
  • February 10, 2025

Still, have a look in GIT. For the packages deployed manually, they should have a “nobuild” folder where the ACPs are saved, just to keep track of them and their deployment sequence. There are things you deploy without a delivery.