Click or drag to resize

DbServer.CopyDB Method (Typed)

X#
Copy records to another DBF file.

Namespace:  XSharp.VO.SDK
Assembly:  XSharp.VORDDClasses (in XSharp.VORDDClasses.dll) Version: 2.21
Syntax
 VIRTUAL METHOD CopyDB(
	oFSTarget,
	aFieldList,
	cbForBlock,
	cbWhileBlock,
	uScope,
	cDriver,
	aRDD
) AS LOGIC CLIPPER
Request Example View Source

Parameters

oFSTarget (Optional)
Type: Usual
A string or filespec object that specifies the file to which the records is copied. This file is opened exclusively during the operation, so it should not be open elsewhere with write capability.
aFieldList (Optional)
Type: Usual
An array of fields from the source file that are to be included. The default is all fields.
cbForBlock (Optional)
Type: Usual
The condition evaluated for each record in the scope; if TRUE, the record is included in the processing. It provides the same functionality as the FOR clause of record processing commands.
cbWhileBlock (Optional)
Type: Usual
The condition evaluated for each record from the first record until the condition returns FALSE. It provides the same functionality as the WHILE clause of record processing commands.
uScope (Optional)
Type: Usual
The range of records to process, providing the same functionality as the ALL, REST and NEXT clauses of record processing commands.
ConstantDescription
DBSCOPEALL The scope is all the records in the table. This is the default, although if a WHILE condition is specified, the scope becomes DBSCOPEREST.
DBSCOPERESTThe scope is the remaining records in the table from the current position.
cDriver (Optional)
Type: Usual
The name of the RDD that will service the data server. If not specified, the default RDD as determined by RDDSetDefault() is used.
aRDD (Optional)
Type: Usual
A one-dimensional array with the names of RDDs from which the main RDD inherits special functionality. This allows you to use RDDs with special capabilities, like encryption or decryption, for different data servers with different database drivers. These RDDs overlay special functions of the main RDD (specified with the cDriver argument). If multiple RDDs (specified with this argument) implement the same function, the function associated with the last RDD in the list takes precedence. If aRdds is omitted, no additional RDDs are assumed.

Return Value

Type: Logic
TRUE if successful; otherwise, FALSE (although some records still might have been processed).
Remarks
Sends a NotifyIntentToMove message before the operation.
Sends a NotifyRecordChange message upon completion.
This method does not open the new file, it simply creates the file on disk. If you want to open it afterwards, you simply instantiate it directly.
Examples
The example below creates the file and instantiates it to open it.
X#
1IF oDB1:CopyDB(oFSTarget)
2oDB2 := DBServer{oFSTarget}
3ELSE
4...
5ENDIF
See Also