Pràctica ASI-C3-IAIG: HRM: Orange HRM I

De Wikijoan
Dreceres ràpides: navegació, cerca

Contingut

Objectius

OrangeHRM és un software de Recursos Humans. Com podràs veure, l'aplicació (Apache, PHP,MySQL) s'ocupa de moltes coses... però menys de fer la nòmina. I és que els procediments per calcular les nòmines són molt particulars de cada país i es fa difícil fer una aplicació de nòmines que serveixi per a tots els casos. Així doncs, amb OrangeHRM pots gestionar reunions, permisos de maternitat, plans de pensions, beneficis empresarials, vacances, ofertes de feina,... però no et calcula la nòmina.

Desenvolupament

Com que l'organització IES Jaume Balmes no s'adapta a una empresa amb un departament de RRHH, simularem que som una empresa.

Entrant com a Administrador, el primer que haurem de fer (una sola vegada) és editar la informació de l'empresa: IES Jaume Balmes, etc.

A estructura de la companyia, afegirem els diferents departaments que hi ha: comercial, I+D, RRHH, Administració, Direcció, Producció. Fixem-nos que podem crear una estrctura d'arbre: un departament pot tenir subdepartaments o divisions.

Anema a suposar que tenim dues localitats: la seu administrativa (Barcelona) i la fàbrica (Badalona). Aleshores, el departament de Producció l'ubicarem a Badalona.

Ara anem a definir els llocs de treball (Puestos): operari, enginyer, administratiu i directiu. Abans podríem pensar en una agrupació de llocs de treball (Jobs Specifications) i en unes agrupacions de categories salarials. Definirem dues categories salarials: nivell 1 (de 30000 a 40000 euros); i nivell 2 (de 20000 a 30000 euros), amb increments del 5%.

Ara ja podem crear els llocs de treball. Enginyers i directius seran del nivell 1; operaris i administratius del nivell 2. A l'hora de definir els llocs de treball, veiem que hi ha altres opcions, que deixarem amb les opcions per defecte.

A Qualificacions no definirem res, però sí que ho farem a aptituds. Es crearan les següents aptituds: carnet de conduir; carnet de conduir camió; carnet de torero (que pot fer servir el toro). Idiomes: Nivell C català; nivell D català; anglès elemental; anglès avançat.

Amb tota aquesta tasca que s'està fent, fixem-nos en el tractament que es fa del que se suposa que són les claus primàries de les taules respectives.

Classes de membresia > nacionalitat. Ens interessa saber si un treballador és a)local; b) de la UE; c) altres. Crearem aquestes tres nacionalitats. La raça no ens interessa (?).

A OrangeHRM distingim entre empleat i usuari de l'aplicació. L'empleat és qualsevol persona amb nòmina a l'empresa. Un usuari de OrangeHRM és un compte per utilitzar l'aplicació, que s'ha de correspondre amb un empleat. Però no al revés: hi haurà empleats que mai utilitzaran l'aplicació.

