Post installation

Now you have an installed and working numahop instance. But the base installation of numahop is rather empty. The first thing you must create before anything else is the libraries declared inside the yaml configuration files.

Here is a list of things you might want to create:

  • User Groups and Users
  • Workflow Models
  • Contidion Report
  • Mail Templates
  • Export Configurations
  • Bibliographic Records mappings
  • Automatic Controls settings

Adding a Library

For each libraries declared create a library through the interface. Then you need to edit the libraries inside the database to make the column identifier match the names declared inside the yaml files. If the library you created isn't defined in the yaml file you need to edit the yaml file and add an identifer to it and restart numahop.

-- Print all the libraries you declared through the interface.
SELECT name FROM lib_library\G
-- Modify the identifier 
-- <lib-identifier> corresponds to the identifier set inside the yaml file.
-- <lib-name> corresponds to the name given to the library at the creation in the web interface.
UPDATE lib_library SET identifier='<lib-identifier>' WHERE name='<lib-name>';
-- Note it is ok to filter by the name as NumaHOP normally enforces it to be unique. 

Once the libraries are created you can create the rest of the objects you need for your use of NumaHOP.

If you have created other objects before the library column update here is how to fix it:

-- Check and note what is the identifier generated by numahop by default.
-- <old-uuid> is what it is referenced as from now on.
SELECT identifier from lib_library WHERE name='<lib-name>';

-- We need to disable the foreign key contraints checks while modifying the libraries otherwise 
-- the contraints will prevent the modification because other tables reference this identifier.
SET FOREIGN_KEY_CHECKS = 0;
UPDATE lib_library SET identifier='<lib-identifier>' WHERE name='<lib-name>';
SET FOREIGN_KEY_CHECKS = 1;

-- Print all tables corresponding to created objects that have a library field and have rows.
SELECT c.TABLE_NAME from information_schema.columns c JOIN information_schema.tables t
ON c.TABLE_NAME = t.TABLE_NAME WHERE c.COLUMN_NAME = 'library' AND t.TABLE_ROWS >=1;
-- For each table corresponding to the created object fix the foreign key.
-- <old-uuid> is the value we 
UPDATE <talble> SET library='<lib-identifier>' WHERE library='<old-uuid>';

First user and user groups

I advise you create a admin user profile with all rights allowed for each libraries as the admin account configured in the yaml file can do some of the things but there are a lot of functionality that are disallowed on this account.

You can also create user profiles that suits your needs.

WorkflowModel and workflow groups.

Mappings

FtpConfiguration

Projects and lots

Imports

Needed for preforming a delivery.

Delivery