Oracle Info on Sun Merge

This article interested me:

Computer World: Oracle to provide Sun road map next week

I am curious what this will mean for some of Sun products.  The ones that strike my curiosity are:

MySQL: Oracle bought a piece of MySQL already.  Now they are buying the whole thing.  I wonder what this means to the business model and distribution.  Are they going to keep it open source in the same fashion?  Note that Oracle already owns the Inno DB Engine for MySQL (see Wikipedia)

Solaris: Oracle already has Unbreakable Linux.   So, this makes the second OS for them.

Java: Oracle already has the JRocket VM from Bea.  Are they going to merge them, or do they fit different niches?

Virtual Box:  Oracle already has their Oracle VM, which is based off of Xen.  Again, will they try to merge them?

Hardware: I liked the suggestion that maybe Oracle might offer a Database Appliance with both their software and hardware.  The problem is that database implementations are so varied, it would be hard to create a one size fits all solution.

Open Office: I almost forgot this one.  This puts Oracle more in competition with Microsoft.  This is the one major alternative for MS Office.  This could put a big hurting on the world of Linux if Oracle harms Open Office.

Net Beans: Oracle already has JDeveloper.  Again, this is more redundancy.

Well, I guess we will find out more tomorrow.  Although, I still wonder if they are still changing their plans for PeopleSoft.  Sun is such a large company, there is no way they could come up with a perfect plan that they won’t have to change something.  We may have to wait 5 years or more to see where they take it.

Other related articles:

Bex Huf: Finally! Oracle Gets Approval for Sun Acquisition!

The H Open Source: Oracle clarifies plans for Java tools and OpenOffice

Information Work: MySQL Users Wary On Oracle Acquisition

What company is next?:

The ORACLE-BASE Blog: Red Hat heading for Oracle buyout?

I remember reading someone mentioning that when Red Hat bought JBoss, it put them in competition with Oracle.  Then, we saw Oracle start selling Unbreakable Linux.  I wonder if they are really on the radar?

Letter Generation Error

We had an error with the 3CEngine the other day.  Here is the error and the fix in case it helps anyone else or in case I have this same problem later on.

From the Application Engine Output:

File: e:pt84912b-retailpeopletoolssrcpsappengaedebug.hSQL error. Stmt #: 1603  Error Position: 0  Return: 805 - [Microsoft][SQL Server Native Client 10.0][SQL Server]Cannot insert duplicate key row in object 'dbo.PS_COMMUNICATION' with unique index 'PS_COMMUNICATION'.
Failed SQL stmt:INSERT INTO PS_COMMUNICATION (COMMON_ID, SEQ_3C, SA_ID_TYPE, COMM_DTTM, INSTITUTION, ADMIN_FUNCTION, COMM_CATEGORY, COMM_CONTEXT, COMM_METHOD, INCLUDE_ENCL, DEPTID, COMM_ID, COMM_DT, COMM_BEGIN_TM, COMM_END_TM, COMPLETED_COMM, COMPLETED_ID, COMPLETED_DT, COMM_DIRECTION, UNSUCCESSFUL, OUTCOME_REASON, SCC_LETTER_CD, LETTER_PRINTED_DT, LETTER_PRINTED_TM, CHECKLIST_SEQ_3C, CHECKLIST_SEQ, COMMENT_PRINT_FLAG, ORG_CONTACT, ORG_DEPARTMENT, ORG_LOCATION, PROCESS_INSTANCE, EXT_ORG_ID, VAR_DATA_SEQ, EMPLID_RELATED, JOINT_COMM, SCC_COMM_LANG, SCC_COMM_MTHD, SCC_COMM_PROC) SELECT A.COMMON_ID, 1, A.SA_ID_TYPE, GETDATE(), A.INSTITUTION, A.ADMIN_FUNCTION, A.COMM_CATEGORY, A.COMM_CONTEXT, A.COMM_METHOD, A.INCLUDE_ENCL, ' ', ' ', { fn CURDATE() }, NULL, NULL, 'N', ' ', NULL, A.COMM_DIRECTION, A.UNSUCCESSFUL, A.OUTCOME_REASON, A.SCC_LETTER_CD, NULL, NULL, A.CHECKLIST_SEQ_3C, A.CHECKLIST_SEQ, A.COMMENT_PRINT_FLAG, 0, 0, 0, 0, ' ', 0, A.EMPLID_RELATED, A.JOINT_COMM, ' ', ' ', ' ' FROM PS_ENG_COMM_TMP4 A WHERE COMMON_ID = '1784656' AND SA_ID_TYPE = 'P' AND INSTITUTION = 'NPCCS' AND EVENT_3CS_ID = 'F24_COMM' AND COMM_KEY = 'F24' AND SEQNO = 331

