<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<head>
	<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=utf-8">
	<TITLE></TITLE>
	<META NAME="GENERATOR" CONTENT="OpenOffice.org 2.0  (Linux)">
	<META NAME="CREATED" CONTENT="20031022;8263300">
	<META NAME="CHANGEDBY" CONTENT="David Wilson">
	<META NAME="CHANGED" CONTENT="20060113;7551600">
	<META NAME="SDFOOTNOTE" CONTENT=";;;;P">
	<META NAME="SDENDNOTE" CONTENT="ARABIC">
	<STYLE>
	<!--
		@page { size: 21cm 29.7cm; margin: 2cm }
		P { margin-bottom: 0.21cm }
	-->
	</STYLE>
</head>
<body LANG="en-US" DIR="LTR">
<P STYLE="margin-bottom: 0cm"><FONT SIZE=4><B>HOWTO Increase the
Bibliographic Database Field Sizes</B></FONT></P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm">Version 2.0 By David Wilson
<A HREF="http://www.bibliographic.openoffice.org/">www.bibliographic.openoffice.org</A>
<A HREF="mailto:dnw@openoffice.org">dnw@openoffice.org</A> 
</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm">Users of the OpenOffice Bibliographic
functions may have come across a limitation on the field size 
</P>
<P STYLE="margin-bottom: 0cm">Whist we work on a permanent fix for
this. The user can increase the field size themselves.</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm">There were some problems making these
changes with early version of OpenOffice but I can confirm that this
can be done with version OpenOffice.org1.1RC3 and later versions and
OpenOffice.org2.X</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm">Note: This procedure should not damage
or lose data from the bibliographic database, but make sure you make
a copy of it before you make these changes. Just in case.</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm">You need to open the Bibliographic
database using View-&gt;'Data Sources'.</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm"><IMG SRC="HOWTO-increaseFieldSizes-V2_html_m627a651c.png" NAME="graphics1" ALIGN=LEFT  BORDER=0><BR>
</P>
<P STYLE="margin-bottom: 0cm">Right click on 'Bibliography' Select
the 'Administrate Data Sources' option.</P>
<P STYLE="margin-bottom: 0cm">Click on the 'Tables' tab, click on and
highlight 'biblio', click on the 'edit table' icon.</P>
<P STYLE="margin-bottom: 0cm">This will bring up the the 'Database
Management' panel (see screen image below)</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm">Select the Tables option and
right-click on biblio (shown highlighted above)</P>
<P STYLE="margin-bottom: 0cm">this brings up the 'Edit Table' Panel
shown below.</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm"><IMG SRC="HOWTO-increaseFieldSizes-V2_html_6ba3ad6a.png" NAME="graphics2" ALIGN=LEFT BORDER=0><BR>
</P>
<P STYLE="margin-bottom: 0cm">Now for each Field you want to increase
in size (eg Title, Author , Booktitle, Title, Journal, Annotation and
Note, URL, etc) click on the Text(VARCHAR) description and select
from the list Memo(LONGVARCHAR).</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm">Whilst you are here, it is a good idea
to make a unique index for 'identifier'. This will prevent two
identifiers being the same. This causes problems – you will only be
able to select the first of the record with the same identifier with
the Insert&gt;Indexes and tables&gt;'Bibliographic Entry' panel, any
others will be unselectable.</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm">From the Edit Table panel select
Tools&gt;Index Design (see screen image below)</P>
<P STYLE="margin-bottom: 0cm"><IMG SRC="HOWTO-increaseFieldSizes-V2_html_77468807.png" NAME="graphics4" ALIGN=LEFT BORDER=0><BR>
</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm">Click on the New Index icon (the first
on the left) select identifier and 'unique' .</P>
<P STYLE="margin-bottom: 0cm">Close Index design</P>
<P STYLE="margin-bottom: 0cm">In 'Edit Table' File&gt;Save All, Close
Window.</P>
<P STYLE="margin-bottom: 0cm">Unload and Load the Data Sources – F4
F4.</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P STYLE="margin-bottom: 0cm">You should now be able to past large
blocks of text into your Notes or Annotate fields.</P>
<P STYLE="margin-bottom: 0cm"><BR>
</P>
<P><BR><BR>
</P>
<DIV TYPE=FOOTER>
	<P ALIGN=CENTER STYLE="margin-top: 0.5cm; margin-bottom: 0cm">Page <SDFIELD TYPE=PAGE SUBTYPE=RANDOM FORMAT=PAGE>3</SDFIELD>
	of <SDFIELD TYPE=DOCSTAT SUBTYPE=PAGE FORMAT=PAGE>3</SDFIELD></P>
</DIV>
</body>
</HTML>
