Dbxclose()

From Recital Documentation Wiki
Revision as of 14:17, 1 April 2009 by Yvonnemilne (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

PURPOSE

close an open tagged index file


SYNOPSIS

#include "dbl.h"
 
	int	dbxclose(dbx);
 
	<input parameters>
	char	*dbx;		/* Tagged index file descriptor	*/
 
	<output parameters>
	none


RETURN VALUE

The dbxclose() function returns 0 for success, or < 0 if an error occurs. See the section on return code values for a detailed list of return codes.


DESCRIPTION

The dbxclose() function is used to close the tagged index file, .DBX specified in the file descriptor.


EXAMPLE

The following example creates a tag on the VESSEL field for the shipwreck.dbf table, then closes the index and the table.


#include <stdio.h>
#include "dbl.h"		/* Recital/Library include file		*/
#include "dblproto.h"		/* Recital/Library prototype file	*/
 
	static	dBFIELD fields[6] = {
		"VESSEL",	'C',	18,	0,	0,
		"LAT",	'N',	4,	1,	0,
		"LONG",	'N',	4,	1,	0,
		"AMOUNT",	'N',	10,	0,	0,
		"DATE",	'D',	8,	0,	0,
		"FLAG",	'C',	9,	0,	0
	};
 
	static void errorproc(
		char	*func,
		char	*str,
		int	rc);
 
	main()
	{
	int	rc; 	/* Return Code for error handling	*/
	char	*dbf; 	/* File descriptor for table		*/
	char	*dbx; 	/* File descriptor for tagged index	*/
 
	rc = dbdcache(100);
	errorproc("dbdcache()","table cache specified.", rc);
	rc = dbicache(100);
	errorproc("dbicache()", "index cache specified.",rc);
	rc = dbfilemode(0,0);
	rc = dbopen("shipwreck.dbf", &dbf);
	errorproc("dbopen()","table opened in exclusive mode.", rc);
 
	rc = dbxcreate( dbf,
			fields[0].fieldnm,		/* "VESSEL",	*/
			&dbx,
			fields[0].fieldnm,		/* "VESSEL",	*/
			NULL,
			0,
			0);
	errorproc("dbxcreate()","tag created", rc);
 
	rc = dbxclose(dbx);
	errorproc("dbxclose()", "tagged index closed.", rc);
	rc = dbclose(dbf);
	errorproc("dbclose()", "table closed.", rc);
 
	exit(0);
}
 
	static void errorproc(func, str, rc)
	char	*func;
	char	*str;
	int	rc;
{
	if ( rc != SUCCESS ) {
	printf("n  Error performing function %s -> %dn", func, rc);
	exit(1);
	}
	printf("Function: t%s, t%s - Okn", func, str);
	return;
}


SEE ALSO

dbxflsh(), dbxopen()