/*!******************************************************************************

  @file         hak54.h

  ------------------------------------------------------------------------------

  @author       ElkeZ

  @brief        DML_Help_Procedures

\if EMIT_LICENCE

    ========== licence begin  GPL
    Copyright (c) 1999-2005 SAP AG

    This program is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public License
    as published by the Free Software Foundation; either version 2
    of the License, or (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
    ========== licence end

\endif

********************************************************************************/

#ifndef HAK54_H
#define HAK54_H


/*===========================================================================*
 *     RefType: Both                                                         *
 *===========================================================================*/

/*===========================================================================*
 *     MD5: '\xb6\xb6\x29\xb2\x3e\xac\xf9\x88\xb1\x73\xb4\x4a\x29\xca\xa8\x52'
 *===========================================================================*/


/*===========================================================================*
 *  INCLUDES                                                                 *
 *===========================================================================*/

#include "gsp00.h"
#include "ggg00.h"
#include "vak001.h"


/*===========================================================================*
 *  FUNCTION PROTOTYPES                                                      *
 *===========================================================================*/

externPascal void a54_dml_init (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_dml_info          VAR_VALUE_REF  dmli,
    pasbool                              in_union);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_dml_finalize (
    tak_dml_info          VAR_VALUE_REF  dmli,
    tgg00_TransContext    VAR_VALUE_REF  TransContext);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_base_dml_init (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_dml_info          VAR_VALUE_REF  dmli,
    pasbool                              in_union);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_init ();

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_in_buf (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_dml_info          VAR_VALUE_REF  dmli,
    tak_sysbufferaddress  VAR_VALUE_REF  vqual_stack,
    integer                              viewdatalen,
    integer                              qual_pos,
    integer                              stcount,
    integer                              viewdatapos,
    integer                              plustabpos);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_put_indices_in_mess_buf (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_baserecord        VAR_VALUE_REF  basebuf,
    tak_dfarr             VAR_ARRAY_REF  dfa,
    pasbool                              all_indices);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_store_parsinfo (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_syspointerarr     VAR_VALUE_REF  sparr);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_get_pparsp_pinfop (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_syspointerarr     VAR_VALUE_REF  sparr,
    tgg00_MessType_Param                 mtype);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_last_part (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_syspointerarr     VAR_VALUE_REF  sparr,
    pasbool                              last_pars_part);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_select_last_part (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_dml_info          VAR_VALUE_REF  dmli,
    tgg00_FileId          VAR_VALUE_REF  user_result_tree,
    pasbool                              last_pars_part);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_view_put_into (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_dml_info          VAR_VALUE_REF  dmli);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_fixedpos (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_dml_info          VAR_VALUE_REF  dmli);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_joinview_baserecords (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_dml_info          VAR_VALUE_REF  dmli);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_subquery (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_syspointerarr     VAR_VALUE_REF  isparr,
    tsp00_Int2                           start_node,
    tgg00_MessType_Param                 mtype,
    pasbool               VAR_VALUE_REF  is_join_view);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_sel_store_parsinfo (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_syspointerarr     VAR_VALUE_REF  sparr,
    tak_changerecord      VAR_VALUE_REF  change_rec,
    pasbool                              last_pars_part);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_shortinfo_to_varpart (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    pasbool                              store_cmd,
    tak_sysbufferaddress  VAR_VALUE_REF  infop);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_internal_function (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tgg00_MessBlock       VAR_VALUE_REF  m,
    integer                              st_no);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54InternalFunction (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tgg00_StackEntry      VAR_VALUE_REF  StackEntry,
    void                  *  dataBuf,
    integer                              dataBufSize,
    integer                              dataBufPos,
    pasbool                              use_acv_timestamp);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54set_complex_entry (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_complex_call_reason_Param                 call_reason);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54complicated_view (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_dml_info          VAR_VALUE_REF  dmli,
    tgg00_Surrogate       VAR_ARRAY_REF  tableid);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54add_next_temp_lock (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tgg00_Surrogate       VAR_ARRAY_REF  tabid,
    tgg00_HandlingSet     VAR_ARRAY_REF  globstate);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54_loc_temp_locks (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tgg00_HandlingSet     VAR_ARRAY_REF  globstate,
    tak_syspointerarr     VAR_VALUE_REF  sparr);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54datetime_parsinfo (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_dml_info          VAR_VALUE_REF  dmli,
    integer                              stackpos);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54return_parsid (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_parskey           VAR_VALUE_REF  parskey);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal pasbool a54_optim_select_fetch (
    tak_all_command_glob  VAR_VALUE_REF  acv);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54init_lock_parsinfo (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_sysbufferaddress                 tempinfo_buf);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54trunc_complex_record (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    integer                              comp_cnt_old);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal integer a54get_complex_cnt (
    tak_all_command_glob  VAR_VALUE_REF  acv);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54expand_tabarr (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_dml_info          VAR_VALUE_REF  dmli);

/* Don't edit this file by hand, it is generated by ptocProto.py */

externPascal void a54expand_tabarr_ex (
    tak_all_command_glob  VAR_VALUE_REF  acv,
    tak_dml_info          VAR_VALUE_REF  dmli,
    tsp00_Int4                           new_capacity);

/* Don't edit this file by hand, it is generated by ptocProto.py */


#endif