Process 11123 ABENDED at Step 3CENGINE_LIB.COMMINST.Step02 (SQL) -- RC = 805 (108,524)

The keys on the Communication Table are the COMMON_ID and the SEQ_3C.  So, most likely, the problem is that is trying to insert a Sequence number that already exists.

Here is some SQL that you can use to find the problem:

SELECT TOP 200 A.COMMON_ID, A.SEQ_3C, B.SEQ_COMM_LAST
FROM PS_COMMUNICATION A, PS_LAST_3CS_TBL B
WHERE A.SEQ_3C = (SELECT MAX(SEQ_3C)
FROM PS_COMMUNICATION
WHERE COMMON_ID = A.COMMON_ID)
AND A.COMMON_ID = B.COMMON_ID
AND B.SEQ_COMM_LAST < A.SEQ_3C

Here is some SQL that you can use to fix the problm:

UPDATE PS_LAST_3CS_TBL
SET SEQ_COMM_LAST = (SELECT MAX(SEQ_3C)
FROM PS_COMMUNICATION A
WHERE A.COMMON_ID =  PS_LAST_3CS_TBL.COMMON_ID)
WHERE EXISTS (SELECT ‘X’
FROM PS_COMMUNICATION A
WHERE A.COMMON_ID =  PS_LAST_3CS_TBL.COMMON_ID
AND A.SEQ_3C > PS_LAST_3CS_TBL.SEQ_COMM_LAST
AND A.SEQ_3C =  (SELECT MAX(SEQ_3C)
FROM PS_COMMUNICATION A
WHERE A.COMMON_ID =  PS_LAST_3CS_TBL.COMMON_ID) );

If you want to look at the code in the App Engine, the Sequence Number is calculated in the 3CENGINE_LIB.COMMLSEQ section.  It loads the Sequence number from the PS_LAST_3CS_TBL table.

PeopleSoft HCM9.1/PeopleTools 8.50 Virtual Images

Back in September, I talked about Virtual Images from Oracle.  Well, I have downloaded the images and started tinkering with a little bit.  It’s not much, but here is what I have so far.

You can download the images from:

http://edelivery.oracle.com/oraclevm

The images are compressed multiple times.  If you are in Windows, I would recommend using 7-zip for extracting.  WinZip will probably do the trick too.  In, Linux, FileRoller did the trick for me.  The unzip and tar commands would do just as well.

Here are the sizes that I found:

Application/Batch Server

  • V18477-01.zip = 3.6 GB
  • Extracts to OVM_EL5U2_X86_64_AB85002_HCM91_PVM.tgz = 3.6 GB
  • Extracts to folder: OVM_EL5U2_X86_64_AB85002_HCM91_PVM = 13.9 GB

Web Server

  • V18478-01.zip = 2.0 GB
  • Extracts to OVM_EL5U2_X86_64_PIA85002_PVM.tgz = 2.0 GB
  • Extracts to folder OVM_EL5U2_X86_64_PIA85002_PVM = 9.9 GB

Database

This one is a little more complicated because it came in two parts.

Part 1

V18479-01.zip = 3.4 GB

Extracts to OVM_EL5U2_X86_64_HCM91_PVM.tgz.1of2 = 3.5 GB

Part 2

V18480-01.zip = 3.2 GB

Extracts to OVM_EL5U2_X86_64_HCM91_PVM.tgz.2of2 = 3.3 GB

Combining:

cat OVM_EL5U2_X86_64_HCM91_PVM.tgz.1of2 OVM_EL5U2_X86_64_HCM91_PVM.tgz.2of2 > OVM_EL5U2_X86_64_HCM91_PVM.tgz

OVM_EL5U2_X86_64_HCM91_PVM.tgz = 6.8 GB

This extracted to the folder OVM_EL5U2_X86_64_HCM91_PVM = 55.6 GB

You could save yourself some disk space by piping the cat output directly to tar (I didn’t test this):

cat OVM_EL5U2_X86_64_HCM91_PVM.tgz.1of2 OVM_EL5U2_X86_64_HCM91_PVM.tgz.2of2 | tar -xz

Cat is a Linux/Unix command.  I am not sure how you would do that in Windows.

Now, that you have them extracted, the next step is to get them booted.  I didn’t try to install the Oracle VM or Xen.  My plan is try to get them to run in Virtual Box, but I haven’t accomplished that yet.  More on that to come.  I hope the file sizes and such help for now.

