| Author |
Topic |
|
sunhuman
Starting Member
3 Posts |
Posted - 2008-09-08 : 04:12:58
|
| Please find below code.It is not helping me get anywhere.Fields in Red & Blue mark that these are from different tables.I have tried using Sub Query for this purpose, but to no avail. Could someone please hint me on what shud be done to correct the code.select JH_DT,JH_ACTUAL_END_DT,JH_JOB_NO,JH_CUST_NAME,JH_DESC_1,JH_SM_CODE,JH_FLEX_01,JH_FLEX_02,JH_FLEX_08,JH_FLEX_17,JIH_NO,TO_CHAR(JIH_CR_DT,'YYYY-MM-DD'),SUM(JII_SALE_LC_VAL_AFT_H_DISC),SUM(JED_ACT_MAT_VAL),SUM(JED_ACT_LAB_VAL) FROM (SELECT JH_DT,JH_ACTUAL_END_DT,JH_JOB_NO,JH_CUST_NAME,JH_DESC_1,JH_SM_CODE,JH_FLEX_01,JH_FLEX_02,JH_FLEX_08,JH_FLEX_17,JIH_NO,TO_CHAR(JIH_CR_DT,'YYYY-MM-DD'),SUM(JII_SALE_LC_VAL_AFT_H_DISC),0 AS JED_ACT_MAT_VAL,0 AS JED_ACT_LAB_VAL FROM OT_JOB_HEAD,OT_JOB_INVOICE_HEAD,OT_JOB_INVOICE_DETAIL WHERE JH_CUST_NAME!='GOLTENS DUBAI INTERNAL JOBS' AND JH_ACTUAL_END_DT IS NOT NULL AND JH_JOB_NO= JII_CHARGE_CODE AND JIH_SYS_ID=JII_JIH_SYS_ID AND EXISTS (select distinct td_tran_code,td_anly_code_1 from FT_CUR_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND JH_JOB_NO=td_anly_code_1 union select distinct td_tran_code,td_anly_code_1 from FT_prv_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND JH_JOB_NO=td_anly_code_1 unionselect distinct td_tran_code,td_anly_code_1 from FT_UNPOSTED_TRANS_DETAIL where td_tran_code='JIN' AND JH_JOB_NO=td_anly_code_1) UNION (select JH_DT,JH_ACTUAL_END_DT,JH_JOB_NO,JH_CUST_NAME,JH_DESC_1,JH_SM_CODE,JH_FLEX_01,JH_FLEX_02,JH_FLEX_08,JH_FLEX_17,JIH_NO,TO_CHAR(JIH_CR_DT,'YYYY-MM-DD'),0 AS JII_SALE_LC_VAL_AFT_H_DISC,SUM(JED_ACT_MAT_VAL),SUM(JED_ACT_LAB_VAL) from OT_JOB_HEAD,OT_JOB_INVOICE_HEAD,OS_JOB_EST_DETAIL_GLT WHERE JH_CUST_NAME!='GOLTENS DUBAI INTERNAL JOBS' AND JH_ACTUAL_END_DT IS NOT NULL AND JH_JOB_NO=JED_JOB_NO AND JH_JOB_NO=JIH_JOB_NO AND EXISTS (select distinct td_tran_code,td_anly_code_1 from FT_CUR_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND JH_JOB_NO=td_anly_code_1 union select distinct td_tran_code,td_anly_code_1 from FT_prv_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND JH_JOB_NO=td_anly_code_1 unionselect distinct td_tran_code,td_anly_code_1 from FT_UNPOSTED_TRANS_DETAIL where td_tran_code='JIN' AND JH_JOB_NO=td_anly_code_1) group by JH_DT,JH_ACTUAL_END_DT,JH_JOB_NO,JH_CUST_NAME,JH_DESC_1,JH_SM_CODE,JH_FLEX_01,JH_FLEX_02,JH_FLEX_08,JH_FLEX_17,JIH_NO,JIH_CR_DT) |
|
|
sunhuman
Starting Member
3 Posts |
Posted - 2008-09-08 : 05:01:53
|
| I have modified the code slightly but still no luckselect JH_DT,JH_ACTUAL_END_DT,JH_JOB_NO,JH_CUST_NAME,JH_DESC_1,JH_SM_CODE,JH_FLEX_01,JH_FLEX_02,JH_FLEX_08,JH_FLEX_17,JIH_NO,TO_CHAR(JIH_CR_DT,'YYYY-MM-DD'),[b]SUM(JII_SALE_LC_VAL_AFT_H_DISC) AS INVOICE,SUM(JED_ACT_MAT_VAL) AS MATERIAL,SUM(JED_ACT_LAB_VAL) AS LABOR [/b]FROM (SELECT JH_DT,JH_ACTUAL_END_DT,JH_JOB_NO,JH_CUST_NAME,JH_DESC_1,JH_SM_CODE,JH_FLEX_01,JH_FLEX_02,JH_FLEX_08,JH_FLEX_17,JIH_NO,TO_CHAR(JIH_CR_DT,'YYYY-MM-DD'),SUM(JII_SALE_LC_VAL_AFT_H_DISC) AS INVOICE,0 AS MATERIAL,0 AS LABOR FROM OT_JOB_HEAD,OT_JOB_INVOICE_HEAD,OT_JOB_INVOICE_DETAIL,OS_JOB_EST_DETAIL_GLT WHERE JH_CUST_NAME!='GOLTENS DUBAI INTERNAL JOBS' AND JH_ACTUAL_END_DT IS NOT NULL AND JH_JOB_NO= JII_CHARGE_CODE AND JIH_SYS_ID=JII_JIH_SYS_ID AND EXISTS (select distinct td_tran_code,td_anly_code_1 from FT_CUR_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND JH_JOB_NO=td_anly_code_1 union select distinct td_tran_code,td_anly_code_1 from FT_prv_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND JH_JOB_NO=td_anly_code_1 unionselect distinct td_tran_code,td_anly_code_1 from FT_UNPOSTED_TRANS_DETAIL where td_tran_code='JIN' AND JH_JOB_NO=td_anly_code_1) UNION ALL select JH_DT,JH_ACTUAL_END_DT,JH_JOB_NO,JH_CUST_NAME,JH_DESC_1,JH_SM_CODE,JH_FLEX_01,JH_FLEX_02,JH_FLEX_08,JH_FLEX_17,JIH_NO,TO_CHAR(JIH_CR_DT,'YYYY-MM-DD'),0 AS INVOICE,SUM(JED_ACT_MAT_VAL) AS MATERIAL,SUM(JED_ACT_LAB_VAL) AS LABOR from OT_JOB_HEAD,OT_JOB_INVOICE_HEAD,OS_JOB_EST_DETAIL_GLT WHERE JH_CUST_NAME!='GOLTENS DUBAI INTERNAL JOBS' AND JH_ACTUAL_END_DT IS NOT NULL AND JH_JOB_NO=JED_JOB_NO AND JH_JOB_NO=JIH_CHARGE_CODE AND EXISTS (select distinct td_tran_code,td_anly_code_1 from FT_CUR_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND JH_JOB_NO=td_anly_code_1 union select distinct td_tran_code,td_anly_code_1 from FT_prv_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND JH_JOB_NO=td_anly_code_1 unionselect distinct td_tran_code,td_anly_code_1 from FT_UNPOSTED_TRANS_DETAIL where td_tran_code='JIN' AND JH_JOB_NO=td_anly_code_1)group by JH_DT,JH_ACTUAL_END_DT,JH_JOB_NO,JH_CUST_NAME,JH_DESC_1,JH_SM_CODE,JH_FLEX_01,JH_FLEX_02,JH_FLEX_08,JH_FLEX_17,JIH_NO,JIH_CR_DT) |
 |
|
|
jsmith8858
Dr. Cross Join
7423 Posts |
Posted - 2008-09-08 : 09:48:59
|
| Before doing anything else: format your code. Indent it, clean it up, make it readable. Right now it is just a big mess. By presenting neatly formatted code, it is easier for everyone -- you and us -- to digest what you have and to best figure out how to fix things.use [ code ] tags here as necessary.- Jeffhttp://weblogs.sqlteam.com/JeffS |
 |
|
|
sunhuman
Starting Member
3 Posts |
Posted - 2008-09-10 : 04:47:38
|
| I have taken ur advice and made it more structuredI get the error message: The following error has occurred:ORA-00904: "OT_JOB_INVOICE_HEAD"."JIH_CR_DT": invalid identifierCREATE OR REPLACE VIEW CLOSED_INVOICED_JOBS (JOB_OPEN_DT,JOB_CLOSED_DT,JOB_NO,CUSTOMER,JOB_DESC,CR,TR,VESSEL,CC,DEPT,INVOICE_NO,INVOICE_DT,INVOICE_VAL,MATERIAL,LABOR)AS SELECTJH.JH_DT JOB_OPEN_DT,JH.JH_ACTUAL_END_DT JOB_CLOSED_DT,JH.JH_JOB_NO JOB_NO, JH.JH_CUST_NAME CUSTOMER,JH.JH_DESC_1 JOB_DESC,JH.JH_SM_CODE CR,JH.JH_FLEX_01 TR,JH.JH_FLEX_02 VESSEL,JH.JH_FLEX_08 CC,JH.JH_FLEX_17 DEPT,JIH.JIH_NO INVOICE_NO,JIH.JIH_CR_DT INVOICE_DT,SUM(JII.JII_SALE_LC_VAL) INVOICE_VAL,SUM(JED_ACT_MAT_VAL) MATERIAL,SUM(JED_ACT_LAB_VAL) LABORFROM(SELECTJH.JH_DT JOB_OPEN_DT,JH.JH_ACTUAL_END_DT JOB_CLOSED_DT,JH.JH_JOB_NO JOB_NO, JH.JH_CUST_NAME CUSTOMER,JH.JH_DESC_1 JOB_DESC,JH.JH_SM_CODE CR,JH.JH_FLEX_01 TR,JH.JH_FLEX_02 VESSEL,JH.JH_FLEX_08 CC,JH.JH_FLEX_17 DEPT,JIH.JIH_NO INVOICE_NO,JIH.JIH_CR_DT INVOICE_DT,SUM(JII.JII_SALE_LC_VAL) INVOICE_VAL,NULL MATERIAL,NULL LABORFROMOT_JOB_HEAD JH,OT_JOB_INVOICE_HEAD JIH,OT_JOB_INVOICE_DETAIL JIIWHEREJH.JH_CUST_NAME!='GOLTENS DUBAI INTERNAL JOBS' AND JH.JH_ACTUAL_END_DT IS NOT NULLAND JH.JH_JOB_NO= JII.JII_CHARGE_CODE AND JIH.JIH_SYS_ID=JII.JII_JIH_SYS_ID AND EXISTS (select distinct td_tran_code,td_anly_code_1 from FT_CUR_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND JH.JH_JOB_NO=td_anly_code_1 union select distinct td_tran_code,td_anly_code_1 from FT_prv_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND JH.JH_JOB_NO=td_anly_code_1 unionselect distinct td_tran_code,td_anly_code_1 from FT_UNPOSTED_TRANS_DETAIL where td_tran_code='JIN' AND JH_JOB_NO=td_anly_code_1) UNION SELECTJH.JH_DT JOB_OPEN_DT,JH.JH_ACTUAL_END_DT JOB_CLOSED_DT,JH.JH_JOB_NO JOB_NO, JH.JH_CUST_NAME CUSTOMER,JH.JH_DESC_1 JOB_DESC,JH.JH_SM_CODE CR,JH.JH_FLEX_01 TR,JH.JH_FLEX_02 VESSEL,JH.JH_FLEX_08 CC,JH.JH_FLEX_17 DEPT,JIH.JIH_NO INVOICE_NO,JIH.JIH_CR_DT INVOICE_DT,NULL INVOICE_VAL,SUM(JED_ACT_MAT_VAL) MATERIAL,SUM(JED_ACT_LAB_VAL) LABORFROMOT_JOB_HEAD JH,OT_JOB_INVOICE_HEAD JIH,OS_JOB_EST_DETAIL_GLT JEDWHEREJH.JH_CUST_NAME!='GOLTENS DUBAI INTERNAL JOBS' AND JH.JH_ACTUAL_END_DT IS NOT NULLAND JH.JH_JOB_NO=JED.JED_JOB_NOAND JH.JH_JOB_NO= JIH.JIH_CHARGE_CODE AND EXISTS (select distinct td_tran_code,td_anly_code_1 from FT_CUR_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND JH.JH_JOB_NO=td_anly_code_1 union select distinct td_tran_code,td_anly_code_1 from FT_prv_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND JH.JH_JOB_NO=td_anly_code_1 unionselect distinct td_tran_code,td_anly_code_1 from FT_UNPOSTED_TRANS_DETAIL where td_tran_code='JIN' AND JH_JOB_NO=td_anly_code_1) )group by OT_JOB_HEAD.JH_DT,OT_JOB_HEAD.JH_ACTUAL_END_DT,OT_JOB_HEAD.JH_JOB_NO,OT_JOB_HEAD.JH_CUST_NAME,OT_JOB_HEAD.JH_DESC_1,OT_JOB_HEAD.JH_SM_CODE,OT_JOB_HEAD.JH_FLEX_01,OT_JOB_HEAD.JH_FLEX_02,OT_JOB_HEAD.JH_FLEX_08,OT_JOB_HEAD.JH_FLEX_17,OT_JOB_INVOICE_HEAD.JIH_NO,OT_JOB_INVOICE_HEAD.JIH_CR_DT |
 |
|
|
SwePeso
Patron Saint of Lost Yaks
30421 Posts |
Posted - 2008-09-10 : 05:14:34
|
You should ask ORACLE questions in www.dbforums.com E 12°55'05.63"N 56°04'39.26" |
 |
|
|
SwePeso
Patron Saint of Lost Yaks
30421 Posts |
Posted - 2008-09-10 : 05:28:20
|
This is a cleaner looking version of your query.But you should really debug it. I can spot several bugs in it.SELECT JH_DT AS JOB_OPEN_DT, JH_ACTUAL_END_DT AS JOB_CLOSED_DT, JH_JOB_NO AS JOB_NO, JH_CUST_NAME AS CUSTOMER, JH_DESC_1 AS JOB_DESC, JH_SM_CODE AS CR, JH_FLEX_01 AS TR, JH_FLEX_02 AS VESSEL, JH_FLEX_08 AS CC, JH_FLEX_17 AS DEPT, JIH_NO AS INVOICE_NO, JIH_CR_DT AS INVOICE_DT, SUM(JII.JII_SALE_LC_VAL) AS INVOICE_VAL, SUM(JED_ACT_MAT_VAL) AS MATERIAL, SUM(JED_ACT_LAB_VAL) AS LABORFROM ( SELECT JH.JH_DT JOB_OPEN_DT, JH.JH_ACTUAL_END_DT JOB_CLOSED_DT, JH.JH_JOB_NO JOB_NO, JH.JH_CUST_NAME CUSTOMER, JH.JH_DESC_1 JOB_DESC, JH.JH_SM_CODE CR, JH.JH_FLEX_01 TR, JH.JH_FLEX_02 VESSEL, JH.JH_FLEX_08 CC, JH.JH_FLEX_17 DEPT, JIH.JIH_NO INVOICE_NO, JIH.JIH_CR_DT INVOICE_DT, SUM(JII.JII_SALE_LC_VAL) AS INVOICE_VAL, NULL AS MATERIAL, NULL AS LABOR FROM OT_JOB_HEAD AS JH INNER JOIN OT_JOB_INVOICE_DETAIL AS JII ON JII.JII_CHARGE_CODE = JH.JH_JOB_NO INNER JOIN OT_JOB_INVOICE_HEAD AS JIH ON JIH.JIH_SYS_ID = JII.JII_JIH_SYS_ID WHERE JH.JH_CUST_NAME <> 'GOLTENS DUBAI INTERNAL JOBS' AND JH.JH_ACTUAL_END_DT IS NOT NULL AND EXISTS ( select 1 from FT_CUR_TRANS_DETAIL where (td_tran_code = 'JIN' OR td_doc_ref like '%JIN%') AND td_anly_code_1 = JH.JH_JOB_NO union all select 1 from FT_prv_TRANS_DETAIL where (td_tran_code='JIN' OR td_doc_ref like '%JIN%') AND td_anly_code_1 = JH.JH_JOB_NO union all select 1 from FT_UNPOSTED_TRANS_DETAIL where td_tran_code = 'JIN' AND td_anly_code_1 = JH_JOB_NO ) UNION all SELECT JH.JH_DT JOB_OPEN_DT, JH.JH_ACTUAL_END_DT JOB_CLOSED_DT, JH.JH_JOB_NO JOB_NO, JH.JH_CUST_NAME CUSTOMER, JH.JH_DESC_1 JOB_DESC, JH.JH_SM_CODE CR, JH.JH_FLEX_01 TR, JH.JH_FLEX_02 VESSEL, JH.JH_FLEX_08 CC, JH.JH_FLEX_17 DEPT, JIH.JIH_NO INVOICE_NO, JIH.JIH_CR_DT INVOICE_DT, NULL AS INVOICE_VAL, JED_ACT_MAT_VAL AS MATERIAL, JED_ACT_LAB_VAL AS LABOR FROM OT_JOB_HEAD AS JH INNER JOIN OT_JOB_INVOICE_HEAD AS JIH ON JIH.JIH_CHARGE_CODE = JH.JH_JOB_NO INNER JOIN OS_JOB_EST_DETAIL_GLT AS JED ON JED.JED_JOB_NO = JH.JH_JOB_NO WHERE JH.JH_CUST_NAME <> 'GOLTENS DUBAI INTERNAL JOBS' AND JH.JH_ACTUAL_END_DT IS NOT NULL AND EXISTS ( select 1 from FT_CUR_TRANS_DETAIL where (td_tran_code = 'JIN' OR td_doc_ref like '%JIN%') AND td_anly_code_1 = JH.JH_JOB_NO union all select 1 from FT_prv_TRANS_DETAIL where (td_tran_code = 'JIN' OR td_doc_ref like '%JIN%') AND td_anly_code_1 = JH.JH_JOB_NO union all select 1 from FT_UNPOSTED_TRANS_DETAIL where td_tran_code = 'JIN' AND td_anly_code_1 = JH_JOB_NO ) ) AS dgroup by JH_DT, JH_ACTUAL_END_DT, JH_JOB_NO, JH_CUST_NAME, JH_DESC_1, JH_SM_CODE, JH_FLEX_01, JH_FLEX_02, JH_FLEX_08, JH_FLEX_17, JIH_NO, JIH_CR_DT E 12°55'05.63"N 56°04'39.26" |
 |
|
|
|
|
|