<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-18717575</id><updated>2011-07-01T03:24:33.267Z</updated><title type='text'>ITG Plus: Tips &amp; Tricks</title><subtitle type='html'>A definitive resource for for ITG developers.

Check out the nitty gritties of ITG in simple words and learn them through simple examples.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://itgplus.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://itgplus.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ranjeet Rain</name><uri>http://www.blogger.com/profile/09744728527016513111</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www13.brinkster.com/ranjeetrain/images/blogger.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>8</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-18717575.post-116974527102486178</id><published>2007-01-25T16:39:00.000Z</published><updated>2007-01-25T17:16:16.310Z</updated><title type='text'>List the sub project names</title><content type='html'>Did you ever need to list down the Project/Subprojects that are a part of a particular Project Plan? The problem while dealing with this issue is that you do not know in advance how many levels of nesting of Project/Subproject/Task level there might be. Well, fear not, DECODE long live!&lt;br /&gt;&lt;br /&gt;But there are more challenges. Including but not limited to, finding the start and end positions of the substring that you want to extract. Well, if that's what you came here looking for, here is your solution. And if you are not looking for it, save it in your scrap book for your future use. Because the day you need it, you will certainly realize its utility.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The code:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;hr /&gt;&lt;pre&gt;SELECT decode(instr(project_path_name_list,   '&gt;',   1,   2),   0,&lt;br /&gt;SUBSTR(project_path_name_list,   instr(project_path_name_list,   '&gt;') + 2),&lt;br /&gt;SUBSTR(SUBSTR(project_path_name_list,   instr(project_path_name_list,   '&gt;') + 2),   0,&lt;br /&gt;       ((instr(project_path_name_list,   '&gt;',   1,   2) -(instr(project_path_name_list,   '&gt;')) -2)&lt;br /&gt;     )&lt;br /&gt;)&lt;br /&gt;)&lt;br /&gt;FROM kdrv_projects_v&lt;br /&gt;WHERE master_project_name = 'New Project'&lt;br /&gt;AND project_type_code = 'TASK'&lt;br /&gt;&lt;/pre&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;Just replace the project name with the one you want and you are ready to go!!!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;- Ranjeet Rain&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18717575-116974527102486178?l=itgplus.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itgplus.blogspot.com/feeds/116974527102486178/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18717575&amp;postID=116974527102486178' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/116974527102486178'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/116974527102486178'/><link rel='alternate' type='text/html' href='http://itgplus.blogspot.com/2007/01/list-sub-project-names.html' title='List the sub project names'/><author><name>Ranjeet Rain</name><uri>http://www.blogger.com/profile/09744728527016513111</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www13.brinkster.com/ranjeetrain/images/blogger.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18717575.post-113501059145552728</id><published>2005-12-19T16:41:00.000Z</published><updated>2005-12-19T16:43:11.473Z</updated><title type='text'>Request Summary Pie Chart (Bug?)</title><content type='html'>Recently, while working with a Request Summary Pie Chart I came across a wierd situation accidently. I noticed that the Chart will not drill down in certain cases. Upon researching further I came to conclude that a Request Summary Pie Chart will not drill down if there is only one result in a category. Add a request in the category that the chart fails to drill down to and it will start to work flawlesly.&lt;br /&gt;&lt;br /&gt;A bug? Or a feature?&lt;br /&gt;&lt;br /&gt;I am on Version 6.0.0 SP5. Apparently, this has been observed in past but Mercury folks were unable to reproduce the error. Probably this is the first instance when I have a scenario when the bug will be evident.&lt;br /&gt;&lt;br /&gt;Mercury, you have a mail!&lt;br /&gt;&lt;br /&gt;-- Ranjeet Rain&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18717575-113501059145552728?l=itgplus.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itgplus.blogspot.com/feeds/113501059145552728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18717575&amp;postID=113501059145552728' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113501059145552728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113501059145552728'/><link rel='alternate' type='text/html' href='http://itgplus.blogspot.com/2005/12/request-summary-pie-chart-bug.html' title='Request Summary Pie Chart (Bug?)'/><author><name>Ranjeet Rain</name><uri>http://www.blogger.com/profile/09744728527016513111</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www13.brinkster.com/ranjeetrain/images/blogger.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18717575.post-113216085228940097</id><published>2005-11-16T16:36:00.000Z</published><updated>2005-11-16T17:12:12.656Z</updated><title type='text'>Notification Delays</title><content type='html'>Its raining outside and I am waiting for a notification from ITG. I performed an action on a request and it was expected to send me a confirmation. What's going on?!?&lt;br /&gt;&lt;br /&gt;Did you ever feel that email notifications were not being sent in time by ITG? I did. And I researched why. Turned out it was a setting in server.conf. The settings is named&lt;br /&gt;EMAIL_NOTIFICATION_CHECK_INTERVAL. It specifies, in seconds, how often the service responsible for sending email notifications should run. If it is set to 600, the service would run every 10 minutes. So even if you perform an action 'now' and you expect a notification 'immediately', it would do so only when the scheduler runs next.&lt;br /&gt;&lt;br /&gt;Now that was very simple a reason, isn't it!!!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Well, one more tip before I leave for the day. Wanna turn off notifications from an ITG server altogether?&lt;br /&gt;&lt;br /&gt;Open server.conf and set the parameter com.kintana.core.server.TURN_ON_NOTIFICATIONS to false. Run &lt;itg&gt;/bin/kUpdateHtml.sh and re-start the ITG server. Bingo! No more notifs from ITG. About the time you start carrying your PDA to dinner with you!&lt;br /&gt;&lt;br /&gt;&lt;em&gt;-- Ranjeet Rain&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18717575-113216085228940097?l=itgplus.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itgplus.blogspot.com/feeds/113216085228940097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18717575&amp;postID=113216085228940097' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113216085228940097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113216085228940097'/><link rel='alternate' type='text/html' href='http://itgplus.blogspot.com/2005/11/notification-delays.html' title='Notification Delays'/><author><name>Ranjeet Rain</name><uri>http://www.blogger.com/profile/09744728527016513111</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www13.brinkster.com/ranjeetrain/images/blogger.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18717575.post-113183644975665414</id><published>2005-11-12T22:26:00.000Z</published><updated>2006-10-09T12:40:15.013Z</updated><title type='text'>Retrieving a list of fields</title><content type='html'>&lt;p&gt;One of the first things I wanted to do when i was learning ITG configuration was: I wanted a list of all the fields that a request type had, along with its properties. You bet its much easy to debug an object if you have all the property values etc associated with it. Given that ITG doesn't feature a full scale development environment, it would be kinda cool if you can have a list of fields along with its attribute in an Excel sheet, right? Well, I didn't really get down to creating an Excel sheet to fetch the details, but I did write this query that serves as a Q&amp;D (quick and dirty) tool for my purpose. Just type in this query in SQL runner right from within Workbench and replace the request type name with the one you want.&lt;/p&gt;&lt;p&gt;&lt;pre style="FONT-SIZE: 10px; font-face: Courier-new"&gt;&lt;br /&gt;&lt;br /&gt;SELECT   f.section_id "Section ID", s.section_name "Section name",&lt;br /&gt;   f.prompt "Field prompt", f.description "Description",&lt;br /&gt;   f.parameter_token "Token", v.validation_name "Associated validation",&lt;br /&gt;         f.enabled_flag "Is enabled", f.display_flag "Is displayed",&lt;br /&gt;   f.searchable_flag "Is searchable", f.required_flag "Is required",&lt;br /&gt;   f.parameter_set_field_id,&lt;br /&gt;         f.ROW_NUMBER "Row", f.column_number "Column",&lt;br /&gt;         f.batch_number "Batch", f.parameter_column_number "Parameter"&lt;br /&gt;    FROM knta_parameter_set_fields f, knta_validations v, knta_sections s&lt;br /&gt;   WHERE f.parameter_set_context_id IN (&lt;br /&gt;            SELECT parameter_set_context_id PCS_ID&lt;br /&gt;              FROM knta_parameter_set_contexts PSC&lt;br /&gt;             WHERE context_value IN (&lt;br /&gt;                      SELECT TO_CHAR (request_type_id)&lt;br /&gt;                        FROM kcrt_request_types&lt;br /&gt;                       WHERE request_type_name IN&lt;br /&gt;                                          ('&amp;REQUEST_TYPE_NAME_HERE')&lt;br /&gt;                      UNION&lt;br /&gt;                      SELECT TO_CHAR (request_header_type_id)&lt;br /&gt;                        FROM kcrt_request_types&lt;br /&gt;                       WHERE request_type_name IN&lt;br /&gt;                                          ('&amp;amp;REQUEST_TYPE_NAME_HERE')))&lt;br /&gt;     AND f.validation_id = v.validation_id&lt;br /&gt;     AND f.section_id = s.section_id&lt;br /&gt;ORDER BY 1, 12, 13&lt;br /&gt;&lt;/pre&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br&gt;As you can see, its not a lot of work. A rather simple query. In fact, if you study the KNTA_Parameter_Set_Fields table, you will find it rather interesting. I did some analysis and was surprised to know how simple it was to do various things I would have liked to do.&lt;/p&gt;&lt;p&gt;&lt;br&gt;&lt;strong&gt;-- Ranjeet Rain&lt;/strong&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18717575-113183644975665414?l=itgplus.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itgplus.blogspot.com/feeds/113183644975665414/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18717575&amp;postID=113183644975665414' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113183644975665414'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113183644975665414'/><link rel='alternate' type='text/html' href='http://itgplus.blogspot.com/2005/11/retrieving-list-of-fields.html' title='Retrieving a list of fields'/><author><name>Ranjeet Rain</name><uri>http://www.blogger.com/profile/09744728527016513111</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www13.brinkster.com/ranjeetrain/images/blogger.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18717575.post-113168188457725499</id><published>2005-11-11T03:16:00.000Z</published><updated>2005-11-16T16:34:49.733Z</updated><title type='text'>ITG Shortcuts</title><content type='html'>&lt;span style="font-family:arial;font-size:85%;"&gt;Did you ever feel bugged with the way 3 windows keep sitting heavily on your head when you have to work with Workbench? Are you among the people who like to keep the number of open windows to minimum? Or do you feel tired of finding your most used ITG commands buried under a menu hierarchy? Are you tired of too much scrolling or collapsing/expanding menus? Read on, I got some tricks up my sleeves...&lt;br /&gt;&lt;br /&gt;You can open Workbench directly, i.e. without logging into ITG HTML interface first. Yes, that true. And simple too! Do this.&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;Create a bookmark and add it to your web browser favorites. Name it &lt;strong&gt;Launch Workbench&lt;/strong&gt;. &lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;Make it point to &lt;span style="color:#0000dd;"&gt;http://&amp;lt;your_server&amp;gt;/itg/web/knta/global/Workbench.jsp?FROM_LINK=Y&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;Now you can just type "Launch Workbench" in your web broser and launch workbench without firstly logging into HTML interface. Of course you will have to authenticate yourself if not already done.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;Do you want something similar for creating a new request as well? It would be kinda cool to just type something like CreReq in web browser and get the Create New Request screen, isn't it? Not a problem. I'll tell you the trick for that as well.&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;Create a bookmark and add it to your web browser favorites. Name it &lt;strong&gt;CreReq&lt;/strong&gt;.&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;Make it point to &lt;/span&gt;&lt;strong&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;javascript:function&lt;br /&gt;l(){window.open('/itg/web/knta/crt/RequestCreateList.jsp?NAV_MENU_LINK=Y', '',&lt;br /&gt;'');} l()&lt;/span&gt;&lt;/strong&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;Now you can just type "CreReq" in your web broser and quickly create a new request. Of course you should try this ONLY from a window in which you are already running a valid ITG session.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;In fact you could use these methods for creating a lot of other shortcuts. Watch out this space for more on this.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;-- Ranjeet Rain&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18717575-113168188457725499?l=itgplus.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itgplus.blogspot.com/feeds/113168188457725499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18717575&amp;postID=113168188457725499' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113168188457725499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113168188457725499'/><link rel='alternate' type='text/html' href='http://itgplus.blogspot.com/2005/11/itg-shortcuts.html' title='ITG Shortcuts'/><author><name>Ranjeet Rain</name><uri>http://www.blogger.com/profile/09744728527016513111</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www13.brinkster.com/ranjeetrain/images/blogger.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18717575.post-113144315734722103</id><published>2005-11-08T09:43:00.000Z</published><updated>2005-11-12T22:17:31.853Z</updated><title type='text'>New to ITG? Read on!</title><content type='html'>&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;A lot of people join ITG domain everyday. They have many questions they find difficult to find answers of. Here at this page I will touch upon some things a person new to this technology domain or a person planning to join this technology domain should know.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Every person coming to ITG Domain gets an opportunity to enjoy his/her share of fun learning it. That, this is an uncoventional technology domain is not a secret. In fact, I would fall short of calling it a technology domain. This is more like a modelling tool, to translate business processes into data collection forms to help enhance visibility into buisnesses thus making decision making at higher level easier.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;A person joining this technology with no prior IT experince has a different set of problems learning this tool from the ones transitioning from another domain. The former has to learn entirely new concepts making the grasp difficult and the later has to potentially unlearn some concepts in order to learn new ways of doing things. Regardless of which category you fall under, I have some tips for you here at this page.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;One thing that you should be clear about is -- IT Governance Center is NOT about software development. It is a form of concept selling. Don't expect ITG to turn a business into a billion dollar corporation overnight. It is but a mere tool that can enhance visibilty and control over operations in a business, thus, potentially increasing profits and making the organization benefit from the investment.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;If you are learning ITG Center, from the perspective of facing the real life challenges, i.e. doing actual development (configuration in ITG terminology), you should know primarily about Workflows, Request types, Portlets and Reports. Most important skills to have are:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Very clear understanding of &lt;strong&gt;Workflow configuration&lt;/strong&gt;:&lt;/span&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;What is a decision step? &lt;/span&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;What is an execution step? &lt;/span&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;What is a transition? &lt;/span&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;How to work with Timeouts? &lt;/span&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;How to configure notifications?&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Very clear understanding of &lt;/span&gt;&lt;strong&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Request Type configuration:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Identify correctly the need to customize a Request Header Type. &lt;/span&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;What are validations? How to make use of validations optimally? &lt;/span&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Laying out fields on a Request Type for optimal visual ergonomics &lt;/span&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Using Field attributes to control appearance and editability of user input &lt;/span&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Using Tokens to access runtime data&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;General Skills:&lt;/span&gt;&lt;/strong&gt; &lt;/p&gt;&lt;blockquote&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Configuring Data sources &lt;/span&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Configuring Portlets &lt;/span&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Configuring Reports &lt;/span&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Understanding ITG base schema &lt;/span&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Understanding ITG RML schema&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Among the above mentioned categories, the first two list basic skill. Everyone joining this domain must posses these skills. The 3rd category lists slightly higher level of skills that one may do without in his first couple of weeks/months of working with this tool. But ultimately everyone should target to have these skill in a longer-run. A category of even higher level skills to have would be:&lt;/span&gt; &lt;/p&gt;&lt;blockquote&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Integration of ITG with other tools&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Data export/import/migration&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Back-end operations/Open Interface&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;These are some of the skills one can do absolutely without in first six months. But as one moves along, in due course these skills would be required.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Here I will stop delving further deep into these topics individually. But yes, I will be talking about them all, in due course. Watch out this space.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;Happy learning!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;-- Ranjeet Rain&lt;/span&gt;&lt;br /&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18717575-113144315734722103?l=itgplus.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itgplus.blogspot.com/feeds/113144315734722103/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18717575&amp;postID=113144315734722103' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113144315734722103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113144315734722103'/><link rel='alternate' type='text/html' href='http://itgplus.blogspot.com/2005/11/new-to-itg-read-on.html' title='New to ITG? Read on!'/><author><name>Ranjeet Rain</name><uri>http://www.blogger.com/profile/09744728527016513111</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www13.brinkster.com/ranjeetrain/images/blogger.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18717575.post-113134284956566705</id><published>2005-11-07T05:31:00.000Z</published><updated>2005-11-08T02:46:38.730Z</updated><title type='text'>Setting the search flag</title><content type='html'>&lt;span style="font-family:verdana;font-size:85%;color:#330033;"&gt;Recently, I encountered a problem where I needed to make all the fields that were used in request types searchable. By default we don't make all fields searchable. We use our judgement, unless otherwise governed by a Requirement Specification Document, to mark the fields as searchable. Considering that there were many request types and number of fields per request type were large, I didn't think it was a great solution to do all the work manually. A little bit of thinking and I came up with this SQL procedure that would mark all the visible fields on a request type as searchable.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;color:#000000;"&gt;&lt;span style="color:#0000f0;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;color:#000000;"&gt;&lt;span style="color:#0000f0;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;color:#000000;"&gt;&lt;span style="color:#0000f0;"&gt;&lt;p&gt;&lt;span style="font-size:85%;"&gt;CREATE&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;span style="color:#0000f0;"&gt;OR&lt;/span&gt; &lt;span style="color:#0000f0;"&gt;REPLACE&lt;/span&gt; &lt;span style="color:#0000f0;"&gt;PROCEDURE&lt;/span&gt; &amp;lt;procedure_name&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#0000f0;"&gt;IS&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#0000f0;"&gt;BEGIN&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;For&lt;/span&gt; i &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#0000f0;"&gt;in&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;(select&lt;/span&gt; PARAMETER_SET_FIELD_ID&lt;span style="color:#0000f0;"&gt;,&lt;/span&gt; DISPLAY_FLAG &lt;span style="color:#0000f0;"&gt;from&lt;/span&gt; &lt;span style="color:#808000;"&gt;knta_parameter_set_fields&lt;/span&gt; a &lt;span style="color:#0000f0;"&gt;where&lt;/span&gt; parameter_set_context_id&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#0000f0;"&gt;IN&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;(Select&lt;/span&gt; parameter_set_context_id&lt;br /&gt;&lt;span style="color:#0000f0;"&gt;from&lt;/span&gt; &lt;span style="color:#808000;"&gt;knta_parameter_set_contexts&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0000f0;"&gt;where&lt;/span&gt; context_value&lt;br /&gt;&lt;span style="color:#0000f0;"&gt;IN&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#0000f0;"&gt;(SELECT&lt;/span&gt; TO_CHAR&lt;span style="color:#0000f0;"&gt;(&lt;/span&gt;REQUEST_TYPE_ID&lt;span style="color:#0000f0;"&gt;)&lt;/span&gt; &lt;span style="color:#0000f0;"&gt;FROM&lt;/span&gt; &lt;span style="color:#808000;"&gt;KCRT_REQUEST_TYPES&lt;/span&gt; &lt;span style="color:#0000f0;"&gt;WHERE&lt;/span&gt; REQUEST_TYPE_NAME &lt;span style="color:#0000f0;"&gt;IN(&lt;/span&gt;&lt;span style="color:#ff0000;"&gt;'&amp;lt;Request_Type_Name&amp;gt;'&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#0000f0;"&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#0000f0;"&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#0000f0;"&gt;LOOP&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;update&lt;/span&gt; &lt;span style="color:#808000;"&gt;knta_parameter_set_fields&lt;/span&gt; &lt;span style="color:#0000f0;"&gt;set&lt;/span&gt; SEARCHABLE_FLAG &lt;span style="color:#0000f0;"&gt;=&lt;/span&gt; i&lt;span style="color:#0000f0;"&gt;.&lt;/span&gt;DISPLAY_FLAG &lt;span style="color:#0000f0;"&gt;WHERE&lt;/span&gt;&lt;br /&gt;parameter_set_field_ID &lt;span style="color:#0000f0;"&gt;=&lt;/span&gt;&lt;br /&gt;i&lt;span style="color:#0000f0;"&gt;.&lt;/span&gt;PARAMETER_SET_FIELD_ID&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#0000f0;"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;END&lt;/span&gt; &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#0000f0;"&gt;LOOP;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;commit;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#0000f0;"&gt;EXCEPTION&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;WHEN&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;others&lt;/span&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#0000f0;"&gt;then&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#0000f0;"&gt;rollback;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;dbms_output.put_line&lt;/span&gt; &lt;span style="color:#0000f0;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;'Update of the Field Security Tables&lt;br /&gt;Failed :'&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;sqlcode&lt;/span&gt;&lt;span style="color:#ff0000;"&gt;':'&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;sqlerrm&lt;/span&gt; &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#0000f0;"&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;END&lt;/span&gt;&lt;br /&gt;&lt;procedure_name&gt;&lt;/span&gt;&lt;span style="color:#0000f0;"&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;procedure_name&amp;gt;;&lt;br /&gt;/&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;color:#330033;"&gt;Notice that the name of the request type to work on is hardcoded in the procedure. One enhancement I would suggest is -- make the procedure accept the name of the request type to set the flag in. The script is straight-forward, so I will not include an explanation. Hopefully, you can use it.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;color:#330033;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;color:#330033;"&gt;- Ranjeet Rain&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18717575-113134284956566705?l=itgplus.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itgplus.blogspot.com/feeds/113134284956566705/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18717575&amp;postID=113134284956566705' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113134284956566705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113134284956566705'/><link rel='alternate' type='text/html' href='http://itgplus.blogspot.com/2005/11/setting-search-flag.html' title='Setting the search flag'/><author><name>Ranjeet Rain</name><uri>http://www.blogger.com/profile/09744728527016513111</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www13.brinkster.com/ranjeetrain/images/blogger.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18717575.post-113134131629986034</id><published>2005-11-07T05:17:00.000Z</published><updated>2005-11-07T05:30:49.190Z</updated><title type='text'>Hello IT Governance World</title><content type='html'>&lt;span style="font-family:verdana;"&gt;Hi there,&lt;br /&gt;&lt;br /&gt;Recently I underwent a "technology-change" operation. Earlier I was into &lt;strong&gt;Lotus Domino&lt;/strong&gt;. Now I am required to work in &lt;strong&gt;IT Governance Center domain&lt;/strong&gt;. I am happy to report that the operation was successful and all my organs are back to working like before.&lt;br /&gt;&lt;br /&gt;Now everyday I come across a new idea or a new challenge in my new technology domain, I feel the urge of sharing it with others who might need a solution to a similar problem. I am against reinventing the wheel. So here I am, with a blog. Here you can find my two cents of worth on things I have. You may or may not always agree with me, and I assume that. Nonetheless, hope you will benefit from the effort.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;strong&gt;Ranjeet Rain&lt;/strong&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;PS:&lt;/strong&gt; I really really wished to have http://itgcentral.blogspot.com But some gentleman has "reserved" that URL. He signed up in november 2004 but never posted to the blog till this date. I hope to get that address if somehow his membership expires. Or may be he volunteers to give me away that URL.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18717575-113134131629986034?l=itgplus.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itgplus.blogspot.com/feeds/113134131629986034/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18717575&amp;postID=113134131629986034' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113134131629986034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18717575/posts/default/113134131629986034'/><link rel='alternate' type='text/html' href='http://itgplus.blogspot.com/2005/11/hello-it-governance-world.html' title='Hello IT Governance World'/><author><name>Ranjeet Rain</name><uri>http://www.blogger.com/profile/09744728527016513111</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www13.brinkster.com/ranjeetrain/images/blogger.jpg'/></author><thr:total>0</thr:total></entry></feed>
