****************************************************************************//
//
$File name  : DDExtFld.pkg                                                 //
$File title : DD extended field objects                                    //
Notice      :                                                              //
$Author(s)  : John Tuohy                                                   //
//
//
Confidential Trade Secret.                                                 //
Copyright 1998-1999 Data Access Corporation, Miami FL, USA                 //
All Rights reserved                                                        //
DataFlex is a registered trademark of Data Access Corporation.             //
//
$Rev History                                                               //
//
JJT   10/18/99 Fixed bug where string of lesser length was not updated     //
JJT   11/9/98  Added !zb code around conditionally created objects         //
JT   10/26/98 Added Set Field_pValue                                       //
JT    8/6/98  Added bShowErr to Field_pEntry (currently does nothing)      //
JW    7/10/98 Changed IF test in Field_pEntry where address type           //
was used to integer type. It dose not work with address      //
I did also remove some old debug code                        //
//
JT   7/9/98   Added passed length to set field_pEntry                      //
JT  6/25/98   Moved into this package.                                     //                                                                           //
****************************************************************************//
This is used by the DataDictionary class and provides a method for
windows DDs (for now) to support local buffers for text and binary buffers.
Field objects are created within the DD by sending the message:
The DD interface is:
Get  Field_Object iField to hExtFieldObject
Send DefineExtendedField iField
Send DefineAllExtendedFields
Send ExtendedFieldsUpdate bSave
Send ExtendedFieldsRefresh bCleared
Set  File_Field_Current_Pointer_Value iFile iField iLen to pValue
Set  Field_Current_Pointer_Value iField iLen to pValue
Set  File_Field_Pointer_Entry iFile iField iLen bShowErr to pValue
Set  Field_Pointer_Entry iField iOpts iLen bShowErr to pValue
Get  File_Field_Current_Pointer_Value iFile iField to pData
Get  Field_Current_Pointer_Value iField to pData
Once object is identified, the following interface can be used
Get FieldPointer of hExtFieldObject to iMemoryPointer
Get FieldLength  of hExtFieldObject to iLen
Get File_Number  of hExtFieldObject to iFile
Get Field_Number of hExtFieldObject to iFile
Set Update_Save_State of hExtFieldObject to bState         // be careful!
Set Update_Find_State of hExtFieldObject to bState         // be careful
Set FieldRefresh_Save_State of hExtFieldObject to bState   // be careful
DD structure:
DD Object           (property Field_objects points to child)
FieldObjects    (array of field#s and field objs)
FieldObject1 (heap alloc for each field)
FieldObjectn
This is used to create a single extended field object.
Interface
Get FieldPointer to iMemoryPointer
Get FieldLength  to iLen
Get File_Number  to iFile
Get Field_Number to iFile
get/Set Update_Save_State to bState         // be careful!
get/Set Update_Find_State to bState         // be careful
get/Set FieldRefresh_Save_State to bState   // be careful
get/set FieldChangedState
send defineField  iFile iField
Send FieldUpdate  bSave
Send FieldRefresh bCleared
Set  Field_pEntry iOpts iLen to pValue
Set  Field_pValue iLen to pValue
References (1):
Field References (0):
| Module | Containing Symbol | Line | 
|---|