Pasting Query to Add Command

 5 Replies
 0 Subscribed to this topic
 22 Subscribed to this forum
Sort:
Author
Messages
mil0n023
New Member Send Private Message
Posts: 0
New Member
I tried adding this command:

SELECT "employee.company", "employee.employee", "employee.last_name", "employee.first_name", "employee.middle_init", "employee.emp_status", "hrhistory.beg_date", "hrhistory.date_stamp", "persacthst.action_code", "hrhistory.a_value as historical_job_code", "hrhistory.seq_nbr", "jobcode.description as historical_job_description"
FROM "hrhistory", "persacthst", "employee", "jobcode"
WHERE "hrhistory.act_obj_id" = "persacthst.obj_id"
AND "hrhistory.company" = "employee.company"
AND "hrhistory.employee" = "employee.employee"
AND "employee.company" = "jobcode.company"
AND "hrhistory.a_value" = "jobcode.job_code"
AND "hrhistory.fld_nbr" = "19"
ORDER BY "employee.employee", "hrhistory.beg_date", "hrhistory.date_stamp"

but get the following error:
Query Engine Error: 'ORA-00972: identifier is too long'
Not Supported. Details: Fail to execute SQL statement.
OCI Call: OCIStmtExecute

??
John Henley
Send Private Message
Posts: 3351
Get rid of all the double-quotes.
Also hrhistory.fld_nbr is a numeric field so don't wrap 19 in quotes.
Thanks for using the LawsonGuru.com forums!
John
mil0n023
New Member Send Private Message
Posts: 0
New Member

Error: Query Engine Error: Table or view does not exist.
John Henley
Send Private Message
Posts: 3351
I'm assuming you're using the Oracle provider with Crystal...not the Lawson one, right?
If so, are you sure that the username which you are using to login has access to those tables?
Also, paste the query here so that we can see it...
Thanks for using the LawsonGuru.com forums!
John
Ben Coonfield
Veteran Member Send Private Message
Posts: 146
Veteran Member
Error: Query Engine Error: Table or view does not exist.


I'm guessing that you still have quotes around table names, e.g.
FROM "hrhistory", "persacthst", "employee", "jobcode"
This will cause Oracle to say the table does not exist, because it will search for table "hrhistory" and will not consider this a match for the real table name HRHISTORY. Remove these unnecessary quotes to get
FROM hrhistory, persacthst, employee, jobcode
then Oracle will find the table regardless of whether you list the name in upper or lower case.

Without all the unnecessary quotes you would have something like:

SELECT employee.company, employee.employee, employee.last_name, employee.first_name, employee.middle_init, employee.emp_status, hrhistory.beg_date, hrhistory.date_stamp, persacthst.action_code, hrhistory.a_value as historical_job_code, hrhistory.seq_nbr, jobcode.description as historical_job_description
FROM HRHISTORY, persacthst, employee, jobcode
WHERE hrhistory.act_obj_id = persacthst.obj_id
AND hrhistory.company = employee.company
AND hrhistory.employee = employee.employee
AND employee.company = jobcode.company
AND hrhistory.a_value = jobcode.job_code
AND hrhistory.fld_nbr = 19
ORDER BY employee.employee, hrhistory.beg_date, hrhistory.date_stamp
mil0n023
New Member Send Private Message
Posts: 0
New Member
Got it to work! I did have a pair of quotes left.

Here's my Query anyway:

SELECT EMPLOYEE.COMPANY, EMPLOYEE.EMPLOYEE, EMPLOYEE.LAST_NAME, EMPLOYEE.FIRST_NAME, EMPLOYEE.MIDDLE_INIT, EMPLOYEE.EMP_STATUS, HRAHISTORY.BEG_DATE, HRHISTORY.DATE_STAMP, PERSACTHST.ACTION_CODE, HRHISTORY.A_VALUE, HRHISTORY.SEQ_NBR, JOBECODE.DESCRIPTION
FROM LAWSON.HRHISTORY HRHISTORY, LAWSON.PERSACTHST PERSACTHST, LAWSON.EMPLOYEE EMPLOYEE, LAWOSN.JOBCODE JOBCODE
WHERE HRHISTORY.ACT_OBJ_ID = PERSACTHST.OBJ_ID
AND HRHISTORY.COMPANY = EMPLOYEE.COMPANY
AND HRHISTORY.EMPLOYEE = EMPLOYEE.EMPLOYEE
AND EMPLOYEE.COMPANY = JOBCODE.COMPANY
AND HRHISTORY.A_VALUE = JOBCODE.JOB_CODE
AND HRHISTORY.FLD_NBR = 19
ORDER BY EMPLOYEE.EMPLOYEE, HRHISTORY.BEG_DATE, HRHISTORY.DATE_STAMP

Thanks guys - this place rocks!!