1 Package OKC_OC_INT_SALESCDT_PVT AS
2 /* $Header: OKCRSCTS.pls 120.2 2006/03/01 13:45:32 smallya noship $ */
3
4 G_EXCEPTION_HALT_VALIDATION EXCEPTION;
5 G_PKG_NAME CONSTANT VARCHAR2(200) := 'OKC_OC_INT_SALESCDT_PVT';
6 -- G_APP_NAME CONSTANT VARCHAR2(3) := OKO_DATATYPES.G_APP_NAME;
7 -- to be restoed after this package is moved back into OKO
8
9 G_APP_NAME CONSTANT VARCHAR2(3) := 'OKO'; --for OKO error messages
10 G_UNEXPECTED_ERROR CONSTANT VARCHAR2(200) := 'OKC_CONTRACTS_UNEXP_ERROR';
11 G_ERROR CONSTANT VARCHAR2(200) := 'OKC_CONTRACTS_ERROR';
12 G_SQLERRM_TOKEN CONSTANT VARCHAR2(200) := 'SQLERRM';
13 G_SQLCODE_TOKEN CONSTANT VARCHAR2(200) := 'SQLCODE';
14
15 --G_MISS_REL_LINE_TAB OKC_K_REL_OBJS_PUB.crj_rel_line_tbl_type;
16 G_MISS_LINE_INF_TAB OKC_OC_INT_CONFIG_PVT.line_inf_tbl_type;
17
18 G_SALESREP_CTROL CONSTANT fnd_lookups.lookup_code%TYPE := 'SALESPERSON';
19 ---------------------------------------------------------------------------
20 --Procedure to create contract sales credit information at the header and line levels
21 ----------------------------------------------------------------------------
22 -- Bug : 1686001 Changed references to ASO_QUOTE_HEADERS_ALL.QUOTE_HEADER_ID to OKX_QUOTE_HEADERS_V.ID1
23 PROCEDURE create_k_sales_credit (
24 x_return_status OUT NOCOPY VARCHAR2,
25
26 p_chr_id IN OKC_K_HEADERS_B.ID%TYPE,
27 p_o_flag IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
28 p_ohr_id IN NUMBER DEFAULT OKC_API.G_MISS_NUM,
29 p_q_flag IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
30 p_qhr_id IN OKX_QUOTE_HEADERS_V.ID1%TYPE DEFAULT OKC_API.G_MISS_NUM,
31 p_line_inf_tab IN OKC_OC_INT_CONFIG_PVT.line_inf_tbl_type
32 DEFAULT OKC_OC_INT_SALESCDT_PVT.G_MISS_LINE_INF_TAB
33 -- this PL/SQL table has quote (or order) lines against contract lines
34
35 );
36
37
38
39 ----------------------------------------------------------------------------
40 -- Procedure creates sales credit information in OKC from
41 -- ASO or ONT sales credit
42 ----------------------------------------------------------------------------
43 -- Bug : 1686001 Changed references to ASO_QUOTE_HEADERS_ALL.QUOTE_HEADER_ID to OKX_QUOTE_HEADERS_V.ID1
44 PROCEDURE get_sales_credit(
45 p_chr_id IN NUMBER,
46 p_q_flag IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
47 p_qhr_id IN OKX_QUOTE_HEADERS_V.ID1%TYPE DEFAULT OKC_API.G_MISS_NUM,
48 p_o_flag IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
49 p_ohr_id IN NUMBER DEFAULT OKC_API.G_MISS_NUM,
50 p_line_inf_tab IN OKC_OC_INT_CONFIG_PVT.line_inf_tbl_type
51 DEFAULT OKC_OC_INT_SALESCDT_PVT.G_MISS_LINE_INF_TAB
52 );
53
54
55 ----------------------------------------------------------------------
56 -- PROCEDURE to get SALES CREDITS information from ASO or ONT tables
57 -- get_sales_credit_tab stores it's output in global PL/SQL table g_sales_credit_tab
58 ----------------------------------------------------------------------
59 -- Bug : 1686001 Changed references to ASO_QUOTE_HEADERS_ALL.QUOTE_HEADER_ID to OKX_QUOTE_HEADERS_V.ID1
60 -- ASO_QUOTE_LINES_ALL.LINE_HEADER_ID to OKX_QUOTE_LINES_V.ID1
61 PROCEDURE get_sales_credit_tab(
62 p_chr_id IN OKC_K_HEADERS_B.ID%TYPE,
63 p_cle_id IN OKC_K_LINES_B.ID%TYPE DEFAULT OKC_API.G_MISS_NUM,
64
65 p_o_flag IN VARCHAR2 DEFAULT OKC_API.G_FALSE, --order flag
66 p_ohr_id IN NUMBER DEFAULT OKC_API.G_MISS_NUM,
67 p_ole_id IN NUMBER DEFAULT OKC_API.G_MISS_NUM,
68
69 p_q_flag IN VARCHAR2 DEFAULT OKC_API.G_FALSE, --quote flag
70 p_qhr_id IN OKX_QUOTE_HEADERS_V.ID1%TYPE DEFAULT OKC_API.G_MISS_NUM,
71 p_qle_id IN OKX_QUOTE_LINES_V.ID1%TYPE DEFAULT OKC_API.G_MISS_NUM);
72
73
74 -- ========================================================================
75 -- START OF KTQ or KTO SALES CREDIT INFORMATION CREATION
76 -- or UPDATE
77 -- ========================================================================
78
79
80 g_aso_model_item CONSTANT VARCHAR2(30) := 'MDL';
81
82
83 TYPE k_sales_credit_rec_type IS RECORD( id OKC_K_SALES_CREDITS.id%TYPE,
84 level VARCHAR2(1));
85
86 TYPE k_sales_credit_tab_type IS TABLE OF k_sales_credit_rec_type INDEX BY BINARY_INTEGER;
87
88 g_aso_op_code_create VARCHAR2(30) := 'CREATE';
89 g_aso_op_code_update VARCHAR2(30) := 'UPDATE';
90 g_aso_op_code_delete VARCHAR2(30) := 'DELETE';
91
92 l_line_tab ASO_QUOTE_PUB.qte_line_tbl_type;
93 l_k_sales_credit_tab k_sales_credit_tab_type;
94
95
96 ----------------------------------------------------------------------
97 --
98 -- PROCEDURE build_sales_credit_from_k
99 --
100 -- To get sales credits information from contract table(s) at header
101 -- and line levels to update a quote or create an order.
102 --
103 ----------------------------------------------------------------------
104
105 PROCEDURE build_sales_credit_from_k(
106 p_chr_id IN OKC_K_HEADERS_B.id%TYPE,
107 p_kl_rel_tab IN okc_oc_int_config_pvt.line_rel_tab_type DEFAULT okc_oc_int_config_pvt.g_miss_kl_rel_tab,
108 --
109 p_q_flag IN VARCHAR2 DEFAULT OKC_API.g_miss_char,
110 p_qhr_id IN OKX_QUOTE_HEADERS_V.id1%TYPE DEFAULT OKC_API.g_miss_num,
111 p_qle_tab IN ASO_QUOTE_PUB.qte_line_tbl_type DEFAULT ASO_QUOTE_PUB.g_miss_qte_line_tbl,
112 --
113 p_o_flag IN VARCHAR2 DEFAULT OKC_API.g_miss_char,
114 p_ohr_id IN OKX_ORDER_HEADERS_V.id1%TYPE DEFAULT OKC_API.g_miss_num,
115 p_ole_tab IN ASO_QUOTE_PUB.qte_line_tbl_type DEFAULT ASO_QUOTE_PUB.g_miss_qte_line_tbl,
116 --
117 x_hd_sales_credit_tab OUT NOCOPY ASO_QUOTE_PUB.sales_credit_tbl_type,
118 x_ln_sales_credit_tab OUT NOCOPY ASO_QUOTE_PUB.sales_credit_tbl_type,
119 --
120 x_return_status OUT NOCOPY VARCHAR2 );
121
122
123 -- ========================================================================
124 -- END OF KTQ or KTO SALES CREDIT INFORMATION CREATION
125 -- or UPDATE
126 -- ========================================================================
127
128
129
130
131 ----------------------------------------------------------------------
132 --
133 -- Function get_party_name to retrieve a party name against -------
134 -- the jtot_object1_code and object1_id1 -------
135 --
136 -- This is a general function that can be used anywhere to retrieve
137 -- the party name for eg. from the OKCSLCRD.fmb sales credit form
138 FUNCTION get_party_name (p_object1_id1 varchar2, p_jtot_object1_code varchar2) RETURN VARCHAR2;
139
140
141 END OKC_OC_INT_SALESCDT_PVT;