Ara que ja tenim creada una estructura bàsica d'empresa, per cada alumnes aquest crearà dos empleats i dos usuaris: un de nivell salarial 1 i l'altre de nivell 2, i els assignarà en el departament que els pertoqui. Per fer-ho, ĺ'alumne haurà d'entrar com a Admin (canviar el password de l'usuari Admin). Els empleats que crearà es dirant nom real 1 i nom real 2. Això es farà en l'apartat PIM (Personal Information Management). De moment al PIM no fiquis res més. Mira de ficar una foto teva si la tens a mà.

Abans de crear els usuaris hem de crear dos grups d'usuaris per ficar els empleats que crearem. D'entrada només existeix el grup Admin (tal com estàs logat ara). Anem a crear els grups:

Els usuaris que crearà l'alumne es diran asi2aXX_1 i asi2aXX_2 (amb pwd: asi2a, 5 lletres)l, i s'assignarant als dos empleats acabats de crear.

Per tant, finalment l'alumne haurà d'haver creat dos usuaris que es corresponen a dos empleats. Un del nivell salarial 1 amb permisos a l'aplicació d'Admin; i un de nivell salarial 2 amb permisos restrictius en l'aplicació.

Ara l'alumne ja ha de deixar el compte Admin, i entrar amb el login i password de cada usuari per tal d'editar la informació personal (PIM) de cada usuari. Recorda de respectar els dos perfils ben diferents de cada usuari: un empleat de nivell 1 i un empleat de nivell 2. Aixi doncs, dins la informació PIM hauràs de completar les dades bàsiques, posar una foto, número de compte per a la nòmina, aptituds, idiomes, experiència laboral,...

En aquesta pràctica només hem configurat l'aplicació amb la informació bàsica de l'empresa, i s'han creat els usuaris. En la propera pràctica podrem fer coses més interessants amb tota aquesta informació.

Accedint a la base de dades

El professor crea l'usuari orangehrm amb permisos per accedir a la bd orangehrm:

mysql> CREATE USER orangehrm;
mysql> GRANT ALL PRIVILEGES ON orangehrm.* TO 'orangehrm'@'%' IDENTIFIED BY 'orangehrm' WITH GRANT OPTION;
$ mysql -u orangehrm -p

mysql> use orangehrm
mysql> show tables;

o bé en una sola línia: (després de -p no hi ha espai)

$ mysql -u orangehrm -porangehrm orangehrm

Igual que vam fer amb la pràctica de MantisBT, el professor crearà un usuari orangehrm/orangehrm per tal que l'alumne pugui accedir a la base de dades hr_mysqk. Si t'ha quedat temps, hauràs de visualitzar la informació que has introduït a l'aplicació a dins la base de dades.

mysqk> show databases;
...
hr_mysql
...
mysql> use hr_mysql;
mysql> show tables;
+-----------------------------------+
| Tables_in_hr_mysql                |
+-----------------------------------+
| hs_hr_comp_property               | 
| hs_hr_compstructtree              | 
| hs_hr_config                      | 
| hs_hr_country                     | 
| hs_hr_currency_type               | 
| hs_hr_custom_export               | 
| hs_hr_custom_fields               | 
| hs_hr_custom_import               | 
| hs_hr_customer                    | 
| hs_hr_db_version                  | 
| hs_hr_developer                   | 
| hs_hr_district                    | 
| hs_hr_education                   | 
| hs_hr_eec                         | 
| hs_hr_emp_attachment              | 
| hs_hr_emp_basicsalary             | 
| hs_hr_emp_children                | 
| hs_hr_emp_contract_extend         | 
| hs_hr_emp_dependents              | 
| hs_hr_emp_directdebit             | 
| hs_hr_emp_education               | 
| hs_hr_emp_emergency_contacts      | 
| hs_hr_emp_history_of_ealier_pos   | 
| hs_hr_emp_jobtitle_history        | 
| hs_hr_emp_language                | 
| hs_hr_emp_licenses                | 
| hs_hr_emp_location_history        | 
| hs_hr_emp_locations               | 
| hs_hr_emp_member_detail           | 
| hs_hr_emp_passport                | 
| hs_hr_emp_picture                 | 
| hs_hr_emp_reportto                | 
| hs_hr_emp_skill                   | 
| hs_hr_emp_subdivision_history     | 
| hs_hr_emp_us_tax                  | 
| hs_hr_emp_work_experience         | 
| hs_hr_employee                    | 
| hs_hr_employee_leave_quota        | 
| hs_hr_employee_timesheet_period   | 
| hs_hr_employee_workshift          | 
| hs_hr_emprep_usergroup            | 
| hs_hr_empreport                   | 
| hs_hr_empstat                     | 
| hs_hr_ethnic_race                 | 
| hs_hr_file_version                | 
| hs_hr_geninfo                     | 
| hs_hr_holidays                    | 
| hs_hr_hsp                         | 
| hs_hr_hsp_payment_request         | 
| hs_hr_hsp_summary                 | 
| hs_hr_job_application             | 
| hs_hr_job_application_events      | 
| hs_hr_job_spec                    | 
| hs_hr_job_title                   | 
| hs_hr_job_vacancy                 | 
| hs_hr_jobtit_empstat              | 
| hs_hr_language                    | 
| hs_hr_leave                       | 
| hs_hr_leave_requests              | 
| hs_hr_leavetype                   | 
| hs_hr_licenses                    | 
| hs_hr_location                    | 
| hs_hr_mailnotifications           | 
| hs_hr_membership                  | 
| hs_hr_membership_type             | 
| hs_hr_module                      | 
| hs_hr_nationality                 | 
| hs_hr_pay_period                  | 
| hs_hr_payperiod                   | 
| hs_hr_project                     | 
| hs_hr_project_activity            | 
| hs_hr_project_admin               | 
| hs_hr_province                    | 
| hs_hr_rights                      | 
| hs_hr_skill                       | 
| hs_hr_time_event                  | 
| hs_hr_timesheet                   | 
| hs_hr_timesheet_submission_period | 
| hs_hr_unique_id                   | 
| hs_hr_user_group                  | 
| hs_hr_users                       | 
| hs_hr_versions                    | 
| hs_hr_weekends                    | 
| hs_hr_workshift                   | 
| hs_pr_salary_currency_detail      | 
| hs_pr_salary_grade                | 
+-----------------------------------+
86 rows in set (0.00 sec)

Entrega

S'ha d'entregar el fitxer sql, que inclou totes les consultes on es mostra la informació introduïda al realitzar la pràctica. Concretament, en la taula hs_hr_users pots veure la clau forània que apunta a l'empleat corresponent. Proposta d'exercicis:

hs_hr_employee  (emp_number, emp_firstname,emp_lastname,...)
hs_hr_users (id,user_name,...,emp_number,...)

mysql> select user_name,emp_firstname,emp_lastname from hs_hr_employee e,hs_hr_users u
where e.emp_number=u.emp_number;

Per trobar quines són les teves habilitats se't facilita, a mode d'exemple, les tres taules que necessites.

mysql> desc hs_hr_employee;
+-----------------------+--------------+------+-----+---------+-------+
| Field                 | Type         | Null | Key | Default | Extra |
+-----------------------+--------------+------+-----+---------+-------+
| emp_number            | int(7)       | NO   | PRI | 0       |       | 
| employee_id           | varchar(50)  | YES  | UNI | NULL    |       | 
| emp_lastname          | varchar(100) | NO   |     |         |       | 


mysql> desc hs_hr_skill;
+-------------------+--------------+------+-----+---------+-------+
| Field             | Type         | Null | Key | Default | Extra |
+-------------------+--------------+------+-----+---------+-------+
| skill_code        | varchar(13)  | NO   | PRI |         |       | 
| skill_name        | varchar(120) | YES  |     | NULL    |       | 
| skill_description | text         | YES  |     | NULL    |       | 


 desc hs_hr_emp_skill;
+--------------+--------------+------+-----+---------+-------+
| Field        | Type         | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+-------+
| emp_number   | int(7)       | NO   | MUL | 0       |       | 
| skill_code   | varchar(13)  | NO   | MUL |         |       |

Recursos

Durarda

3 hores



creat per Joan Quintana Compte, novembre 2009

Eines de l'usuari
Espais de noms
Variants
Accions
Navegació
Institut Jaume Balmes
Màquines recreatives
CNC
Informàtica musical
joanillo.org Planet
Eines