What is the difference between a Person and an Employee in Kronos? - terminology

According to the Kronos Workforce Central 6.3 Developer's Reference Guide, one of the required properties when running a <HyperFindQuery> is QueryPersonOrEmployee.
RunQuery
Returns a list of people and associated information for the specified
HyperFind query.
Return Value Type: Zero or more HyperFindResult tags
Required Properties: HyperFindQueryName, VisibilityCode,
QueryDateSpan, QueryPersonOrEmployee
The Action Descriptions section states that the possible values for QueryPersonOrEmployee are Person, Employee, and Job Assignment.
QueryPersonOrEmployee Category (person, employee, job assignment) for query
The type of person being requested in the query
Type: String
Optional
Enumerated value: Person, Employee, Job Assignment
As far as I can tell, this is the only part of the API which makes any distinction between a Person and an Employee. I was under the assumption that both terms were interchangeable in Kronos.
What is the difference between a Person and an Employee in Kronos Workforce Central?

Everyone is a person but not everyone is an employee. Employee's have an employee license while if a person simply has a manager/web license then they are not an employee.

Related

Native GET query in Spring Boot where argument is a List of String

I have started learning Spring Boot recently. I was building a REST API backend where I need to show a list of courses depending upon the provided list of teachers. In other words, I need to fetch all the courses C1, C2 etc. where Teachers say A, B, and C are enrolled in.
The SQL query which I need to feed into Repository Class method is as given below-
SELECT * FROM MyDB.course_teacher
where teacher_id="TCH_00023"
or teacher_id="TCH_00024"
or teacher_id="TCH_00034"
order by course_id DESC;
The method defined in the Repository Class is
#Query(value="",nativeQuery=true)
List<Courses> fetchCourseByTeachersList(List<String> teacherIds);
Now, how do I pass the teacher IDs from the argument list in the query value? Please advice.

I can't find a way to implement messages in my school database on MySQL

I'm working on a school database on which I would like to implement messages that will be created by the schools for the parents to view.
The workflow goes like this:
1. The school sends a message to a certain group of students, it could be a message to all the students from that school, or a message to just the first year, or a message to classroom 1B (1 being the year and B the group), or even a message to just 1 student.
2. Parents access a platform on which they will see the messages regarding their children.
For example:
if the school sends a message to the classroom 1B, only parents with children on that classroom will be able to see it.
if the school sends a message to the first year, only parents with
children on the first year will see it.
What I need help with is:
How could I arrange the database in order to accomplish the message
filtering (By school, by year, by classroom (1B, 2A,
etc.) and by student)?
What would be the sentence that I need to use in order to retrieve
the messages for a parent regarding their children?
I hope I explained myself well, please feel free to ask any question you have, and thank you so much :)
Here's a pic of the database:
If I understood well, for this question "What would be the sentence that I need to use in order to retrieve the messages for a parent regarding their children?" you could use a simple inner join between message and parent_detail on id_students are equals where id_parent is your parentID:
SELECT * FROM `message` m
INNER JOIN `parent_detail` p_d on p_d.ID_student = m.ID_student
WHERE p_d.ID_detail = 'parent_id_variable'
Regarding the first question, using the same principle, you need to use an inner join between message students and schools (if you want the name of the school and not only the ID) and apply in where condition what parameter you want.
For example, by school => message.ID_school, by school and by year => message.ID_school and students.year.

SQL Conditional Inner Join Where

I need to a conditional inner join with where.
I have an assessment form that has three particular fields: country, Degree and subject.
There is another form named "responds template" with the same fields: country, Degree and subject.
Advisers create some responds template by different condition to answer faster.
Advisers reply to the assessment inquiries in a reply form then I need to filter list of related responds as a drop down list base on user section in those filed.
for example if a user chose Country: USA, Degree: Master and subject: Math then I need to filter responds template based on these section and show only the responds templates for Country: USA, Degree: Master and subject: Math.
I used this code but it works just for the first condition "country" and doesn't work for second and third AND.
and also I need to filter by country and degree if there is not any item matched with first condition.
WHERE {thistable}.id IN (
SELECT app_responds.id
FROM app_responds AS app_responds
INNER JOIN app_assessment AS app_assessment
ON app_responds.destination = app_assessment.destination_country AND
app_responds.degree = app_assessment.degree AND
app_responds.field_of_study = app_assessment.field_of_study_id AND
app_responds.subject = app_assessment.subject_id
)
Did you try to use OR instead of AND. That gives you any match from your conditions. If you use AND all tree conditions should be TRUE in order to get a value

NSPredicate SUBQUERY for 1 to many to many relationship

I'm trying to build an NSPredicate to satisfy a given relationship. My data model has the following: University -> College -> Classrooms - ClassroomType
A university object has 1 to many colleges.
A college object has 1 to many classrooms.
Each classroom has a given classroom type with a specified property
i'm interested in.
That property is called typeDescription I want to build a query that can give me all universities that have a typeDescription equal to the value "computerlab". The objects that I have available to me are a list of Universities. I'm pretty sure that I'll need to construct an NSPredicate SUBQUERY but I'm not quite sure no how to build this to satisfy my requirements. If anyone has any input on the right way to build this query it would be much appreciated.
For one-to-many-to-many relationships, you need to nest two SUBQUERY clauses:
NSPredicate(format:"SUBQUERY(colleges, $c, SUBQUERY($c.classrooms, $room, $room.classroomType.typeDescription == %#).#count > 0).#count > 0","computer lab")

Database Normalization

I've been given the task of normalizing this set of data:
COURSE=(CourseID, CourseName, CourseDuration, CourseFee{
DelegateID, DelegateName, DelegateAddress, EventID, EventName, VenueID, VenueName, VenuePrice, BookingID, BookingType, BookingDate
})
The scenario is an IT company that runs short training courses at various hotels around the country, each event being hosted by one or more presenters (hence the BookingType - either Delegate or Presenter, if Presenter then no booking charge). An event is just an instance of a course running at a particular venue. VenuePrice refers to the cost for optional bed and breakfast at the hotel venue for the intervening nights
Here is what I have come up with for 3NF:
COURSE=(CourseID, CourseName, CourseDuration, CourseFee)
DELEGATE=(DelegateID, DelegateName, DelegateAddress)
EVENT=(EventID, VenueID*, CourseID*, EventName, EventDate)
BOOKING=(BookingID, DelegateID*, EventID*, BookingDate, BookingType)
VENUE=(VenueID, VenueName, VenuePrice)
I'd like to know if this is at all accurate, and if not, perhaps a guiding hand in the right direction?
Thanks
On what basis do you think that is in 3NF ?
Let's take a really simple example, Course. Where exactly if he Functional Dependency, on what key ? How can CourseName be dependent on CourseId, when CourseDuration and CourseFee are dependent on CourseName ?
Same with the rest of the tables; Event being a little more complex, has a few more errors.
You cannot normalise, or achieve 3NF, when your starting point is to stick an ID on everything that moves.
No. First normalise the data. Achieve 3NF. I can understand a CourseCode or ShortName as something the user may use to identify course, but no Id.
After that, if and only if you need to, add an Id column and the additional index.