codekingpro/portable-devtools
114k
1���= �sphinx.addnodes��document���)��}�(� rawsource�� ��children�]�(�docutils.nodes��target���)��}�(h�.. _package_dialog:�h]��2attributes�}�(�ids�]��classes�]��names�]��dupnames�]��backrefs�]��refid��package-dialog�u�tagname�h3�line�K�parent�h� _document�h�source��iD:\a\pgadmin-packaging-foundation\pgadmin-packaging-foundation\pgadmin4-8.6\docs\en_US\package_dialog.rst�ubh �section���)��}�(hhh]�(h �title���)��}�(h�`Package Dialog`:index:�h]�(h �index���)��}�(hhh]�h}�(h]�h]�h]�h]�h]��entries�]�(�single��Package Dialog��index-0�hNt�auhh/h"h#hKh h+ubh)��}�(hhh]�h}�(h]�h>ah]�h]�h]�h]�uhh4h h+ubh �Text����Package Dialog�����}�(h h+h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhh)h h&h!hh"h#hKubh � paragraph���)��}�(h�JUse the *Package* dialog to create a (user-defined) package specification.�h]�(hJ�Use the �����}�(h hWh!hh"NhNubh �emphasis���)��}�(h� *Package*�h]�hJ�Package�����}�(h hah!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h hWubhJ�9 dialog to create a (user-defined) package specification.�����}�(h hWh!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hKh h&h!hubhV)��}�(h��The *Package* dialog organizes the management of a package through the following5dialog tabs: *General*, *Header*, *Body*, and *Security*. The *SQL* tab displays the SQL6code generated by dialog selections.�h]�(hJ�The �����}�(h hyh!hh"NhNubh`)��}�(h� *Package*�h]�hJ�Package�����}�(h h�h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h hyubhJ�Q dialog organizes the management of a package through the following7dialog tabs: �����}�(h hyh!hh"NhNubh`)��}�(h� *General*�h]�hJ�General�����}�(h h�h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h hyubhJ�, �����}�(h hyh!hh"NhNubh`)��}�(h�*Header*�h]�hJ�Header�����}�(h h�h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h hyubhJ�, �����}�h hysbh`)��}�(h�*Body*�h]�hJ�Body�����}�(h h�h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h hyubhJ�, and �����}�(h hyh!hh"NhNubh`)��}�(h�8*Security*�h]�hJ�Security�����}�(h h�h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h hyubhJ�. The �����}�(h hyh!hh"NhNubh`)��}�(h�*SQL*�h]�hJ�SQL�����}�(h h�h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h hyubhJ�: tab displays the SQL9code generated by dialog selections.�����}�(h hyh!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hK h h&h!hubh �image���)��}�(h�^.. image:: images/package_general.png10 :alt: Package dialog general tab11 :align: center12�h]�h}�(h]�h]�h]�h]�h]��alt��Package dialog general tab��align��center��uri��images/package_general.png��13candidates�}��*�j suhh�h"h#hK
h h&h!hubhV)��}�(h�<Use the fields in the *General* tab to identify the package:�h]�(hJ�Use the fields in the �����}�(h j h!hh"NhNubh`)��}�(h� *General*�h]�hJ�General�����}�(h j h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j ubhJ� tab to identify the package:�����}�(h j h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hKh h&h!hubh �bullet_list���)��}�(hhh]�(h � list_item���)��}�(h��Use the *Name* field to add a descriptive name for the package. The name of a14new package must not match any existing package in the same schema.�h]�hV)��}�(h��Use the *Name* field to add a descriptive name for the package. The name of a15new package must not match any existing package in the same schema.�h]�(hJ�Use the �����}�(h j3 h!hh"NhNubh`)��}�(h�*Name*�h]�hJ�Name�����}�(h j; h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j3 ubhJ�� field to add a descriptive name for the package. The name of a16new package must not match any existing package in the same schema.�����}�(h j3 h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hKh j/ ubah}�(h]�h]�h]�h]�h]�uhj- h"h#hKh j* h!hubj. )��}�(h�dSelect the schema in which the package will reside from the drop-down listbox17in the *Schema* field.�h]�hV)��}�(h�dSelect the schema in which the package will reside from the drop-down listbox18in the *Schema* field.�h]�(hJ�USelect the schema in which the package will reside from the drop-down listbox19in the �����}�(h j] h!hh"NhNubh`)��}�(h�*Schema*�h]�hJ�Schema�����}�(h je h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j] ubhJ� field.�����}�(h j] h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hKh jY ubah}�(h]�h]�h]�h]�h]�uhj- h"h#hKh j* h!hubj. )��}�(h�6Store notes about the package in the *Comment* field.20�h]�hV)��}�(h�5Store notes about the package in the *Comment* field.�h]�(hJ�%Store notes about the package in the �����}�(h j� h!hh"NhNubh`)��}�(h� *Comment*�h]�hJ�Comment�����}�(h j� h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j� ubhJ� field.�����}�(h j� h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hKh j� ubah}�(h]�h]�h]�h]�h]�uhj- h"h#hKh j* h!hubeh}�(h]�h]�h]�h]�h]��bullet�j uhj( h"h#hKh h&h!hubhV)��}�(h�#Click the *Header* tab to continue.�h]�(hJ�21Click the �����}�(h j� h!hh"NhNubh`)��}�(h�*Header*�h]�hJ�Header�����}�(h j� h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j� ubhJ� tab to continue.�����}�(h j� h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hKh h&h!hubh�)��}�(h�\.. image:: images/package_header.png22 :alt: Package dialog header tab23 :align: center24�h]�h}�(h]�h]�h]�h]�h]��alt��Package dialog header tab��align��center��uri��images/package_header.png�j }�j j� suhh�h"h#hKh h&h!hubhV)��}�(h�FUse the *Header* field to define the public interface for the package.�h]�(hJ�Use the �����}�(h j� h!hh"NhNubh`)��}�(h�*Header*�h]�hJ�Header�����}�(h j� h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j� ubhJ�6 field to define the public interface for the package.�����}�(h j� h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hKh h&h!hubhV)��}�(h�!Click the *Body* tab to continue.�h]�(hJ�25Click the �����}�(h j h!hh"NhNubh`)��}�(h�*Body*�h]�hJ�Body�����}�(h j
h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j ubhJ� tab to continue.�����}�(h j h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hK!h h&h!hubh�)��}�(h�Y.. image:: images/package_body.png26 :alt: Package dialog body tab27 :align: center28 29�h]�h}�(h]�h]�h]�h]�h]��alt��Package dialog body tab��align��center��uri��images/package_body.png�j }�j j4 suhh�h"h#hK#h h&h!hubhV)��}�(h�MUse the *Body* field to provide the code that implements each package object.�h]�(hJ�Use the �����}�(h j6 h!hh"NhNubh`)��}�(h�*Body*�h]�hJ�Body�����}�(h j> h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j6 ubhJ�? field to provide the code that implements each package object.�����}�(h j6 h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hK(h h&h!hubhV)��}�(h�%Click the *Security* tab to continue.�h]�(hJ�30Click the �����}�(h jV h!hh"NhNubh`)��}�(h�31*Security*�h]�hJ�Security�����}�(h j^ h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h jV ubhJ� tab to continue.�����}�(h jV h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hK*h h&h!hubh�)��}�(h�`.. image:: images/package_security.png32 :alt: Package dialog security tab33 :align: center34�h]�h}�(h]�h]�h]�h]�h]��alt��Package dialog security tab��align��center��uri��images/package_security.png�j }�j j� suhh�h"h#hK,h h&h!hubhV)��}�(h��Use the fields in the *Security* tab to assign EXECUTE privileges for the35package to a role. Click the *Add* icon (+) to set privileges for the package:�h]�(hJ�Use the fields in the �����}�(h j� h!hh"NhNubh`)��}�(h�36*Security*�h]�hJ�Security�����}�(h j� h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j� ubhJ�G tab to assign EXECUTE privileges for the37package to a role. Click the �����}�(h j� h!hh"NhNubh`)��}�(h�*Add*�h]�hJ�Add�����}�(h j� h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j� ubhJ�, icon (+) to set privileges for the package:�����}�(h j� h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hK0h h&h!hubj) )��}�(hhh]�(j. )��}�(h�NSelect the name of the role from the drop-down listbox in the *Grantee* field.�h]�hV)��}�(hj� h]�(hJ�>Select the name of the role from the drop-down listbox in the �����}�(h j� h!hh"NhNubh`)��}�(h� *Grantee*�h]�hJ�Grantee�����}�(h j� h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j� ubhJ� field.�����}�(h j� h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hK3h j� ubah}�(h]�h]�h]�h]�h]�uhj- h"h#hK3h j� h!hubj. )��}�(h��Click inside the *Privileges* field. Check the boxes to the left of a38privilege to grant the selected privilege to the specified user.�h]�hV)��}�(h��Click inside the *Privileges* field. Check the boxes to the left of a39privilege to grant the selected privilege to the specified user.�h]�(hJ�Click inside the �����}�(h j� h!hh"NhNubh`)��}�(h�*Privileges*�h]�hJ�40Privileges�����}�(h j� h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j� ubhJ�i field. Check the boxes to the left of a41privilege to grant the selected privilege to the specified user.�����}�(h j� h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hK4h j� ubah}�(h]�h]�h]�h]�h]�uhj- h"h#hK4h j� h!hubj. )��}�(h�nThe current user, who is the default grantor for granting the privilege, is displayed in the *Grantor* field.42�h]�hV)��}�(h�mThe current user, who is the default grantor for granting the privilege, is displayed in the *Grantor* field.�h]�(hJ�]The current user, who is the default grantor for granting the privilege, is displayed in the �����}�(h j h!hh"NhNubh`)��}�(h� *Grantor*�h]�hJ�Grantor�����}�(h j h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j ubhJ� field.�����}�(h j h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hK6h j ubah}�(h]�h]�h]�h]�h]�uhj- h"h#hK6h j� h!hubeh}�(h]�h]�h]�h]�h]�j� j uhj( h"h#hK3h h&h!hubhV)��}�(h��Click the *Add* icon (+) to assign additional privileges; to discard a43privilege, click the trash icon to the left of the row, and confirm the deletion44in the *Delete Row* popup.�h]�(hJ�45Click the �����}�(h j? h!hh"NhNubh`)��}�(h�*Add*�h]�hJ�Add�����}�(h jG h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j? ubhJ�� icon (+) to assign additional privileges; to discard a46privilege, click the trash icon to the left of the row, and confirm the deletion47in the �����}�(h j? h!hh"NhNubh`)��}�(h�*Delete Row*�h]�hJ�48Delete Row�����}�(h jY h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j? ubhJ� popup.�����}�(h j? h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hK8h h&h!hubhV)��}�(h� Click the *SQL* tab to continue.�h]�(hJ�49Click the �����}�(h jq h!hh"NhNubh`)��}�(h�*SQL*�h]�hJ�SQL�����}�(h jy h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h jq ubhJ� tab to continue.�����}�(h jq h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hK<h h&h!hubhV)��}�(h�jYour entries in the *Package* dialog generate a SQL command that creates or50modifies a package definition:�h]�(hJ�Your entries in the �����}�(h j� h!hh"NhNubh`)��}�(h� *Package*�h]�hJ�Package�����}�(h j� h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j� ubhJ�M dialog generate a SQL command that creates or51modifies a package definition:�����}�(h j� h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hK>h h&h!hubh�)��}�(h�V.. image:: images/package_sql.png52 :alt: Package dialog sql tab53 :align: center54�h]�h}�(h]�h]�h]�h]�h]��alt��Package dialog sql tab��align��center��uri��images/package_sql.png�j }�j j� suhh�h"h#hKAh h&h!hubhV)��}�(h�oThe example shown demonstrates creating a package named *empinfo* that includes55two function and two procedure.�h]�(hJ�8The example shown demonstrates creating a package named �����}�(h j� h!hh"NhNubh`)��}�(h� *empinfo*�h]�hJ�empinfo�����}�(h j� h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j� ubhJ�. that includes56two function and two procedure.�����}�(h j� h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hKEh h&h!hubj) )��}�(hhh]�(j. )��}�(h�%Click the *Save* button to save work.�h]�hV)��}�(hj� h]�(hJ�57Click the �����}�(h j� h!hh"NhNubh`)��}�(h�*Save*�h]�hJ�Save�����}�(h j� h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j� ubhJ� button to save work.�����}�(h j� h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hKHh j� ubah}�(h]�h]�h]�h]�h]�uhj- h"h#hKHh j� h!hubj. )��}�(h�5Click the *Close* button to exit without saving work.�h]�hV)��}�(hj h]�(hJ�58Click the �����}�(h j h!hh"NhNubh`)��}�(h�*Close*�h]�hJ�Close�����}�(h j h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j ubhJ�$ button to exit without saving work.�����}�(h j h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hKIh j ubah}�(h]�h]�h]�h]�h]�uhj- h"h#hKIh j� h!hubj. )��}�(h�=Click the *Reset* button to delete any changes to the dialog.�h]�hV)��}�(hj9 h]�(hJ�59Click the �����}�(h j; h!hh"NhNubh`)��}�(h�*Reset*�h]�hJ�Reset�����}�(h jB h!hh"NhNubah}�(h]�h]�h]�h]�h]�uhh_h j; ubhJ�, button to delete any changes to the dialog.�����}�(h j; h!hh"NhNubeh}�(h]�h]�h]�h]�h]�uhhUh"h#hKJh j7 ubah}�(h]�h]�h]�h]�h]�uhj- h"h#hKJh j� h!hubeh}�(h]�h]�h]�h]�h]�j� j uhj( h"h#hKHh h&h!hubeh}�(h]�(h�id1�eh]�h]�(�package dialog��package_dialog�eh]�h]�uhh$h hh!hh"h#hK�expect_referenced_by_name�}�jl hs�expect_referenced_by_id�}�hhsubeh}�(h]�h]�h]�h]�h]��source�h#�translation_progress�}�(�total�K �60translated�K uuhh�current_source�N�current_line�N�settings��docutils.frontend��Values���)��}�(�output�Nh)N� generator�N� datestamp�N�root_prefix��/��source_link�N�61source_url�N�
toc_backlinks��entry��footnote_backlinks���
sectnum_xform���strip_comments�N�strip_elements_with_classes�N�
strip_classes�N�report_level�K�62halt_level�K�exit_status_level�K�debug�N�warning_stream�N� traceback���input_encoding�� utf-8-sig��input_encoding_error_handler��strict��output_encoding��utf-8��output_encoding_error_handler�j� �error_encoding��cp1252��error_encoding_error_handler��backslashreplace��
language_code��en��record_dependencies�N�config�N� id_prefix�h�auto_id_prefix��id��
dump_settings�N�dump_internals�N�dump_transforms�N�dump_pseudo_xml�N�expose_internals�N�strict_visitor�N�_disable_config�N�_source�h#�_destination�N�
_config_files�]��file_insertion_enabled���raw_enabled�K�line_length_limit�M'�pep_references�N�pep_base_url��https://peps.python.org/��pep_file_url_template��pep-%04d��rfc_references�N�rfc_base_url��&https://datatracker.ietf.org/doc/html/�� tab_width�K�trim_footnote_reference_space���syntax_highlight��long��smart_quotes���smartquotes_locales�]��character_level_inline_markup���doctitle_xform���
docinfo_xform���sectsubtitle_xform���
image_loading��link��embed_stylesheet���cloak_email_addresses���section_self_link���env�Nub�reporter�N�indirect_targets�]��substitution_defs�}��substitution_names�}��refnames�}��refids�}�h]�has�nameids�}�(jl hjk jh u� nametypes�}�(jl �jk �uh}�(hh&jh h&u�
footnote_refs�}��
citation_refs�}��
autofootnotes�]��autofootnote_refs�]��symbol_footnotes�]��symbol_footnote_refs�]�� footnotes�]�� citations�]��autofootnote_start�K�symbol_footnote_start�K �63id_counter��collections��Counter���}�j� Ks��R��parse_messages�]��transform_messages�]�(h �system_message���)��}�(hhh]�hV)��}�(hhh]�hJ�4Hyperlink target "package-dialog" is not referenced.�����}�h j sbah}�(h]�h]�h]�h]�h]�uhhUh j ubah}�(h]�h]�h]�h]�h]��level�K�type��INFO��source�h#�line�Kuhj ubj )��}�(hhh]�hV)��}�(hhh]�hJ�-Hyperlink target "index-0" is not referenced.�����}�h j! sbah}�(h]�h]�h]�h]�h]�uhhUh j ubah}�(h]�h]�h]�h]�h]��level�K�type�j �source�h#�line�Kuhj ube�transformer�N�include_log�]��64decoration�Nh!hub.