Can anyone help with extracting data via Oracle SQL Developer?


Does anyone have any experience in extracting TRIRIGA data from the database directly through Oracle SQL Developer? I am trying to extract through SQL code, and combine in one table, the data from triSpace, triSpaceClassCurrent, and triSpaceStandardsSpec. The idea is to create a single table with all spaces, space classifications, and space standards.

[Admin: To see other related posts, use the Oracle tag or SQL tag.]

Continue reading

Why is the root classification set to the ~ (tilde) symbol?


In my current TRIRIGA 10.3.2 / 3.5.2.1 environment, I see that some of the classification fields have a root classification value set to ~ (tilde) symbol. This seems strange to me, because classification fields can’t be created with a blank value or any such symbol.

And when I migrate the BO with such fields in another TRIRIGA 10.5.2 / 3.5.2.1 environment, it’s automatically populating the classification value (e.g. Expenditure Type) in the root classification. Has anyone seen a scenario where the root classification is set to the ~ symbol?

[Admin: To see other related posts, use the Classifications tag.]

Continue reading

How do you move classifications from one environment to another?


I recently set up a new environment in which I need to migrate the classifications (not just the record data) from the existing system. What is the fastest way to do this and ensure that the classifications are set up properly in the new system?

I migrated the BOs and forms. I checked the Include association for the BO to itself and with the classification BO. The form has been added to the “Includes/Forms” tab of itself as well as the classification form. But I still don’t see this BO added under the classification hierarchy when I click on “New” to create the root record.

[Admin: This post is related to the 03.29.17 post about creating a classification. To see other related posts, use the Classifications tag or Object Migration tag.]

Continue reading

Why aren’t classification and BO name changes filtered as expected?


When using a query and applying filters to classification or business object type fields, there are instances in which the data may not filter as expected. This can happen when the referenced classification or business object records are renamed, and the query is filtering on those name values. To summarize the scenario:

  • (1) A user creates a record that contains a classification field, and populates that classification field with a value.
  • (2) Another user changes the name of the classification record, which was used to populate the field in #1.
  • (3) A user then runs a query that contains the field referenced in #1, and tries to filter values…

In order for filters to take effect for the most current value of a classification or business object type record when changed, records referencing those values in their fields must be updated. One approach to doing this is writing a simple workflow that updates the referenced data:

  • Start Task: Workflow triggers on the classification object.
  • Task 1: Gets the associated referenced object.
  • Task 2: Clears the classification value.
  • Task 3: Maps the classification field as the “Source” to the target field.

Note: For every object that the classification field references, the 3 tasks must be repeated. The workflow should only be triggered as an asynchronous process, since the workflow processing time will vary with how many records need to be updated.

[Admin: This post is related to the 06.08.17 post about SQL data not matching the viewed application data, and the 01.04.17 post about filters failing when using changed classification values. To see other related posts, use the Filter tag.]

Continue reading

How do you select the child-level records in a hierarchy report?


I’ve created a hierarchy report based on the classifications BO. I want to view the child levels below the parent level in the report. I am using this hierarchy report as a query for an Add button on a form. I am able to select the top-level record, but I am not able to select any of the child-level records. Is it possible to select the child-level records? If so, is there something else I need to do in the report?

[Admin: This post is related to the 08.25.16 post about selecting child projects. To see other related posts, use the Classifications tag.]

Continue reading

How do you avoid the tree error after deleting hierarchy records?


I’m loading data via the Data Integrator into a Classifications business object. In the first load, my data is successfully loaded. However, I notice some data mapping issues. So I delete the records from a query, then I clear cache. In the second load, my data is successfully loaded. I go into the Classifications hierarchy form and get the dreaded message:

“Please contact your system administrator. The tree control reported this error while trying to draw itself: There was an error in the database or the query definition.”

When this happens, I tell myself that I deleted the records too quickly and didn’t allow the system to reset in time. The solution is the dreaded wait time for the Cleanup Agent to process records that takes 12 hours, 1 day, 3 days, or sometimes 1 week, before all records with a TRIRECORDSTATESY is null, are removed from the database. The only workaround seems to be to increase the Cleanup Agent time. However, is there a sequence of steps I need to follow before I delete records from a hierarchy form, so that I don’t get the dreaded message each time?

Regarding your scenario of loading hierarchy records, deleting them, then reloading the same records to cause the tree control to fail, that should be considered a platform defect. I would advise you to enter a PMR, so Support can look into this issue. The tree control should never fail to render as you describe it.

To help with your issue, there is an unsupported platform feature that allows the Cleanup Agent to delete data immediately. If you add the following property to your TRIRIGAWEB.properties file and set CLEANUP_AGENT_RECORD_DATA_AGE=2, the Cleanup Agent when run will delete records that are 2 minutes old. This allows you to immediately delete a bad data load, and allows you to run it cleanly again a second time without conflicts from that data already existing in a null state.

[Admin: This post is related to the 08.11.16 post about the Organization hierarchy tree not being displayed, the 08.04.16 post about unretiring and returning records to null, and the 02.24.16 post about executing the Cleanup Agent (a.k.a. Platform Maintenance Scheduler) after retiring a record.]

Continue reading