PeopleTools Bug: Job Data CI

This is another look at an old post.  In summary, the problem is that when you create a Component Interface for the Job Data component, PeopleTools errors.  I decided to attempt to diagnose the PeopleTools bug by tracing it.

I tried this in PeopleTools 8.49.

Here are the last lines of the trace file:

1-8280 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-1 type=2 length=11 value=SKP_JOB2_CI

1-8281 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-2 type=6 length=4 value=4

1-8282 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-3 type=2 length=6 value=JOB_JR

1-8283 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-4 type=2 length=17 value=CONT_SAL_TYPE_BRA

1-8284 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-5 type=6 length=4 value=536

1-8285 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-6 type=6 length=4 value=1

1-8286 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-7 type=6 length=4 value=2

1-8287 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-8 type=6 length=4 value=0

1-8288 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-9 type=2 length=17 value=00-00-01-00-02-00

1-8289 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-10 type=2 length=6 value=JOB_JR

1-8290 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-11 type=2 length=0 value=

1-8291 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-12 type=2 length=17 value=CONT_SAL_TYPE_BRA

1-8292 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-13 type=2 length=0 value=

1-8293 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-14 type=6 length=4 value=0

1-8294 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-15 type=6 length=4 value=25008

1-8295 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-1 type=2 length=11 value=SKP_JOB2_CI

1-8296 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-2 type=6 length=4 value=4

1-8297 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-3 type=2 length=6 value=JOB_JR

1-8298 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-4 type=2 length=11 value=DUTIES_TYPE

1-8299 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-5 type=6 length=4 value=523

1-8300 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-6 type=6 length=4 value=1

1-8301 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-7 type=6 length=4 value=2

1-8302 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-8 type=6 length=4 value=0

1-8303 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-9 type=2 length=17 value=00-00-01-00-02-00

1-8304 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-10 type=2 length=6 value=JOB_JR

1-8305 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-11 type=2 length=0 value=

1-8306 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-12 type=2 length=11 value=DUTIES_TYPE

1-8307 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-13 type=2 length=0 value=

1-8308 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-14 type=6 length=4 value=0

1-8309 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-15 type=6 length=4 value=25009

1-8310 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-1 type=2 length=11 value=SKP_JOB2_CI

1-8311 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-2 type=6 length=4 value=4

1-8312 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-3 type=2 length=6 value=JOB_JR

1-8313 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-4 type=2 length=14 value=INTCP_BUS_UNIT

1-8314 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-5 type=6 length=4 value=512

1-8315 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-6 type=6 length=4 value=1

1-8316 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-7 type=6 length=4 value=2

1-8317 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-8 type=6 length=4 value=0

1-8318 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-9 type=2 length=17 value=00-00-01-00-02-00

1-8319 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-10 type=2 length=6 value=JOB_JR

1-8320 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-11 type=2 length=0 value=

1-8321 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-12 type=2 length=14 value=INTCP_BUS_UNIT

1-8322 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-13 type=2 length=0 value=

1-8323 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-14 type=6 length=4 value=0

1-8324 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-15 type=6 length=4 value=25010

1-8325 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-1 type=2 length=11 value=SKP_JOB2_CI

1-8326 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-2 type=6 length=4 value=4

1-8327 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-3 type=2 length=6 value=JOB_JR

1-8328 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-4 type=2 length=13 value=INTCP_COMPANY

1-8329 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-5 type=6 length=4 value=516

1-8330 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-6 type=6 length=4 value=1

1-8331 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-7 type=6 length=4 value=2

1-8332 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-8 type=6 length=4 value=0

1-8333 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-9 type=2 length=17 value=00-00-01-00-02-00

1-8334 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-10 type=2 length=6 value=JOB_JR

1-8335 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-11 type=2 length=0 value=

1-8336 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-12 type=2 length=13 value=INTCP_COMPANY

1-8337 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-13 type=2 length=0 value=

1-8338 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-14 type=6 length=4 value=0

1-8339 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-15 type=6 length=4 value=25011

1-8340 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-1 type=2 length=11 value=SKP_JOB2_CI

1-8341 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-2 type=6 length=4 value=4

1-8342 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-3 type=2 length=6 value=JOB_JR

1-8343 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-4 type=2 length=14 value=INTCP_COMPANY2

1-8344 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-5 type=6 length=4 value=517

1-8345 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-6 type=6 length=4 value=1

1-8346 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-7 type=6 length=4 value=2

1-8347 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-8 type=6 length=4 value=0

1-8348 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-9 type=2 length=17 value=00-00-01-00-02-00

