794: l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
795: --
796: BEGIN
797:
798: l_line_type_rec := oe_order_cache.load_line_type(ONT_LINE_DEF_HDLR.g_record.line_type_id);
799:
800: IF nvl(ONT_LINE_DEF_HDLR.g_record.tax_exempt_flag, 'S') <> 'R' AND
801: l_line_type_rec.calculate_tax_flag = 'N' THEN
802:
796: BEGIN
797:
798: l_line_type_rec := oe_order_cache.load_line_type(ONT_LINE_DEF_HDLR.g_record.line_type_id);
799:
800: IF nvl(ONT_LINE_DEF_HDLR.g_record.tax_exempt_flag, 'S') <> 'R' AND
801: l_line_type_rec.calculate_tax_flag = 'N' THEN
802:
803: RETURN NULL;
804: END IF;
810: -- If defaulting for Line Level Tax exemptions
811:
812: ELSIF p_database_object_name = 'OE_AK_ORDER_LINES_V' THEN
813:
814: IF ONT_LINE_Def_Hdlr.g_record.tax_exempt_flag = 'S' THEN
815:
816: -- bug 5485367 when tax_exempt_flag is 'S', shouldn't have any tax_exempt_number
817: -- without tax_exempt_number, tax_exempt_reason is not necessary either
818: -- so the following defaulting code is no longer used
827: -- (OE_Line_DEF_HANDLER.g_record). It can used in defaulting the
828: -- tax exempt reason.
829:
830: IF p_attribute_code = 'TAX_EXEMPT_REASON' THEN
831: IF ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code <> FND_API.G_MISS_CHAR
832: THEN
833: RETURN ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code;
834: END IF;
835: ELSIF p_attribute_code = 'TAX_EXEMPT_NUMBER' THEN
829:
830: IF p_attribute_code = 'TAX_EXEMPT_REASON' THEN
831: IF ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code <> FND_API.G_MISS_CHAR
832: THEN
833: RETURN ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code;
834: END IF;
835: ELSIF p_attribute_code = 'TAX_EXEMPT_NUMBER' THEN
836: IF ONT_LINE_Def_Hdlr.g_record.tax_exempt_number <> FND_API.G_MISS_CHAR
837: THEN
832: THEN
833: RETURN ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code;
834: END IF;
835: ELSIF p_attribute_code = 'TAX_EXEMPT_NUMBER' THEN
836: IF ONT_LINE_Def_Hdlr.g_record.tax_exempt_number <> FND_API.G_MISS_CHAR
837: THEN
838: RETURN ONT_LINE_Def_Hdlr.g_record.tax_exempt_number;
839: END IF;
840: END IF;
834: END IF;
835: ELSIF p_attribute_code = 'TAX_EXEMPT_NUMBER' THEN
836: IF ONT_LINE_Def_Hdlr.g_record.tax_exempt_number <> FND_API.G_MISS_CHAR
837: THEN
838: RETURN ONT_LINE_Def_Hdlr.g_record.tax_exempt_number;
839: END IF;
840: END IF;
841: IF ((ONT_LINE_Def_Hdlr.g_record.ship_to_org_id IS NOT NULL AND
842: ONT_LINE_Def_Hdlr.g_record.ship_to_org_id <> FND_API.G_MISS_NUM) OR
837: THEN
838: RETURN ONT_LINE_Def_Hdlr.g_record.tax_exempt_number;
839: END IF;
840: END IF;
841: IF ((ONT_LINE_Def_Hdlr.g_record.ship_to_org_id IS NOT NULL AND
842: ONT_LINE_Def_Hdlr.g_record.ship_to_org_id <> FND_API.G_MISS_NUM) OR
843: (ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id IS NOT NULL AND
844: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id <> FND_API.G_MISS_NUM)) AND
845: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id IS NOT NULL AND
838: RETURN ONT_LINE_Def_Hdlr.g_record.tax_exempt_number;
839: END IF;
840: END IF;
841: IF ((ONT_LINE_Def_Hdlr.g_record.ship_to_org_id IS NOT NULL AND
842: ONT_LINE_Def_Hdlr.g_record.ship_to_org_id <> FND_API.G_MISS_NUM) OR
843: (ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id IS NOT NULL AND
844: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id <> FND_API.G_MISS_NUM)) AND
845: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id IS NOT NULL AND
846: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id <> FND_API.G_MISS_NUM AND
839: END IF;
840: END IF;
841: IF ((ONT_LINE_Def_Hdlr.g_record.ship_to_org_id IS NOT NULL AND
842: ONT_LINE_Def_Hdlr.g_record.ship_to_org_id <> FND_API.G_MISS_NUM) OR
843: (ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id IS NOT NULL AND
844: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id <> FND_API.G_MISS_NUM)) AND
845: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id IS NOT NULL AND
846: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id <> FND_API.G_MISS_NUM AND
847: ONT_LINE_Def_Hdlr.g_record.tax_date IS NOT NULL AND
840: END IF;
841: IF ((ONT_LINE_Def_Hdlr.g_record.ship_to_org_id IS NOT NULL AND
842: ONT_LINE_Def_Hdlr.g_record.ship_to_org_id <> FND_API.G_MISS_NUM) OR
843: (ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id IS NOT NULL AND
844: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id <> FND_API.G_MISS_NUM)) AND
845: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id IS NOT NULL AND
846: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id <> FND_API.G_MISS_NUM AND
847: ONT_LINE_Def_Hdlr.g_record.tax_date IS NOT NULL AND
848: ONT_LINE_Def_Hdlr.g_record.tax_date <> FND_API.G_MISS_DATE AND
841: IF ((ONT_LINE_Def_Hdlr.g_record.ship_to_org_id IS NOT NULL AND
842: ONT_LINE_Def_Hdlr.g_record.ship_to_org_id <> FND_API.G_MISS_NUM) OR
843: (ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id IS NOT NULL AND
844: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id <> FND_API.G_MISS_NUM)) AND
845: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id IS NOT NULL AND
846: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id <> FND_API.G_MISS_NUM AND
847: ONT_LINE_Def_Hdlr.g_record.tax_date IS NOT NULL AND
848: ONT_LINE_Def_Hdlr.g_record.tax_date <> FND_API.G_MISS_DATE AND
849: ONT_LINE_Def_Hdlr.g_record.tax_code IS NOT NULL AND
842: ONT_LINE_Def_Hdlr.g_record.ship_to_org_id <> FND_API.G_MISS_NUM) OR
843: (ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id IS NOT NULL AND
844: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id <> FND_API.G_MISS_NUM)) AND
845: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id IS NOT NULL AND
846: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id <> FND_API.G_MISS_NUM AND
847: ONT_LINE_Def_Hdlr.g_record.tax_date IS NOT NULL AND
848: ONT_LINE_Def_Hdlr.g_record.tax_date <> FND_API.G_MISS_DATE AND
849: ONT_LINE_Def_Hdlr.g_record.tax_code IS NOT NULL AND
850: ONT_LINE_Def_Hdlr.g_record.tax_code <> FND_API.G_MISS_CHAR
843: (ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id IS NOT NULL AND
844: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id <> FND_API.G_MISS_NUM)) AND
845: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id IS NOT NULL AND
846: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id <> FND_API.G_MISS_NUM AND
847: ONT_LINE_Def_Hdlr.g_record.tax_date IS NOT NULL AND
848: ONT_LINE_Def_Hdlr.g_record.tax_date <> FND_API.G_MISS_DATE AND
849: ONT_LINE_Def_Hdlr.g_record.tax_code IS NOT NULL AND
850: ONT_LINE_Def_Hdlr.g_record.tax_code <> FND_API.G_MISS_CHAR
851: THEN
844: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id <> FND_API.G_MISS_NUM)) AND
845: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id IS NOT NULL AND
846: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id <> FND_API.G_MISS_NUM AND
847: ONT_LINE_Def_Hdlr.g_record.tax_date IS NOT NULL AND
848: ONT_LINE_Def_Hdlr.g_record.tax_date <> FND_API.G_MISS_DATE AND
849: ONT_LINE_Def_Hdlr.g_record.tax_code IS NOT NULL AND
850: ONT_LINE_Def_Hdlr.g_record.tax_code <> FND_API.G_MISS_CHAR
851: THEN
852: --bsadri if the cached values are the same do not fetch them
845: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id IS NOT NULL AND
846: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id <> FND_API.G_MISS_NUM AND
847: ONT_LINE_Def_Hdlr.g_record.tax_date IS NOT NULL AND
848: ONT_LINE_Def_Hdlr.g_record.tax_date <> FND_API.G_MISS_DATE AND
849: ONT_LINE_Def_Hdlr.g_record.tax_code IS NOT NULL AND
850: ONT_LINE_Def_Hdlr.g_record.tax_code <> FND_API.G_MISS_CHAR
851: THEN
852: --bsadri if the cached values are the same do not fetch them
853: IF nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,FND_API.G_MISS_NUM)
846: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id <> FND_API.G_MISS_NUM AND
847: ONT_LINE_Def_Hdlr.g_record.tax_date IS NOT NULL AND
848: ONT_LINE_Def_Hdlr.g_record.tax_date <> FND_API.G_MISS_DATE AND
849: ONT_LINE_Def_Hdlr.g_record.tax_code IS NOT NULL AND
850: ONT_LINE_Def_Hdlr.g_record.tax_code <> FND_API.G_MISS_CHAR
851: THEN
852: --bsadri if the cached values are the same do not fetch them
853: IF nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,FND_API.G_MISS_NUM)
854: <>nvl( OE_Order_Cache.g_TAX_EXEMPTION_CACH.ship_to_org_id,FND_API.G_MISS_NUM)
849: ONT_LINE_Def_Hdlr.g_record.tax_code IS NOT NULL AND
850: ONT_LINE_Def_Hdlr.g_record.tax_code <> FND_API.G_MISS_CHAR
851: THEN
852: --bsadri if the cached values are the same do not fetch them
853: IF nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,FND_API.G_MISS_NUM)
854: <>nvl( OE_Order_Cache.g_TAX_EXEMPTION_CACH.ship_to_org_id,FND_API.G_MISS_NUM)
855: OR nvl(ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id,FND_API.G_MISS_NUM) <>
856: NVL( OE_Order_Cache.g_TAX_EXEMPTION_CACH.invoice_to_org_id,FND_API.G_MISS_NUM)
857: OR NVL(ONT_LINE_Def_Hdlr.g_record.sold_to_org_id,FND_API.G_MISS_NUM) <>
851: THEN
852: --bsadri if the cached values are the same do not fetch them
853: IF nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,FND_API.G_MISS_NUM)
854: <>nvl( OE_Order_Cache.g_TAX_EXEMPTION_CACH.ship_to_org_id,FND_API.G_MISS_NUM)
855: OR nvl(ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id,FND_API.G_MISS_NUM) <>
856: NVL( OE_Order_Cache.g_TAX_EXEMPTION_CACH.invoice_to_org_id,FND_API.G_MISS_NUM)
857: OR NVL(ONT_LINE_Def_Hdlr.g_record.sold_to_org_id,FND_API.G_MISS_NUM) <>
858: nvl(OE_Order_Cache.g_TAX_EXEMPTION_CACH.sold_to_org_id,FND_API.G_MISS_NUM)
859: OR nvl(ONT_LINE_Def_Hdlr.g_record.tax_date,FND_API.G_MISS_DATE) <>
853: IF nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,FND_API.G_MISS_NUM)
854: <>nvl( OE_Order_Cache.g_TAX_EXEMPTION_CACH.ship_to_org_id,FND_API.G_MISS_NUM)
855: OR nvl(ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id,FND_API.G_MISS_NUM) <>
856: NVL( OE_Order_Cache.g_TAX_EXEMPTION_CACH.invoice_to_org_id,FND_API.G_MISS_NUM)
857: OR NVL(ONT_LINE_Def_Hdlr.g_record.sold_to_org_id,FND_API.G_MISS_NUM) <>
858: nvl(OE_Order_Cache.g_TAX_EXEMPTION_CACH.sold_to_org_id,FND_API.G_MISS_NUM)
859: OR nvl(ONT_LINE_Def_Hdlr.g_record.tax_date,FND_API.G_MISS_DATE) <>
860: nvl(OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_date,FND_API.G_MISS_DATE)
861: OR nvl(ONT_LINE_Def_Hdlr.g_record.tax_code,FND_API.G_MISS_CHAR) <>
855: OR nvl(ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id,FND_API.G_MISS_NUM) <>
856: NVL( OE_Order_Cache.g_TAX_EXEMPTION_CACH.invoice_to_org_id,FND_API.G_MISS_NUM)
857: OR NVL(ONT_LINE_Def_Hdlr.g_record.sold_to_org_id,FND_API.G_MISS_NUM) <>
858: nvl(OE_Order_Cache.g_TAX_EXEMPTION_CACH.sold_to_org_id,FND_API.G_MISS_NUM)
859: OR nvl(ONT_LINE_Def_Hdlr.g_record.tax_date,FND_API.G_MISS_DATE) <>
860: nvl(OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_date,FND_API.G_MISS_DATE)
861: OR nvl(ONT_LINE_Def_Hdlr.g_record.tax_code,FND_API.G_MISS_CHAR) <>
862: nvl(OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_code ,FND_API.G_MISS_CHAR)
863: THEN --{
857: OR NVL(ONT_LINE_Def_Hdlr.g_record.sold_to_org_id,FND_API.G_MISS_NUM) <>
858: nvl(OE_Order_Cache.g_TAX_EXEMPTION_CACH.sold_to_org_id,FND_API.G_MISS_NUM)
859: OR nvl(ONT_LINE_Def_Hdlr.g_record.tax_date,FND_API.G_MISS_DATE) <>
860: nvl(OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_date,FND_API.G_MISS_DATE)
861: OR nvl(ONT_LINE_Def_Hdlr.g_record.tax_code,FND_API.G_MISS_CHAR) <>
862: nvl(OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_code ,FND_API.G_MISS_CHAR)
863: THEN --{
864: -- eBTax changes
865: /* OPEN C_Line_Std_Tax_Exemption(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
861: OR nvl(ONT_LINE_Def_Hdlr.g_record.tax_code,FND_API.G_MISS_CHAR) <>
862: nvl(OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_code ,FND_API.G_MISS_CHAR)
863: THEN --{
864: -- eBTax changes
865: /* OPEN C_Line_Std_Tax_Exemption(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
866: ONT_LINE_Def_Hdlr.g_record.Invoice_To_Org_id,
867: ONT_LINE_Def_Hdlr.g_record.sold_To_Org_id,
868: ONT_LINE_Def_Hdlr.g_record.tax_date,
869: ONT_LINE_Def_Hdlr.g_record.tax_code);
862: nvl(OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_code ,FND_API.G_MISS_CHAR)
863: THEN --{
864: -- eBTax changes
865: /* OPEN C_Line_Std_Tax_Exemption(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
866: ONT_LINE_Def_Hdlr.g_record.Invoice_To_Org_id,
867: ONT_LINE_Def_Hdlr.g_record.sold_To_Org_id,
868: ONT_LINE_Def_Hdlr.g_record.tax_date,
869: ONT_LINE_Def_Hdlr.g_record.tax_code);
870: FETCH C_Line_Std_Tax_Exemption INTO l_tax_exempt_number,
863: THEN --{
864: -- eBTax changes
865: /* OPEN C_Line_Std_Tax_Exemption(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
866: ONT_LINE_Def_Hdlr.g_record.Invoice_To_Org_id,
867: ONT_LINE_Def_Hdlr.g_record.sold_To_Org_id,
868: ONT_LINE_Def_Hdlr.g_record.tax_date,
869: ONT_LINE_Def_Hdlr.g_record.tax_code);
870: FETCH C_Line_Std_Tax_Exemption INTO l_tax_exempt_number,
871: l_tax_exempt_reason_code;
864: -- eBTax changes
865: /* OPEN C_Line_Std_Tax_Exemption(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
866: ONT_LINE_Def_Hdlr.g_record.Invoice_To_Org_id,
867: ONT_LINE_Def_Hdlr.g_record.sold_To_Org_id,
868: ONT_LINE_Def_Hdlr.g_record.tax_date,
869: ONT_LINE_Def_Hdlr.g_record.tax_code);
870: FETCH C_Line_Std_Tax_Exemption INTO l_tax_exempt_number,
871: l_tax_exempt_reason_code;
872: CLOSE C_Line_Std_Tax_Exemption;
865: /* OPEN C_Line_Std_Tax_Exemption(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
866: ONT_LINE_Def_Hdlr.g_record.Invoice_To_Org_id,
867: ONT_LINE_Def_Hdlr.g_record.sold_To_Org_id,
868: ONT_LINE_Def_Hdlr.g_record.tax_date,
869: ONT_LINE_Def_Hdlr.g_record.tax_code);
870: FETCH C_Line_Std_Tax_Exemption INTO l_tax_exempt_number,
871: l_tax_exempt_reason_code;
872: CLOSE C_Line_Std_Tax_Exemption;
873: */
871: l_tax_exempt_reason_code;
872: CLOSE C_Line_Std_Tax_Exemption;
873: */
874:
875: open partyinfo(ONT_LINE_Def_Hdlr.g_record.Invoice_To_Org_id);
876: fetch partyinfo into l_bill_to_cust_Acct_id,
877: l_bill_to_party_id,
878: l_bill_to_party_site_id,
879: l_org_id;
878: l_bill_to_party_site_id,
879: l_org_id;
880: close partyinfo;
881:
882: if ONT_LINE_Def_Hdlr.g_record.ship_to_org_id = ONT_LINE_Def_Hdlr.g_record.Invoice_To_Org_id then
883: l_ship_to_cust_Acct_id := l_bill_to_cust_Acct_id;
884: l_ship_to_party_id := l_bill_to_party_id;
885: l_ship_to_party_site_id := l_bill_to_party_site_id ;
886: else
883: l_ship_to_cust_Acct_id := l_bill_to_cust_Acct_id;
884: l_ship_to_party_id := l_bill_to_party_id;
885: l_ship_to_party_site_id := l_bill_to_party_site_id ;
886: else
887: open partyinfo(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id);
888: fetch partyinfo into l_ship_to_cust_Acct_id,
889: l_ship_to_party_id,
890: l_ship_to_party_site_id,
891: l_org_id;
898: INTO l_tax_exempt_number,
899: l_tax_exempt_reason_code
900: FROM ZX_EXEMPTIONS_V
901: WHERE
902: nvl(site_use_id,nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
903: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id))
904: = nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
905: ONT_LINE_Def_Hdlr.g_record.Invoice_to_org_id)
906: AND nvl(cust_account_id, l_bill_to_cust_acct_id) = l_bill_to_cust_acct_id
899: l_tax_exempt_reason_code
900: FROM ZX_EXEMPTIONS_V
901: WHERE
902: nvl(site_use_id,nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
903: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id))
904: = nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
905: ONT_LINE_Def_Hdlr.g_record.Invoice_to_org_id)
906: AND nvl(cust_account_id, l_bill_to_cust_acct_id) = l_bill_to_cust_acct_id
907: AND nvl(PARTY_SITE_ID,nvl(l_ship_to_party_site_id, l_bill_to_party_site_id))=
900: FROM ZX_EXEMPTIONS_V
901: WHERE
902: nvl(site_use_id,nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
903: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id))
904: = nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
905: ONT_LINE_Def_Hdlr.g_record.Invoice_to_org_id)
906: AND nvl(cust_account_id, l_bill_to_cust_acct_id) = l_bill_to_cust_acct_id
907: AND nvl(PARTY_SITE_ID,nvl(l_ship_to_party_site_id, l_bill_to_party_site_id))=
908: nvl(l_ship_to_party_site_id, l_bill_to_party_site_id)
901: WHERE
902: nvl(site_use_id,nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
903: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id))
904: = nvl(ONT_LINE_Def_Hdlr.g_record.ship_to_org_id,
905: ONT_LINE_Def_Hdlr.g_record.Invoice_to_org_id)
906: AND nvl(cust_account_id, l_bill_to_cust_acct_id) = l_bill_to_cust_acct_id
907: AND nvl(PARTY_SITE_ID,nvl(l_ship_to_party_site_id, l_bill_to_party_site_id))=
908: nvl(l_ship_to_party_site_id, l_bill_to_party_site_id)
909: AND org_id = l_org_id
909: AND org_id = l_org_id
910: AND party_id = l_bill_to_party_id
911: -- AND nvl(LEGAL_ENTITY_ID,-99) IN (nvl(l_legal_entity_id, legal_entity_id), -99)
912: AND EXEMPTION_STATUS_CODE = 'PRIMARY'
913: AND TRUNC(NVL(ONT_LINE_Def_Hdlr.g_record.tax_date,sysdate))
914: BETWEEN TRUNC(EFFECTIVE_FROM)
915: AND TRUNC(NVL(EFFECTIVE_TO,NVL(ONT_LINE_Def_Hdlr.g_record.tax_date,sysdate)))
916: AND ROWNUM = 1;
917:
911: -- AND nvl(LEGAL_ENTITY_ID,-99) IN (nvl(l_legal_entity_id, legal_entity_id), -99)
912: AND EXEMPTION_STATUS_CODE = 'PRIMARY'
913: AND TRUNC(NVL(ONT_LINE_Def_Hdlr.g_record.tax_date,sysdate))
914: BETWEEN TRUNC(EFFECTIVE_FROM)
915: AND TRUNC(NVL(EFFECTIVE_TO,NVL(ONT_LINE_Def_Hdlr.g_record.tax_date,sysdate)))
916: AND ROWNUM = 1;
917:
918: -- end eBtax changes
919:
918: -- end eBtax changes
919:
920:
921: OE_Order_Cache.g_TAX_EXEMPTION_CACH.ship_to_org_id :=
922: ONT_LINE_Def_Hdlr.g_record.ship_to_org_id ;
923: OE_Order_Cache.g_TAX_EXEMPTION_CACH.invoice_to_org_id :=
924: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id;
925: OE_Order_Cache.g_TAX_EXEMPTION_CACH.sold_to_org_id :=
926: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id ;
920:
921: OE_Order_Cache.g_TAX_EXEMPTION_CACH.ship_to_org_id :=
922: ONT_LINE_Def_Hdlr.g_record.ship_to_org_id ;
923: OE_Order_Cache.g_TAX_EXEMPTION_CACH.invoice_to_org_id :=
924: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id;
925: OE_Order_Cache.g_TAX_EXEMPTION_CACH.sold_to_org_id :=
926: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id ;
927: OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_date :=
928: ONT_LINE_Def_Hdlr.g_record.tax_date;
922: ONT_LINE_Def_Hdlr.g_record.ship_to_org_id ;
923: OE_Order_Cache.g_TAX_EXEMPTION_CACH.invoice_to_org_id :=
924: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id;
925: OE_Order_Cache.g_TAX_EXEMPTION_CACH.sold_to_org_id :=
926: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id ;
927: OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_date :=
928: ONT_LINE_Def_Hdlr.g_record.tax_date;
929: OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_code :=
930: ONT_LINE_Def_Hdlr.g_record.tax_code;
924: ONT_LINE_Def_Hdlr.g_record.invoice_to_org_id;
925: OE_Order_Cache.g_TAX_EXEMPTION_CACH.sold_to_org_id :=
926: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id ;
927: OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_date :=
928: ONT_LINE_Def_Hdlr.g_record.tax_date;
929: OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_code :=
930: ONT_LINE_Def_Hdlr.g_record.tax_code;
931: OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_exempt_number :=
932: l_tax_exempt_number;
926: ONT_LINE_Def_Hdlr.g_record.sold_to_org_id ;
927: OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_date :=
928: ONT_LINE_Def_Hdlr.g_record.tax_date;
929: OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_code :=
930: ONT_LINE_Def_Hdlr.g_record.tax_code;
931: OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_exempt_number :=
932: l_tax_exempt_number;
933: OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_exempt_reason_code :=
934: l_tax_exempt_reason_code;
942: OE_Order_Cache.g_TAX_EXEMPTION_CACH.tax_exempt_reason_code;
943: END IF; --}
944: END IF;
945:
946: ELSIF ONT_LINE_Def_Hdlr.g_record.tax_exempt_flag = 'R' THEN
947: RETURN NULL;
948:
949: ELSIF ONT_LINE_Def_Hdlr.g_record.tax_exempt_flag = 'E' THEN
950:
945:
946: ELSIF ONT_LINE_Def_Hdlr.g_record.tax_exempt_flag = 'R' THEN
947: RETURN NULL;
948:
949: ELSIF ONT_LINE_Def_Hdlr.g_record.tax_exempt_flag = 'E' THEN
950:
951: -- Check whether the attribute has got a value in privious call to
952: -- the related attribute.
953: -- e.g. when tax exempt number is defaulted, the reason code is also
955: -- (OE_Line_DEF_HANDLER.g_record). It can used in defaulting the
956: -- tax exempt reason.
957:
958: IF p_attribute_code = 'TAX_EXEMPT_REASON' THEN
959: IF ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code <> FND_API.G_MISS_CHAR
960: THEN
961: RETURN ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code;
962: END IF;
963: ELSIF p_attribute_code = 'TAX_EXEMPT_NUMBER' THEN
957:
958: IF p_attribute_code = 'TAX_EXEMPT_REASON' THEN
959: IF ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code <> FND_API.G_MISS_CHAR
960: THEN
961: RETURN ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code;
962: END IF;
963: ELSIF p_attribute_code = 'TAX_EXEMPT_NUMBER' THEN
964: IF ONT_LINE_Def_Hdlr.g_record.tax_exempt_number <> FND_API.G_MISS_CHAR
965: THEN
960: THEN
961: RETURN ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code;
962: END IF;
963: ELSIF p_attribute_code = 'TAX_EXEMPT_NUMBER' THEN
964: IF ONT_LINE_Def_Hdlr.g_record.tax_exempt_number <> FND_API.G_MISS_CHAR
965: THEN
966: RETURN ONT_LINE_Def_Hdlr.g_record.tax_exempt_number;
967: END IF;
968: END IF;
962: END IF;
963: ELSIF p_attribute_code = 'TAX_EXEMPT_NUMBER' THEN
964: IF ONT_LINE_Def_Hdlr.g_record.tax_exempt_number <> FND_API.G_MISS_CHAR
965: THEN
966: RETURN ONT_LINE_Def_Hdlr.g_record.tax_exempt_number;
967: END IF;
968: END IF;
969:
970:
977: INTO l_tax_exempt_flag,
978: l_tax_exempt_number,
979: l_tax_exempt_reason_code
980: FROM OE_ORDER_HEADERS_ALL
981: WHERE header_id = ONT_LINE_Def_Hdlr.g_record.header_id;
982: IF l_tax_exempt_flag <> 'E' THEN
983: l_tax_exempt_number := NULL;
984: l_tax_exempt_reason_code := NULL;
985: END IF;
995:
996: END IF;
997: -- bug 5184842 only set both when both needs to be defaulted
998: -- otherwise, the return value should take care
999: IF (ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code = FND_API.G_MISS_CHAR
1000: AND ONT_LINE_Def_Hdlr.g_record.tax_exempt_number = FND_API.G_MISS_CHAR)
1001: THEN
1002: IF l_debug_level > 0 THEN
1003: oe_debug_pub.add( 'DEFAULTED TAX EXEMPT NUMBER/REASON '||L_TAX_EXEMPT_NUMBER|| '/' || L_TAX_EXEMPT_REASON_CODE ) ;
996: END IF;
997: -- bug 5184842 only set both when both needs to be defaulted
998: -- otherwise, the return value should take care
999: IF (ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code = FND_API.G_MISS_CHAR
1000: AND ONT_LINE_Def_Hdlr.g_record.tax_exempt_number = FND_API.G_MISS_CHAR)
1001: THEN
1002: IF l_debug_level > 0 THEN
1003: oe_debug_pub.add( 'DEFAULTED TAX EXEMPT NUMBER/REASON '||L_TAX_EXEMPT_NUMBER|| '/' || L_TAX_EXEMPT_REASON_CODE ) ;
1004: END IF;
1002: IF l_debug_level > 0 THEN
1003: oe_debug_pub.add( 'DEFAULTED TAX EXEMPT NUMBER/REASON '||L_TAX_EXEMPT_NUMBER|| '/' || L_TAX_EXEMPT_REASON_CODE ) ;
1004: END IF;
1005:
1006: ONT_LINE_Def_Hdlr.g_record.tax_exempt_number := l_tax_exempt_number;
1007: ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code := l_tax_exempt_reason_code;
1008: END IF;--bug5184842
1009:
1010: IF p_attribute_code = 'TAX_EXEMPT_NUMBER' THEN
1003: oe_debug_pub.add( 'DEFAULTED TAX EXEMPT NUMBER/REASON '||L_TAX_EXEMPT_NUMBER|| '/' || L_TAX_EXEMPT_REASON_CODE ) ;
1004: END IF;
1005:
1006: ONT_LINE_Def_Hdlr.g_record.tax_exempt_number := l_tax_exempt_number;
1007: ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code := l_tax_exempt_reason_code;
1008: END IF;--bug5184842
1009:
1010: IF p_attribute_code = 'TAX_EXEMPT_NUMBER' THEN
1011: IF l_debug_level > 0 THEN
1025: IF p_database_object_name = 'OE_AK_ORDER_HEADERS_V' THEN
1026: ONT_HEADER_Def_Hdlr.g_record.tax_exempt_number := NULL;
1027: ONT_HEADER_Def_Hdlr.g_record.tax_exempt_reason_code := NULL;
1028: ELSIF p_database_object_name = 'OE_AK_ORDER_LINES_V' THEN
1029: ONT_LINE_Def_Hdlr.g_record.tax_exempt_number := NULL;
1030: ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code := NULL;
1031: END IF;
1032: RETURN NULL;
1033:
1026: ONT_HEADER_Def_Hdlr.g_record.tax_exempt_number := NULL;
1027: ONT_HEADER_Def_Hdlr.g_record.tax_exempt_reason_code := NULL;
1028: ELSIF p_database_object_name = 'OE_AK_ORDER_LINES_V' THEN
1029: ONT_LINE_Def_Hdlr.g_record.tax_exempt_number := NULL;
1030: ONT_LINE_Def_Hdlr.g_record.tax_exempt_reason_code := NULL;
1031: END IF;
1032: RETURN NULL;
1033:
1034: WHEN OTHERS THEN
1131:
1132: Begin
1133: --bug4333881 start
1134: IF l_debug_level > 0 THEN
1135: oe_debug_pub.add('line_id : ' || ONT_LINE_DEF_HDLR.g_record.line_id);
1136: oe_debug_pub.add('commitment_id : ' || ONT_LINE_DEF_HDLR.g_record.commitment_id);
1137: END IF;
1138:
1139: l_commitment_id := ONT_LINE_DEF_HDLR.g_record.commitment_id;
1132: Begin
1133: --bug4333881 start
1134: IF l_debug_level > 0 THEN
1135: oe_debug_pub.add('line_id : ' || ONT_LINE_DEF_HDLR.g_record.line_id);
1136: oe_debug_pub.add('commitment_id : ' || ONT_LINE_DEF_HDLR.g_record.commitment_id);
1137: END IF;
1138:
1139: l_commitment_id := ONT_LINE_DEF_HDLR.g_record.commitment_id;
1140:
1135: oe_debug_pub.add('line_id : ' || ONT_LINE_DEF_HDLR.g_record.line_id);
1136: oe_debug_pub.add('commitment_id : ' || ONT_LINE_DEF_HDLR.g_record.commitment_id);
1137: END IF;
1138:
1139: l_commitment_id := ONT_LINE_DEF_HDLR.g_record.commitment_id;
1140:
1141: IF l_commitment_id IS NOT NULL AND
1142: l_commitment_id <> FND_API.G_MISS_NUM THEN
1143: BEGIN
1157: WHEN OTHERS THEN
1158: RETURN null;
1159: END;
1160: ELSE
1161: l_cust_trx_type_id := OE_Invoice_PUB.Get_Customer_Transaction_Type(ONT_LINE_DEF_HDLR.g_record);
1162: oe_debug_pub.add( 'value of customer trx type id '||l_cust_trx_type_id,1);
1163: END IF;
1164: --bug4333881 end
1165:
1166: --bug 3175277 begin
1167: --There is no need to load line_type cache again because
1168: --OE_Invoice_PUB.Get_Customer_Transaction_Type checks the line_type cache to get cust_trx_type_id
1169: /*if (l_cust_trx_type_id = 0 or l_cust_trx_type_id is null) then
1170: l_line_type_rec := oe_order_cache.load_line_type(ONT_LINE_DEF_HDLR.g_record.line_type_id);
1171: l_cust_trx_type_id := l_line_type_rec.cust_trx_type_id;
1172: oe_debug_pub.add( 'customer trx type id:'||l_cust_trx_type_id,1);
1173: end if; */
1174: --bug 3175277 end
1188: FROM RA_CUST_TRX_TYPES
1189: WHERE CUST_TRX_TYPE_ID = l_cust_trx_type_id;
1190: end if; */
1191: -- end bug 4200055
1192: --l_line_type_rec := oe_order_cache.load_line_type(ONT_LINE_DEF_HDLR.g_record.line_type_id);
1193:
1194: IF l_debug_level > 0 THEN
1195: oe_debug_pub.add('l_calculate_tax_flag : '|| l_calculate_tax_flag);
1196: END IF;
1194: IF l_debug_level > 0 THEN
1195: oe_debug_pub.add('l_calculate_tax_flag : '|| l_calculate_tax_flag);
1196: END IF;
1197:
1198: IF nvl(ONT_LINE_DEF_HDLR.g_record.tax_exempt_flag, 'S') <> 'R' AND
1199: l_calculate_tax_flag = 'N' THEN
1200:
1201: RETURN NULL;
1202: END IF;
1209: WHEN OTHERS THEN
1210: oe_debug_pub.add(' in when others for cust_trx_type_code - tax code' );
1211: End;
1212:
1213: IF ONT_LINE_DEF_HDLR.g_record.inventory_item_id IS NOT NULL AND
1214: ONT_LINE_DEF_HDLR.g_record.inventory_item_id <> FND_API.G_MISS_NUM AND
1215: ONT_LINE_DEF_HDLR.g_record.tax_date IS NOT NULL AND
1216: ONT_LINE_DEF_HDLR.g_record.tax_date <> FND_API.G_MISS_DATE
1217: THEN
1210: oe_debug_pub.add(' in when others for cust_trx_type_code - tax code' );
1211: End;
1212:
1213: IF ONT_LINE_DEF_HDLR.g_record.inventory_item_id IS NOT NULL AND
1214: ONT_LINE_DEF_HDLR.g_record.inventory_item_id <> FND_API.G_MISS_NUM AND
1215: ONT_LINE_DEF_HDLR.g_record.tax_date IS NOT NULL AND
1216: ONT_LINE_DEF_HDLR.g_record.tax_date <> FND_API.G_MISS_DATE
1217: THEN
1218:
1211: End;
1212:
1213: IF ONT_LINE_DEF_HDLR.g_record.inventory_item_id IS NOT NULL AND
1214: ONT_LINE_DEF_HDLR.g_record.inventory_item_id <> FND_API.G_MISS_NUM AND
1215: ONT_LINE_DEF_HDLR.g_record.tax_date IS NOT NULL AND
1216: ONT_LINE_DEF_HDLR.g_record.tax_date <> FND_API.G_MISS_DATE
1217: THEN
1218:
1219:
1212:
1213: IF ONT_LINE_DEF_HDLR.g_record.inventory_item_id IS NOT NULL AND
1214: ONT_LINE_DEF_HDLR.g_record.inventory_item_id <> FND_API.G_MISS_NUM AND
1215: ONT_LINE_DEF_HDLR.g_record.tax_date IS NOT NULL AND
1216: ONT_LINE_DEF_HDLR.g_record.tax_date <> FND_API.G_MISS_DATE
1217: THEN
1218:
1219:
1220: OE_GLOBALS.Set_Context;
1226: l_organization_id := OE_Sys_Parameters.VALUE('MASTER_ORGANIZATION_ID', l_org_id);
1227:
1228:
1229: IF l_debug_level > 0 THEN
1230: oe_debug_pub.add( 'SHIP_TO'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.SHIP_TO_ORG_ID ) , 3 ) ;
1231: END IF;
1232: IF l_debug_level > 0 THEN
1233: oe_debug_pub.add( 'BILL_TO'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.INVOICE_TO_ORG_ID ) , 3 ) ;
1234: END IF;
1229: IF l_debug_level > 0 THEN
1230: oe_debug_pub.add( 'SHIP_TO'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.SHIP_TO_ORG_ID ) , 3 ) ;
1231: END IF;
1232: IF l_debug_level > 0 THEN
1233: oe_debug_pub.add( 'BILL_TO'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.INVOICE_TO_ORG_ID ) , 3 ) ;
1234: END IF;
1235: IF l_debug_level > 0 THEN
1236: oe_debug_pub.add( 'TAX_DATE'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.TAX_DATE ) , 3 ) ;
1237: END IF;
1232: IF l_debug_level > 0 THEN
1233: oe_debug_pub.add( 'BILL_TO'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.INVOICE_TO_ORG_ID ) , 3 ) ;
1234: END IF;
1235: IF l_debug_level > 0 THEN
1236: oe_debug_pub.add( 'TAX_DATE'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.TAX_DATE ) , 3 ) ;
1237: END IF;
1238: IF l_debug_level > 0 THEN
1239: oe_debug_pub.add( 'SOLD TO'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.SOLD_TO_ORG_ID ) , 3 ) ;
1240: END IF;
1235: IF l_debug_level > 0 THEN
1236: oe_debug_pub.add( 'TAX_DATE'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.TAX_DATE ) , 3 ) ;
1237: END IF;
1238: IF l_debug_level > 0 THEN
1239: oe_debug_pub.add( 'SOLD TO'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.SOLD_TO_ORG_ID ) , 3 ) ;
1240: END IF;
1241: IF l_debug_level > 0 THEN
1242: oe_debug_pub.add( 'ORG'||TO_CHAR ( L_ORG_ID ) , 3 ) ;
1243: END IF;
1244: IF l_debug_level > 0 THEN
1245: oe_debug_pub.add( 'ITEM VALIDATION ORG'||TO_CHAR ( L_ORGANIZATION_ID ) , 3 ) ;
1246: END IF;
1247: IF l_debug_level > 0 THEN
1248: oe_debug_pub.add( 'ITEM_ID'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.INVENTORY_ITEM_ID ) , 3 ) ;
1249: END IF;
1250: IF l_debug_level > 0 THEN
1251: oe_debug_pub.add( 'SHIP_FROM'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.SHIP_FROM_ORG_ID ) ) ;
1252: END IF;
1247: IF l_debug_level > 0 THEN
1248: oe_debug_pub.add( 'ITEM_ID'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.INVENTORY_ITEM_ID ) , 3 ) ;
1249: END IF;
1250: IF l_debug_level > 0 THEN
1251: oe_debug_pub.add( 'SHIP_FROM'||TO_CHAR ( ONT_LINE_DEF_HDLR.G_RECORD.SHIP_FROM_ORG_ID ) ) ;
1252: END IF;
1253:
1254: IF l_organization_id IS NOT NULL AND
1255: l_organization_id <> FND_API.G_MISS_NUM
1275: -- Call the AR's API to get the default tax code
1276:
1277: --bsadri caching the values
1278:
1279: IF nvl(ONT_LINE_DEF_HDLR.g_record.ship_to_org_id,FND_API.G_MISS_NUM)<>
1280:
1281: nvl(OE_Order_Cache.g_TAX_CODE_CACH.ship_to_org_id,FND_API.G_MISS_NUM)
1282: OR nvl(ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id,FND_API.G_MISS_NUM)<>
1283: nvl(OE_Order_Cache.g_TAX_CODE_CACH.invoice_to_org_id,FND_API.G_MISS_NUM)
1278:
1279: IF nvl(ONT_LINE_DEF_HDLR.g_record.ship_to_org_id,FND_API.G_MISS_NUM)<>
1280:
1281: nvl(OE_Order_Cache.g_TAX_CODE_CACH.ship_to_org_id,FND_API.G_MISS_NUM)
1282: OR nvl(ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id,FND_API.G_MISS_NUM)<>
1283: nvl(OE_Order_Cache.g_TAX_CODE_CACH.invoice_to_org_id,FND_API.G_MISS_NUM)
1284: OR nvl(ONT_LINE_DEF_HDLR.g_record.inventory_item_id,FND_API.G_MISS_NUM) <>
1285: nvl(OE_Order_Cache.g_TAX_CODE_CACH.inventory_item_id,FND_API.G_MISS_NUM)
1286: OR nvl(ONT_LINE_DEF_HDLR.g_record.ship_from_org_id,FND_API.G_MISS_NUM)<>
1280:
1281: nvl(OE_Order_Cache.g_TAX_CODE_CACH.ship_to_org_id,FND_API.G_MISS_NUM)
1282: OR nvl(ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id,FND_API.G_MISS_NUM)<>
1283: nvl(OE_Order_Cache.g_TAX_CODE_CACH.invoice_to_org_id,FND_API.G_MISS_NUM)
1284: OR nvl(ONT_LINE_DEF_HDLR.g_record.inventory_item_id,FND_API.G_MISS_NUM) <>
1285: nvl(OE_Order_Cache.g_TAX_CODE_CACH.inventory_item_id,FND_API.G_MISS_NUM)
1286: OR nvl(ONT_LINE_DEF_HDLR.g_record.ship_from_org_id,FND_API.G_MISS_NUM)<>
1287: nvl(OE_Order_Cache.g_TAX_CODE_CACH.ship_from_org_id ,FND_API.G_MISS_NUM)
1288: OR nvl(ONT_LINE_DEF_HDLR.g_record.tax_date,FND_API.G_MISS_DATE) <>
1282: OR nvl(ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id,FND_API.G_MISS_NUM)<>
1283: nvl(OE_Order_Cache.g_TAX_CODE_CACH.invoice_to_org_id,FND_API.G_MISS_NUM)
1284: OR nvl(ONT_LINE_DEF_HDLR.g_record.inventory_item_id,FND_API.G_MISS_NUM) <>
1285: nvl(OE_Order_Cache.g_TAX_CODE_CACH.inventory_item_id,FND_API.G_MISS_NUM)
1286: OR nvl(ONT_LINE_DEF_HDLR.g_record.ship_from_org_id,FND_API.G_MISS_NUM)<>
1287: nvl(OE_Order_Cache.g_TAX_CODE_CACH.ship_from_org_id ,FND_API.G_MISS_NUM)
1288: OR nvl(ONT_LINE_DEF_HDLR.g_record.tax_date,FND_API.G_MISS_DATE) <>
1289: nvl(OE_Order_Cache.g_TAX_CODE_CACH.tax_date,FND_API.G_MISS_DATE)
1290: OR nvl(l_trx_type_id,FND_API.G_MISS_NUM) <>
1284: OR nvl(ONT_LINE_DEF_HDLR.g_record.inventory_item_id,FND_API.G_MISS_NUM) <>
1285: nvl(OE_Order_Cache.g_TAX_CODE_CACH.inventory_item_id,FND_API.G_MISS_NUM)
1286: OR nvl(ONT_LINE_DEF_HDLR.g_record.ship_from_org_id,FND_API.G_MISS_NUM)<>
1287: nvl(OE_Order_Cache.g_TAX_CODE_CACH.ship_from_org_id ,FND_API.G_MISS_NUM)
1288: OR nvl(ONT_LINE_DEF_HDLR.g_record.tax_date,FND_API.G_MISS_DATE) <>
1289: nvl(OE_Order_Cache.g_TAX_CODE_CACH.tax_date,FND_API.G_MISS_DATE)
1290: OR nvl(l_trx_type_id,FND_API.G_MISS_NUM) <>
1291: nvl( OE_Order_Cache.g_TAX_CODE_CACH.trx_type_id,FND_API.G_MISS_NUM)
1292: THEN
1296: END IF;
1297:
1298:
1299: zx_ar_tax_classificatn_def_pkg.get_default_tax_classification(
1300: p_ship_to_site_use_id => ONT_LINE_DEF_HDLR.g_record.ship_to_org_id,
1301: p_bill_to_site_use_id => ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id,
1302: p_inventory_item_id => ONT_LINE_DEF_HDLR.g_record.inventory_item_id,
1303: p_organization_id => ONT_LINE_DEF_HDLR.g_record.ship_from_org_id,
1304: p_set_of_books_id => l_Set_Of_Books_Id,
1297:
1298:
1299: zx_ar_tax_classificatn_def_pkg.get_default_tax_classification(
1300: p_ship_to_site_use_id => ONT_LINE_DEF_HDLR.g_record.ship_to_org_id,
1301: p_bill_to_site_use_id => ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id,
1302: p_inventory_item_id => ONT_LINE_DEF_HDLR.g_record.inventory_item_id,
1303: p_organization_id => ONT_LINE_DEF_HDLR.g_record.ship_from_org_id,
1304: p_set_of_books_id => l_Set_Of_Books_Id,
1305: p_trx_date => trunc(ONT_LINE_DEF_HDLR.g_record.tax_date),
1298:
1299: zx_ar_tax_classificatn_def_pkg.get_default_tax_classification(
1300: p_ship_to_site_use_id => ONT_LINE_DEF_HDLR.g_record.ship_to_org_id,
1301: p_bill_to_site_use_id => ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id,
1302: p_inventory_item_id => ONT_LINE_DEF_HDLR.g_record.inventory_item_id,
1303: p_organization_id => ONT_LINE_DEF_HDLR.g_record.ship_from_org_id,
1304: p_set_of_books_id => l_Set_Of_Books_Id,
1305: p_trx_date => trunc(ONT_LINE_DEF_HDLR.g_record.tax_date),
1306: p_trx_type_id => l_trx_type_id,
1299: zx_ar_tax_classificatn_def_pkg.get_default_tax_classification(
1300: p_ship_to_site_use_id => ONT_LINE_DEF_HDLR.g_record.ship_to_org_id,
1301: p_bill_to_site_use_id => ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id,
1302: p_inventory_item_id => ONT_LINE_DEF_HDLR.g_record.inventory_item_id,
1303: p_organization_id => ONT_LINE_DEF_HDLR.g_record.ship_from_org_id,
1304: p_set_of_books_id => l_Set_Of_Books_Id,
1305: p_trx_date => trunc(ONT_LINE_DEF_HDLR.g_record.tax_date),
1306: p_trx_type_id => l_trx_type_id,
1307: p_tax_classification_code => x_tax_code,
1301: p_bill_to_site_use_id => ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id,
1302: p_inventory_item_id => ONT_LINE_DEF_HDLR.g_record.inventory_item_id,
1303: p_organization_id => ONT_LINE_DEF_HDLR.g_record.ship_from_org_id,
1304: p_set_of_books_id => l_Set_Of_Books_Id,
1305: p_trx_date => trunc(ONT_LINE_DEF_HDLR.g_record.tax_date),
1306: p_trx_type_id => l_trx_type_id,
1307: p_tax_classification_code => x_tax_code,
1308: appl_short_name => 'ONT',
1309: p_entity_code => 'OE_ORDER_HEADERS',
1311: p_application_id => 660,
1312: p_internal_organization_id => l_org_id);
1313:
1314: OE_Order_Cache.g_TAX_CODE_CACH.ship_to_org_id :=
1315: ONT_LINE_DEF_HDLR.g_record.ship_to_org_id;
1316: OE_Order_Cache.g_TAX_CODE_CACH.invoice_to_org_id :=
1317: ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id;
1318: OE_Order_Cache.g_TAX_CODE_CACH.inventory_item_id :=
1319: ONT_LINE_DEF_HDLR.g_record.inventory_item_id;
1313:
1314: OE_Order_Cache.g_TAX_CODE_CACH.ship_to_org_id :=
1315: ONT_LINE_DEF_HDLR.g_record.ship_to_org_id;
1316: OE_Order_Cache.g_TAX_CODE_CACH.invoice_to_org_id :=
1317: ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id;
1318: OE_Order_Cache.g_TAX_CODE_CACH.inventory_item_id :=
1319: ONT_LINE_DEF_HDLR.g_record.inventory_item_id;
1320: OE_Order_Cache.g_TAX_CODE_CACH.ship_from_org_id :=
1321: ONT_LINE_DEF_HDLR.g_record.ship_from_org_id;
1315: ONT_LINE_DEF_HDLR.g_record.ship_to_org_id;
1316: OE_Order_Cache.g_TAX_CODE_CACH.invoice_to_org_id :=
1317: ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id;
1318: OE_Order_Cache.g_TAX_CODE_CACH.inventory_item_id :=
1319: ONT_LINE_DEF_HDLR.g_record.inventory_item_id;
1320: OE_Order_Cache.g_TAX_CODE_CACH.ship_from_org_id :=
1321: ONT_LINE_DEF_HDLR.g_record.ship_from_org_id;
1322: OE_Order_Cache.g_TAX_CODE_CACH.tax_date :=
1323: ONT_LINE_DEF_HDLR.g_record.tax_date;
1317: ONT_LINE_DEF_HDLR.g_record.invoice_to_org_id;
1318: OE_Order_Cache.g_TAX_CODE_CACH.inventory_item_id :=
1319: ONT_LINE_DEF_HDLR.g_record.inventory_item_id;
1320: OE_Order_Cache.g_TAX_CODE_CACH.ship_from_org_id :=
1321: ONT_LINE_DEF_HDLR.g_record.ship_from_org_id;
1322: OE_Order_Cache.g_TAX_CODE_CACH.tax_date :=
1323: ONT_LINE_DEF_HDLR.g_record.tax_date;
1324: OE_Order_Cache.g_TAX_CODE_CACH.trx_type_id :=
1325: l_trx_type_id;
1319: ONT_LINE_DEF_HDLR.g_record.inventory_item_id;
1320: OE_Order_Cache.g_TAX_CODE_CACH.ship_from_org_id :=
1321: ONT_LINE_DEF_HDLR.g_record.ship_from_org_id;
1322: OE_Order_Cache.g_TAX_CODE_CACH.tax_date :=
1323: ONT_LINE_DEF_HDLR.g_record.tax_date;
1324: OE_Order_Cache.g_TAX_CODE_CACH.trx_type_id :=
1325: l_trx_type_id;
1326: OE_Order_Cache.g_TAX_CODE_CACH.tax_code := x_tax_code;
1327:
1389: IF l_debug_level > 0 THEN
1390: oe_debug_pub.add( 'ENTERING OE_DEFAULT_PVT.GET_COMMITMENT_FROM_AGREEMENT' , 1 ) ;
1391: END IF;
1392:
1393: IF ONT_LINE_Def_Hdlr.g_record.Agreement_id IS NOT NULL THEN
1394: SELECT transactional_curr_code
1395: INTO l_trans_curr_code
1396: FROM oe_order_headers
1397: WHERE header_id = ONT_LINE_Def_Hdlr.g_record.header_id;
1393: IF ONT_LINE_Def_Hdlr.g_record.Agreement_id IS NOT NULL THEN
1394: SELECT transactional_curr_code
1395: INTO l_trans_curr_code
1396: FROM oe_order_headers
1397: WHERE header_id = ONT_LINE_Def_Hdlr.g_record.header_id;
1398:
1399: IF l_debug_level > 0 THEN
1400: oe_debug_pub.add( 'AGREEMENT_ID: '||ONT_LINE_DEF_HDLR.G_RECORD.AGREEMENT_ID|| ' L_TRANS_CURR_CODE: '||L_TRANS_CURR_CODE ||' SOLD TO ORG: '||ONT_LINE_DEF_HDLR.G_RECORD.SOLD_TO_ORG_ID ) ;
1401: END IF;
1396: FROM oe_order_headers
1397: WHERE header_id = ONT_LINE_Def_Hdlr.g_record.header_id;
1398:
1399: IF l_debug_level > 0 THEN
1400: oe_debug_pub.add( 'AGREEMENT_ID: '||ONT_LINE_DEF_HDLR.G_RECORD.AGREEMENT_ID|| ' L_TRANS_CURR_CODE: '||L_TRANS_CURR_CODE ||' SOLD TO ORG: '||ONT_LINE_DEF_HDLR.G_RECORD.SOLD_TO_ORG_ID ) ;
1401: END IF;
1402:
1403: --Bug 3247840 fix query for better performance
1404: SELECT /* MOAC_SQL_CHANGE */ customer_trx_id
1407: ra_cust_trx_types ractt
1408: WHERE ractt.type in ('DEP','GUAR')
1409: AND ratrx.cust_trx_type_id = ractt.cust_trx_type_id
1410: AND ratrx.org_id = ractt.org_id
1411: AND ratrx.bill_to_customer_id = ONT_LINE_Def_Hdlr.g_record.sold_to_org_id
1412: AND ratrx.invoice_currency_code = l_trans_curr_code
1413: AND TRUNC(sysdate) BETWEEN TRUNC(
1414: NVL(ratrx.start_date_commitment, sysdate))
1415: AND TRUNC(NVL( ratrx.end_date_commitment, sysdate ))
1412: AND ratrx.invoice_currency_code = l_trans_curr_code
1413: AND TRUNC(sysdate) BETWEEN TRUNC(
1414: NVL(ratrx.start_date_commitment, sysdate))
1415: AND TRUNC(NVL( ratrx.end_date_commitment, sysdate ))
1416: AND ratrx.agreement_id = ONT_LINE_Def_Hdlr.g_record.Agreement_id
1417: /* Peformance changes for sql id 14882692 */
1418: AND ratrx.complete_flag = 'Y'
1419:
1420: UNION ALL /* Peformance changes for sql id 14882692 */
1428: AND ratrx.org_id = ractt.org_id
1429: AND ratrx.bill_to_customer_id IN (
1430: SELECT cust_account_id
1431: FROM hz_cust_acct_relate
1432: WHERE related_cust_account_id = ONT_LINE_Def_Hdlr.g_record.sold_to_org_id
1433: AND cust_account_id <> ONT_LINE_Def_Hdlr.g_record.sold_to_org_id
1434: AND status = 'A'
1435: AND bill_to_flag = 'Y')
1436: AND ratrx.invoice_currency_code = l_trans_curr_code
1429: AND ratrx.bill_to_customer_id IN (
1430: SELECT cust_account_id
1431: FROM hz_cust_acct_relate
1432: WHERE related_cust_account_id = ONT_LINE_Def_Hdlr.g_record.sold_to_org_id
1433: AND cust_account_id <> ONT_LINE_Def_Hdlr.g_record.sold_to_org_id
1434: AND status = 'A'
1435: AND bill_to_flag = 'Y')
1436: AND ratrx.invoice_currency_code = l_trans_curr_code
1437: AND TRUNC(sysdate) BETWEEN TRUNC(
1436: AND ratrx.invoice_currency_code = l_trans_curr_code
1437: AND TRUNC(sysdate) BETWEEN TRUNC(
1438: NVL(ratrx.start_date_commitment, sysdate))
1439: AND TRUNC(NVL( ratrx.end_date_commitment, sysdate ))
1440: AND ratrx.agreement_id = ONT_LINE_Def_Hdlr.g_record.Agreement_id
1441: AND ratrx.complete_flag = 'Y';
1442:
1443: -- bug 2270925, to validate the commitment balance is greater than zero
1444: -- before defaulting it from agreement.
1511: RETURN NULL;
1512: END IF;
1513:
1514: IF l_debug_level > 0 THEN
1515: oe_debug_pub.add( 'ITEM_TYPE_CODE:'||ONT_LINE_DEF_HDLR.G_RECORD.ITEM_TYPE_CODE||':ACCOUNTING_RULE_ID:'||ONT_LINE_DEF_HDLR.G_RECORD.ACCOUNTING_RULE_ID ) ;
1516: END IF;
1517: IF (ONT_LINE_Def_Hdlr.g_record.item_type_code <> 'SERVICE') AND ONT_LINE_Def_Hdlr.g_record.Accounting_Rule_ID IS NOT NULL THEN
1518: SELECT type
1519: INTO l_rule_type
1513:
1514: IF l_debug_level > 0 THEN
1515: oe_debug_pub.add( 'ITEM_TYPE_CODE:'||ONT_LINE_DEF_HDLR.G_RECORD.ITEM_TYPE_CODE||':ACCOUNTING_RULE_ID:'||ONT_LINE_DEF_HDLR.G_RECORD.ACCOUNTING_RULE_ID ) ;
1516: END IF;
1517: IF (ONT_LINE_Def_Hdlr.g_record.item_type_code <> 'SERVICE') AND ONT_LINE_Def_Hdlr.g_record.Accounting_Rule_ID IS NOT NULL THEN
1518: SELECT type
1519: INTO l_rule_type
1520: FROM ra_rules
1521: WHERE rule_id= ONT_LINE_Def_Hdlr.g_record.Accounting_Rule_ID;
1517: IF (ONT_LINE_Def_Hdlr.g_record.item_type_code <> 'SERVICE') AND ONT_LINE_Def_Hdlr.g_record.Accounting_Rule_ID IS NOT NULL THEN
1518: SELECT type
1519: INTO l_rule_type
1520: FROM ra_rules
1521: WHERE rule_id= ONT_LINE_Def_Hdlr.g_record.Accounting_Rule_ID;
1522: IF l_debug_level > 0 THEN
1523: oe_debug_pub.add( 'RULE_TYPE IS:'||L_RULE_TYPE ) ;
1524: END IF;
1525: IF l_rule_type = 'ACC_DUR' THEN
1525: IF l_rule_type = 'ACC_DUR' THEN
1526: SELECT accounting_rule_duration
1527: INTO l_accounting_rule_duration
1528: FROM oe_order_headers
1529: WHERE header_id = ONT_LINE_Def_Hdlr.g_record.header_id;
1530: IF l_debug_level > 0 THEN
1531: oe_debug_pub.add( 'EXITING OE_DEFAULT_PVT.GET_ACCOUNTING_RULE_DURATION - DURATION:'|| L_ACCOUNTING_RULE_DURATION ) ;
1532: END IF;
1533: RETURN l_accounting_rule_duration;
1726:
1727: IF p_database_object_name = 'OE_AK_ORDER_HEADERS_V' THEN
1728: l_sold_to_org_id := ONT_HEADER_DEF_HDLR.g_record.sold_to_org_id;
1729: ELSIF p_database_object_name = 'OE_AK_ORDER_LINES_V' THEN
1730: l_sold_to_org_id := ONT_LINE_DEF_HDLR.g_record.sold_to_org_id;
1731: ELSE
1732: IF l_debug_level > 0 THEN
1733: oe_debug_pub.add('Invalid DB object :'||p_database_object_name);
1734: END IF;
1783: l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
1784: --
1785: BEGIN
1786:
1787: OE_ORDER_CACHE.Load_Order_Header(Ont_Line_Def_Hdlr.G_Record.header_id);
1788: l_latest_acceptable_date := Ont_Line_Def_Hdlr.G_Record.request_date
1789: + OE_ORDER_CACHE.g_header_rec.latest_schedule_limit ;
1790:
1791: RETURN l_latest_acceptable_date;
1784: --
1785: BEGIN
1786:
1787: OE_ORDER_CACHE.Load_Order_Header(Ont_Line_Def_Hdlr.G_Record.header_id);
1788: l_latest_acceptable_date := Ont_Line_Def_Hdlr.G_Record.request_date
1789: + OE_ORDER_CACHE.g_header_rec.latest_schedule_limit ;
1790:
1791: RETURN l_latest_acceptable_date;
1792: