Tuesday, May 6, 2008

Change the Browser Title

If you want to change the Browser Title (the words that display at the top of your web browser), simply add the following line to tririgaweb.properties:

browserTitle=Workplace Central

Thursday, May 1, 2008

Setting up Flexible Menus

In TRIRIGA 2.5 and higher flexible menus can be added to the portal. These are essentially short cuts to portal sections. The image below shows what flexible menus look like.

Setting these up is not very difficult, and to make it just a little easier a colleague of mine put together a document describing exactly how to do it. Click here to download the PDF document.
Thanks Srinath!

Troubleshooting System Performance

A big complaint at many organizations running TRIRIGA is that performance is not where they want it to be. Performance tuning can be very challenging and is often not the result of any one problem; typically there are several contributing issues. Here is a list of things to look at if you are having performance issues:

  • Make sure your hardware is appropriately sized. TRIRIGA will typically help you with this. You just need to provide them the details of how you use (or anticipate to use) the system, such as number of users, average number of new objects you add per day, number of objects in the system etc.
  • Verify that your database and application/process servers have sufficient memory allocated to them. Make sure you have sufficient memory on your severs to support the values you use
  • Optimize portal performance by removing as many queries as possible from portals and eliminate or at least cut back on the use of auto-refresh.
  • Upgrade to a current platform release – TRIRIGA is constantly improving the platform. Check the release notes for all of the more current platforms to determine if any new enhancements can help you.
  • Try to determine if the performance issues are related to the database or to process/app servers. Check memory & CPU usage to help determine this
  • Have a DBA capture long running SQL queries by running Statspack, and try to determine where they originate in the system. Many come from queries within the system that can be tuned to perform better. I have a post on my blog about this: http://www.tririga.info/2008/01/analyzing-long-running-sql-queries.html.
  • Disable any unnecessary workflows. For example, if you don't use out of box approvals or notifications you can bypass a lot of system overhead by disabling these workflows, even on a per-module basis. (Be careful here if you are not familiar with workflows)
  • Check the database for disproportionate table sizes. I had a customer with 250 million rows in IBS_SPEC_ASSIGNMENTS and only 10 million rows in IBS_SPEC
  • Get a count of all objects in the database to be sure what you have is what you expect; you may find yourself with 250k discussion threads that you never use. Here is an article in my blog on how to do this: http://www.tririga.info/2008/01/get-count-of-all-objects-in-trirga-9.html
  • Try to isolate specific actions that perform poorly, like creating a particular type of record. Analyze what the system does internally when these actions occur. Try to determine if a specific workflow or query is causing the problem and work to fix it.

If you have anything to add to this list, please let email me and let me know.

Thursday, April 24, 2008

Find Corresponding Object and Module Names

Do you know the name of a BO you are looking for, but can't figure out which module it's in? Here is a script to run under the tririga schema:

/* Get BO and corresponding Module Names - run in tririga schema */
SELECT b.NAME AS bo_name, m.module_name
FROM module_view_map m, ibs_spec_type b
WHERE m.module_id = b.spec_class_type
ORDER BY NAME

Tuesday, April 22, 2008

Utility for Viewing Configuration and Log Files

Notepad++ is a fantastic, open source utility to view and edit TRIRIGA configuration and log files (it has many other uses as well). If you are tired of looking at a jumbled mess in notepad, try Notepad++.

Monday, April 21, 2008

Locator Fields and Object Metadata Cache

If you enter data into a text locator field and as soon as you tab out the value you selected disappears, you may want to flush the Object Metadata Cache before restarting Jboss or Weblogic. I have seen this several times with the TRIRIGA 9 application where I select a valid value from a locator query and as soon as I click OK on the query with field wipes itself out. A restart would solve the problem, but a cache flush is faster and does not disrupt the end users.

Wednesday, April 9, 2008

Turn an Error Message into a SQL Statement

Consider the following error message from the server.log:

2008-03-20 15:39:07,946 ERROR [com.tririga.design.smartobject.dataaccess.GenerateSqls](ExecuteThread: '13' for queue: 'weblogic.kernel.Default') Statement : update T_TRISERVICEREQUEST set sys_projectid = 1,triDescriptionTX = ?,triStatusCL = ?,triStatusCLObjId = ?,triControlNumberCN = ?,Sys_Parent1 = ?,triPreviousStatusCL = ?,triPreviousStatusCLObjId = ?,triRequestClassCL = ?,triRequestClassCLObjId = ?,triModifiedSY = ?,coContactNumberTX = ?,triRecordNameSY = ?,triRecordStateSY = ?,triModifiedByTX = ?,triModifiedByTXObjId = ?,triRequestFullNameTX = ? where spec_id = ?

Values :
test4,
Review In Progress,
1601066,
REQ 1000516,
0,
Draft,
1600256,
CRE Moves, ten or less associates (MOVES03),
4737839,
03/20/2008 03:39:07 PM,
xxx,
REQ 1000516-0,
triReview,
Zombron, Robert - eyk343,
3835835,
REQ 1000516-CRE Moves, ten or less associates (MOVES03),
6564922,

To troubleshoot why this error message was thrown, turn it into a SQL statement like the one below, run it in SQLPlus and use your SQL troubleshooting skills to solve the problem. In this example. the triRequestFullNameTX field was set to 50 characters but the data we were trying to push had 55 characters. The solution was simply expanding the percision of the offending field to a number larger then 55.

update T_TRISERVICEREQUEST
set sys_projectid = 1,
triDescriptionTX = 'test4',
triStatusCL = 'Review In Progress',
triStatusCLObjId = 1601066,
triControlNumberCN = 'REQ 1000516',
Sys_Parent1 = 0,
triPreviousStatusCL = 'Draft',
triPreviousStatusCLObjId = 1600256,
triRequestClassCL = 'CRE Moves, ten or less associates (MOVES03)',
triRequestClassCLObjId = 4737839,
triModifiedSY = '03/20/2008 03:39:07 PM', -- NOTE may need to be formatted correctly for this column
coContactNumberTX = 'xxx',
triRecordNameSY = 'REQ 1000516-0',
triRecordStateSY = 'triReview',
triModifiedByTX = 'Zombron, Robert - eyk343',
triModifiedByTXObjId = 3835835,
triRequestFullNameTX = 'REQ 1000516-CRE Moves, ten or less associates (MOVES03)'
where spec_id = 6564922