Commit Graph

91 Commits

Author SHA1 Message Date
Paul Poulain a3dfe58e01 Updatedatabase (big)
* adding aqcontracts, that will contain contracts attached to a given bookseller. Each basket can be attached to a contract
* adding columns to aqbasket: basket name, note, booksellernote and contractnumber
* adding column to aqorders: uncertainprice, budget_id and statistical fields
* adding table aqbasketgroups: will be used to collate X basket into a single basketgroup
* adding table aqbudgetperiods: will be used to manage budget periods, 1st step to define a budget
* dropping & re-creating a aqbudgets table: completly new content, no update from previous acq
* adding table aqbudget_planning table: will be used to store library budget planning (by ccode, branch, month, and other authorised_values)
* adding column to currencies table: active, that will tell which currency is the used one.
* adding sub permissions for acquisitions module
* adding column to booksellers table: gstrate that will tell the gst rate for the bookseller.
* adding sysprefs: AcqCreateItem (define when item creation is done ordering/recieving/cataloguing), CurrencyFormat
* adding aqordersitems table: link between order and items
* dropping aqorderbreakdown: useless
2009-09-30 11:30:15 +02:00
Colin Campbell 6fb8ef0d79 New Messaging System.
This system is indended to replace the old opacnotes
  and borrowernotes fields in the borrowers table.
  This system allows an unlimited number of Libraran and OPAC notes to be
  attached to a borrower. Each note has a message, a message type,
  the data it was created, and which library created it.
  Each message can only be deleted by the library that created it unless the syspref
  AllowAllMessageDeletion has been set.

  This system may be used simultaneously with the old notes system and does not affect it in any way.

  A new database table (messages) was added for this feature.

  The System also allows for pre-defined notes for Borrower records

  To use these, just create authorised values with the category BOR_NOTES
  where the Authorized Value is the short description shown in the pulldown,
  and the description is the text that should be in the note.

  Original Author: PTFS Contractor <dbavousett@ptfs.com>

  This work co-sponsered by Middletown Township Public Library, Middletown, NJ, USA
     and East Brunswick Public Library, East Brunswick, NJ, USA

Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
2009-09-15 22:11:38 -04:00
Nicole Engard 2ce2e973c9 Bug 2559 Added primary keys to tables per comments
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-09-06 13:47:36 -04:00
Katrin Fischer c36098e316 Bug 3464: Added altcontactcountry and B_address2 to borrowers and deletedborrowers
- added altcontactcountry and B_address2 to tables borrowers and deletedborrowers so that all addresses offer the same fields
- changed B_country and country to work with syspref BorrowerMandatoryField
- changed display of Alternate Address on borrower detail page, added labels, lines and edit button to match the other sections

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-09-06 10:01:51 -04:00
Chris Nighswonger ee37448387 [34/40] Work on syncing db schema on both new and upgrade installs
Labels creator data migration script
Updating updatedatabase.pl and bumping db version
2009-09-01 15:53:49 -04:00
Galen Charlton e4d57d80a2 bug 3481: add deleditems.permanent_location (DB rev 052)
Whenever a column is added to items, it must also be added
to deleteditems - otherwise, whenever an item is deleted,
it will not be saved to deleteditems.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-08-23 20:53:20 -04:00
Galen Charlton 84db6a18cc bug 2611, 2761 followup
* set DB changes as revs 047 and 048
* ensured that itemcallnumber was widened to 255 in items and
  tmp_holdsqueue
* adjusted DB update descriptions

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-08-23 19:08:25 -04:00
Nicole Engard de0bba99dc BUG 2761 Fix max length of itemcallnumber to 255
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-08-23 18:50:11 -04:00
Galen Charlton 82f4badf51 bug 3464 followup - fix glitches
* Fixed 'counry' typo
* added country and B_country to deleteborrowers

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-08-23 18:38:56 -04:00
Sébastien Hinderer ed62c08288 Database structure modification.
Adds the country and B_country columns to the borrowers table.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-08-23 18:17:11 -04:00
Colin Campbell e40e11ab0c bug 3481: Allow Item Temporary Locations for Processing and Shelving.
Allows temporary locations corresponding to 'in processing' and 'shelving'
so that newly-created items, and newly-returned items do not show
immediately as a available. Three new system preferences govern the usage
of these features.

