FCPE-SPI
FLAM Column Processing Exit (FCPE) Service Provider Interface (SPI)
FcpeOpn Struct Reference

FCPE parameter structure for function code FCPE_FUNC_OPN. More...

#include <FCPE.h>

Data Fields

unsigned int uiFlg
 [INOUT] Flag word (32 bit) with several bit settings
 
unsigned int uiCcs
 [INOUT] CCSID in first low order 24 bit and the and combined character form in the high order 8 bit
 
unsigned int uiTab
 [INPUT] Length of the table name (32 bit word)
 
unsigned int uiDy1
 [DUMMY] 32 bit dummy field for 64 bit alignment
 
const char * pcTab
 [INPUT] Pointer to the table name (32 or 64 bit)
 
unsigned int uiCol
 [INPUT] Length of the column name (32 bit word)
 
unsigned int uiDy2
 [DUMMY] 32 bit dummy field for 64 bit alignment
 
const char * pcCol
 [INPUT] Pointer to the column name (32 or 64 bit)
 
unsigned int uiPar
 [INPUT] Length of the parameter string (32 bit word)
 
unsigned int uiDy3
 [DUMMY] 32 bit dummy field for 64 bit alignment
 
const char * pcPar
 [INPUT] Pointer to the parameter string (32 or 64 bit)
 
unsigned int uiIvr
 [OUTPUT] Length of the inverse parameter string (32 bit word)
 
unsigned int uiDy4
 [DUMMY] 32 bit dummy field for 64 bit alignment
 
char * pcIvr
 [OUTPUT] Pointer to the inverse parameter string (32 or 64 bit)
 
unsigned int uiMsg
 [OUTPUT] Length of error message (32 bit word)
 
unsigned int uiDy5
 [DUMMY] 32 bit dummy field for 64 bit alignment
 
char acMsg [1024]
 [OUTPUT] Maximal 1024 byte long error string
 

Detailed Description

FCPE parameter structure for function code FCPE_FUNC_OPN.

This structure is used when the exit function is called with the function code FCPE_FUNC_OPN.

The first member contains flags that can be set in both directions. If the exit is opened for converting output data, the flag bit FCPE_FLAG_WRITE is set. If it is not set, the exit is opened for converting input data. The exit function may set the FCPE_FLAG_NOCPY flag if it does not write to the output buffer in the TsFcpeRun structure (i.e. it only validates or changes the data in-place).

The second member contains the CCSID in the low order 24 bits. The high order 8 bits contain the combined character form. The member is set by the exit driver to a value corresponding to the input data and must be changed by the exit function only if its output is in a different character set. A CCSID of 0 indicates binary data. For example, if the exit function implements encryption of strings, the input text may be in UTF-8 (CCSID=1208). Since the encryption produces binary output, the CCSID must be set to 0.

The next three member pairs contain the length and a pointer to the corresponding string with the table name, the column name and the parameter string. The parameter string must be interpreted by the service provider.

The following member pair may be set by the exit function if the operation is invertible. The exit function must the pointer to the inverse parameter string and is responsible for allocating and freeing memory for this string. If the length is zero or the pointer is NULL, the exit is considered not invertible.

The last member pair is a 1024 bytes buffer for an error message. The corresponding length must be set to the length of the error message.

Field Documentation

◆ acMsg

char FcpeOpn::acMsg[1024]

[OUTPUT] Maximal 1024 byte long error string

◆ pcCol

const char* FcpeOpn::pcCol

[INPUT] Pointer to the column name (32 or 64 bit)

◆ pcIvr

char* FcpeOpn::pcIvr

[OUTPUT] Pointer to the inverse parameter string (32 or 64 bit)

◆ pcPar

const char* FcpeOpn::pcPar

[INPUT] Pointer to the parameter string (32 or 64 bit)

◆ pcTab

const char* FcpeOpn::pcTab

[INPUT] Pointer to the table name (32 or 64 bit)

◆ uiCcs

unsigned int FcpeOpn::uiCcs

[INOUT] CCSID in first low order 24 bit and the and combined character form in the high order 8 bit

◆ uiCol

unsigned int FcpeOpn::uiCol

[INPUT] Length of the column name (32 bit word)

◆ uiDy1

unsigned int FcpeOpn::uiDy1

[DUMMY] 32 bit dummy field for 64 bit alignment

◆ uiDy2

unsigned int FcpeOpn::uiDy2

[DUMMY] 32 bit dummy field for 64 bit alignment

◆ uiDy3

unsigned int FcpeOpn::uiDy3

[DUMMY] 32 bit dummy field for 64 bit alignment

◆ uiDy4

unsigned int FcpeOpn::uiDy4

[DUMMY] 32 bit dummy field for 64 bit alignment

◆ uiDy5

unsigned int FcpeOpn::uiDy5

[DUMMY] 32 bit dummy field for 64 bit alignment

◆ uiFlg

unsigned int FcpeOpn::uiFlg

[INOUT] Flag word (32 bit) with several bit settings

◆ uiIvr

unsigned int FcpeOpn::uiIvr

[OUTPUT] Length of the inverse parameter string (32 bit word)

◆ uiMsg

unsigned int FcpeOpn::uiMsg

[OUTPUT] Length of error message (32 bit word)

◆ uiPar

unsigned int FcpeOpn::uiPar

[INPUT] Length of the parameter string (32 bit word)

◆ uiTab

unsigned int FcpeOpn::uiTab

[INPUT] Length of the table name (32 bit word)


The documentation for this struct was generated from the following file: