1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169
|
<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
<!-- Process this file with docbook-to-man to generate an nroff manual
page: `docbook-to-man manpage.sgml > manpage.1'. You may view
the manual page with: `docbook-to-man manpage.sgml | nroff -man |
less'. A typical entry in a Makefile or Makefile.am is:
manpage.1: manpage.sgml
docbook-to-man $< > $@
The docbook-to-man binary is found in the docbook-to-man package.
Please remember that if you create the nroff version in one of the
debian/rules file targets (such as build), you will need to include
docbook-to-man in your Build-Depends control field.
-->
<!-- Fill in your name for FIRSTNAME and SURNAME. -->
<!ENTITY dhfirstname "<firstname>UWE</firstname>">
<!ENTITY dhsurname "<surname>STEINMANN</surname>">
<!-- Please adjust the date whenever revising the manpage. -->
<!ENTITY dhdate "<date>August 29, 2005</date>">
<!-- SECTION should be 1-8, maybe w/ subsection other parameters are
allowed: see man(7), man(1). -->
<!ENTITY dhsection "<manvolnum>3</manvolnum>">
<!ENTITY dhemail "<email>uwe@steinmann.cx</email>">
<!ENTITY dhusername "Uwe Steinmann">
<!ENTITY dhucpackage "<refentrytitle>PX_GET_RECORD2</refentrytitle>">
<!ENTITY funcname "PX_get_record2">
<!ENTITY debian "<productname>Debian</productname>">
<!ENTITY gnu "<acronym>GNU</acronym>">
<!ENTITY gpl "&gnu; <acronym>GPL</acronym>">
]>
<refentry>
<refentryinfo>
<address>
&dhemail;
</address>
<author>
&dhfirstname;
&dhsurname;
</author>
<copyright>
<year>2003-2005</year>
<holder>&dhusername;</holder>
</copyright>
&dhdate;
</refentryinfo>
<refmeta>
&dhucpackage;
&dhsection;
</refmeta>
<refnamediv>
<refname>&funcname;</refname>
<refpurpose>Returns record in Paradox file</refpurpose>
</refnamediv>
<refsynopsisdiv>
<para>#include <paradox.h></para>
<para>int &funcname;(pxdoc_t *pxdoc, int recno, char *data, int *deleted, pxdatablockinfo_t *pxdbinfo)</para>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<para>This function is similar to PX_get_record(3) but takes two extra
parameters. If *deleted is set to 1 the function will consider any
record in the database, even those which are deleted. If *pxdbinfo is
not NULL, the function will return some information about the data block
where the record has been read from. You will have to allocate memory
for pxdbinfo before calling &funcname;.</para>
<para>On return *deleted will be set to 1 if the requested record is
deleted or 0 if it is not deleted. The struct pxdatablockinfo_t has
the following fields:</para>
<variablelist>
<varlistentry>
<term>blockpos (long)</term>
<listitem>
<para>File positon where the block starts. The first six bytes
of the block contain the header, followed by the record data.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>recordpos (long)</term>
<listitem>
<para>File position where the requested record starts.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>size (int)</term>
<listitem>
<para>Size of the data block without the six bytes for the header.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>recno (int)</term>
<listitem>
<para>Record number within the data block. The first record in the
block has number 0.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>numrecords (int)</term>
<listitem>
<para>The number of records in this block.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>number (int)</term>
<listitem>
<para>The number of the data block.</para>
</listitem>
</varlistentry>
</variablelist>
<para>This function may return records with invalid data, because records
are not explizitly marked as deleted, but rather the size of a valid data
block is modified. A data block is a fixed size area in the file which
holds a certain number of records. If for some
reason a data block has newer been completely filled with records, the
algorithmn anticipates deleted records in this data block, which are not
there. This often happens with the last data block in a file, which is
likely to not being fully filled with records.</para>
<para>If you accessing several records, do it in ascending order, because
this is the most efficient way.</para>
<note><para>This function is deprecated.
Use <function>PX_retrieve_record(3)</function> instead</para></note>
</refsect1>
<refsect1>
<title>RETURN VALUE</title>
<para>Returns 0 on success and -1 on failure.</para>
</refsect1>
<refsect1>
<title>SEE ALSO</title>
<para>PX_get_field(3), PX_get_record(3)</para>
</refsect1>
<refsect1>
<title>AUTHOR</title>
<para>This manual page was written by &dhusername; &dhemail;.</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:2
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:nil
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->
|