NewItemsDefaultLocation. If system pref NewItemsDefaultLocation is set to a location code,
 all newly catalogued items will be set to the location set in this preference.
 Location code must be a valid LOC authorized value type.

InProcessingToShelvingCart. if the system pref InProcessingToShelvingCart is turned on,
any items run through returns.pl with a location code for 'PROC', will be modified to
have a new location code of 'CART'.

ReturnToShelvingCart.  If the syspref ReturnToShelvingCart is turned on,
all items returned other than confirmed holds will have a new location code of 'CART'.
Any item issued is automatically taken of the shelving cart.

Adds a cron script shelf_to_cart.pl which should be run hourly.
Updates all items with a location of CART to the item's permanent location.

The original location code is stored in the new items column 'permanent_location'.

Original Author: PTFS Contractor <dbavousett@ptfs.com>

This work co-sponsored by
  Middletown Township Public Library, Middletown, NJ USA  and
  East Brunswick Public Library, East Brunswick, NJ USA

Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-08-23 11:54:46 -04:00
Sébastien Hinderer 9d34a4caa1 bug 3440: Database structure modification.
Adds 5 columns to the `branches` table: `branchzip`, `branchcity`,
`branchcountry`, `branchurl` and `branchnote`.
I/O operations for these fields are not included.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-08-01 09:43:44 -04:00
Galen Charlton 2f3714e2e6 bug 2866: add FilterBeforeOverdueReport syspref (DB rev 037)
Also added index on authorised_values.lib.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-28 19:20:41 -05:00
Henri-Damien LAURENT af32ae0962 Adding and managing location in subscription
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-27 11:59:55 -05:00
Nahuel ANGELINETTI 3b1d91d04f (bug #3020) add a grace period to subscriptions
This patch modify the database to have a grace period which can be set. And is used to create automatically new waited issues with a
cronjob(which is in this patch), and set old issues to "late" status.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-22 13:46:36 -05:00
Galen Charlton 329678f39b bug 3222: database changes for messaging preferences (DB rev 033)
This patch modifies the database for the messaging
preferences enhancement <http://wiki.koha.org/doku.php?id=en:development:rfcs3.2:rfc32_defaultmessagingsettings>
as follows:

* adds a categorycode column to borrower_message_preferences

This allows a set of messaging preferences to be linked
to a patron category

* allow the borrowernumber column to be null

This allows a messaging preference set to be linked
*only* to a patron category.  If MySQL had check
constraints, I would add one so that exactly
one of borrowernumber and categorycode in a row in
borrower_message_preferences could be NULL.

* add a FK constraint from borrower_message_preferences.categorycode
to categories; if you delete a patron category, any default preferences
associated with it will be automatically deleted.

The messaging preference enhancement was sponsored by the Northeast
Kansas Library System (NEKLS).

Signed-off-by: Daniel Sweeney <daniel.sweeney@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-22 13:20:45 -05:00
Galen Charlton b79f8feed2 bug 2872: fix width of columns in branch_transfer_limits (DB rev 031)
change itemtype, tobranch, and frombranch from varchar(4)
to varchar(10)

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-11 12:24:20 -05:00
Ryan Higgins a58eb67318 Bug 3148 : Database revision to make zebraqueue.biblio_auth_number as big as auth_header.authid.
If you've never truncated your zebraqueue table, you might want to
update your index and truncate it before applying this patch and running updatedatabase.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-26 09:51:00 -05:00
Chris Nighswonger cd16f12a47 kohabug 2934 - Wrong datatype causes artificial limit to label batch id's
labels.batch_id should be int as the value is always an integer. This corrects
the problem.

[RM note: ported patch to HEAD.  DB rev 024]

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-24 10:39:13 -05:00
Henri-Damien LAURENT 1574e45d01 bug fix 2765
Changing isbn data from 14 to 30 in order to manage friendlier,
isbn with - inside, and multiple isbns.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-24 08:35:41 -05:00
Joe Atzberger 0bd5a30708 Bug 2945: increase size of labels_conf.formatstring (DB update)
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-24 08:15:25 -05:00
Galen Charlton 74cb2f666e bug 3099: fix copying patron info to deletedborrowers (DB rev 018)
Fixes the following problem:

When deleting a patron record via the intranet or the cleanborrowers tool,
patron records are deleted but are not copied to deletedborrowers.
C4::Members::MoveMemberToDeleted() fails with the following error:

deletemem.pl: DBD::mysql::st execute failed: Column count doesn't match value
count at row 1 at C4/Members.pm line 1672.,

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-08 15:54:18 -05:00
Joshua Ferraro 5cf8fcc2cf Fix for Bug 424: Serials display: installer does not make database changes for display parameters, so can't save new subscriptions
Signed-off-by: Daniel Sweeney <daniel.sweeney@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-03 16:41:42 -05:00
koha 9c72711a2c This patch allows the Branch Transfer Limits feature to limit transfers either by itemtype ( like the original commit ) or collection code ( new feature ).
[Note inserted by RM: this patch is by Kyle Hall]

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-06 11:27:16 -06:00
John Beppu 5ef508bddb Revised Schema
- removed 'rss' transport
- made the messages non-digest
- updated the default text of the templates in the letters table
- [table] item_circulation_alert_preferences
  - added notification column
  - removed is_enabled column
- [table] message_queue
  - added metadata column
  - added letter_code column

Signed-off-by: Daniel Sweeney <daniel.sweeney@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-02-04 13:57:20 -06:00
John Beppu 2302621702 Schema Changes for Email Checkout Slips
- new table, item_circulation_alert_preferences
- new data:
  - letter -- 2 new templates
  - message_transport_types -- feed
  - message_attributes -- Item Check-in and Item Checkout
  - message_transports -- for each attribute and for each transport_type...

Signed-off-by: Daniel Sweeney <daniel.sweeney@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-02-04 13:54:13 -06:00
Galen Charlton 010dc2f0a9 holds policy followup - fix column definition
Signed-off-by: Daniel Sweeney <daniel.sweeney@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-01-16 08:24:26 -06:00
Daniel Sweeney d764a7cf89 Corrected several typos that caused the installer to fail when creating the Koha schema.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Daniel Sweeney <daniel.sweeney@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-01-16 08:22:40 -06:00
Jesse Weaver d594e26461 Database changes and new sysprefs for holds policies
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Daniel Sweeney <daniel.sweeney@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-01-16 08:21:47 -06:00
Danny Bouman f198b3f5cf bug 2687: Increased length of borrower attribute fields
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-01-12 15:02:12 -06:00
John Beppu fe5cc9933f bug 2874 [1/3]: schema changes for overriding blocked renewals
Two new subpermissions of circulate were added:
- circulate_remaining_permissions
- override_renewals

Also, the following schema alterations were made
- permissions.code      : varchar(30) => varchar(64)
- user_permissions.code : varchar(30) => varchar(64)

  (The reason for this was because "circulate_remaining_permissions"
   was greater than 30 characters long and wouldn't fit.)

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-23 17:01:58 -06:00
Andrew Moore 3886be26ff Bug 2799: database update to "branch transfer limits"
This patch cleans up kohastructure.sql a bit:
 * moved the table definition to above the ending comments
 * added a "drop table..." statement

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-17 14:49:07 -06:00
Kyle Hall 9cf0472903 Added 'Branch Transfer Limits' Feature requested by Geauga County Library System.
Added syspref to updatedatabase.

Updated kohastructure.sql with the limits table.

Signed-off-by: Andrew Moore <andrew.moore@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-17 14:49:02 -06:00
Galen Charlton d368894545 bug 2859: add index on bibioitems.issn (DB rev 006)
Because of a query on biblioitems.issn in
C4::Breeding::ImportBreeding(), libraries doing a lot
of bib imports were experiencing performance problems,
which adding an index will alleviate.

A possible longer term solution is to index all
reservoir/import batch records in a Zebra database.

[LL bug 232]

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-12 10:13:05 -06:00
Andrew Moore 5ab1781bab adding "DROP TABLE" commands to several table definitions in kohastructure.sql
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-11-17 09:05:04 -06:00
Galen Charlton 4c037341e4 bug 2522 [1/3]: DB rev 3.1/001 - hold request targetting
For bug 2522, add a new table called hold_fill_targets to
implement hold request targeting.  This table
has the following columns:

  borrowernumber     - identify request
  biblionumber       - ditto
  itemnumber         - item targeted to fill request
  source_branchcode  - current location of item
  item_level_request - if 1, request is item-level

For bug 2331, adds a column called item_level_request
to tmp_holdsqueue.

Note: both of the item_level_request columns can
go away once reserves is modified so that
it is clear whether a request is item-level or
bib-level.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-08-18 07:16:08 -05:00
Chris Nighswonger cdf93bffee kohabug 2380 Correcting serialitems table structure and fixing duplicate barcode check
The current serialitems table structure does not provide for a *:1 relationship with
the serial table. This causes a problem when attempting to add multiple items to a given
serial. The db throws an error when attempting to INSERT in  serialitems due to serialid.serialitems
being a unique key. A further side effect is that the marc record is updated with the
item inspite of the error. The mods to the serialitems table structure in this patch
drop serialid.serialitems as a key and make itemnumber.serialitems the primary key
creating a *:1 relationship with the serial table. This patch also makes serialid.serialitems
a foreign key referencing serialid.serial to maintain referential integrity.

Fix for duplicate barcode check

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-27 06:07:40 -05:00
Ryan Higgins 0ed39b89cd DB UPDATE : Patron category code was defined incorrectly in overduerules (notice/status triggers) and deletedborrowers.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-22 21:07:49 -05:00
Chris Nighswonger bc31005f0d Adding lastmodified.virtualshelves; Bumping version to 100
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-22 15:50:05 -05:00
Andrew Moore 74118daa82 bug 2274 [1/5] database changes (DB rev 097) to add email address to message_queue table
I added three fields to the message_queue table:
 - to_address
 - from_address
 - content_type: necessary to hold email header for attachments
I changed one field in message_queue:
 - borrowernumber can now be NULL for messages sent to the admin

These can be used to override the default addresses used. By default, emails are sent to
the borrowers.email address and sent from the KohaAdminEmailAddress syspref address. These
values are still used if the to_address or from_address values are NULL. These changes
are necessary to let overdue_notices.pl be backwards compatible.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-10 09:10:42 -05:00
Ryan Higgins 67e20d82ff DB Bump 094 - bug 2268 -- allow mixed case subfield labels in MARC21 by changing db column collation.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-06-23 08:00:03 -05:00
Ryan Higgins c522e99e20 DATABASE UPDATE: change copynumber column to allow free text - [ bug 2223 ] - WARNING, will take some time for large db.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-06-20 17:55:54 -05:00
Andrew Moore d8654344fa Bug 2176 (1/5): database update: adding message_queue table and tables to hold patron messaging preferences
Updates to kohastructure.sql and updatedatabase.pl:
- add new message_queue table
- add message_transport_types table
- add message_attributes table
- add message_transports table
- add borrower_message_preferences table
- add borrower_message_transport_preferences table
- adding EnhancedMessagingPreferenes to sysprefs SQL.

Added column to borrowers table to hold SMS Alert Number.
Added some more sample notices (letters) that will be sent for patron alerts
added some sample SQL to configure messaging.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-06-20 12:54:52 -05:00
Galen Charlton b35ebc644e bug 2000 - added several circ rules tables (DB rev 090)
The first new table is branch_borrower_circ_rules.

This table is used to store circulation rule attributes
that apply to a combination of patron category and branch
across all item types.  The one attribute defined is
maxissueqty, which sets the maximum number of loans
that a patron of a given category can take out at a given
branch.

Note that branch_borrower_circ_rules is for attributes
that apply across all item types.  This means that
issuingrules.maxissueqty has a different meaning: it is
the maximum number of loans per branch, category, and item type;
if issuingrules.itemtype is '*', that is a *default*
circulation rule used if no more specific rule is found.

The new table will allow the implementation of total
loan limit across item types without making the wildcard
'*' in issuingrules ambiguous.  Specifically, if branchcode,
categorycode, or itemtype is issuingrules is '*', that will now
always mean a loan rule to be applied if a more specific rule cannot be found.
Setting issuingrules.itemtype to '*' will no longer mean
to set a total limit across item types for maxissueqty.

The remaining new tables are used to store default
rules for the default branch, the default patron category,
or both:

default_branch_circ_rules - for a given branch, specify
the rule to apply if no more specific rule on
branch and patron category is found (i.e. patron category is default)

default_borrower_circ_rules - for a given patron category,
specify the rule to apply if no more specific rule
on branch patron category is found (i.e., branch is default)

default_circ_rules - global default if no more specify rule
on patron category and branch is available.  Note that this
table is constructed so that it can have at most
one row.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-06-20 08:18:59 -05:00
Joshua Ferraro 725e822aed DB Update .086: adding new table tmp_holdsqueue,
used for reporting picklist for holds in multi-location
libraries. This is a temporary workaround to a longer-term
post-3.0 cleanup of the holds process.

Following this will be a cron job for managing the
holds picklist queue as well as a report for viewing
the list of items from circulation
2008-05-20 09:36:26 -05:00
Ryan Higgins 9db5a7b30f DB Update 77 : add lastincrement column to accountlines
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:33:31 -05:00
Galen Charlton 6fc62bcd32 extended patron attributes tables & syspref (DB rev 081)
Added two tables and system preference to support
a new patron alternate ID and attributes feature.

A patron attribute (or extended patron attribute) is an
additional piece of information associated with a patron
record.  Each attribute has a type that specifies
whether the attribute is repeatable, can serve as
a unique identifier, can take a password, and
whether it can be used to search for patron records
in the staff interface.

The list of attribute types is controlled by the
superlibrarian.  Once an attribute type is defined,
values for that attribute can be added to the patron record
via the staff interface or the batch patron import.

Two uses of extended attributes are:

- defining additional unique identifiers, such as
  a campus student ID number, a library staff
  HR number, and so on.  These IDs can be used
  for searching or matching and overlaying records
  during a batch import.
- additional statistical categories.  For example,
  a library could define an attribute type for
  tracking the academic major of a student patron.
  Any number of attributes of this sort could be
  defined.

The extended attributes feature is completely optional.  If
the new syspref, ExtendPatronAttributes, is OFF, the patron
attributes tables will be ignored; it will not be possible
to display, edit, search for, or match on extended
attributes.

The tables are:

[1] borrower_attribute_types - store attribute types
    defined by the administrator.

    - code
    - description
    - repeatable (whether a patron record can have
      more than value of a given attribute type)
    - unique_id (whether values of this type
      must be unique within the database)
    - opac_display (whether values of this type
      can display in the patron details page in the OPAC)
    - staff_searchable (whether values of this type
      can be used to retrieve patron records in circulation)
    - password_allowed (if set, staff patron editor will
      allow a password to be associated with a value; this
      is mostly a hook for functionality to be implemented
      in the future.
    - authorised_value_category (code of an authorised_value
      category.  If one is specified, the staff patron
      editor will use a dropdown for setting values of this type)
[2] borrower_attributes - the actual attributes.
    - code (attribute type code, FK)
    - borrowernumber (link to patron, FK)
    - attribute (the value)
    - password (password associated with value)

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:03:00 -05:00
Galen Charlton 5c41ae54e6 kohabug 2076: more reconciliation of kohastructure.sql
Changes to kohastructure.sql to sync with changes
made via updatedatabase.pl:

aqbooksellers.name (DB rev 042)
subscription.serialsadditems (DB rev 071)

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 05:40:43 -05:00
Galen Charlton bcd8b1bf76 kohabug 2076 - add authorised_values.imageurl
The column was added in updatedatabase.pl rev 075
but not added to kohastructure.sql.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-01 18:59:29 -05:00
Galen Charlton 22aa16e87f kohabug 2076 - remove three tables (DB rev 077)
Removed the categorytable, mediatypetable, and subcategorytable
tables.  These three tables appear to be from an incomplete
patch from pre-git that defined these tables to implement
additional search limits, and are not present in the 2.2.9
package.  In 3.0, these tables did nothing - the only code that
referred to them are incomplete admin editors that lack HTML
templates and are not referred to anywhere.

The updatedatabase.pl logic to remove these tables is conservative;
the tables are dropped only if they exist and are all empty.  Effectively,
this means that they'll be dropped if you've been running a fresh install
of 3.0 from git or the alphas or betas; if you've upgraded your database
from 2.2.9, these tables likely weren't in your database to begin with.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-01 18:59:28 -05:00