PreviousNextIndex

CREATE BUFFER statement

Creates a dynamic buffer object.

Syntax

CREATE BUFFER handle FOR TABLE { table-name | table-handle | buffer-handle } 
  [ BUFFER-NAME buffer-name ] 
  [ IN WIDGET-POOL widget-pool-name ] 

handle
FOR TABLE table-name | table-handle | buffer-handle
BUFFER-NAME buffer-name
IN WIDGET-POOL widget-pool-name
Examples

The following example runs the query “for each customer” dynamically against the Sports2000 database using a purely dynamic buffer with no compile time references at all:

r-crtbuf.p
DEFINE VARIABLE ix AS INTEGER NO-UNDO. 
DEFINE VARIABLE qh AS HANDLE  NO-UNDO. 
DEFINE VARIABLE bh AS HANDLE  NO-UNDO. 
DEFINE VARIABLE fh AS HANDLE  NO-UNDO EXTENT 10. 
CREATE BUFFER bh FOR TABLE "Customer". 
CREATE QUERY qh. 
qh:SET-BUFFERS(bh). 
qh:QUERY-PREPARE("FOR EACH Customer"). 
qh:QUERY-OPEN(). 
qh:GET-FIRST(). 
DISPLAY bh:NAME. 
REPEAT ix = 1 TO 10: 
  fh[ix] = bh:BUFFER-FIELD(ix). 
  DISPLAY fh[ix]:NAME STRING(fh[ix]:BUFFER-VALUE). 
END. 
qh:QUERY-CLOSE(). 
bh:BUFFER-RELEASE(). 
DELETE OBJECT bh. 
DELETE OBJECT qh. 

The following code fragment shows several different ways you can create an alternate dynamic buffer for a static temp-table. Note the notation BUFFER tt1:HANDLE and TEMP-TABLE tt1:HANDLE for accessing the default buffer object handle and temp-table object handle, respectively, for the static temp-table, tt1:

DEFINE VARIABLE hbuf  AS HANDLE NO-UNDO. /* Default buffer object */ 
DEFINE VARIABLE htab  AS HANDLE NO-UNDO. /* Temp-table object */ 
DEFINE VARIABLE hbuf1 AS HANDLE NO-UNDO. /* 2nd non-default buffer object */ 
DEFINE TEMP-TABLE tt1 NO-UNDO 
  FIELD x AS CHARACTER. 
hbuf = BUFFER tt1:HANDLE.     /* Static temp-table’s default buffer */ 
htab = TEMP-TABLE tt1:HANDLE. /* Static temp-table handle (not buffer) */ 
/* Different ways to create an alternate temp-table buffer */ 
CREATE BUFFER hbuf1  
  FOR TABLE BUFFER tt1:HANDLE.       /* From static tt's default buffer */ 
CREATE BUFFER hbuf1 FOR TABLE hbuf.  /* From static tt's default buffer */ 
CREATE BUFFER hbuf1  
  FOR TABLE TEMP-TABLE tt1:HANDLE.   /* From static tt's handle */ 
CREATE BUFFER hbuf1 FOR TABLE htab.  /* From static tt's handle */ 
CREATE BUFFER hbuf1 FOR TABLE "tt1". /* From static tt's name */ 

Notes
See also

CREATE QUERY statement, DEFINE BUFFER statement


OpenEdge Release 10.2B
Copyright © 2009 Progress Software Corporation
PreviousNextIndex