PEValueInfo

PEValueInfo contains information that is used by PEConvertPFInfotoVInfo to return converted parameter values in simple types and by PEConvertVInfotoPFInfo to accept values for conversion to the binary format required by PESetNthParameterField.

C Syntax
typedef struct PEValueInfo {
    WORD StructSize;
    WORD valueType;
    double viNumber;
    double viCurrency;
    BOOL viBoolean;
    char viString[PE_VI_STRING_LEN];
    short viDate[3];
    short viDateTime[6];
    short viTime[3];
    COLORREF viColor;
    short viInteger;
    char viC;
    char ignored;
    long viLong
} PEValueInfo;
Members

StructSize

Specifies the size of the PEValueInfo structure. Initialize this member to PE_SIZEOF_VALUE_INFO.

valueType

Specifies the data type of the parameter field. The Crystal Report Engine supports the following data types and associated PE_VI_XXX Value Type constants.


Data Type Constant


Number

PE_VI_NUMBER


Currency

PE_VI_CURRENCY


Boolean

PE_VI_BOOLEAN


Date

PE_VI_DATE


String

PE_VI_STRING


DateTime

PE_VI_DATETIME


Time

PE_VI_TIME


Integer

PE_VI_INTEGER


COLOREF

PE_VI_COLOR


Char

PE_VI_CHAR


Long

PE_VI_LONG


No Value

PE_VI_NOVALUE

viNumber

Specifies the value if the parameter is a numeric value.

viCurrency

Specifies the value if the parameter is a currency value.

viBoolean

Specifies the value if the parameter is a Boolean value.

viString

Specifies the value if the parameter is a string value (of length PE_VI_STRING_LEN = 256).

viDate

Specifies the value if the parameter is a Date value (year, month, day).

viDateTime

Specifies the value if the parameter is a Date/Time value (year, month, day, hour, minute, second).

viTime

Specifies the value if the parameter is a Time value (hour, minute, second).

viColor

Specifies the value if the parameter is a color value.

viInteger

Specifies the value if the parameter is a integer value.

viC

Specifies the value if the parameter is a char value.

ignored

Internal use only for 4 byte alignment. Do not use.

viLong

Specifies the value if the parameter is a long value.

VB Type Listing
Type PEValueInfo
    StructSize As Integer
    valueType As Integer
    viNumber As Double
    viCurrency As Double
    viBoolean As Long
    viString As String * PE_VI_STRING_LEN
    viDate(0 To 2) As Integer
    viDateTime(0 To 5) As Integer
    viTime(0 To 2) As Integer
    viColor As Long
    viInteger As Integer
    viC As Byte
    ignored As Byte
    viLong As Long
End Type
Delphi Record Listing
type
    PEVALUEINFOSTRINGTYPE
    = array[0..PE_VI_STRING_LEN-1] of smallint;
    PEVALUEINFODATEORTIMETYPE = array[0..5] of smallint;
    PEVALUEINFODATETIMETYPE = array[0..2] of smallint;
    PEValueInfo = record
        StructSize:Word;
        valueType: Word; {a PE_VI_constant
        viNumber: Double;
        viCurrency: Double;
        viBoolean: BOOL;
        viString: PEVALUEINFOSTRINGTYPE;
        viDate: PEVALUEINFODATEORTIMETYPE;
        viDateTime: PEVALUEINFODATETIMETYPE;
        viTime: PEVALUEINFODATEORTIMETYPE;
        viColor: COLORREF;
        viInteger: Smallint;
        viC: Char; Char;{BYTE}
        ignored: Char;
        viLong: Longint;
    end;


Seagate Software IMG Holdings, Inc.
http://www.seagatesoftware.com
Support services:
http://support.seagatesoftware.com