1-8349 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-10 type=2 length=6 value=JOB_JR

1-8350 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-11 type=2 length=0 value=

1-8351 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-12 type=2 length=14 value=INTCP_COMPANY2

1-8352 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-13 type=2 length=0 value=

1-8353 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-14 type=6 length=4 value=0

1-8354 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-15 type=6 length=4 value=25012

1-8355 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-1 type=2 length=11 value=SKP_JOB2_CI

1-8356 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-2 type=6 length=4 value=4

1-8357 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-3 type=2 length=6 value=JOB_JR

1-8358 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-4 type=2 length=12 value=INTCP_DEPTID

1-8359 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-5 type=6 length=4 value=513

1-8360 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-6 type=6 length=4 value=1

1-8361 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-7 type=6 length=4 value=2

1-8362 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-8 type=6 length=4 value=0

1-8363 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-9 type=2 length=17 value=00-00-01-00-02-00

1-8364 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-10 type=2 length=6 value=JOB_JR

1-8365 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-11 type=2 length=0 value=

1-8366 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-12 type=2 length=12 value=INTCP_DEPTID

1-8367 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-13 type=2 length=0 value=

1-8368 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-14 type=6 length=4 value=0

1-8369 06.50.28 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-15 type=6 length=4 value=25013

1-8370 06.50.32 3.335000 CMgrUpdateTransaction::OnAbort

1-8371 06.50.32 0.000000 CMgrUpdateTransaction::OnAbort

1-8372 06.50.32 0.111000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 COM Stmt=SELECT DISPLAYONLY FROM PSOPROBJ A, PSOBJGROUP B WHERE B.ENTTYPE = :1 AND B.ENTNAME = :2 AND A.CLASSID = :3 AND (A.OBJGROUPID = '*ALL DEFINITIONS*' OR A.OBJGROUPID = B.OBJGROUPID) UNION SELECT 2 FROM PSOBJGROUP WHERE ENTTYPE = :4 AND ENTNAME = :5 ORDER BY 1

1-8373 06.50.32 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 SSB column=1 type=6 length=4 scale=0

1-8374 06.50.32 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-1 type=1 length=1 value=D

1-8375 06.50.32 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-2 type=2 length=1 value=

1-8376 06.50.32 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-3 type=2 length=7 value=HCPPALL

1-8377 06.50.32 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-4 type=1 length=1 value=D

1-8378 06.50.32 0.000000 Cur#1.4240.HCM90 RC=0 Dur=0.000000 Bind-5 type=2 length=1 value=

1-8379 06.50.32 0.001000 Cur#1.4240.HCM90 RC=1 Dur=0.000000 Fetch

1-8380 06.50.35 3.214000 Tuxedo session opened { DisconnectAll at01C88868, pid=4240}

Here is the insert statement that the error message reported:

INSERT INTO PSBCITEM ( 
    BCNAME, BCTYPE, BCITEMPARENT, BCITEMNAME, 
    SEQUENCE_NBR_6, BCACCESS, BCSCROLL, BCSCROLLNUM, 
    BCSCROLLNAME, RECNAME, SUBRECNAME, FIELDNAME, COMMENTSHORT, 
    MPDEVICEPERSISTINT, SYNCID
) VALUES ( 
    :1, :2, :3, :4, 
    :5, :6, :7, :8, 
    :9, :10, :11, :12, :13, 
    :14, :15
)

So, I looked up the table, and the keys are the first four fields: BCNAME, BCTYPE, BCITEMPARENT, and BCITEMNAME.

Assuming the last row is the duplicate, that means that another row has the same parent and name as:

Type = 4

Parent = JOB_JR

Item Name = INTCP_DEPTID

I did a search through the trace, and the INTCP_DEPTID only exists in this one location.  So, I don’t know what the problem is — our mystery goes unsolved.  What makes it more confusing is that saving a second time fixes the problem.

Maybe I will pull all of the Bind values into an Excel and see if I can find duplicates that way.  But, that is an exercise for another day.

Querying the Component

Here are some queries to find things out about the component.

This one is a simple list of all the fields in the component (doesn’t take into account subpages, etc):

SELECT CP.PNLGRPNAME, CP.MARKET, CP.DESCR,
           CPG.PNLNAME, CPG.ITEMLABEL,
           PG.DESCR,
           PGF.FIELDTYPE, PGF.LBLTEXT, PGF.RECNAME, PGF.FIELDNAME
FROM PSPNLGRPDEFN CP,
         PSPNLGROUP CPG,
         PSPNLDEFN PG,
         PSPNLFIELD PGF
WHERE CP.PNLGRPNAME = 'JOB_DATA'
     AND CP.MARKET = 'GBL'
    AND CP.PNLGRPNAME = CPG.PNLGRPNAME
    AND CP.MARKET = CP.MARKET
    AND PG.PNLNAME = CPG.PNLNAME
    AND PGF.PNLNAME = PG.PNLNAME;

This one shows just the records involved:

SELECT DISTINCT CP.PNLGRPNAME, CP.MARKET, CP.DESCR,  PGF.RECNAME, R.RECDESCR, R.RECTYPE
FROM PSPNLGRPDEFN CP,
         PSPNLGROUP CPG,
         PSPNLDEFN PG,
         PSPNLFIELD PGF,
         PSRECDEFN R
WHERE CP.PNLGRPNAME = 'JOB_DATA'
     AND CP.MARKET = 'GBL'
    AND CP.PNLGRPNAME = CPG.PNLGRPNAME
    AND CP.MARKET = CP.MARKET
    AND PG.PNLNAME = CPG.PNLNAME
    AND PGF.PNLNAME = PG.PNLNAME
    AND PGF.RECNAME = R.RECNAME;

I hope this helps.

PeopleTools 8.50 Update

I just noticed the other day that Oracle has a planned PeopleTools 8.50 release date.  According to Doc ID 813258.1, the date is 9/18/2009!

In addition, here are a few more links I found of people who are talking about it:

AutoLogin GreaseMonkey Script

Here is a GreaseMonkey Script that changes the languages options on the PeopleSoft login page to users’ names.  When you click on the user’s name, it populates the username and password.  It is great for when you are testing Workflow or something like that.


// ==UserScript==
// @name           PSautologin
// @namespace      http://psst0101.wordpress.com
// @description    Automatic Login for PS
// @include        http://ps_server:*/psp/*/EMPLOYEE/ERP/?cmd=logout
// @include        http://ps_server:*/psp/*/?cmd=login*
// @include        http://ps_server:*/psp/HR90CNV/*/HRMS/?cmd=logout
// ==/UserScript==

// set up jQuery variable
var $;

// Add jQuery
var GM_JQ = document.createElement("script");
GM_JQ.src = "http://code.jquery.com/jquery-latest.min.js";
GM_JQ.type = "text/javascript";

document.body.appendChild(GM_JQ);

// Check if jQuery's loaded
var checker=setInterval(function(){
if(typeof ($ = unsafeWindow.jQuery) != "undefined") {
clearInterval(checker);
letsJQuery();
}
},100);

// All your GM code must be inside this function
function letsJQuery() {
var selectALanguage = $('.pslanguageframe .psloginlabel:contains("Select a Language")');
selectALanguage.text("Select A User:");
$('.pslanguageframe .pslogintext').toggleClass('skpremove');
$('.pslanguageframe .pslogintext').text("Hello");
$('.pslanguageframe .textnormal').remove();
$('.pslanguageframe .pslogintext:first').text("test");
addUser('PS', 'PS');
addUser('VP1', 'VP1');
$('.pslanguageframe .skpremove').remove();

$('table:first table:first > tbody > tr:eq(1) td').html('<a href="http://serverWithList/">Other Instances</a>');
}

function addUser(userName, password) {
var newLink = $('.pslanguageframe .skpremove:first').html("<a href='javascript:login'>" + userName + "</a>").toggleClass('skpremove').children('a');
newLink.attr('userName', userName);
newLink.attr('password', password);
newLink.click(loginwith);
}

function loginwith() {
userName = $(this).attr('userName');
password = $(this).attr('password');

$('#userid').val(userName);
$('#pwd').val(password);

// don't trigger URL for link
return false;
}

PeopleSoft Templates

A while back, I posted my idea that Oracle should deliver templates or appliances with PeopleSoft pre-installed.  I feel bad that I did not get it posted as soon as I noticed that Oracle did finally publish such an image.

But, they appear to have removed the images.  I can’t find them.  I found on a cached page that shows where they have the image available.  I am terribly behind on reading the blogs — maybe  there will be some clues there.

I also did some looking around to see about using such an image.  My problem is that I already have VMWare installed.  Can I install Oracle VM along side?  Even if it is possible, it is advisable?

I looked into converting an Oracle VM image into a VMWare image.  I found a post asking about doing just that, but it had no answer.  VMWare has a Converter and vCenter that will convert machines into VMWare images, but they don’t talk about working with Oracle VM images.  Here is another page of tools, but none of them stood out as options.  Oracle has some tools too, but I don’t think they will do the trick either.