Toto je starší verze dokumentu!
Obsah
Import nově přijatých studentů do Evergreenu
Export nových studentů z ISu
Studijní agenda > hromadný výběr > Vybrat dotaz „Jabok: Přijat nezapsán(stav 88)“.
Dotaz je možné také zadat ručně:
[fak JA10][stud_stav 88]
Po vypsání výsledků dotazu (seznam studentů) použít odkaz „Zpět na Manipulace se seznamem vybraných studentů“
Poté v sekci Studijní - výběr studentů a operací vybrat „Tisky“ > Seznamy, sestavy (návod k sestavám, Prezentátoru) >
Ve „Výběru z připravených popisů sestav“ vybrat popis „JABOK: Knihovna: import nově přijatých studentů“.
Popis lze vložit také ručně:
<SESTAVA> <STUDENT><TFORMA> <F_OSOBA_UCO/>,<F_OSOBA_JMENO F_JMENA="prijmeni"/>,<F_OSOBA_JMENO F_JMENA="jmeno"/>,<F_OSOBA_EMAIL_PRIHLASKA/>,MAILING,<F_OSOBA_TRVBYD_ADRESA_RADEK1/>,<F_OSOBA_TRVBYD_ADRESA_RADEK2/>,<F_OSOBA_TRVBYD_STAT/>,<F_OSOBA_TRVBYD_ADRESA_PSC/>,<F_OSOBA_TRVBYD_TELEFON/>,111,3,<F_OSOBA_CISLO_OP/>,103,2,<F_OSOBA_DAT_NAROZENI FORMAT="11"/>,false,2019-09-01,</TFORMA> <DATA_OSOBA><OSOBA_STUDIUM STUDIUM="?"/></DATA_OSOBA> </STUDENT> </SESTAVA>
V sestavě je nutné změnit datum expirace čtenářského účtu na 1.9. následujícího roku (v uložené sestavě je to datum 2019-09-01, které je ve výstupu posledním údajem na řádku)
Jako formu výstupu zvolit „Textový soubor s kódováním UTF-8 (Unicode)“
Import studentů do Evergreenu
Vytvoření tabulky s novými čtenáři
CREATE TABLE jabok_students (
student_id integer,
barcode text,
last_name text,
first_name text,
email text,
address_type text DEFAULT 'MAILING',
street1 text,
street2 text,
city text,
country text DEFAULT 'Česká republika',
postal_code text,
phone text,
profile_id integer,
ident_type integer,
ident_value text,
home_ou integer,
net_access_level integer,
date_of_birth date,
active boolean,
expire_date timestamp,
stat_cat integer,
stat_cat_entry integer);
Kopírování dat z CSV
COPY jabok_students (barcode, last_name, first_name, email, address_type, street1, city, country, postal_code, phone, profile_id, ident_type, ident_value, home_ou, net_access_level, date_of_birth, active, expire_date, stat_cat, stat_cat_entry)
FROM '/home/opensrf/Ctenari/data_pro_import.csv'
WITH CSV HEADER;
Nalezení duplicit dle jména a data narození
SELECT actor.usr.first_given_name, actor.usr.family_name, actor.usr.dob, jabok_students.first_name, jabok_students.last_name, jabok_students.barcode FROM jabok_students INNER JOIN actor.usr ON jabok_students.date_of_birth IS NOT DISTINCT FROM actor.usr.dob AND actor.usr.first_given_name IS NOT DISTINCT FROM jabok_students.first_name;
Výstup s duplicitními hodnotami
first_given_name | family_name | dob | first_name | last_name | barcode ------------------+-------------+------------+------------+-------------+--------- Adam | Novák | 1991-11-30 | Adam | Novák | 1234 Anna | Nováčková | 1996-05-07 | Anna | Nováčková | 2345 Alice | Nováková | 1979-07-07 | Alice | Nováková | 3456 Amos | Nováček | 1973-04-11 | Amos | Nováček | 4567 (4 rows)
Smazání všech vypsaných duplicitních čtenářů
DELETE FROM jabok_students USING actor.usr WHERE jabok_students.date_of_birth IS NOT DISTINCT FROM actor.usr.dob AND actor.usr.first_given_name IS NOT DISTINCT FROM jabok_students.first_name;
Vložení do tabulky actor.usr
Pozn.: do tabulky musí být vloženo heslo
INSERT INTO actor.usr (
profile, usrname, passwd, email, ident_type, ident_value, first_given_name, family_name,
day_phone, home_ou, claims_returned_count, net_access_level, dob, expire_date, active)
SELECT profile_id, barcode, email, email, ident_type, ident_value, first_name,
last_name, phone, home_ou, 0, net_access_level, date_of_birth, expire_date, active FROM jabok_students;
Vložení úvodního čárového kódu (barcode)
Pozn.: číslo pro „barcode“ je totožné se „student id“)
INSERT INTO actor.card (usr, barcode)
SELECT actor.usr.id, jabok_students.barcode
FROM jabok_students
INNER JOIN actor.usr ON jabok_students.barcode = actor.usr.usrname;
UPDATE actor.usr AS au SET card = ac.id FROM actor.card AS ac WHERE au.id=ac.usr AND au.id between 2089 AND 2184;
INSERT INTO actor.usr_address (usr, street1, city, state, country, post_code, address_type)
SELECT actor.usr.id, jabok_students.street1, jabok_students.city, jabok_students.country, jabok_students.country, jabok_students.postal_code, jabok_students.address_type
FROM jabok_students
INNER JOIN actor.usr ON jabok_students.barcode = actor.usr.usrname;
UPDATE actor.usr SET expire_date = '2018-09-01 00:00:00+02' where id between 2089 AND 2184;
Import studentů do systému pro monitoring tisku SafeQ
Vytvoření CSV souboru pro import
Pro přípravu CSV souboru pro import do kopírovacího systému doporučujeme použít LibreOffice Calc, který automaticky nabízí import dat z textového souboru při jeho otevření.
- V LibreOffice Calc otevřete textový soubor s daty vyexportovanými z ISu (pomocí ikony pro otevření souboru). LibreOffice automaticky nabídne možnost importu dat z textového souboru.
- V nastavení importu vyberte znakovou sadu UTF-8 (pokud se nabídne v automatické volbě, není potřeba nic měnit.
- Jako národní prostředí vyberte Výchozí – čeština.
- Seřaďte uživatele podle UČO (první sloupec) a vpřípadě potřeby smažte prázdné řádky na začátku seznamu.
- Poté upravte pořadí sloupců tak, aby odpovídaly pořadí údajů pro import do SafeQ, tj.:
- Sloupec A: 100 (výběr operace přidání/mazání uživatelů)
- Sloupec B: Add (výběr přidání nového uživatele)
- Sloupec C: UČO (uživatelské jméno)
- Sloupec D: Jméno
- Sloupec E: Příjmení
- Sloupec F: Prázdný sloupec (číslo karty – doplňuje se při registraci uživatele do systému)
- Sloupec G: 1 (číslo střediska)
- Sloupec H: E-mailová adresa
- Sloupec I: Prázdný sloupec (adresář – nepoužíváme)
- Sloupec J: UČO
- Upravenou tabulku uložte jako Text CSV. Pokud se při ukládání zobrazí varování o nestandardním formátu souboru, potvrďte uložení ve formátu CSV.
- Ve vyskakovacím okně pro nastavení možností exportu zvolte následující hodnoty:
- Znaková sada: Unicode (UTF-8)
- Oddělovač pole: ; (středník )
- Oddělovač řetězců: „ (uvozovky)
- V zaškrtávacím poli vyberte: Uložit zobrazený obsah buňky