Filter a database structure array
| Position | Description | dbstruct.ch |
| 1 | cFieldName | DBS_NAME |
| 2 | cFieldType | DBS_TYPE |
| 3 | nFieldLength | DBS_LEN |
| 4 | nDecimals | DBS_DEC |
LOCAL aStruct, aList, aRet
aStruct := { { "CODE", "N", 4, 0 }, ;
{ "NAME", "C", 10, 0 }, ;
{ "PHONE", "C", 13, 0 }, ;
{ "IQ", "N", 3, 0 } }
aList := { "IQ", "NAME" }
aRet := __dbStructFilter( aStruct, aList )
// { { "IQ", "N", 3, 0 }, { "NAME", "C", 10, 0 } }
aRet := __dbStructFilter( aStruct, {} )
? aRet == aStruct // .T.
aList := { "iq", "NOTEXIST" }
aRet := __dbStructFilter( aStruct, aList )
// { { "IQ", "N", 3, 0 } }
aList := { "NOTEXIST" }
aRet := __dbStructFilter( aStruct, aList ) // {}
// Create a new file that contain part of the original structure
LOCAL aStruct, aList, aRet
USE TEST
aStruct := DBSTRUCT()
aList := { "NAME" }
DBCREATE( "OnlyName.DBF", __dbStructFilter( aStruct, aList ) )