also: RB0002: Agency not appearing in dropdown for user login.
When: RTAC shows up copies but the agency is not properly listed against the copy, the copy will not be able to participate in resource sharing.
Discovery scaffold when records are found for a known host LMS but location mapping codes are not present (And in this case, agency records are not present).
Corresponding effect in locate (Note holdings line 2):
If either of the above 2 screenshots match the issue then
Task : reconcile host lms, agency and mappings.
The System code + location code paring need to be present in the canonical location codes mapping table. For example in the above mappings from context:STLOUIS, domain:locations, value:42 to context:DCB, domain:agency: value: 6slou was absent
Currently, the canonical location codes are held in a google sheet - that sheet is reference in read-only mode in the first code snippet below
If not present, the appropriate codes need to be re-added and then the mapping table re-uploaded.
The following script can be used to re-post the updated mappings
#!/bin/bash TARGET="<https://your-dbc.somecons.com>" echo Logging in TOKEN=./login echo Posting consolidated location mappings curl -X POST $TARGET/admin/cfg -H "Accept-Language: en" -H "Content-Type: application/json" -H "Authorization: Bearer $TOKEN" -d '{ "profile":"referenceValueMappingImport", "url":"<https://docs.google.com/spreadsheets/d/e/2PACX-1vTbJ3CgU6WYT4t5njNZPYHS8xjhjD8mevHVJK2oUWe5Zqwuwm_fbvv58hypPgDjXKlbr9G-8gVJz4zt/pub?gid=480381709&single=true&> output=tsv" }'
It’s also important to check that the System code is properly defined - supposing that HOGWARTS is a stand-alone sierra library ensure that a hostlmss resource exists that describe that system
echo Ensure HOG curl -X POST $TARGET/hostlmss -H "Content-Type: application/json" -H "Authorization: Bearer $TOKEN" -d '{ "id":"'uuidgen --sha1 -n $HOSTLMS_NS_UUID --name HOGWARTS'", "code":"HOGWARTS", "name":"Hogwarts", "lmsClientClass": "org.olf.dcb.core.interaction.sierra.SierraLmsClient", "clientConfig": { "base-url": "<https://hogwarts.edu/library> ", "key": "somekey", "page-size": "100", "secret": "somesecret", "ingest": "true" } }'
This will ensure that the system understands the system, and any location codes that are found coming from that system.
Finally, Agencies can only be shown if they are present - check that your agency record is present
look in the agencies table in psql
use the /agencies endpoint
use the graphql endpoint
use the admin app agencies
If not present, post the agency record to the /agencies endpoint
echo "Posting without URL" curl -X POST "$TARGET/agencies" -H "Content-Type: application/json" -H "Authorization: Bearer $TOKEN" -d "{ \\"id\\":\\"$AGENCY_UUID\\", \\"code\\":\\"$CODE\\", \\"name\\":\\"$NAME\\", \\"hostLMSCode\\": \\"$LMS\\", \\"authProfile\\": \\"$PROFILE\\" }"
Important note: Agencies WILL NOT load unless the hostLMSCode can be resolved to a system validated under step 3. POST to /agencies will 404 if the code cannot be resolved. Sometimes bulk agency loads happen before all systems are declared and this can be a cause of missing agency records.
After the above steps
and