doc-exports/docs/dws/tool/dws_mt_0159.html
Lu, Huayi 27019c2991 DWS TOOL 830.201 version
Reviewed-by: Hasko, Vladimir <vladimir.hasko@t-systems.com>
Reviewed-by: Pruthi, Vineet <vineet.pruthi@t-systems.com>
Co-authored-by: Lu, Huayi <luhuayi@huawei.com>
Co-committed-by: Lu, Huayi <luhuayi@huawei.com>
2024-05-16 07:35:25 +00:00

2126 lines
241 KiB
HTML

<a name="EN-US_TOPIC_0000001772536624"></a><a name="EN-US_TOPIC_0000001772536624"></a>
<h1 class="topictitle1">Package Variables</h1>
<div id="body8662426"><p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p8060118">Package variables are available in Oracle packages that allow variables to retain all the functions and procedures in the package. DSC uses customized functions to help <span id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_text1958020141713">GaussDB(DWS)</span> support package variables.</p>
<div class="note" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_note330793312611"><img src="public_sys-resources/note_3.0-en-us.png"><span class="notetitle"> </span><div class="notebody"><div class="p" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_p154065116416">Prerequisites<ul id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_ul1777734193110"><li id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_li1277614113114">Create and use the <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b1412920985512">MIG_ORA_EXT</strong> schema.</li><li id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_li34372052173115">Copy the contents of the custom script and execute the script in all target databases for which migration is to be performed. For details, see <a href="dws_16_0017.html#EN-US_TOPIC_0000001819336065">Migration Process</a>.</li></ul>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_p162961364116">If there is a space between a schema name and a package name, or either the package specification or body has quotes, the output may not be the same as expected.</p>
</div></div>
<div class="p" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p1659625817341"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b165242214912">Input</strong> - <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b1230913312098">Package variables</strong><div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen4159121192616"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span>
<span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">scott</span><span class="p">.</span><span class="n">pkg_adm_util</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="n">un_stand_value</span><span class="w"> </span><span class="n">long</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'`'</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">defaultdate</span><span class="w"> </span><span class="nb">date</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">sysdate</span><span class="w"> </span><span class="p">;</span>
<span class="n">g_pkgname</span><span class="w"> </span><span class="n">CONSTANT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">255</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="k">DEFAULT</span><span class="w"> </span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">;</span>
<span class="k">procedure</span><span class="w"> </span><span class="n">p1</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">pkg_adm_util</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="k">CREATE</span>
<span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">scott</span><span class="p">.</span><span class="n">pkg_adm_util</span><span class="w"> </span><span class="k">AS</span><span class="w"> </span><span class="n">defaulttime</span><span class="w"> </span><span class="k">timestamp</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">systimestamp</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">PROCEDURE</span><span class="w"> </span><span class="n">P1</span><span class="w"> </span><span class="k">AS</span><span class="w"> </span><span class="k">BEGIN</span>
<span class="w"> </span><span class="n">scott</span><span class="p">.</span><span class="n">pkg_adm_util</span><span class="p">.</span><span class="n">un_stand_value</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'A'</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">pkg_adm_util</span><span class="p">.</span><span class="n">un_stand_value</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'B'</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">un_stand_value</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'C'</span><span class="w"> </span><span class="p">;</span>
<span class="n">DBMS_OUTPUT</span><span class="p">.</span><span class="n">PUT_LINE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">pkg_adm_util</span><span class="p">.</span><span class="n">defaultdate</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="n">DBMS_OUTPUT</span><span class="p">.</span><span class="n">PUT_LINE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">defaulttime</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="n">DBMS_OUTPUT</span><span class="p">.</span><span class="n">PUT_LINE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">scott</span><span class="p">.</span><span class="n">pkg_adm_util</span><span class="p">.</span><span class="n">un_stand_value</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="n">DBMS_OUTPUT</span><span class="p">.</span><span class="n">PUT_LINE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">pkg_adm_util</span><span class="p">.</span><span class="n">un_stand_value</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="n">DBMS_OUTPUT</span><span class="p">.</span><span class="n">PUT_LINE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">un_stand_value</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p416531115264"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b451262233719">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen1615294183710"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span>
<span class="normal">35</span>
<span class="normal">36</span>
<span class="normal">37</span>
<span class="normal">38</span>
<span class="normal">39</span>
<span class="normal">40</span>
<span class="normal">41</span>
<span class="normal">42</span>
<span class="normal">43</span>
<span class="normal">44</span>
<span class="normal">45</span>
<span class="normal">46</span>
<span class="normal">47</span>
<span class="normal">48</span>
<span class="normal">49</span>
<span class="normal">50</span>
<span class="normal">51</span>
<span class="normal">52</span>
<span class="normal">53</span>
<span class="normal">54</span>
<span class="normal">55</span>
<span class="normal">56</span>
<span class="normal">57</span>
<span class="normal">58</span>
<span class="normal">59</span>
<span class="normal">60</span>
<span class="normal">61</span>
<span class="normal">62</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SCHEMA</span><span class="w"> </span><span class="n">pkg_adm_util</span>
<span class="p">;</span><span class="w"> </span>
<span class="k">BEGIN</span>
<span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span>
<span class="p">(</span><span class="w"> </span><span class="k">SCHEMA_NAME</span><span class="w"> </span><span class="p">,</span><span class="n">PACKAGE_NAME</span><span class="w"> </span><span class="p">,</span><span class="n">SPEC_OR_BODY</span><span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="p">,</span><span class="n">VARIABLE_TYPE</span><span class="w"> </span><span class="p">,</span><span class="n">CONSTANT_</span>
<span class="n">I</span><span class="w"> </span><span class="p">,</span><span class="n">DEFAULT_VALUE</span><span class="w"> </span><span class="p">,</span><span class="n">EXPRESSION_I</span><span class="w"> </span><span class="p">)</span>
<span class="k">VALUES</span>
<span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'scott'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="s1">'S'</span><span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span>
<span class="s1">'un_stand_value'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="n">UPPE</span>
<span class="n">R</span><span class="p">(</span><span class="w"> </span><span class="s1">'TEXT'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="k">false</span><span class="w"> </span><span class="p">,</span><span class="s1">'`'</span><span class="w"> </span><span class="p">,</span><span class="k">false</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span>
<span class="p">(</span><span class="w"> </span><span class="k">SCHEMA_NAME</span><span class="w"> </span><span class="p">,</span><span class="n">PACKAGE_NAME</span><span class="w"> </span><span class="p">,</span><span class="n">SPEC_OR_BODY</span><span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="p">,</span><span class="n">VARIABLE_TYPE</span><span class="w"> </span><span class="p">,</span><span class="n">CONSTANT_</span>
<span class="n">I</span><span class="w"> </span><span class="p">,</span><span class="n">DEFAULT_VALUE</span><span class="w"> </span><span class="p">,</span><span class="n">EXPRESSION_I</span><span class="w"> </span><span class="p">)</span>
<span class="k">VALUES</span>
<span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'scott'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="s1">'S'</span><span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span>
<span class="s1">'defaultdate'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'</span>
<span class="s1">date'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="k">false</span><span class="w"> </span><span class="p">,</span><span class="err">$</span><span class="n">q$sysdate$q$</span><span class="w"> </span><span class="p">,</span><span class="k">true</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span>
<span class="p">(</span><span class="w"> </span><span class="k">SCHEMA_NAME</span><span class="w"> </span><span class="p">,</span><span class="n">PACKAGE_NAME</span><span class="w"> </span><span class="p">,</span><span class="n">SPEC_OR_BODY</span><span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="p">,</span><span class="n">VARIABLE_TYPE</span><span class="w"> </span><span class="p">,</span><span class="n">CONSTANT_</span>
<span class="n">I</span><span class="w"> </span><span class="p">,</span><span class="n">DEFAULT_VALUE</span><span class="w"> </span><span class="p">,</span><span class="n">EXPRESSION_I</span><span class="w"> </span><span class="p">)</span>
<span class="k">VALUES</span>
<span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'scott'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="s1">'S'</span><span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span>
<span class="s1">'g_pkgname'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VA</span>
<span class="s1">RCHAR2 ( 255 )'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="k">true</span><span class="w"> </span><span class="p">,</span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">,</span><span class="k">false</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="k">BEGIN</span>
<span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span>
<span class="p">(</span><span class="w"> </span><span class="k">SCHEMA_NAME</span><span class="w"> </span><span class="p">,</span><span class="n">PACKAGE_NAME</span><span class="w"> </span><span class="p">,</span><span class="n">SPEC_OR_BODY</span><span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="p">,</span><span class="n">VARIABLE_TYPE</span><span class="w"> </span><span class="p">,</span><span class="n">CONSTANT_</span>
<span class="n">I</span><span class="w"> </span><span class="p">,</span><span class="n">DEFAULT_VALUE</span><span class="w"> </span><span class="p">,</span><span class="n">EXPRESSION_I</span><span class="w"> </span><span class="p">)</span>
<span class="k">VALUES</span>
<span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'scott'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="s1">'B'</span><span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span>
<span class="s1">'defaulttime'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'</span>
<span class="s1">timestamp'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">,</span><span class="k">false</span><span class="w"> </span><span class="p">,</span><span class="err">$</span><span class="n">q$CURRENT_TIMESTAMP$q$</span><span class="w"> </span><span class="p">,</span><span class="k">true</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="k">CREATE</span>
<span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">PROCEDURE</span><span class="w"> </span><span class="n">pkg_adm_util</span><span class="p">.</span><span class="n">P1</span><span class="w"> </span><span class="k">AS</span>
<span class="k">BEGIN</span>
<span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">current_schema</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="p">)</span>
<span class="p">,</span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">,</span><span class="s1">'un_stand_value'</span><span class="w"> </span><span class="p">,(</span><span class="w"> </span><span class="s1">'A'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="nb">TEXT</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">current_schema</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="p">)</span>
<span class="p">,</span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">,</span><span class="s1">'un_stand_value'</span><span class="w"> </span><span class="p">,(</span><span class="w"> </span><span class="s1">'B'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="nb">TEXT</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">current_schema</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="p">)</span>
<span class="p">,</span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">,</span><span class="s1">'un_stand_value'</span><span class="w"> </span><span class="p">,(</span><span class="w"> </span><span class="s1">'C'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="nb">TEXT</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="n">DBMS_OUTPUT</span><span class="p">.</span><span class="n">PUT_LINE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span>
<span class="p">(</span><span class="w"> </span><span class="s1">'scott'</span><span class="w"> </span><span class="p">,</span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">,</span><span class="s1">'defaultdate'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="w"> </span><span class="nb">date</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="n">DBMS_OUTPUT</span><span class="p">.</span><span class="n">PUT_LINE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="p">(</span>
<span class="s1">'scott'</span><span class="w"> </span><span class="p">,</span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">,</span><span class="s1">'defaulttime'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="w"> </span><span class="k">timestamp</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="n">DBMS_OUTPUT</span><span class="p">.</span><span class="n">PUT_LINE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="p">(</span>
<span class="s1">'scott'</span><span class="w"> </span><span class="p">,</span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">,</span><span class="s1">'un_stand_value'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="w"> </span><span class="nb">TEXT</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="n">DBMS_OUTPUT</span><span class="p">.</span><span class="n">PUT_LINE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="p">(</span>
<span class="s1">'scott'</span><span class="w"> </span><span class="p">,</span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">,</span><span class="s1">'un_stand_value'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="w"> </span><span class="nb">TEXT</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="n">DBMS_OUTPUT</span><span class="p">.</span><span class="n">PUT_LINE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="p">(</span>
<span class="s1">'scott'</span><span class="w"> </span><span class="p">,</span><span class="s1">'pkg_adm_util'</span><span class="w"> </span><span class="p">,</span><span class="s1">'un_stand_value'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="w"> </span><span class="nb">TEXT</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span><span class="w"> </span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<div class="note" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_note03742239236"><img src="public_sys-resources/note_3.0-en-us.png"><span class="notetitle"> </span><div class="notebody"><p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p537422312231">If <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b11874104524117">pkgSchemaNaming</strong> is <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b1380052174112">true</strong>.</p>
<ul id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_ul1037442362317"><li id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_li15374192316237">Oracle supports package variables for multiple schemas. If different schemas have the same package and variable names, such as:<ul id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_ul15374112317237"><li id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_li7374112382312">schema1.mypackage.myvariable</li><li id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_li63743231237">schema2.mypackage.myvariable</li></ul>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p83751423192319">After migration, the schema names will not be used to differentiate the two package variables. Because schema names are ignored, the last data type declaration or operation for [<em id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_i92641938162317">any_schema</em>]<strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b182641838122310">.mypackage.myvariable</strong> will overwrite the type and value for <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b1626423814237">schema1.mypackage.myvariable</strong> and <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b52641383239">schema2.mypackage.myvariable</strong>.</p>
</li></ul>
</div></div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p11127051165014"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b14535130175115">Input-</strong><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b12378102155218">Package variable with default value declared in one package by using CONSTANT keyword and used in another package</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p986644135210">The global variable declared in the package specification is accessed in the same or another package.</p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen116047372519"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span></pre></div></td><td class="code"><div><pre><span></span><span class="n">PACKAGE</span><span class="w"> </span><span class="ss">&quot;SAD&quot;</span><span class="p">.</span><span class="ss">&quot;BAS_SUBTYPE_PKG&quot;</span><span class="w"> </span><span class="p">:</span><span class="w"> </span><span class="p">(</span><span class="n">Declaring</span><span class="w"> </span><span class="k">global</span><span class="w"> </span><span class="k">variable</span><span class="p">)</span>
<span class="c1">-------------------------------------------------</span>
<span class="n">g_header_waiting_split_status</span><span class="w"> </span><span class="n">CONSTANT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'Waiting_Distribute'</span><span class="p">;</span>
<span class="n">PACKAGE</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">sad_lookup_stage_pkg</span><span class="p">:</span><span class="w"> </span><span class="p">(</span><span class="n">Used</span><span class="w"> </span><span class="k">global</span><span class="w"> </span><span class="k">variable</span><span class="p">)</span>
<span class="c1">--------------------------------------------------</span>
<span class="k">PROCEDURE</span><span class="w"> </span><span class="n">calc_product_price</span><span class="p">(</span><span class="n">pi_contract_no</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">DEFAULT</span><span class="w"> </span><span class="k">NULL</span><span class="p">,</span>
<span class="w"> </span><span class="n">pi_stage_id</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span><span class="w"> </span><span class="k">DEFAULT</span><span class="w"> </span><span class="k">NULL</span><span class="p">,</span>
<span class="w"> </span><span class="n">pi_calc_category</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">DEFAULT</span><span class="w"> </span><span class="s1">'all'</span><span class="p">,</span>
<span class="w"> </span><span class="n">pi_op_code</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span><span class="p">,</span>
<span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="k">OUT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">)</span><span class="w"> </span>
<span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="k">CURSOR</span><span class="w"> </span><span class="n">cur_contract</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="k">DISTINCT</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">contract_number</span><span class="p">,</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">stage_id</span>
<span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">sad_distribution_headers_t</span><span class="w"> </span><span class="n">sdh</span>
<span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">status</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">bas_subtype_pkg</span><span class="p">.</span><span class="n">g_header_waiting_split_status</span>
<span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">contract_number</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">nvl</span><span class="p">(</span><span class="n">pi_contract_no</span><span class="p">,</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">contract_number</span><span class="p">)</span>
<span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">stage_id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">nvl</span><span class="p">(</span><span class="n">pi_stage_id</span><span class="p">,</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">stage_id</span><span class="p">);</span>
<span class="w"> </span><span class="n">v_ras_flag</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="p">..</span>
<span class="p">...</span>
<span class="k">END</span><span class="w"> </span><span class="n">calc_product_price</span><span class="p">;</span>
<span class="o">/</span><span class="w"> </span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p198907511508"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b183622297534">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen78761824105312"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">PROCEDURE</span><span class="w"> </span><span class="n">calc_product_price</span><span class="p">(</span><span class="n">pi_contract_no</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">DEFAULT</span><span class="w"> </span><span class="k">NULL</span><span class="p">,</span>
<span class="w"> </span><span class="n">pi_stage_id</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span><span class="w"> </span><span class="k">DEFAULT</span><span class="w"> </span><span class="k">NULL</span><span class="p">,</span>
<span class="w"> </span><span class="n">pi_calc_category</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">DEFAULT</span><span class="w"> </span><span class="s1">'all'</span><span class="p">,</span>
<span class="w"> </span><span class="n">pi_op_code</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span><span class="p">,</span>
<span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="k">OUT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">)</span><span class="w"> </span>
<span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_HEADER_WAITING_SPLIT_STATUS</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">20</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_subtype_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_header_waiting_split_status'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">20</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span><span class="w"> </span>
<span class="w"> </span><span class="k">CURSOR</span><span class="w"> </span><span class="n">cur_contract</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="k">DISTINCT</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">contract_number</span><span class="p">,</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">stage_id</span>
<span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">sad_distribution_headers_t</span><span class="w"> </span><span class="n">sdh</span>
<span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">status</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_HEADER_WAITING_SPLIT_STATUS</span>
<span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">contract_number</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">nvl</span><span class="p">(</span><span class="n">pi_contract_no</span><span class="p">,</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">contract_number</span><span class="p">)</span>
<span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">stage_id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">nvl</span><span class="p">(</span><span class="n">pi_stage_id</span><span class="p">,</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">stage_id</span><span class="p">);</span>
<span class="w"> </span><span class="n">v_ras_flag</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="p">..</span>
<span class="p">...</span>
<span class="k">END</span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<div class="note" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_note0570125315312"><img src="public_sys-resources/note_3.0-en-us.png"><span class="notetitle"> </span><div class="notebody"><p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p1611453365516">Package variables need to be declared before CURSOR declaration.</p>
</div></div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p10142201512486"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b65142091861">Input-Variable of type EXCEPTION</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p101331117612">A package variable is a kind of global variable, which can be used in the entire package after being declared once.</p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen122906128717"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">sad_lookup_stage_pkg</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="n">ex_prog_error</span><span class="w"> </span><span class="k">EXCEPTION</span><span class="p">;</span>
<span class="k">PROCEDURE</span><span class="w"> </span><span class="n">assert_null</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">pi_value</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">)</span><span class="w"> </span>
<span class="k">IS</span><span class="w"> </span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="n">pi_value</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="k">NOT</span><span class="w"> </span><span class="k">NULL</span><span class="w"> </span><span class="k">THEN</span>
<span class="w"> </span><span class="n">RAISE</span><span class="w"> </span><span class="n">ex_prog_error</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">assert_null</span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">sad_lookup_stage_pkg</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p139151316715"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b712782086">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen6841516819"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span>
<span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">PROCEDURE</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">sad_lookup_stage_pkg</span><span class="o">#</span><span class="n">assert_null</span><span class="w"> </span>
<span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">pi_value</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">)</span><span class="w"> </span>
<span class="n">PACKAGE</span>
<span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">ex_prog_error</span><span class="w"> </span><span class="k">EXCEPTION</span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="n">pi_value</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="k">NOT</span><span class="w"> </span><span class="k">NULL</span><span class="w"> </span><span class="k">THEN</span>
<span class="w"> </span><span class="n">RAISE</span><span class="w"> </span><span class="n">ex_prog_error</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<div class="note" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_note1940517376819"><img src="public_sys-resources/note_3.0-en-us.png"><span class="notetitle"> </span><div class="notebody"><p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p540515375810">As GaussDB does not have the software package functions, the package variable needs to be declared in the procedure or function.</p>
</div></div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p941654472"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b021920330433">Input - If the configuration parameter pkgSchemaNaming is set to false</strong></p>
<div class="p" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p189108178449">A package variable is a kind of global variable, which can be used in the entire package after being declared once.<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen105561728124415"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_lookup_misc_pkg</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="n">g_pkg_name</span><span class="w"> </span><span class="n">CONSTANT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'bas_lookup_misc_pkg'</span><span class="p">;</span>
<span class="w"> </span><span class="n">g_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">);</span>
<span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">func_name</span><span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">);</span>
<span class="w"> </span><span class="k">BEGIN</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">g_pkg_name</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">'.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">g_func_name</span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">l_func_name</span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_lookup_misc_pkg</span><span class="p">;</span>
<span class="o">/</span><span class="w"> </span>
</pre></div></td></tr></table></div>
</div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p1374110141449"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b379917453449">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen19910185013441"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span>
<span class="normal">35</span>
<span class="normal">36</span>
<span class="normal">37</span>
<span class="normal">38</span>
<span class="normal">39</span>
<span class="normal">40</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="w"> </span><span class="n">PACKAGE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">SPEC_OR_BODY</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_TYPE</span>
<span class="w"> </span><span class="p">,</span><span class="n">CONSTANT_I</span>
<span class="w"> </span><span class="p">,</span><span class="n">DEFAULT_VALUE</span>
<span class="w"> </span><span class="p">,</span><span class="n">RUNTIME_EXEC_I</span>
<span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="s1">'B'</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2(30)'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span>
<span class="w"> </span><span class="p">,</span><span class="k">NULL</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="c1">--********************************************************************</span>
<span class="k">CREATE</span>
<span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_lookup_misc_pkg</span><span class="o">#</span><span class="n">func_name</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span>
<span class="w"> </span><span class="n">PACKAGE</span>
<span class="w"> </span><span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_pkg_name'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">'.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="p">,</span><span class="s1">'g_pkg_name'</span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="p">,</span><span class="s1">'g_func_name'</span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<div class="note" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_note3817002479"><img src="public_sys-resources/note_3.0-en-us.png"><span class="notetitle"> </span><div class="notebody"><p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p5200119125117">If the configuration parameter <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b3239273523">pkgSchemaNaming</strong> is set to <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b179023308529">false</strong>, package variable migration is not happening properly in some places (for example, GET to fetch default value and SET to assign final value are not added). This setting is not recommended by the kernel team. Please check with Kernel team.</p>
</div></div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p1723514817534"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b1312910278479">Input-Package variable declared with data type as table column %TYPE</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p4711134112470">If a data type is declared as table column %TYPE for a variable, the data type which is defined on table creation level is considered to be the corresponding column.</p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen1333431144816"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_lookup_misc_pkg</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="n">v_emp_name</span><span class="w"> </span><span class="n">emp</span><span class="p">.</span><span class="n">ename</span><span class="o">%</span><span class="k">TYPE</span><span class="p">;</span>
<span class="k">PROCEDURE</span><span class="w"> </span><span class="n">save_emp_dtls</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">v_empno</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">)</span><span class="w"> </span>
<span class="k">IS</span><span class="w"> </span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="n">v_emp_name</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="k">NULL</span><span class="w"> </span><span class="k">THEN</span>
<span class="w"> </span><span class="n">v_emp_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'test'</span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">save_emp_dtls</span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">bas_lookup_misc_pkg</span>
<span class="o">/</span><span class="w"> </span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p20776312543"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b19110142814418">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen1077153116544"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">BEGIN</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="w"> </span><span class="n">PACKAGE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">SPEC_OR_BODY</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_TYPE</span>
<span class="w"> </span><span class="p">,</span><span class="n">CONSTANT_I</span>
<span class="w"> </span><span class="p">,</span><span class="n">DEFAULT_VALUE</span>
<span class="w"> </span><span class="p">,</span><span class="n">RUNTIME_EXEC_I</span>
<span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="s1">'B'</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'v_emp_name'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2(30)'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span>
<span class="w"> </span><span class="p">,</span><span class="k">NULL</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="c1">--*********************************************************</span>
<span class="k">CREATE</span>
<span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">PROCEDURE</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_lookup_misc_pkg</span><span class="o">#</span><span class="n">save_emp_dtls</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">v_empno</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">)</span><span class="w"> </span>
<span class="n">PACKAGE</span>
<span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_EMP_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'v_emp_name'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_EMP_NAME</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="k">NULL</span><span class="w"> </span><span class="k">THEN</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_EMP_NAME</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'test'</span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<div class="note" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_note10791531155415"><img src="public_sys-resources/note_3.0-en-us.png"><span class="notetitle"> </span><div class="notebody"><p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p177916314540">While migrating a package variable with a data type as table column %TYPE, take the actual data type from a table and use it while declaring a variable, rather than using %TYPE.</p>
</div></div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p1446951513549"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b8158133615612">Input - If the configuration parameter "pkgSchemaNaming" is set to false</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p7622437065">If the PACKAGE name is specified along with the SCHEMA name, use the SCHEMA name on GET() to fetch the default value and SET() to assign the final value .</p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen775490475"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_lookup_misc_pkg</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="n">g_pkg_name</span><span class="w"> </span><span class="n">CONSTANT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'bas_lookup_misc_pkg'</span><span class="p">;</span>
<span class="w"> </span><span class="n">g_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">);</span>
<span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">func_name</span><span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">);</span>
<span class="w"> </span><span class="k">BEGIN</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">g_pkg_name</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">'.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">g_func_name</span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">l_func_name</span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_lookup_misc_pkg</span><span class="p">;</span>
<span class="o">/</span><span class="w"> </span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p764041518542"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b27161335516">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen32376206716"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span>
<span class="normal">35</span>
<span class="normal">36</span>
<span class="normal">37</span>
<span class="normal">38</span>
<span class="normal">39</span>
<span class="normal">40</span>
<span class="normal">41</span>
<span class="normal">42</span>
<span class="normal">43</span>
<span class="normal">44</span>
<span class="normal">45</span>
<span class="normal">46</span>
<span class="normal">47</span>
<span class="normal">48</span>
<span class="normal">49</span>
<span class="normal">50</span>
<span class="normal">51</span>
<span class="normal">52</span>
<span class="normal">53</span>
<span class="normal">54</span>
<span class="normal">55</span>
<span class="normal">56</span>
<span class="normal">57</span>
<span class="normal">58</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">BEGIN</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="w"> </span><span class="n">PACKAGE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">SPEC_OR_BODY</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_TYPE</span>
<span class="w"> </span><span class="p">,</span><span class="n">CONSTANT_I</span>
<span class="w"> </span><span class="p">,</span><span class="n">DEFAULT_VALUE</span>
<span class="w"> </span><span class="p">,</span><span class="n">RUNTIME_EXEC_I</span>
<span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="s1">'B'</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'g_pkg_name'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2(30)'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">TRUE</span>
<span class="w"> </span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="w"> </span><span class="n">PACKAGE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">SPEC_OR_BODY</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_TYPE</span>
<span class="w"> </span><span class="p">,</span><span class="n">CONSTANT_I</span>
<span class="w"> </span><span class="p">,</span><span class="n">DEFAULT_VALUE</span>
<span class="w"> </span><span class="p">,</span><span class="n">RUNTIME_EXEC_I</span>
<span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="s1">'B'</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2(30)'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span>
<span class="w"> </span><span class="p">,</span><span class="k">NULL</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="c1">--********************************************************************</span>
<span class="k">CREATE</span>
<span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_lookup_misc_pkg</span><span class="o">#</span><span class="n">func_name</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span>
<span class="w"> </span><span class="n">PACKAGE</span>
<span class="w"> </span><span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_pkg_name'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">'.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="p">,</span><span class="s1">'g_pkg_name'</span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="p">,</span><span class="s1">'g_func_name'</span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p188310501917"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b1513614731010">Input - If the configuration parameter pkgSchemaNaming is set to false</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p18372141685417">If the configuration parameter <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b14886592198">pkgSchemaNaming</strong> is set to <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b162751287203">false</strong>.</p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen1251713267102"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">bas_lookup_misc_pkg</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="n">g_pkg_name</span><span class="w"> </span><span class="n">CONSTANT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'bas_lookup_misc_pkg'</span><span class="p">;</span>
<span class="w"> </span><span class="n">g_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">);</span>
<span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">func_name</span><span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">);</span>
<span class="w"> </span><span class="k">BEGIN</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">g_pkg_name</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">'.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">g_func_name</span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">l_func_name</span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_lookup_misc_pkg</span><span class="p">;</span>
<span class="o">/</span><span class="w"> </span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p05204167544"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b13517121312516">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen3372052161012"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span>
<span class="normal">35</span>
<span class="normal">36</span>
<span class="normal">37</span>
<span class="normal">38</span>
<span class="normal">39</span>
<span class="normal">40</span>
<span class="normal">41</span>
<span class="normal">42</span>
<span class="normal">43</span>
<span class="normal">44</span>
<span class="normal">45</span>
<span class="normal">46</span>
<span class="normal">47</span>
<span class="normal">48</span>
<span class="normal">49</span>
<span class="normal">50</span>
<span class="normal">51</span>
<span class="normal">52</span>
<span class="normal">53</span>
<span class="normal">54</span>
<span class="normal">55</span>
<span class="normal">56</span>
<span class="normal">57</span>
<span class="normal">58</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">BEGIN</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="w"> </span><span class="n">PACKAGE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">SPEC_OR_BODY</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_TYPE</span>
<span class="w"> </span><span class="p">,</span><span class="n">CONSTANT_I</span>
<span class="w"> </span><span class="p">,</span><span class="n">DEFAULT_VALUE</span>
<span class="w"> </span><span class="p">,</span><span class="n">RUNTIME_EXEC_I</span>
<span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="s1">'B'</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'g_pkg_name'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2(30)'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">TRUE</span>
<span class="w"> </span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="w"> </span><span class="n">PACKAGE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">SPEC_OR_BODY</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_TYPE</span>
<span class="w"> </span><span class="p">,</span><span class="n">CONSTANT_I</span>
<span class="w"> </span><span class="p">,</span><span class="n">DEFAULT_VALUE</span>
<span class="w"> </span><span class="p">,</span><span class="n">RUNTIME_EXEC_I</span>
<span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="s1">'B'</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2(30)'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span>
<span class="w"> </span><span class="p">,</span><span class="k">NULL</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="c1">--********************************************************************</span>
<span class="k">CREATE</span>
<span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">bas_lookup_misc_pkg</span><span class="o">#</span><span class="n">func_name</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span>
<span class="w"> </span><span class="n">PACKAGE</span>
<span class="w"> </span><span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">CURRENT_SCHEMA</span><span class="p">()</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_pkg_name'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">CURRENT_SCHEMA</span><span class="p">()</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">'.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">CURRENT_SCHEMA</span><span class="p">(),</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="p">,</span><span class="s1">'g_pkg_name'</span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">CURRENT_SCHEMA</span><span class="p">(),</span><span class="s1">'bas_lookup_misc_pkg'</span><span class="p">,</span><span class="s1">'g_func_name'</span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p595463731718"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b168271053121813">Input: if pkgSchemaNaming is set to false, package variable</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p1299193919539">The global variable is not correctly converted during package conversion, and an error is reported during compilation. If the configuration parameter <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b7144103316513">pkgSchemaNaming</strong> is set to <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b171441338519">false</strong>, package variable migration is not happening properly in some places. This setting is not recommended by Kernel team. Please check with Kernel team.</p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen2514185519192"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_dml_lookup_pkg</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">g_pkg_name</span><span class="w"> </span><span class="n">CONSTANT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'bas_dml_ic_price_rule_pkg'</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">g_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="mi">100</span><span class="p">);</span>
<span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">func_name</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span>
<span class="w"> </span><span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">BEGIN</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">g_pkg_name</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">'.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">g_func_name</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">bas_dml_lookup_pkg</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p247555610201"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b1922855715510">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen18948316142112"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">BEGIN</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="w"> </span><span class="n">USER_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">PACKAGE_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">SPEC_OR_BODY</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_TYPE</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">CONSTANT_I</span><span class="p">,</span><span class="w"> </span><span class="n">DEFAULT_VALUE</span><span class="p">,</span><span class="w"> </span><span class="n">RUNTIME_EXEC_I</span>
<span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">),</span><span class="w"> </span><span class="s1">'B'</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'g_pkg_name'</span><span class="w"> </span><span class="p">),</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2 ( 30 )'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">TRUE</span><span class="p">,</span><span class="w"> </span><span class="s1">'bas_dml_ic_price_rule_pkg'</span><span class="p">,</span><span class="w"> </span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="w"> </span><span class="n">USER_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">PACKAGE_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">SPEC_OR_BODY</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_TYPE</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">CONSTANT_I</span><span class="p">,</span><span class="w"> </span><span class="n">DEFAULT_VALUE</span><span class="p">,</span><span class="w"> </span><span class="n">RUNTIME_EXEC_I</span>
<span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">),</span><span class="w"> </span><span class="s1">'B'</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">),</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2(100)'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">FALSE</span><span class="p">,</span><span class="w"> </span><span class="k">NULL</span><span class="p">,</span><span class="w"> </span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_dml_lookup_pkg</span><span class="o">#</span><span class="n">func_name</span>
<span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span>
<span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="p">,</span><span class="w"> </span><span class="s1">'BAS_DML_LOOKUP_PKG'</span><span class="p">,</span><span class="w"> </span><span class="s1">'G_PKG_NAME'</span><span class="w"> </span><span class="p">)::</span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="p">,</span><span class="w"> </span><span class="s1">'BAS_DML_LOOKUP_PKG'</span><span class="p">,</span><span class="w"> </span><span class="s1">'G_FUNC_NAME'</span><span class="w"> </span><span class="p">)::</span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">'.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p2288183644520"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b15388171394613">Input: table field type definition in the (%type) table</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p1068681554617">During package conversion, the schema definition is not added to the table field type definition in the (%type) table. An error is reported during compilation.</p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen2368205617496"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">TABLE</span><span class="w"> </span><span class="n">CTP_BRANCH</span><span class="w"> </span>
<span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">ID</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">10</span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">DESCRIPTION</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">500</span><span class="p">)</span>
<span class="w"> </span><span class="p">);</span>
<span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_dml_lookup_pkg</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">g_pkg_name</span><span class="w"> </span><span class="n">CONSTANT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'bas_dml_ic_price_rule_pkg'</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">g_func_name</span><span class="w"> </span><span class="n">CTP_BRANCH</span><span class="p">.</span><span class="n">NAME</span><span class="o">%</span><span class="k">TYPE</span><span class="p">;</span>
<span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">func_name</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span>
<span class="w"> </span><span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">BEGIN</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">g_pkg_name</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">'.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">g_func_name</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">bas_dml_lookup_pkg</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p1449762017109"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b686413101619">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen1629216564536"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">BEGIN</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="w"> </span><span class="n">USER_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">PACKAGE_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">SPEC_OR_BODY</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_TYPE</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">CONSTANT_I</span><span class="p">,</span><span class="w"> </span><span class="n">DEFAULT_VALUE</span><span class="p">,</span><span class="w"> </span><span class="n">RUNTIME_EXEC_I</span>
<span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">),</span><span class="w"> </span><span class="s1">'B'</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'g_pkg_name'</span><span class="w"> </span><span class="p">),</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2 ( 30 )'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">TRUE</span><span class="p">,</span><span class="w"> </span><span class="s1">'bas_dml_ic_price_rule_pkg'</span><span class="p">,</span><span class="w"> </span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="w"> </span><span class="n">USER_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">PACKAGE_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">SPEC_OR_BODY</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_TYPE</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">CONSTANT_I</span><span class="p">,</span><span class="w"> </span><span class="n">DEFAULT_VALUE</span><span class="p">,</span><span class="w"> </span><span class="n">RUNTIME_EXEC_I</span>
<span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">),</span><span class="w"> </span><span class="s1">'B'</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">),</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2(100)'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">FALSE</span><span class="p">,</span><span class="w"> </span><span class="k">NULL</span><span class="p">,</span><span class="w"> </span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_dml_lookup_pkg</span><span class="o">#</span><span class="n">func_name</span>
<span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span>
<span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="p">,</span><span class="w"> </span><span class="s1">'BAS_DML_LOOKUP_PKG'</span><span class="p">,</span><span class="w"> </span><span class="s1">'G_PKG_NAME'</span><span class="w"> </span><span class="p">)::</span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="p">,</span><span class="w"> </span><span class="s1">'BAS_DML_LOOKUP_PKG'</span><span class="p">,</span><span class="w"> </span><span class="s1">'G_FUNC_NAME'</span><span class="w"> </span><span class="p">)::</span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">'.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p674582155018"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_b43292482619">EXCEPTION</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p662281655010">Package variables can be declare as <strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b4699114545020">EXCEPTION</strong>. <span id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_text2421619134213">GaussDB(DWS)</span> does not support this function.</p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p6396132619467"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b13221833204614">Input</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen93833911467"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">product_pkg</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="n">ex_prog_error</span><span class="w"> </span><span class="k">EXCEPTION</span><span class="p">;</span>
<span class="w"> </span><span class="k">PROCEDURE</span><span class="w"> </span><span class="n">assert_null</span><span class="p">(</span><span class="n">pi_value</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">)</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="k">BEGIN</span>
<span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="n">pi_value</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="k">NOT</span><span class="w"> </span><span class="k">NULL</span>
<span class="w"> </span><span class="k">THEN</span>
<span class="w"> </span><span class="n">RAISE</span><span class="w"> </span><span class="n">ex_prog_error</span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="k">IF</span><span class="p">;</span>
<span class="w"> </span><span class="k">EXCEPTION</span>
<span class="w"> </span><span class="k">WHEN</span><span class="w"> </span><span class="n">ex_prog_error</span><span class="w"> </span><span class="k">THEN</span>
<span class="w"> </span><span class="n">RAISE</span><span class="w"> </span><span class="n">ex_prog_error</span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="n">assert_null</span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">product_pkg</span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p3616111019465"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b36441459114617">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen155320444710"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">PROCEDURE</span><span class="w"> </span><span class="n">product_pkg</span><span class="p">.</span><span class="n">Assert_null</span><span class="w"> </span><span class="p">(</span><span class="n">pi_value</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">)</span><span class="w"> </span>
<span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">ex_prog_error</span><span class="w"> </span><span class="k">EXCEPTION</span><span class="p">;</span><span class="w"> </span>
<span class="k">BEGIN</span><span class="w"> </span>
<span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="n">pi_value</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="k">NOT</span><span class="w"> </span><span class="k">NULL</span><span class="w"> </span><span class="k">THEN</span><span class="w"> </span>
<span class="w"> </span><span class="n">RAISE</span><span class="w"> </span><span class="n">ex_prog_error</span><span class="p">;</span><span class="w"> </span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="k">IF</span><span class="p">;</span><span class="w"> </span>
<span class="k">EXCEPTION</span><span class="w"> </span>
<span class="w"> </span><span class="k">WHEN</span><span class="w"> </span><span class="n">ex_prog_error</span><span class="w"> </span><span class="k">THEN</span><span class="w"> </span>
<span class="w"> </span><span class="n">RAISE</span><span class="w"> </span><span class="n">ex_prog_error</span><span class="p">;</span><span class="w"> </span>
<span class="k">END</span><span class="p">;</span><span class="w"> </span>
<span class="o">/</span><span class="w"> </span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p14942131019466"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b26941752171117">Default value</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p996318554119">function is specified as a default value for a package variable.</p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p769852581218"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b10713133114122">Input</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen841652116123"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span>
<span class="normal">35</span>
<span class="normal">36</span>
<span class="normal">37</span>
<span class="normal">38</span>
<span class="normal">39</span>
<span class="normal">40</span>
<span class="normal">41</span>
<span class="normal">42</span>
<span class="normal">43</span>
<span class="normal">44</span>
<span class="normal">45</span>
<span class="normal">46</span>
<span class="normal">47</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">BEGIN</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="w"> </span><span class="n">PACKAGE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">SPEC_OR_BODY</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_TYPE</span>
<span class="w"> </span><span class="p">,</span><span class="n">CONSTANT_I</span>
<span class="w"> </span><span class="p">,</span><span class="n">DEFAULT_VALUE</span>
<span class="w"> </span><span class="p">,</span><span class="n">RUNTIME_EXEC_I</span>
<span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'PKG_REVN_ARPU'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="s1">'B'</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'imodel'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'log_table.ds_exec%TYPE'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span>
<span class="w"> </span><span class="p">,</span><span class="n">pkg_etl</span><span class="p">.</span><span class="n">proc_set_chain</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'DAILY ARPU'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="n">gSQL</span><span class="p">:</span><span class="n">PKG_REVN_ARPU_04</span><span class="p">.</span><span class="k">SQL</span><span class="p">:</span><span class="mi">23</span><span class="p">:</span><span class="w"> </span><span class="n">ERROR</span><span class="p">:</span><span class="w"> </span><span class="k">function</span><span class="w"> </span><span class="n">pkg_etl</span><span class="p">.</span><span class="n">proc_set_chain</span><span class="p">(</span><span class="k">unknown</span><span class="p">)</span><span class="w"> </span><span class="n">does</span><span class="w"> </span><span class="k">not</span><span class="w"> </span><span class="n">exist</span>
<span class="n">LINE</span><span class="w"> </span><span class="mi">15</span><span class="p">:</span><span class="w"> </span><span class="p">,</span><span class="n">pkg_etl</span><span class="p">.</span><span class="n">proc_set_chain</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'DAILY ARPU'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="o">^</span>
<span class="n">HINT</span><span class="p">:</span><span class="w"> </span><span class="k">No</span><span class="w"> </span><span class="k">function</span><span class="w"> </span><span class="n">matches</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">given</span><span class="w"> </span><span class="n">name</span><span class="w"> </span><span class="k">and</span><span class="w"> </span><span class="n">argument</span><span class="w"> </span><span class="n">types</span><span class="p">.</span><span class="w"> </span><span class="n">You</span><span class="w"> </span><span class="n">might</span><span class="w"> </span><span class="n">need</span><span class="w"> </span><span class="k">to</span><span class="w"> </span><span class="k">add</span><span class="w"> </span><span class="n">explicit</span><span class="w"> </span><span class="k">type</span><span class="w"> </span><span class="n">casts</span><span class="p">.</span>
<span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">IC_STAGE</span><span class="p">.</span><span class="n">PKG_REVN_ARPU</span>
<span class="k">AS</span>
<span class="w"> </span><span class="n">imodel</span><span class="w"> </span><span class="n">log_table</span><span class="p">.</span><span class="n">ds_exec</span><span class="o">%</span><span class="k">TYPE</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">pkg_etl</span><span class="p">.</span><span class="n">proc_set_chain</span><span class="w"> </span><span class="p">(</span><span class="s1">'DAILY ARPU'</span><span class="p">);</span>
<span class="k">PROCEDURE</span><span class="w"> </span><span class="n">AGGR_X_AGG00_REVN_DEALER</span><span class="w"> </span><span class="p">(</span><span class="n">p_date</span><span class="w"> </span><span class="n">PLS_INTEGER</span><span class="p">,</span>
<span class="w"> </span><span class="n">p_days</span><span class="w"> </span><span class="n">PLS_INTEGER</span><span class="p">)</span>
<span class="w"> </span><span class="k">AS</span>
<span class="w"> </span><span class="n">v_start_date</span><span class="w"> </span><span class="n">PLS_INTEGER</span><span class="p">;</span>
<span class="w"> </span><span class="n">v_curr_date</span><span class="w"> </span><span class="n">PLS_INTEGER</span><span class="p">;</span>
<span class="w"> </span><span class="n">v_imodel</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">);</span>
<span class="w"> </span><span class="k">BEGIN</span>
<span class="w"> </span><span class="n">pkg_etl</span><span class="p">.</span><span class="n">proc_start</span><span class="w"> </span><span class="p">(</span><span class="n">p_date</span><span class="p">,</span><span class="w"> </span><span class="s1">'AGGR_X_AGG00_REVN_DEALER '</span><span class="p">);</span>
<span class="w"> </span><span class="n">v_start_date</span><span class="w"> </span><span class="p">:</span><span class="o">=</span>
<span class="w"> </span><span class="n">TO_CHAR</span><span class="w"> </span><span class="p">(</span><span class="n">TO_DATE</span><span class="w"> </span><span class="p">(</span><span class="n">p_date</span><span class="p">,</span><span class="w"> </span><span class="s1">'yyyymmdd'</span><span class="p">)</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="p">(</span><span class="n">p_days</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">1</span><span class="p">),</span><span class="w"> </span><span class="s1">'yyyymmdd'</span><span class="p">);</span>
<span class="w"> </span><span class="n">v_curr_date</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">p_date</span><span class="p">;</span>
<span class="w"> </span><span class="n">v_imodel</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">imodel</span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">PKG_REVN_ARPU</span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p13241967479"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b652812530131">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen1238835715139"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span>
<span class="normal">35</span>
<span class="normal">36</span>
<span class="normal">37</span>
<span class="normal">38</span>
<span class="normal">39</span>
<span class="normal">40</span>
<span class="normal">41</span>
<span class="normal">42</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SET</span>
<span class="w"> </span><span class="n">package_name_list</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s1">'PKG_REVN_ARPU'</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="w"> </span><span class="n">PACKAGE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">SPEC_OR_BODY</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="n">VARIABLE_TYPE</span>
<span class="w"> </span><span class="p">,</span><span class="n">CONSTANT_I</span>
<span class="w"> </span><span class="p">,</span><span class="n">DEFAULT_VALUE</span>
<span class="w"> </span><span class="p">,</span><span class="n">RUNTIME_EXEC_I</span>
<span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'PKG_REVN_ARPU'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="s1">'B'</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'imodel'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'log_table.ds_exec%TYPE'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="k">FALSE</span>
<span class="w"> </span><span class="p">,</span><span class="err">$</span><span class="n">q$pkg_etl</span><span class="p">.</span><span class="n">proc_set_chain</span><span class="w"> </span><span class="p">(</span><span class="s1">'DAILY ARPU'</span><span class="p">)</span><span class="err">$</span><span class="n">q$</span>
<span class="w"> </span><span class="p">,</span><span class="k">TRUE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="k">CREATE</span>
<span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">PROCEDURE</span><span class="w"> </span><span class="n">PKG_REVN_ARPU</span><span class="p">.</span><span class="n">AGGR_X_AGG00_REVN_DEALER</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">p_date</span><span class="w"> </span><span class="nb">INTEGER</span>
<span class="w"> </span><span class="p">,</span><span class="n">p_days</span><span class="w"> </span><span class="nb">INTEGER</span><span class="w"> </span><span class="p">)</span><span class="w"> </span>
<span class="w"> </span><span class="k">AS</span><span class="w"> </span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_IMODEL</span><span class="w"> </span><span class="n">log_table</span><span class="p">.</span><span class="n">ds_exec</span><span class="o">%</span><span class="k">TYPE</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">CURRENT_USER</span><span class="p">,</span><span class="s1">'PKG_REVN_ARPU'</span><span class="p">,</span><span class="s1">'imodel'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">log_table</span><span class="p">.</span><span class="n">ds_exec</span><span class="o">%</span><span class="k">TYPE</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">v_start_date</span><span class="w"> </span><span class="nb">INTEGER</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">v_curr_date</span><span class="w"> </span><span class="nb">INTEGER</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">v_imodel</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="n">pkg_etl</span><span class="p">.</span><span class="n">proc_start</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">p_date</span><span class="w"> </span><span class="p">,</span><span class="s1">'AGGR_X_AGG00_REVN_DEALER '</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">v_start_date</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">TO_CHAR</span><span class="p">(</span><span class="w"> </span><span class="n">TO_DATE</span><span class="p">(</span><span class="w"> </span><span class="n">p_date</span><span class="w"> </span><span class="p">,</span><span class="s1">'yyyymmdd'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">p_days</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="p">),</span><span class="s1">'yyyymmdd'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">v_curr_date</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">p_date</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">v_imodel</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_IMODEL</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">CURRENT_USER</span><span class="p">,</span><span class="s1">'PKG_REVN_ARPU'</span><span class="p">,</span><span class="s1">'imodel'</span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_IMODEL</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="k">reset</span><span class="w"> </span><span class="n">package_name_list</span><span class="w"> </span><span class="p">;</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p65751240181317"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_b1912424272820">PLS_INTEGER</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p416912285313">A PLS_INTEGER datatype is not converted into INTEGER for package variables but it is working fine for other local variables. Therefore, it should be converted to INTEGER, such as, varaible1 PLS_INTEGER ==&gt; varaible1 INTEGER</p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p94641537122916">SCRIPTS: SAD_CALC_BPART_PRICE_PKG.sql, SAD_CALC_ITEM_PKG_TEST_OB.sql, SAD_CALC_ITEM_PRICE_TEST_OB.sql, SAD_CALC_ITEM_PRI_TEST_OB.sql, SAD_CALC_ITEM_TEST_OB.sql</p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p104641037172915"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b39501518184513">Input</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen107884162519"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="ss">&quot;SAD&quot;</span><span class="p">.</span><span class="ss">&quot;SAD_CALC_BPART_PRICE_PKG&quot;</span><span class="w"> </span><span class="k">IS</span>
<span class="n">g_max_number_of_entities</span><span class="w"> </span><span class="n">PLS_INTEGER</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="mi">100</span><span class="p">;</span>
<span class="k">FUNCTION</span><span class="w"> </span><span class="n">split_warning</span><span class="p">(</span><span class="n">pi_contract_number</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">,</span>
<span class="n">pi_stage_id</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span><span class="p">,</span>
<span class="n">pi_quotation_id</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span><span class="p">,</span>
<span class="n">pi_cfg_instance_id</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span><span class="p">)</span><span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">IS</span>
<span class="k">BEGIN</span>
<span class="c1">---</span>
<span class="n">l_item_list</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">items_no_cost</span><span class="p">(</span><span class="n">pi_contract_number</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_contract_number</span><span class="p">,</span>
<span class="n">pi_stage_id</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_stage_id</span><span class="p">,</span>
<span class="n">pi_quotation_id</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_quotation_id</span><span class="p">,</span>
<span class="n">pi_cfg_instance_id</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_cfg_instance_id</span><span class="p">,</span>
<span class="n">pi_max_number_of_entities</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">g_max_number_of_entities</span><span class="p">,</span>
<span class="n">pi_sep_char</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">g_item_sep_char</span><span class="p">,</span>
<span class="n">po_error_msg</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">po_error_msg</span><span class="p">);</span>
<span class="c1">---</span>
<span class="k">END</span><span class="w"> </span><span class="n">split_warning</span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">SAD_CALC_BPART_PRICE_PKG</span><span class="p">;</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p3465123710297"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b8742431194516">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen8843193610254"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span>
<span class="normal">35</span>
<span class="normal">36</span>
<span class="normal">37</span>
<span class="normal">38</span>
<span class="normal">39</span>
<span class="normal">40</span>
<span class="normal">41</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">BEGIN</span>
<span class="c1">---</span>
<span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span><span class="p">(</span>
<span class="n">PACKAGE_NAME</span>
<span class="p">,</span><span class="n">SPEC_OR_BODY</span>
<span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="p">,</span><span class="n">VARIABLE_TYPE</span>
<span class="p">,</span><span class="n">CONSTANT_I</span>
<span class="p">,</span><span class="n">DEFAULT_VALUE</span>
<span class="p">,</span><span class="n">RUNTIME_EXEC_I</span>
<span class="p">)</span>
<span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD_CALC_BPART_PRICE_PKG'</span><span class="w"> </span><span class="p">)</span>
<span class="p">,</span><span class="s1">'B'</span>
<span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'g_max_number_of_entities'</span><span class="w"> </span><span class="p">)</span>
<span class="p">,</span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'PLS_INTEGER'</span><span class="w"> </span><span class="p">)</span>
<span class="p">,</span><span class="k">FALSE</span>
<span class="p">,</span><span class="mi">100</span>
<span class="p">,</span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="c1">---</span>
<span class="k">END</span><span class="p">;</span>
<span class="o">/</span>
<span class="k">CREATE</span>
<span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">SAD_CALC_BPART_PRICE_PKG</span><span class="o">#</span><span class="n">split_warning</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">pi_contract_number</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span>
<span class="p">,</span><span class="n">pi_stage_id</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span>
<span class="p">,</span><span class="n">pi_quotation_id</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span>
<span class="p">,</span><span class="n">pi_cfg_instance_id</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span><span class="w"> </span><span class="p">)</span>
<span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">IS</span>
<span class="c1">---</span>
<span class="n">MIG_PV_VAL_DUMMY_G_MAX_NUMBER_OF_ENTITIES</span><span class="w"> </span><span class="n">PLS_INTEGER</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">current_schema</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="p">)</span>
<span class="p">,</span><span class="s1">'SAD_CALC_BPART_PRICE_PKG'</span>
<span class="p">,</span><span class="s1">'g_max_number_of_entities'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">PLS_INTEGER</span><span class="w"> </span><span class="p">;</span>
<span class="c1">---</span>
<span class="n">l_item_list</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">SAD_CALC_BPART_PRICE_PKG</span><span class="o">#</span><span class="n">items_no_cost</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">pi_contract_number</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_contract_number</span><span class="w"> </span><span class="p">,</span>
<span class="n">pi_stage_id</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_stage_id</span><span class="w"> </span><span class="p">,</span>
<span class="n">pi_quotation_id</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_quotation_id</span><span class="w"> </span><span class="p">,</span>
<span class="n">pi_cfg_instance_id</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_cfg_instance_id</span><span class="w"> </span><span class="p">,</span>
<span class="n">pi_max_number_of_entities</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_MAX_NUMBER_OF_ENTITIES</span><span class="w"> </span><span class="p">,</span>
<span class="n">pi_sep_char</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_ITEM_SEP_CHAR</span><span class="w"> </span><span class="p">,</span>
<span class="n">po_error_msg</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="c1">---</span>
<span class="k">END</span><span class="p">;</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p13121154814298"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b2531708301">Input</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen836819512315"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span>
<span class="normal">35</span>
<span class="normal">36</span>
<span class="normal">37</span>
<span class="normal">38</span>
<span class="normal">39</span>
<span class="normal">40</span>
<span class="normal">41</span>
<span class="normal">42</span>
<span class="normal">43</span>
<span class="normal">44</span>
<span class="normal">45</span>
<span class="normal">46</span>
<span class="normal">47</span>
<span class="normal">48</span>
<span class="normal">49</span>
<span class="normal">50</span>
<span class="normal">51</span>
<span class="normal">52</span>
<span class="normal">53</span>
<span class="normal">54</span>
<span class="normal">55</span>
<span class="normal">56</span>
<span class="normal">57</span>
<span class="normal">58</span>
<span class="normal">59</span>
<span class="normal">60</span>
<span class="normal">61</span>
<span class="normal">62</span>
<span class="normal">63</span>
<span class="normal">64</span>
<span class="normal">65</span>
<span class="normal">66</span>
<span class="normal">67</span>
<span class="normal">68</span>
<span class="normal">69</span>
<span class="normal">70</span>
<span class="normal">71</span>
<span class="normal">72</span>
<span class="normal">73</span>
<span class="normal">74</span>
<span class="normal">75</span>
<span class="normal">76</span>
<span class="normal">77</span>
<span class="normal">78</span>
<span class="normal">79</span>
<span class="normal">80</span>
<span class="normal">81</span>
<span class="normal">82</span>
<span class="normal">83</span>
<span class="normal">84</span></pre></div></td><td class="code"><div><pre><span></span><span class="n">PLS_INTEGER</span><span class="w"> </span><span class="n">datatype</span><span class="w"> </span><span class="k">not</span><span class="w"> </span><span class="n">converted</span><span class="w"> </span><span class="k">into</span><span class="w"> </span><span class="nb">INTEGER</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">package</span><span class="w"> </span><span class="n">variables</span><span class="w"> </span><span class="n">but</span><span class="w"> </span><span class="n">it</span><span class="s1">'s working fine for other local variables therefore for package variables also PLS_INTEGER should be converted to INTEGER datatype i.e varaible1 PLS_INTEGER ==&gt; varaible1 INTEGER</span>
<span class="s1">SCRIPTS : SAD_CALC_BPART_PRICE_PKG.SQL, SAD_CALC_ITEM_PKG_TEST_OB.SQL, SAD_CALC_ITEM_PRICE_TEST_OB.SQL, SAD_CALC_ITEM_PRI_TEST_OB.SQL, SAD_CALC_ITEM_TEST_OB.SQL</span>
<span class="s1">INPUT : </span>
<span class="s1">CREATE OR REPLACE PACKAGE BODY &quot;SAD&quot;.&quot;SAD_CALC_BPART_PRICE_PKG&quot; IS</span>
<span class="s1"> g_max_number_of_entities PLS_INTEGER := 100;</span>
<span class="s1"> FUNCTION split_warning(pi_contract_number IN VARCHAR2,</span>
<span class="s1"> pi_stage_id IN NUMBER,</span>
<span class="s1"> pi_quotation_id IN NUMBER,</span>
<span class="s1"> pi_cfg_instance_id IN NUMBER) RETURN VARCHAR2 IS</span>
<span class="s1"> BEGIN</span>
<span class="s1"> ---</span>
<span class="s1"> l_item_list := items_no_cost(pi_contract_number =&gt; pi_contract_number,</span>
<span class="s1"> pi_stage_id =&gt; pi_stage_id,</span>
<span class="s1"> pi_quotation_id =&gt; pi_quotation_id,</span>
<span class="s1"> pi_cfg_instance_id =&gt; pi_cfg_instance_id,</span>
<span class="s1"> pi_max_number_of_entities =&gt; g_max_number_of_entities,</span>
<span class="s1"> pi_sep_char =&gt; g_item_sep_char,</span>
<span class="s1"> po_error_msg =&gt; po_error_msg);</span>
<span class="s1"> ---</span>
<span class="s1"> END split_warning;</span>
<span class="s1">END SAD_CALC_BPART_PRICE_PKG;</span>
<span class="s1">OUTPUT : </span>
<span class="s1">BEGIN</span>
<span class="s1">---</span>
<span class="s1">INSERT INTO MIG_ORA_EXT.MIG_PKG_VARIABLES (</span>
<span class="s1"> PACKAGE_NAME</span>
<span class="s1"> ,SPEC_OR_BODY</span>
<span class="s1"> ,VARIABLE_NAME</span>
<span class="s1"> ,VARIABLE_TYPE</span>
<span class="s1"> ,CONSTANT_I</span>
<span class="s1"> ,DEFAULT_VALUE</span>
<span class="s1"> ,RUNTIME_EXEC_I</span>
<span class="s1"> )</span>
<span class="s1"> VALUES ( UPPER( '</span><span class="n">SAD_CALC_BPART_PRICE_PKG</span><span class="s1">' )</span>
<span class="s1"> ,'</span><span class="n">B</span><span class="s1">'</span>
<span class="s1"> ,UPPER( '</span><span class="n">g_max_number_of_entities</span><span class="s1">' )</span>
<span class="s1"> ,UPPER( '</span><span class="n">PLS_INTEGER</span><span class="s1">' )</span>
<span class="s1"> ,FALSE</span>
<span class="s1"> ,100</span>
<span class="s1"> ,FALSE ) ;</span>
<span class="s1">---</span>
<span class="s1">END;</span>
<span class="s1">/</span>
<span class="s1">CREATE</span>
<span class="s1"> OR REPLACE FUNCTION SAD.SAD_CALC_BPART_PRICE_PKG#split_warning ( pi_contract_number IN VARCHAR2</span>
<span class="s1"> ,pi_stage_id IN NUMBER</span>
<span class="s1"> ,pi_quotation_id IN NUMBER</span>
<span class="s1"> ,pi_cfg_instance_id IN NUMBER )</span>
<span class="s1"> RETURN VARCHAR2 IS</span>
<span class="s1"> ---</span>
<span class="s1"> MIG_PV_VAL_DUMMY_G_MAX_NUMBER_OF_ENTITIES PLS_INTEGER := MIG_ORA_EXT.MIG_FN_GET_PKG_VARIABLE ( current_schema ( )</span>
<span class="s1"> ,'</span><span class="n">SAD_CALC_BPART_PRICE_PKG</span><span class="s1">'</span>
<span class="s1"> ,'</span><span class="n">g_max_number_of_entities</span><span class="err">'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">PLS_INTEGER</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="c1">---</span>
<span class="w"> </span><span class="n">l_item_list</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">SAD_CALC_BPART_PRICE_PKG</span><span class="o">#</span><span class="n">items_no_cost</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">pi_contract_number</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_contract_number</span><span class="w"> </span><span class="p">,</span>
<span class="w"> </span><span class="n">pi_stage_id</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_stage_id</span><span class="w"> </span><span class="p">,</span>
<span class="w"> </span><span class="n">pi_quotation_id</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_quotation_id</span><span class="w"> </span><span class="p">,</span>
<span class="w"> </span><span class="n">pi_cfg_instance_id</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_cfg_instance_id</span><span class="w"> </span><span class="p">,</span>
<span class="w"> </span><span class="n">pi_max_number_of_entities</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_MAX_NUMBER_OF_ENTITIES</span><span class="w"> </span><span class="p">,</span>
<span class="w"> </span><span class="n">pi_sep_char</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_ITEM_SEP_CHAR</span><span class="w"> </span><span class="p">,</span>
<span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="c1">---</span>
<span class="k">END</span><span class="p">;</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p530113622816"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b523818918325">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen27701819153210"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span>
<span class="normal">35</span>
<span class="normal">36</span>
<span class="normal">37</span>
<span class="normal">38</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">BEGIN</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span>
<span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">PACKAGE_NAME</span><span class="p">,</span><span class="w"> </span><span class="n">SPEC_OR_BODY</span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_TYPE</span><span class="p">,</span><span class="w"> </span><span class="n">CONSTANT_I</span><span class="p">,</span><span class="w"> </span><span class="n">DEFAULT_VALUE</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">RUNTIME_EXEC_I</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="s1">'SAD_CALC_BPART_PRICE_PKG'</span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="s1">'B'</span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'g_max_number_of_entities'</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'INTEGER'</span><span class="w"> </span><span class="p">),</span><span class="k">FALSE</span><span class="p">,</span><span class="mi">100</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">SAD_CALC_BPART_PRICE_PKG</span><span class="o">#</span><span class="n">split_warning</span><span class="w"> </span>
<span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">pi_contract_number</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">pi_stage_id</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span><span class="w"> </span><span class="p">)</span>
<span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span>
<span class="n">PACKAGE</span><span class="w"> </span>
<span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_MAX_NUMBER_OF_ENTITIES</span><span class="w"> </span><span class="nb">INTEGER</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="p">(</span><span class="s1">'SAD'</span><span class="p">,</span><span class="w"> </span><span class="s1">'SAD_CALC_BPART_PRICE_PKG'</span><span class="p">,</span><span class="w"> </span><span class="s1">'g_max_number_of_entities'</span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="nb">INTEGER</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="n">sad_products_t</span><span class="p">.</span><span class="n">exception_description</span><span class="o">%</span><span class="k">TYPE</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="n">l_item_list</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">items_no_cost</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">pi_contract_number</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_contract_number</span><span class="w"> </span><span class="p">,</span><span class="n">pi_stage_id</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">pi_stage_id</span><span class="w"> </span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">pi_max_number_of_entities</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_MAX_NUMBER_OF_ENTITIES</span><span class="w"> </span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="o">=&gt;</span><span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'SAD_CALC_BPART_PRICE_PKG'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_max_number_of_entities'</span><span class="w"> </span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_MAX_NUMBER_OF_ENTITIES</span><span class="p">);</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="p">;</span>
<span class="k">EXCEPTION</span>
<span class="w"> </span><span class="k">WHEN</span><span class="w"> </span><span class="n">OTHERS</span><span class="w"> </span><span class="k">THEN</span>
<span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'Program Others abnormal, Fail to obtain the warning information.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">SQLERRM</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'SAD_CALC_BPART_PRICE_PKG'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_max_number_of_entities'</span><span class="w"> </span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_MAX_NUMBER_OF_ENTITIES</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p17910848173113"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b813813145718">Cursor With Package Variable</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p2061222624914">The cursor declared in SAD.sad_calc_product_price_pkg#calc_product_price contains package variables and needs to be handled.</p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p074011597472"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b15683401778">Input</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen83892974816"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_subtype_pkg</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="n">g_header_waiting_split_status</span><span class="w"> </span><span class="n">CONSTANT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'Waiting_Distribute'</span><span class="p">;</span><span class="w"> </span>
<span class="w"> </span><span class="n">SUBTYPE</span><span class="w"> </span><span class="n">error_msg</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="n">sad_products_t</span><span class="p">.</span><span class="n">exception_description</span><span class="o">%</span><span class="k">TYPE</span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">bas_subtype_pkg</span><span class="p">;</span>
<span class="o">/</span>
<span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">sad_calc_product_price_pkg</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="k">PROCEDURE</span><span class="w"> </span><span class="n">calc_product_price</span><span class="p">(</span><span class="n">pi_contract_no</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">DEFAULT</span><span class="w"> </span><span class="k">NULL</span><span class="p">,</span>
<span class="w"> </span><span class="n">pi_stage_id</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span><span class="w"> </span><span class="k">DEFAULT</span><span class="w"> </span><span class="k">NULL</span><span class="p">,</span>
<span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="k">OUT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">)</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="k">CURSOR</span><span class="w"> </span><span class="n">cur_contract</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="k">DISTINCT</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">contract_number</span><span class="p">,</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">stage_id</span>
<span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">sad_distribution_headers_t</span><span class="w"> </span><span class="n">sdh</span>
<span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">status</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">bas_subtype_pkg</span><span class="p">.</span><span class="n">g_header_waiting_split_status</span>
<span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">contract_number</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">nvl</span><span class="p">(</span><span class="n">pi_contract_no</span><span class="p">,</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">contract_number</span><span class="p">)</span>
<span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">stage_id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">nvl</span><span class="p">(</span><span class="n">pi_stage_id</span><span class="p">,</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">stage_id</span><span class="p">);</span>
<span class="w"> </span><span class="n">lv_error_msg</span><span class="w"> </span><span class="n">bas_subtype_pkg</span><span class="p">.</span><span class="n">error_msg</span><span class="p">;</span>
<span class="w"> </span><span class="k">BEGIN</span>
<span class="w"> </span><span class="k">FOR</span><span class="w"> </span><span class="n">rec_contract</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">cur_contract</span>
<span class="w"> </span><span class="n">LOOP</span>
<span class="w"> </span><span class="n">validate_process_status</span><span class="p">(</span><span class="n">rec_contract</span><span class="p">.</span><span class="n">contract_number</span><span class="p">,</span>
<span class="w"> </span><span class="n">rec_contract</span><span class="p">.</span><span class="n">stage_id</span><span class="p">,</span>
<span class="w"> </span><span class="n">lv_error_msg</span><span class="p">);</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="n">LOOP</span><span class="p">;</span>
<span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">lv_error_msg</span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="n">calc_product_price</span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">sad_calc_product_price_pkg</span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p0990204943112"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b178811015597">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen12787202219506"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span>
<span class="normal">35</span>
<span class="normal">36</span>
<span class="normal">37</span>
<span class="normal">38</span>
<span class="normal">39</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">BEGIN</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span>
<span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">PACKAGE_NAME</span><span class="p">,</span><span class="n">SPEC_OR_BODY</span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_TYPE</span><span class="p">,</span><span class="n">CONSTANT_I</span><span class="p">,</span><span class="n">DEFAULT_VALUE</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">RUNTIME_EXEC_I</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="s1">'bas_subtype_pkg'</span><span class="p">),</span><span class="w"> </span><span class="s1">'S'</span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="s1">'g_header_waiting_split_status'</span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2(20)'</span><span class="w"> </span><span class="p">),</span><span class="w"> </span><span class="k">TRUE</span><span class="p">,</span><span class="w"> </span><span class="s1">'Waiting_Distribute'</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">PROCEDURE</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">sad_calc_product_price_pkg</span><span class="o">#</span><span class="n">calc_product_price</span><span class="w"> </span>
<span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">pi_contract_no</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="k">DEFAULT</span><span class="w"> </span><span class="k">NULL</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">pi_stage_id</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="nb">NUMBER</span><span class="w"> </span><span class="k">DEFAULT</span><span class="w"> </span><span class="k">NULL</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="k">OUT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">)</span><span class="w"> </span>
<span class="n">PACKAGE</span><span class="w"> </span>
<span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_HEADER_WAITING_SPLIT_STATUS</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">20</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_subtype_pkg'</span>
<span class="w"> </span><span class="p">,</span><span class="s1">'g_header_waiting_split_status'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">20</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">CURSOR</span><span class="w"> </span><span class="n">cur_contract</span><span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="k">DISTINCT</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">contract_number</span><span class="p">,</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">stage_id</span>
<span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">sad_distribution_headers_t</span><span class="w"> </span><span class="n">sdh</span>
<span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">status</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_HEADER_WAITING_SPLIT_STATUS</span>
<span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">contract_number</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">nvl</span><span class="p">(</span><span class="w"> </span><span class="n">pi_contract_no</span><span class="w"> </span><span class="p">,</span><span class="n">sdh</span><span class="p">.</span><span class="n">contract_number</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">AND</span><span class="w"> </span><span class="n">sdh</span><span class="p">.</span><span class="n">stage_id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">nvl</span><span class="p">(</span><span class="w"> </span><span class="n">pi_stage_id</span><span class="w"> </span><span class="p">,</span><span class="n">sdh</span><span class="p">.</span><span class="n">stage_id</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">lv_error_msg</span><span class="w"> </span><span class="n">sad_products_t</span><span class="p">.</span><span class="n">exception_description</span><span class="o">%</span><span class="k">TYPE</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="k">FOR</span><span class="w"> </span><span class="n">rec_contract</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">cur_contract</span><span class="w"> </span>
<span class="w"> </span><span class="n">LOOP</span>
<span class="w"> </span><span class="n">validate_process_status</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">rec_contract</span><span class="p">.</span><span class="n">contract_number</span><span class="w"> </span><span class="p">,</span><span class="n">rec_contract</span><span class="p">.</span><span class="n">stage_id</span><span class="w"> </span><span class="p">,</span><span class="n">lv_error_msg</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="n">LOOP</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">lv_error_msg</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_subtype_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_header_waiting_split_status'</span><span class="w"> </span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_HEADER_WAITING_SPLIT_STATUS</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p764818242312"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b41413445318">SET VARIABLE function after the RETURN</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p1092154511310">SET VARIABLE function should be called before the RETURN statements in the procedure and function.</p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p84201564314"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b15182141115412">Input</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen12102121543"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span>
<span class="normal">35</span>
<span class="normal">36</span>
<span class="normal">37</span>
<span class="normal">38</span>
<span class="normal">39</span>
<span class="normal">40</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_dml_lookup_pkg</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">g_pkg_name</span><span class="w"> </span><span class="n">CONSTANT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">30</span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">g_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">);</span>
<span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">func_name</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span>
<span class="w"> </span><span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="p">(</span><span class="mi">100</span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">BEGIN</span>
<span class="w"> </span><span class="n">g_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'func_name'</span><span class="p">;</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">g_pkg_name</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">'.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">g_func_name</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="p">;</span>
<span class="w"> </span><span class="k">PROCEDURE</span><span class="w"> </span><span class="n">data_change_logs</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">pi_table_name</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">pi_table_key_columns</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="k">OUT</span><span class="w"> </span><span class="n">VARCHAR2</span>
<span class="w"> </span><span class="p">)</span><span class="w"> </span>
<span class="w"> </span><span class="k">IS</span>
<span class="w"> </span><span class="k">BEGIN</span>
<span class="w"> </span><span class="n">g_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'data_change_logs'</span><span class="p">;</span>
<span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="n">pi_table_name</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="k">NULL</span>
<span class="w"> </span><span class="k">THEN</span>
<span class="w"> </span><span class="k">RETURN</span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="k">IF</span><span class="p">;</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">fnd_data_change_logs_t</span>
<span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">logid</span><span class="p">,</span><span class="w"> </span><span class="k">table_name</span><span class="p">,</span><span class="w"> </span><span class="n">table_key_columns</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span>
<span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">fnd_data_change_logs_t_s</span><span class="p">.</span><span class="n">NEXTVAL</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">pi_table_name</span><span class="p">,</span><span class="w"> </span><span class="n">pi_table_key_columns</span><span class="w"> </span><span class="p">);</span>
<span class="w"> </span><span class="k">EXCEPTION</span>
<span class="w"> </span><span class="k">WHEN</span><span class="w"> </span><span class="n">OTHERS</span><span class="w"> </span><span class="k">THEN</span>
<span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'Others Exception raise in '</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">func_name</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">','</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">SQLERRM</span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="n">data_change_logs</span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">bas_dml_lookup_pkg</span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p108871241333"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_b1379241887">Output</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen145897541542"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span>
<span class="normal">27</span>
<span class="normal">28</span>
<span class="normal">29</span>
<span class="normal">30</span>
<span class="normal">31</span>
<span class="normal">32</span>
<span class="normal">33</span>
<span class="normal">34</span>
<span class="normal">35</span>
<span class="normal">36</span>
<span class="normal">37</span>
<span class="normal">38</span>
<span class="normal">39</span>
<span class="normal">40</span>
<span class="normal">41</span>
<span class="normal">42</span>
<span class="normal">43</span>
<span class="normal">44</span>
<span class="normal">45</span>
<span class="normal">46</span>
<span class="normal">47</span>
<span class="normal">48</span>
<span class="normal">49</span>
<span class="normal">50</span>
<span class="normal">51</span>
<span class="normal">52</span>
<span class="normal">53</span>
<span class="normal">54</span>
<span class="normal">55</span>
<span class="normal">56</span>
<span class="normal">57</span>
<span class="normal">58</span>
<span class="normal">59</span>
<span class="normal">60</span>
<span class="normal">61</span>
<span class="normal">62</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">BEGIN</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span>
<span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">PACKAGE_NAME</span><span class="p">,</span><span class="n">SPEC_OR_BODY</span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_TYPE</span><span class="p">,</span><span class="n">CONSTANT_I</span><span class="p">,</span><span class="n">DEFAULT_VALUE</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">RUNTIME_EXEC_I</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="s1">'bas_dml_lookup_pkg'</span><span class="p">),</span><span class="w"> </span><span class="s1">'B'</span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="s1">'g_pkg_name'</span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2(30)'</span><span class="w"> </span><span class="p">),</span><span class="w"> </span><span class="k">TRUE</span><span class="p">,</span><span class="w"> </span><span class="s1">'bas_dml_lookup_pkg'</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_PKG_VARIABLES</span><span class="w"> </span>
<span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">PACKAGE_NAME</span><span class="p">,</span><span class="n">SPEC_OR_BODY</span><span class="p">,</span><span class="n">VARIABLE_NAME</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">VARIABLE_TYPE</span><span class="p">,</span><span class="n">CONSTANT_I</span><span class="p">,</span><span class="n">DEFAULT_VALUE</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">RUNTIME_EXEC_I</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="s1">'bas_dml_lookup_pkg'</span><span class="p">),</span><span class="w"> </span><span class="s1">'B'</span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="s1">'g_func_name'</span><span class="p">)</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="k">UPPER</span><span class="p">(</span><span class="w"> </span><span class="s1">'VARCHAR2(100)'</span><span class="w"> </span><span class="p">),</span><span class="w"> </span><span class="k">FALSE</span><span class="p">,</span><span class="w"> </span><span class="k">NULL</span><span class="p">,</span><span class="w"> </span><span class="k">FALSE</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">FUNCTION</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_dml_lookup_pkg</span><span class="o">#</span><span class="n">func_name</span>
<span class="k">RETURN</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span>
<span class="n">PACKAGE</span><span class="w"> </span>
<span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_pkg_name'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">30</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'func_name'</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">'.'</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_pkg_name'</span><span class="w"> </span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_PKG_NAME</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="n">l_func_name</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
<span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="k">PROCEDURE</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_dml_lookup_pkg</span><span class="o">#</span><span class="n">data_change_logs</span><span class="w"> </span>
<span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">pi_table_name</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">pi_table_key_columns</span><span class="w"> </span><span class="k">IN</span><span class="w"> </span><span class="n">VARCHAR2</span>
<span class="w"> </span><span class="p">,</span><span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="k">OUT</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">)</span><span class="w"> </span>
<span class="n">PACKAGE</span><span class="w"> </span>
<span class="k">IS</span><span class="w"> </span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_GET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="n">VARCHAR2</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="mi">100</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'data_change_logs'</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="n">pi_table_name</span><span class="w"> </span><span class="k">IS</span><span class="w"> </span><span class="k">NULL</span><span class="w"> </span><span class="k">THEN</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">RETURN</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">END</span><span class="w"> </span><span class="k">IF</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">fnd_data_change_logs_t</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">logid</span><span class="p">,</span><span class="w"> </span><span class="k">table_name</span><span class="p">,</span><span class="w"> </span><span class="n">table_key_columns</span><span class="w"> </span><span class="p">)</span>
<span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="n">NEXTVAL</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'fnd_data_change_logs_t_s'</span><span class="w"> </span><span class="p">),</span><span class="w"> </span><span class="n">pi_table_name</span><span class="p">,</span><span class="w"> </span><span class="n">pi_table_key_columns</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">EXCEPTION</span>
<span class="w"> </span><span class="k">WHEN</span><span class="w"> </span><span class="n">OTHERS</span><span class="w"> </span><span class="k">THEN</span>
<span class="w"> </span><span class="n">po_error_msg</span><span class="w"> </span><span class="p">:</span><span class="o">=</span><span class="w"> </span><span class="s1">'Others Exception raise in '</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_dml_lookup_pkg</span><span class="o">#</span><span class="n">func_name</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="s1">','</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">SQLERRM</span><span class="w"> </span><span class="p">;</span>
<span class="w"> </span><span class="n">MIG_ORA_EXT</span><span class="p">.</span><span class="n">MIG_FN_SET_PKG_VARIABLE</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s1">'SAD'</span><span class="w"> </span><span class="p">,</span><span class="s1">'bas_dml_lookup_pkg'</span><span class="w"> </span><span class="p">,</span><span class="s1">'g_func_name'</span><span class="w"> </span><span class="p">,</span><span class="n">MIG_PV_VAL_DUMMY_G_FUNC_NAME</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p1560918501443"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b1277915811715">Empty package</strong></p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p1353110277">Empty package bodies do not need to be migrated.</p>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p1217162916714"><strong id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0237712554_b041613351171">Input</strong></p>
<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_screen112991445777"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
<span class="normal">2</span>
<span class="normal">3</span>
<span class="normal">4</span>
<span class="normal">5</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">OR</span><span class="w"> </span><span class="k">REPLACE</span><span class="w"> </span><span class="n">PACKAGE</span><span class="w"> </span><span class="n">BODY</span><span class="w"> </span><span class="n">SAD</span><span class="p">.</span><span class="n">bas_subtype_pkg</span><span class="w"> </span><span class="k">IS</span>
<span class="k">BEGIN</span>
<span class="w"> </span><span class="k">NULL</span><span class="p">;</span>
<span class="k">END</span><span class="w"> </span><span class="n">bas_subtype_pkg</span><span class="p">;</span>
<span class="o">/</span>
</pre></div></td></tr></table></div>
</div>
<p id="EN-US_TOPIC_0000001772536624__en-us_topic_0000001657865462_en-us_topic_0238518406_en-us_topic_0237362216_en-us_topic_0202727159_p732673717716">Output will be an empty file.</p>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="dws_mt_0156.html">PL/SQL Packages</a></div>
</div>
</div>