Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
For any library storing MARC Bibliographic records in Source Record Storage (SRS), FOLIO contains a default MARC-to-Instance map. FOLIO uses that map when creating or updating Inventory Instances with Source = MARC. The map identifies the Instance fields that are controlled by the underlying MARC Bibliographic record, and which fields and subfields of MARC data populate into which Instance fields. Occasionally libraries may adjust their default map, either because of 1) updated default mappings delivered in a new FOLIO release or 2) local fields or mapping decisions that differ from the default map. When a library's default map is updated, those updated mappings will affect any Instances created or updated after the map change. However, some libraries would like to update all of their existing Instances to reflect the updated mappings. This script allows for that to happen.
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Based on testing in Lotus environment, refreshing Inventory Instances takes approximately 1/2 to 1 second per record, depending on the amount of other load on the tenant. Thus, for 1 million Instances, the time to refresh 1 million Instances would be approximately 6-12 days. Developers will continue to review to see if the timing can be decreased.
NOTE: Add some info about how the script works, approximate timing, when to run it so as not to interfere with regular library operations
Examples of library-specific mapping changes:
...
...
View file | ||||
---|---|---|---|---|
|
NOTE!!! This Instance update script may affect performance of other imports, so it needs to be used during non-working hours or during off-peak hours!!!
NOTE!!! This script will only work for Kiwi and later releases.
Before launching Script, you need to download jq library to allow script work:
https://stedolan.github.io/jq/download/
In order to run the script, you need:
- Open terminal (Mac OS or UNIX Systems) or Power shell (Windows)
- Go to the folder where the script is located.
- Run Script with or without parameters:
- e.g. for launch without parameters - sh UpdateMarcToInstanceMapping.sh
- e.g. for launch with parameters - sh UpdateMarcToInstanceMapping.sh url tenant username password limit release
Where:- url (your library okapi url) - can be seen in the app settings → software versions → okapi services → okapi
- tenant (admin tenant)
- username (admin user name)
- password (admin user name password)
- limit (number of instances to parse where all sources are counted - FOLIO/MARC)
- release (release version: 0 is for Kiwi, 1 is for Lotus and future releases)
- url (your library okapi url) - can be seen in the app settings → software versions → okapi services → okapi
- e.g. for launch without parameters - sh UpdateMarcToInstanceMapping.sh
After the script completes its work, it shows how long the script has been running and number of processed instances:
Total count: 1, Total succeeded count: 1, Total error count: 0
0 hours, 0 minutes and 4 seconds elapsed.
Also, as a result you will get 2 files: offset.txt and results.txt
offset file only will contain OFFSET value (the position in the dataset to start from, where all sources are counted - FOLIO/MARC). Script starts with the offset value from file.
results file will contain all processed instance ids with update status in format (if the results are presented):
instanceId - status (e.g. 708979eb-c732-4dfa-8f51-8176c9dea6bf - ok)
View file | ||||
---|---|---|---|---|
|
NOTE!!! This Instance update Postman collection may affect performance of other imports, so it needs to be used during non-working hours or during off-peak hours!!!
NOTE!!! This Postman collection will only work for Kiwi and later releases.
NOTE!!! Postman collection can handle only about 1500 requests.
Before launching Postman collection, set up the environment:
...