ORN:V15.0 Milestone 2

From Remain Software
Jump to navigation Jump to search

In case you do not want to wait for the official milestone build, you may install the nightly builds.

New and Noteworthy in TD/OMS V15 Milestone 2

I02204 - Allow user options to appear in the top-level menu User options groups can now appear in the top-level context menu.

More information can be found in the user options view help


V15ms2 useropt1.png


V15ms2 useropt2.png



Remember "P" Setting in the Components View. The Prod icon.png Icon in the Components view will show only production objects. This action was activated on every new session. Now, the last setting is remembered.


Flexible Job Descriptions. After the installation of this milestone, the NORMAL and FAST job descriptions have been converted to new logic. You can now add new Job Descriptions using Job Description Maintenance.

This system enables you to define default job descriptions at every step in the workflow using an inheritance chain. You can add and override job descriptions at various levels.


Tdoms15m02jobd2.png


Also, a specific job description can be chosen before the transfer starts.


Tdoms15m02jobd1.png


The command line API OMQRTVJD can retrieve the active job description in a specific context. The documentation is here.


TD/OMS Database Login REST API A Rest API has been created to log into TD/OMS and get a security token for further API access. The token is based on JWT technology. If you want to get access to the TD/OMS REST API, you need to set up your Apache server with the following command (if you don't have them, restore library ILEASTIC and LIBHTTP first from the savefile in your TD/OMS library):
  CFGRESTSRV ACTC(*ADD)                     
           SERVER(OMSREST)                
           USER(OMS)                      
           GENLIB(<omslib>)               
           TRGLIB(<omslib>)               
           LIBL(<omslib> ILEASTIC LIBHTTP)


Login API specification: File:Login rest.json



TD/OMS Database REST API A Rest API has been created to securely and dynamically get data from the TD/OMS database. If you want to get access to the TD/OMS Database API, you need to set up your Apache server with the following command (if you don't have them, restore library ILEASTIC and LIBHTTP first from the savefile in your TD/OMS library):
  CFGRESTSRV ACTC(*ADD)                     
           SERVER(OMSREST)                
           USER(OMS)                      
           GENLIB(<omslib>)               
           TRGLIB(<omslib>)               
           LIBL(<omslib> ILEASTIC LIBHTTP)


Retrieve Database API.png


Database API specification: OMRDBA_DataBase_API.json

Database Schema specification: OMRDBA_DataBase_Schema.json

Issue: I02227 - Retrieve Database records in JSON format


New CLI API's We are moving all TD/OMS business logic into separate programs for our back-end modernization project. These APIs can also be called using a command with the same name.

We have created the following API, which is a release candidate. This means that minor changes may occur before the final V15.1 release in June (at which point we are committed to the API interface). Please try out the following new CLI API.


OpenAPI Generator Enhancements

Please re-install the generator with INZOMSSRV SERVICE(*APIRESTGEN)

I02205 - Discontinue 'Legacy Server' The OAS3 legacy generator option in the Generator window has been removed.


V15ms2 legacyserver.png



I02213 - Memory leak solved We have noticed that the generated APIs leak memory due to various ALLOC operations not being followed by DEALLOC. This has been solved. If you run into memory issues, you must regenerate the API boilerplate code. Also, check out the "includeLogging" flag discussed in the issue list.

You can check the API CGi job using WRKACTJOB, Option 5, and Option 3. The Temporary Storage used field should be below 50 MB.


V15ms2 leak.png



I02153 - OpenAPI Client Generator It is now possible to generate a functional RPG Free client.


Gen Client 1.png


Gen Client 2.png



TD/OMS GUI issues/enhancements resolved

I02215 - NPE when creating a simple API
Creating a 'simple API' leads to an NPE in NewAPISpecificationAction line 222
I02191 - Task entity editor always complains it has changed
Even when nothing had changed, the entity editor wanted to save. This was caused by using a dash '-' in some fields, also used as a control character by the editor.
I02220 - NPE in TDOMSRelatedXAContextMenu
NPE when creating a context menu in some situations, e.g., in the MiWorkplace editor and News Items.
I02215 - NPE when creating a simple API
When creating a simple API from the toolbar, an NPE could occur. This was fixed
01826 - Remove the "Trailing spaces are not allowed" message
A "Trailing spaces are not allowed" message pops up in several places when typing text in the GUI. This is unneeded and has been removed.
01831 - Could not download update due to "missing wget" message
The DSPPINOMS command includes an option to check for updates. When any of the packages yum, wget, zip, and zipinfo are not installed, a "missing wget" message is shown. Now a correct message is shown indicating which package is missing.
01832 - Missing choice text in Application Definition
The choice text, 'Tmpl, *NONE, *PGM, *BLOCK,' used in Application Maintenance, was accidentally deleted from a message file. This has been restored.
I02144 - Fixed failing 'Add Server' for the ConnectWise interface.
Creating a new server for ConnectWise failed due to a change in the ConnectWise API version number.
I02145 - Fix for Service Desk Plus failing to get tasks.
The failure of the Service Desk plus interface would occur if the ConnectWise interface was also available and actively used.
I02149 - Fix for sign-in failure to Xref.
From the Xref preferences page, a sign-in to Xref can time out and fail.
I02152 - Fix for the system not opening on startup.
This can happen on a system's initial load (startup) that uses a secure connection.
I02174 - GUI option Move Transfer is crashing
NullPointerException occurs when we opt Move Transfer option at GUI to transfer the object. Fixed this issue.
I02186 - Route Navigator gives an error when a closed system is selected
Fixed. Now on a closed system, no results will be shown.
I02172 - Task filter application selection
The task filter wizard will allow a filter again without an application defined, meaning it will query all applications.
I02184 - TD/OMS empty context menu group
There was an empty menu group in context menu's when X-Analysis was installed (usually with an empty selection) named TD/OMS. This has been removed.
I02175 - Issue while transferring the object.
When we try to transfer the object and the Include sub-environments is *NONE, we get IndexOutOfBoundsException in the last object transfer confirmation page. This issue is resolved.
I02181 - Opening transfer history results in an exception
Fixed an issue while opening the transfer history view from the 'Show In' group menu.
I02182 - User option not shown in the correct context
Fixed an issue where some user options were not appearing outside of the user options group menu, but there were present only inside.
T00333 - The memento in Route Navigator view is implemented
The route navigator will no longer forget the last choices made when closed.
T00332 - Add a preview action for selecting max results in Spool View
A preview button that allows the user to select the maximum results in the Spool View is added because, usually this view has thousands of results affecting the loading speed.
I02201 - Tracker connection is failing
Fixed an issue where an exception is thrown that an implementation issue is already linked with a new task/request when an attempt is made to link that issue to a newly created task/request from the 'Link to Task/Request' actions.
I02211 - Added Xref indexing of IBMi message files.
Library message files are now included in the indexing process. Message files will be scanned for message id and the contents of the first level and second level text.
I2131 - Xref view does not expand a hit if the hit is the first line of the file.
The hit result of a find could not be expanded even though there was a line to be shown, this has now been fixed.
I02217 - Copy filter doesn't open the wizard anymore
Fixed an issue where the appropriate filter wizard would open to edit a newly copied filter for tasks, requests, applications, branches.
I02224 - Connect Wise failing due to an API change
Fixed an issue where Connect Wise was failing due to a new version of its API.
I02157 - Could not perform Column Sorting and Quick Search Filtering
In TD/OMS User Options View, the feature to sort the columns and the feature of filtering the data of the table was added.
I02158 - Converting Policy class to Messages class.
The Policy class was replaced by implementing Messages class in various bundles in TD/OMS.

Server issues/enhancements resolved

I02169 - SBSVAROMS leads to a failed transfer
In some cases, the SBSVAROMS command is failing. The buffers may contain binary data that translates to quotes.
I02167 - PHP Parser setup is wrong
A typo in the PHP parser caused problems parsing. This has been resolved for new installations of the PHP parser.
I02239 - Add API authority checks
We need to add authorization logic in the OMQCHGTP and OMQCHGRL API. This issue has been resolved.
T00341 - Adding topic for new APIs
We need to add topics for Route and Ifs Directory APIs. There is strange text available in the topic description. Need to fix that as well. This has been resolved.
I02233 - OMQCHGSL API throws an error when creating library flag is *YES and the library to create already exists.
We need to ignore the error when the library to create already exists and create library flag is *YES. This issue has been resolved.
T00330 - Change help text in OMSREF
We change help texts as we have started using modern terminology. For example - "Include Library lists" is called "Include subenvironment," and "Fix" is called "Task." This has been completed.
I02238 - OMQCHGSE Does not allow *TEMPLATE
*TEMPLATE gives an error. This issue has been resolved.
I02236 - Contains strange texts in APIs
We need to modify the help text of the new definition APIs. This issue has been resolved.
I02223 - Add new APIs to the menu
New definition APIs have been added to the menu.
I02234 - Change Message Id in Command OMQCHGRL
We have to create a new message Id to replace VRS0004 for the command OMQCHGRL. This issue has been resolved.
Variables &TENV &FENV at transfer/object/create/start missing
When many variables are part of an event key, some variables are not in the key. This has been solved.
I02230 - Change the authority checking logic in the application API
We need to change the authority checking logic and move authorization logic from *INZSR to the srValidate routine in the application API. This issue has been resolved.
I02202 - Implement security logic in the sub-environment API
We need to add the security logic for the application in the sub-environment API. This issue has been resolved.
I02187 - Fix recreation of dependent logical file
When a PF has dependencies where duplicate logical files are connected. It may happen when a view is created using multiple files. The transfer object process identifies the duplicate dependencies and tries to create duplicate objects in the fall-back library. This issue has been resolved.
I02161 - Lift lock restrictions on DLTAPPOMS
Currently, a deletion requires that many files can be locked exclusively. The API should work without this requirement. This issue has been resolved.
I02200 - Add help text in the DLTAPPOMS command
We need to add the help text for Remove comments and Remove job description fields in the DLTAPPOMS command. This issue has been resolved.
KE150/T0092 - Send a network message to a queue
SNDNETMOMS now sends to a user profile. If this fails, try sending a message to a message queue. A message queue is more efficient and less insecure than a user profile.
I02185 - TD/OMS cannot handle LPARs over 255
The number of LPARS that the license system can handle is 255. Anything over this partition will be recognized as 255. This causes problems for users with a higher LPAR number. This has been solved.
I02231 - Add SRGVAR routine to replace hardcoded text.
Added SRGVAR routine to replace hardcoded substitution text. We have created a new routine retrieveMessageText, which fetches message Ids from the OMSMSG message file.
I02232 - Add API authority checks
We fixed the API authorization issues in OMQCHGLL, OMQCHGSL, and OMQCHGEN.
I02136 - Remove job descriptions in the application and remote system maintenance screen.
We need to remove job descriptions in the Application and remote system maintenance screen. This has been fixed and also the Job Description File conversion program has been written.
I02176 - OMX940 program is crashing.
OMX940 program is crashing while receiving definitions at the SPINOZA machine. This has been fixed.
I02214 - The display option doesn't work for the job description
If the job description has parent override then display option = 5 doesn't show the job description details. Resolved this issue.
I02219 - Job description override not removed
When we make an override on the APPC/ENV/SUBENV/REMOTE level and then remove the remote, the overrides are not removed from the file. Resolved this issue.
I02228 - Synchronize remote job takes the local job description
When the registry setting is set to sync the remote job description code, the job description and library belonging to the local entry are used. This is not correct; it should sync the job description code but still fetch the matching jobd for that context. Resolved this issue.
I02229 - Job description copy makes it impossible to delete the Application specific job description
When we create the application-specific job description and later create the same job description at the system level using copy option on the existing job description then try to delete the Application specific job description. It doesn't allow to delete. Resolved this issue.
I02151 - Show job description code into Fix Processing.
When the object is transferred, TD/OMS should also show the associated default job description code. If the default job description is not found, give the option to select the related job description code. Resolved this issue.

OpenAPI Smaller Issues

I02242 - OAS3Wizard improvements
The first generated module should be '01' and not '1', and the list of default generated responses now only includes 200 and 400
I02226 - Rest API - Introduced includes logging
Introduced the "includeLogging" keyword to check the memory leak in the options file. If the value is set *YES, we generate additional statements to check memory leaks inside the module/program.
I02221 - Every %alloc should be followed by a dealloc.
There were significant memory problems for the jobs caused by this. Fixed this issue.
I02222 - Rest API MCH4437 - Program import not found
Dynamic database access API referred to a json_setNull procedure export from the service program JSONXML which does not exist. Fixed this issue.
I02218 - Rest API - Additional space in generated members
In generated REST API members, there were a lot of additional spaces between each procedure and block of statements. Fixed this issue.
I02210 - API Generator - Port number as path variable will fail
If we use the port number as a path variable, then we get an invalid pathname error message. Fixed this issue.
I02212 - API Generator - Parsing of Path and Query variables
The Path and Query parameters details were not in P members but only in M members. So we need to introduce comments which contain the information about Path and Query variables in the "checkRequest" and the "process_200" methods. This issue has been resolved.
I02192 - REST API - Deallocation of JSON objects
All JSON objects occupy memory that needs to be de-allocated after the process. Resolved this issue.
I02188 - REST API - Generator Issue for a numeric field
When the schema type is number, json_setnum, and integer json_setint should be used in the generated source. Resolved this issue.
I02183 - REST API - Generator Issue for array data structure
When we have an array schema inside the object schema, the parsing logic of request input is not generated correctly. Resolved this issue.
I02164 - REST - API Internal procedure generation issue.
When we have an object schema containing more than one array schema, the parsing logic of request input is not generated correctly. Resolved this issue.
I02207 - API Generator - Import shared prototype in module
The shared prototype is not imported into the modules. It should be imported into each module. Resolved this issue.
I02160 - The post response of the tasklist contains the key shortTasKDescription with K as a capital letter
The post response of the tasklist contains the key shortTasKDescription, which is different from schemas. It contains the capital letter K. Resolved this issue.