.nf


    ========== licence begin  GPL
    Copyright (c) 2000-2004 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

.fo
*****************************************************
Copyright (c) 2000-2004 SAP AG
SAP Database Technology
 
Release :      Date : 2000-09-11
*****************************************************
modname : VGG09
changed : 2000-09-11
module  : Record_Encapsulate_Procedures
 
Author  : ElkeZ
Created : 1985-10-16
Pretty  : 2000-09-11
*****************************************************
 
Purpose : Makes available procedures for forming keys and
          records by the time we will use C++-methods
 
Define  :
 
        PROCEDURE
              g09ColStackentry (
                    VAR NewStackEntry : tgg00_StackEntry;
                    inp_etype         : tgg00_StackEntryType;
                    inp_epos          : tsp00_Int2;
                    inp_elen_var      : tsp00_Int2;
                    inp_tableno       : tsp00_Uint1);
 
        PROCEDURE
              g09IndexColStackentry (
                    VAR NewStackEntry : tgg00_StackEntry;
                    inp_etype         : tgg00_StackEntryType;
                    inp_epos          : tsp00_Int2;
                    inp_eop           : tgg00_StackOpType;
                    inp_elen_var      : tsp00_Int2;
                    inp_tableno       : tsp00_Uint1);
 
        PROCEDURE
              g09StratStackentry (
                    VAR NewStackEntry : tgg00_StackEntry;
                    inp_startpos      : tsp00_Int2;
                    inp_len           : tsp00_Int2);
 
        PROCEDURE
              g09OpStackentry (
                    VAR NewStackEntry : tgg00_StackEntry;
                    inp_eop           : tgg00_StackOpType);
 
        PROCEDURE
              g09JumpStackentry (
                    VAR NewStackEntry : tgg00_StackEntry;
                    inp_etype         : tgg00_StackEntryType;
                    inp_jumpcnt       : tsp00_Int2);
 
        PROCEDURE
              g09OutStackentry (
                    VAR NewStackEntry : tgg00_StackEntry;
                    inp_etype         : tgg00_StackEntryType;
                    inp_eop           : tgg00_StackOpOutput;
                    inp_resultpos     : tsp00_Int2;
                    inp_resultlen     : tsp00_Int2);
 
.CM *-END-* define --------------------------------------
 
Use     :
 
.CM *-END-* use -----------------------------------------
 
Synonym :
 
.CM *-END-* synonym -------------------------------------
 
Description:
 
 
        PROCEDURE
              g09ColStackentry (
                    VAR NewStackEntry : tgg00_StackEntry;
                    inp_etype        : tgg00_StackEntryType;
                    inp_epos         : tsp00_Int2;
                    inp_elen_var     : tsp00_Int2;
                    inp_tableno      : tsp00_Uint1);
 
used for building column stackentries
 
        PROCEDURE
              g09IndexColStackentry (
                    VAR NewStackEntry : tgg00_StackEntry;
                    inp_etype        : tgg00_StackEntryType;
                    inp_epos         : tsp00_Int2;
                    inp_eop          : tgg00_StackOpType;
                    inp_elen_var     : tsp00_Int2;
                    inp_tableno      : tsp00_Uint1);
 
used for building index column stackentries
 
        PROCEDURE
              g09StratStackentry (
                    VAR NewStackEntry : tgg00_StackEntry;
                    inp_startpos : tsp00_Int2;
                    inp_len      : tsp00_Int2);
 
 
used to build a stackentry fpr strategies
 
        PROCEDURE
              g09OpStackentry (
                    VAR NewStackEntry : tgg00_StackEntry;
                    inp_eop : tgg00_StackOpType);
 
used to build easy operator-stackentries
 
        PROCEDURE
              g09JumpStackentry (
                    VAR NewStackEntry : tgg00_StackEntry;
                    inp_etype        : tgg00_StackEntryType;
                    inp_jumpcnt      : tsp00_Int2);
 
used to build all st_jump_???-stackentries
 
        PROCEDURE
              g09OutStackentry (
                    VAR NewStackEntry : tgg00_StackEntry;
                    inp_etype        : tgg00_StackEntryType;
                    inp_eop          : tgg00_StackOpType;
                    inp_resultpos    : tsp00_Int2;
                    inp_resultlen    : tsp00_Int2);
 
