ExLibrisGroup / alma-csv-user-load

Load users to Ex Libris Alma from CSV files
2 stars 0 forks source link

Category Type for Statistical Categories #80

Closed saleenaau closed 1 year ago

saleenaau commented 2 years ago

In the template, there is only the option for statistical category. We have 2 category types, Job Class, and Job Department, each has their own set of values. When I run the app, it only selects the default value which is category "Job Department"

mgobat commented 2 years ago

Hi @saleenaau. I need some clarification of what you are trying to do there. I don't see Job Class as part of the standard Alma user record. Are you looking for "Job Class" to be in the list of elements to pick from for the "Name" column when defining an import profile? Thank you.

saleenaau commented 2 years ago

image I found that we can create Category Types in Alma. So I created type "Job Class" and "Job Description". In the app, I can only load the Statistical Category. I can't change the Category Types at all (so it defaults to "Job Description" which is our default setting in Alma)

saleenaau commented 2 years ago

I guess what I need is field name for "Category Type" (When I used the browser's Developer Tool, it is called "StatisticalType")

mgobat commented 2 years ago

Available in release v1.6.6, 29-Aug-2022.

saleenaau commented 2 years ago

Thank you!

saleenaau commented 2 years ago

I tested the new update but it still seems to selects the default value for the category type.

saleenaau commented 2 years ago

[ { "name": "Job class info", "accountType": "EXTERNAL", "profileType": "UPDATE", "fields": [ { "header": "ID.NO", "fieldName": "primary_id", "default": "" }, { "header": "Job Title Description", "fieldName": "job_description", "default": "" }, { "header": "Job Department Description", "fieldName": "user_statistic[].statistic_category.value", "default": "" }, { "header": "", "fieldName": "user_statistic[].category_type.value", "default": "Job Description" }, { "header": "Job Class Description", "fieldName": "user_statistic[].statistic_category.value", "default": "" }, { "header": "", "fieldName": "user_statistic[].category_type.value", "default": "Job Class" } ] } ]

mgobat commented 2 years ago

@saleenaau, looks like you have some empty headers in your template. I will have to try that that test case; perhaps the code takes a different route then.

My test was pretty simple; just adding a single statistic category and a category type to an existing user:

PID,SC,CT
mgobat,D224,DEG
mgobat commented 2 years ago

@saleenaau, does "selects the default" mean the Category Type selected to be the default in the "Category Types" codetable rather than the default in the input csv file? If so, is it possible that you don't have the input statistical category linked to the category type in the "Statistical Categories/Types" mapping table? I'm finding that if I don't have such a mapping, the "Statistical Category" is set correctly based on the input csv, but the "Category Type" is the default set in the "Category Types" codetable.

saleenaau commented 2 years ago

All those fields are mapped in the Statistical Categories/Types codetable. image

It is using the default value set in the User Category Type. So when I run the app, both statistical categories have the category type "Job Description". I did notice that the statistical category for the incorrect category type does say "...(Not Listed)".

mgobat commented 2 years ago

@saleenaau, hmmm...yes, that certainly looks like everything is mapped correctly. Can you supply a sample CSV input file (that doesn't give away any sensitive information)? Just the header line and a few input lines would be sufficient. Thank you.

mgobat commented 2 years ago

@saleenaau, I think "(not listed)" appearing in the Statistical Category may indicate that it did not find a match in the code/mapping tables. Are you supplying the Statistical Category code or description in the CSV file? If it is the description, try changing one to the code to see if that helps.

saleenaau commented 2 years ago

The "(not listed)" is what I expected Alma to do. I was just saying that that was the only difference between the 2 statistical differences.

Here is the sample CSV input file (names and ID are fake): AlmaEmployeesData statcode CSV.csv

mgobat commented 2 years ago

@saleenaau, thank for the examples you've provided...and your patience. I've been trying to replicate the problem, and I haven't succeeded. Since I can't see the contents of your "Statistical Categories" and "Category Types" mapping tables, let's make sure of a few things.

Looking at your import profile, I just want to confirm that the "Job Class" and "Job Description" specified for the "default" value are the actual codes and not the descriptions in the "Category Types" code table: { "header": "", "fieldName": "user_statistic[].category_type.value", "default": "Job Description" }, { "header": "", "fieldName": "user_statistic[].category_type.value", "default": "Job Class" }

And to confirm that the values in the 'Job Class Description" column in your csv file are the codes, not the descriptions, in the "Statistical Categories" code table:

FULL TIME FACULTY TENURED FACULTY PART TIME HOURLY ADMINISTRATION FULL TIME FACULTY TENURED FACULTY PART TIME FACULTY PART TIME

Thank you.

saleenaau commented 2 years ago

I wonder if that is the problem. I was using the description instead of the codes These are the codes: job_dept job_class

The Job Class was also using the description not the codes. So for the example: FAC FPT HAD FAC FPT FPT

mgobat commented 2 years ago

@saleenaau, yes, please try the codes and see if you have success. Thank you.

mgobat commented 1 year ago

@saleenaau, have you been able to test the enhancement using the codes? Thanks.

mgobat commented 1 year ago

Closed due to lack of feedback and the belief that it is working as expected in v1.6.6.