Sunday, March 2, 2008

US Citizenship Exam

I was initially under the impression that I need to go to the Library and read about US History or take a Civcs lesson something like that. It was heartening to note that in US Citizenship exam we will be asked only 96 questions that are found in the Book. Ah, both the questions and the answers are known. Do people still flunk this? I am really not sure. Most probably they do not have time to prepare (hmm... I do not intend to take more than a day to prepare.... I will find out whether this is sufficient).

There are certain questions, I do not know - why did the Pilgrims came to America? basic beliefs of the Declaration of Independence?; but most of them, are just very basic. Like...Who was the First President of United States? Who is the President of United States - come on, how many can live in a country and still not know who the chief executive is :-) ?

I also saw an interesting movie at USCIS.gov - A promise of Freedom - An introduction US History and Civics for Immigrants. There are other material available like Flash cards on the Exam.


Will update on the status later.

Designing adhoc roles

I recently came across a code which creates adhoc roles for sending Missing Timecard notifications to Supervisors.
Requirement: Every timecard has to approved by the Project Manager of the Project. If a timecard is not submitted then a notification has to be sent to the Employee and to the PM of that Project.
Issue: The code I saw created one role for every timecard submitted.
Problem is an Employee will work in various projects, may be even during the same time. There is only one approver for each project. So how can you get this resolved?
The Code I saw, creates an adhoc role for every Timecard submitted. Obviously, this will create millions of rows in wf_local_user_roles, since each role created will have at least 2 persons to notify.
My preferred solution: What I would do is either create one role for every project the Employee works for and append the Project Managers to this; or, create a PLSQL table of persons to whom the notifications has to be sent and in the approval workflow, loop till this list is exhausted.

Tuesday, February 19, 2008

How to disable reversal button in OIT timecard entry screen?


Requirement: To show Historical OIT timecards, but disallow Copy and Reverse Buttons.
Synopsis:
We are doing an Upgrade OTL and one of the requirement was to prevent users from Copying and/or Reversing any of the historical OIT timecards.

Steps:
1. Ensure the profile option - at responsibility level - "PA Time: Allow Reversals" in self service time is set to Yes.
2. Goto to AK Developer Responsibility
3. select Define Regions and search for PA_WEB_TIMECARD_HISTORY Region ID
4. Click the Region Items Buttions
5.a) For preventing Reversal: Uncheck Node Display checkbox for the attributes PA_WEB_REVERSE and PA_WEB_REVERSE_URL
5. b) For preventing Copying: Uncheck Node Display checkbox for the attributes PA_WEB_COPY and PA_WEB_COPY_URL
Save and Close.
This will remove the Copy and Reverse Buttons from OIT Screens.

Thursday, January 24, 2008

Data Integrator

We are presently working on integration of heterogeneous systems. I was searching for a tool which will meet our requirements. Of course, the entire work can be done in SQLLoader too. But still I had to satisfy myself that SQLLOADER is THE answer.
One of the tools I came across was the Oracle Data Integrator.
This appears to be a regular ETL tool with oracle-specific features built-in. I have decided to explore further about this product.
Features I like about this product (of course I would probably find many of the features in the competitors too, But still it is worth exploring):
  • Automatic code generation (reduces learning curve)
  • User/Developer specifies the rules to apply to the integration processes.
  • Hooks to SOA
  • Library of Knowledge Modules (including one for Salesforce.com)
Getting the right data in the right place at the right time is the key to a successful data integration strategy. Are I going have a hourly/periodic updates from the source; if so, how complex will it be to maintain the program generated?
Will be posting more details later.