used to build stackentries with etype = st_out...
 
.CM *-END-* description ---------------------------------
***********************************************************
.CM -lll-
Code    :
 
 
(*------------------------------*) 
 
PROCEDURE
      g09ColStackentry (
            VAR NewStackEntry : tgg00_StackEntry;
            inp_etype        : tgg00_StackEntryType;
            inp_epos         : tsp00_Int2;
            inp_elen_var     : tsp00_Int2;
            inp_tableno      : tsp00_Uint1);
 
BEGIN
WITH NewStackEntry DO
    BEGIN
    etype       := inp_etype;
    eop         := op_none;
    epos        := inp_epos;
    elen_var    := inp_elen_var;
    ecol_tab[1] := chr(0);
    ecol_tab[2] := chr(inp_tableno);
    END;
(*ENDWITH*) 
END;
 
(*------------------------------*) 
 
PROCEDURE
      g09IndexColStackentry (
            VAR NewStackEntry : tgg00_StackEntry;
            inp_etype         : tgg00_StackEntryType;
            inp_epos          : tsp00_Int2;
            inp_eop           : tgg00_StackOpType;
            inp_elen_var      : tsp00_Int2;
            inp_tableno       : tsp00_Uint1);
 
BEGIN
WITH NewStackEntry DO
    BEGIN
    etype       := inp_etype;
    eop         := inp_eop;
    epos        := inp_epos;
    elen_var    := inp_elen_var;
    ecol_tab[1] := chr(0);
    ecol_tab[2] := chr(inp_tableno);
    END;
(*ENDWITH*) 
END;
 
(*------------------------------*) 
 
PROCEDURE
      g09StratStackentry (
            VAR NewStackEntry : tgg00_StackEntry;
            inp_startpos : tsp00_Int2;
            inp_len      : tsp00_Int2);
 
BEGIN
WITH NewStackEntry DO
    BEGIN
    etype     := st_strat;
    eop       := op_none;
    epos      := inp_startpos;
    elen_var  := inp_len;
    ecol_pos  := 0;
    END;
(*ENDWITH*) 
END;
 
(*------------------------------*) 
 
PROCEDURE
      g09OpStackentry (
            VAR NewStackEntry : tgg00_StackEntry;
            inp_eop : tgg00_StackOpType);
 
BEGIN
WITH NewStackEntry DO
    BEGIN
    etype       := st_op;
    eop         := inp_eop;
    epos        := 0;
    elen_var    := 0;
    ecol_pos    := 0;
    END;
(*ENDWITH*) 
END;
 
(*------------------------------*) 
 
PROCEDURE
      g09JumpStackentry (
            VAR NewStackEntry : tgg00_StackEntry;
            inp_etype        : tgg00_StackEntryType;
            inp_jumpcnt      : tsp00_Int2);
 
BEGIN
WITH NewStackEntry DO
    BEGIN
    etype       := inp_etype;
    eop         := op_none;
    epos        := inp_jumpcnt;
    elen_var    := 0;
    ecol_pos    := 0;
    END;
(*ENDWITH*) 
END;
 
(*------------------------------*) 
 
PROCEDURE
      g09OutStackentry (
            VAR NewStackEntry : tgg00_StackEntry;
            inp_etype        : tgg00_StackEntryType;
            inp_eop          : tgg00_StackOpOutput;
            inp_resultpos    : tsp00_Int2;
            inp_resultlen    : tsp00_Int2);
 
BEGIN
WITH NewStackEntry DO
    BEGIN
    etype       := inp_etype;
    eop_out     := inp_eop;
    epos        := inp_resultpos;
    elen_var    := inp_resultlen;
    ecol_pos    := 0;
    END;
(*ENDWITH*) 
END;
 
.CM *-END-* code --------------------------------------
.SP 2 
***********************************************************
*-PRETTY-*  statements    :         38
*-PRETTY-*  lines of code :        127        PRETTYX 3.10 
*-PRETTY-*  lines in file :        271         1997-12-10 
.PA 
