View
214
Download
0
Category
Preview:
Citation preview
April 2-5 Orlando, Florida
Create Your OwnSelf-Service Pages
Presented by: Robert Nitsos & Jim Keene, SJLoyola Marymount University
April 4, 2006
Evaluation Code 053
053
Evaluation Code 053
Session Rules of Etiquette
Please turn off your cell phone/pager
If you must leave the session early, please do so as discreetly as possible
Please avoid side conversation during the session
Thank you for your cooperation!
053
Evaluation Code 053
Introduction
Robert Nitsos
Assistant Registrar, Student Records Systems
Fr. Jim Keene, SJ
ITS, Senior Analyst
053
Evaluation Code 053
Loyola Marymount University
Private 4-Year Institution
>7000 FTE
5400 UG
1700 GR
21 EdD
Self-Service Since Spring 2000
Currently Banner 6.4
053
Evaluation Code 053
Topics of Discussion
Need for Capability
Creation of Package
Creation of Custom Roles
Web Tailor
Live Demo (I Hope!)
Questions / Answers / Comments / Praise / Donations / Accolades / etc.
April 2-5 Orlando, Florida
Need for Capability
“Why would anyone want to do this?”
053
Evaluation Code 053
Need for Capability
Desired functionality does not exist in baseline.
Most users do not have access to Banner – Self-Service Only!
Repeated requests for the same information.
Make my life easier!
April 2-5 Orlando, Florida
Creation of Package
“How do I get started?”
053
Evaluation Code 053
Where to Start
Look at Other Pages
See what SSCT is doing
Copy/Paste/Modify
Read BINFO, BSTUDENT, BORACLE
Post to BINFO, BSTUDENT, BORACLE
Other User Websites
053
Evaluation Code 053
Creation of Package
Package Header
Define Procedures/Functions to be Called
Passed Parameters
Package Body
Main Procedure Code
Additional Procedures/Functions/Cursors/etc.
053
Evaluation Code 053
Package Header
create or replace package lmubwfkadvr is
procedure LMU_P_Display_Advisors(stupidm IN SPRIDEN.SPRIDEN_PIDM%TYPE DEFAULT NULL, term IN STVTERM.STVTERM_CODE%TYPE DEFAULT NULL, error_mess IN VARCHAR2 DEFAULT NULL);
…Other procedures/functions defined…
END lmubwfkadvr;
053
Evaluation Code 053
Package Body
CREATE OR REPLACE PACKAGE BODY lmubwfkadvr AS
/* make sure registered then continue to process */
/* Global type and variable declarations for package */
pidm spriden.spriden_pidm%TYPE;
row_count NUMBER;
/****************************** LMU Show Advisors ***********************/
procedure LMU_P_Display_Advisors
(stupidm IN SPRIDEN.SPRIDEN_PIDM%TYPE DEFAULT NULL,
term IN STVTERM.STVTERM_CODE%TYPE DEFAULT NULL,
error_mess IN VARCHAR2 DEFAULT NULL)
is
053
Evaluation Code 053
Package Body (cont.)
Variable Declarationscurr_release varchar2(10) := '6.3';term_rec stvterm%rowtype;term_desc stvterm.stvterm_desc%TYPE;hold_term stvterm.stvterm_code%TYPE;hold_stupidm spriden.spriden_pidm%TYPE;hold_stupidm_char varchar2(30) DEFAULT NULL;…reg_role varchar2(1);user_college stvcoll.stvcoll_code%type;stu_levl sgbstdn.sgbstdn_levl_code%type;stu_major sgbstdn.sgbstdn_majr_code_1%type;stu_major1 sgbstdn.sgbstdn_majr_code_1%type;stu_major2 sgbstdn.sgbstdn_majr_code_2%type;stu_minor1 sgbstdn.sgbstdn_majr_code_minr_1%type;stu_minor2 sgbstdn.sgbstdn_majr_code_minr_1_2%type;mjr_coll stvcoll.stvcoll_code%type;
053
Evaluation Code 053
Package Body (cont.)
/* Cursor for information that is to be displayed */
cursor advr_infoisselect a1.sgradvr_pidm pidm,
a1.sgradvr_term_code_eff term_code_eff,a1.sgradvr_advr_pidm advr_pidm,a1.sgradvr_advr_code advr_code,stvadvr_desc advr_desc,a1.sgradvr_prim_ind prim_ind,a1.sgradvr_activity_date activity_date
from sgradvr a1, stvadvrwhere a1.sgradvr_pidm = hold_stupidmand a1.sgradvr_term_code_eff =
(select max(a2.sgradvr_term_code_eff) from sgradvr a2 where a2.sgradvr_term_code_eff <= hold_term and a1.sgradvr_pidm = a2.sgradvr_pidm)
and a1.sgradvr_advr_code = stvadvr_code(+)order by nvl(a1.sgradvr_prim_ind, 'N') DESC, advr_desc;
a_rec advr_info%rowtype;
053
Evaluation Code 053
Package Body (cont.)
Check the current user’s PIDM and determine Roles
/* check for valid user and define roles */
IF NOT twbkwbis.F_ValidUser(pidm) THEN
return;
END IF;
053
Evaluation Code 053
Package Body (cont.)
If no Term was passed, get it from the user
IF TERM IS NULL THENhold_term := twbkwbis.F_GetParam(pidm,'TERM');
ELSEtwbkwbis.P_SetParam(pidm,'TERM',term);hold_term := term;
END IF;/* Make sure a term has been selected */IF hold_term is null THEN
bwlkostm.P_FacSelTerm(calling_proc_name => 'lmubwfkadvr.LMU_P_Display_Advisors');
RETURN;END IF;
053
Evaluation Code 053
Package Body (cont.)
Check to see if user is a valid faculty member
IF NOT bwlkilib.F_ValidFac(hold_term, pidm) THENmsg := 'You must be a valid faculty member to access ' ||
'this page.';twbkfrmt.P_PrintMessage(msg, 'ERROR');twbkfrmt.P_Paragraph(1);twbkwbis.P_CloseDoc(curr_release);RETURN;
ELSE/* Indicate that user is a faculty member */twbkwbis.P_SetParam(pidm, 'STUFAC_IND', 'FAC');
END IF;
053
Evaluation Code 053
Package Body (cont.)
If no student PIDM was passed, get it from the user
IF STUPIDM IS NULL THENhold_stupidm_char := twbkwbis.F_GetParam(pidm,'STUPIDM');
ELSEtwbkwbis.P_SetParam(pidm,'STUPIDM',to_char(STUPIDM,'999999999'));hold_stupidm := STUPIDM;
END IF;/* If stupidm came from the table, then change it to a number */if hold_stupidm_char is not null then
hold_stupidm := to_number(hold_stupidm_char,'999999999');end if;
/* Make sure a student PIDM has been selected */IF hold_stupidm IS NULL THEN
bwlkoids.P_FacIDSel(hold_term,calling_proc_name => 'lmubwfkadvr.LMU_P_Display_Advisors',calling_proc_name2 => 'lmubwfkadvr.LMU_P_Display_Advisors');
RETURN;END IF;
053
Evaluation Code 053
Package Body (cont.)
Open Page, Display Information
bwckfrmt.p_open_doc ('lmubwfkadvr.LMU_P_Display_Advisors', hold_term);
/* If the user is not a valid faculty member for the selected *//* term, print a message, close the page, and exit. */IF NOT bwlkilib.F_ValidFac (hold_term, pidm) THEN
msg := 'You must be a valid faculty member for the selected term to access this page.';
twbkfrmt.p_printmessage (msg, 'ERROR');twbkwbis.p_closedoc (curr_release);RETURN;
END IF;
twbkwbis.P_DispInfo('lmubwfkadvr.LMU_P_Display_Advisors','GENERAL');
term_desc := nvl(f_get_desc_fnc('STVTERM', hold_term, 30), 'Term Unknown');
053
Evaluation Code 053
Package Body (cont.)
Get User’s Role, Get User’s Home College
/* See if User is member of custom Registrar role */reg_role := 'N';twbkslib.p_fetchroles(pidm);FOR i IN 1 .. twbkslib.num_rolesLOOP
IF (twbkslib.role_table(i) = 'REGISTRAR') THENreg_role := 'Y';
END IF;END LOOP;
/* Get User's Home College */open user_coll;fetch user_coll into uc_rec;if user_coll%notfound then
user_college := null;else
user_college := uc_rec.coll;end if;
053
Evaluation Code 053
Package Body (cont.)
Get User’s Role, Get User’s Home College
/* Display Student Name & Link to Address Info */bwcklibs.P_ConfidStudInfo (hold_stupidm, hold_term);
/* Get Student's Program of Study */open stu_info;fetch stu_info into s_rec;if stu_info%notfound then
twbkwbis.P_DispInfo('lmubwfkadvr.LMU_P_Display_Advisors','NO_PROGRAM');
else
053
Evaluation Code 053
Package Body (cont.)
Display Student Program Data
twbkfrmt.p_paragraph (1);twbkfrmt.P_TableOpen('DATADISPLAY', cattributes => 'summary="This table displays program information for the selected student."', ccaption => 'Program of Study - '||term_desc);
twbkfrmt.P_TableRowOpen;twbkfrmt.P_TableDataHeader('Level:',calign=>'left');twbkfrmt.P_TableData(s_rec.levl_desc,calign=>'left',ccolspan=>'2');stu_levl := s_rec.levl_code;twbkfrmt.P_TableRowClose;twbkfrmt.P_TableRowOpen;twbkfrmt.P_TableDataHeader('Class:',calign=>'left');twbkfrmt.P_TableData(s_rec.class_desc,calign=>'left',ccolspan=>'2');twbkfrmt.P_TableRowClose;twbkfrmt.P_TableRowOpen;
…twbkfrmt.P_TableRowClose;twbkfrmt.P_TableClose;twbkfrmt.p_paragraph (1);
end if;
053
Evaluation Code 053
Package Body (cont.)
Display Advisor Info
open advr_info;fetch advr_info into a_rec;if advr_info%notfound then
twbkwbis.P_DispInfo('lmubwfkadvr.LMU_P_Display_Advisors','NO_DATA');if (s_rec.coll1 = user_college) or (reg_role = 'Y') then /* Display button to Insert Advisor */
htp.formOpen('lmubwfkadvr.LMU_P_Select_Advisor', 'post');htp.formHidden('s_pidm', hold_stupidm);htp.formHidden('cur_term', hold_term);htp.formHidden('u_coll', user_college);htp.formHidden('r_role', reg_role);htp.formHidden('cur_advr_pidm', a_rec.advr_pidm);htp.formHidden('cur_advr_code', a_rec.advr_code);htp.formHidden('cur_prim_ind', a_rec.prim_ind);twbkfrmt.P_TableOpen('DATADISPLAY');twbkfrmt.P_TableRowOpen;twbkfrmt.P_TableDataOpen(calign=>'center');htp.formSubmit(null, 'Insert Advisor');twbkfrmt.P_TableDataClose;twbkfrmt.P_TableRowClose;twbkfrmt.P_TableClose;htp.formClose;
end if;
053
Evaluation Code 053
Package Body (cont.)
Display Advisor Info
elsercount := 0;LOOP
if rcount > 0 thenfetch advr_info into a_rec;
end if;EXIT WHEN advr_info%notfound;
if rcount = 0 then/* Open Table and Create Header Labels */twbkfrmt.P_TableOpen('DATADISPLAY',
cattributes => 'summary="This table displays advisors assigned to the selected student."',
ccaption => 'Assigned Advisor(s) - '||term_desc);twbkfrmt.P_TableRowOpen;twbkfrmt.P_TableDataHeader('Advisor Name',calign=>'center');twbkfrmt.P_TableDataHeader('Advisor Code',calign=>'center');twbkfrmt.P_TableDataHeader('Advisor Type',calign=>'center');twbkfrmt.P_TableDataHeader('Prim',calign=>'center');twbkfrmt.P_TableDataHeader('Action',calign=>'center');twbkfrmt.P_TableRowClose;
end if;
053
Evaluation Code 053
Package Body (cont.)
Display Advisor Info
/* Format Advisor Name */advisor_name := f_format_name (a_rec.advr_pidm, 'LFMI');
if a_rec.advr_code = 'MAJ1' then /* Get Major Coll for Major1 */mjr_coll := null;stu_major := stu_major1;open majr_info;fetch majr_info into m_rec;if majr_info%notfound then
mjr_coll := null;else
mjr_coll := m_rec.coll_code;end if;
053
Evaluation Code 053
Package Body (cont.)
If user is member of college, allow update of existing advisor
if (reg_role = 'Y') or (mjr_coll = user_college) then /* Display Button to Allow Advisor Change */htp.formOpen('lmubwfkadvr.LMU_P_Select_Advisor', 'post');htp.formHidden('s_pidm', hold_stupidm);htp.formHidden('cur_term', hold_term);htp.formHidden('u_coll', user_college);htp.formHidden('r_role', reg_role);htp.formHidden('cur_advr_pidm', a_rec.advr_pidm);htp.formHidden('cur_advr_code', a_rec.advr_code);htp.formHidden('cur_prim_ind', a_rec.prim_ind);
twbkfrmt.P_TableRowOpen;twbkfrmt.P_TableData(advisor_name,calign=>'left');twbkfrmt.P_TableData(a_rec.advr_code,calign=>'left');twbkfrmt.P_TableData(a_rec.advr_desc,calign=>'left');twbkfrmt.P_TableData(a_rec.prim_ind,calign=>'left');
/* Add button for Advisor Update */twbkfrmt.P_TableDataOpen(calign=>'center');htp.formSubmit(null, 'Update Advisor');twbkfrmt.P_TableDataClose;twbkfrmt.P_TableRowClose;htp.formClose;
053
Evaluation Code 053
Package Body (cont.)
If user is not member of college, just display advisor
elsetwbkfrmt.P_TableRowOpen;twbkfrmt.P_TableData(advisor_name,calign=>'left');twbkfrmt.P_TableData(a_rec.advr_code,calign=>'left');twbkfrmt.P_TableData(a_rec.advr_desc,calign=>'left');twbkfrmt.P_TableData(a_rec.prim_ind,calign=>'left');twbkfrmt.P_TableData(null,calign=>'left');twbkfrmt.P_TableRowClose;
end if;close majr_info;
elsif a_rec.advr_code = 'MAJ2' then…/* similar code for other major types */…
END LOOP;
twbkfrmt.P_TableClose;twbkfrmt.p_paragraph (1);
end if;close advr_info;
053
Evaluation Code 053
Package Body (cont.)
Display footer text, close page and end procedure
twbkwbis.P_DispInfo('lmubwfkadvr.LMU_P_Display_Advisors','FOOTER');
twbkwbis.P_CloseDoc(curr_release);end LMU_P_Display_Advisors;
Other procedures in file:
procedure LMU_P_Select_Advisor
procedure LMU_P_Update_Advisor
053
Evaluation Code 053
Synonyms & Grants
Create a Public Synonym and Grant Execute Privileges to WWW_USER
whenever sqlerror continue;
drop public synonym lmubwfkadvr;
whenever sqlerror exit rollback;
create public synonym lmubwfkadvr for lmubwfkadvr;
grant execute on lmubwfkadvr to WWW_USER;
April 2-5 Orlando, Florida
Bonus Code: Download Data to Excel
“You forgot this last year!”
053
Evaluation Code 053
Download Data to Excel
Procedure to display data in Excel format
procedure LMU_DL_Course_Data (term IN STVTERM.STVTERM_CODE%TYPE DEFAULT NULL,crn in sfrstcr.sfrstcr_crn%type default null)
is
cursor student_listisselect stvterm_code term_code,…from stvterm, sfrstcr, …where stvterm_code = term…order by name;
slist student_list%rowtype;
053
Evaluation Code 053
Download Data to Excel (cont.)
Set Mime Type to be Excel and Create Table
begin
owa_util.mime_header('application/vnd.ms-excel');
htp.tableopen;htp.tablerowopen;
htp.tableheader('ID');htp.tableheader('CONF');htp.tableheader('Last Name');htp.tableheader('First Name');…htp.tableheader('City');htp.tableheader('State');htp.tableheader('Zip');htp.tableheader('Nation');htp.tableheader('Phone');htp.tableheader('Email');
htp.tablerowclose;
053
Evaluation Code 053
Download Data to Excel (cont.)
For each record in Cursor, insert row
FOR slist IN student_listLOOP
htp.tablerowopen;htp.tabledata(slist.id);htp.tabledata(slist.confid);htp.tabledata(slist.lname);htp.tabledata(slist.fname);…htp.tabledata(slist.city);htp.tabledata(slist.state);htp.tabledata(slist.zip);htp.tabledata(slist.nation);htp.tabledata(slist.phone);htp.tabledata(slist.email);
htp.tablerowclose;END LOOP;
htp.tableclose;end LMUDLPhotoRoster;
053
Evaluation Code 053
Download Data to Excel (cont.)
Results
April 2-5 Orlando, Florida
Create Custom Roles
“People other than Students, Faculty, Alumni, Employees, etc.”
053
Evaluation Code 053
Create Custom Roles
This optional step allows you to define a “custom” role This role can then be assigned to users and pages
TWTVROLE Table
TWTVROLE_CODE
TWTVROLE_DESC
TWTVROLE_ACTIVITY_DATE
TWTVROLE_USER_DEFINED_IND
Insert into twtvrole
Values(‘ROLE_CODE’, ‘Role Description’, SYSDATE, ‘Y’);
April 2-5 Orlando, Florida
Web Tailor
“How do I get my page to show up?”
053
Evaluation Code 053
Web Tailor
Create Procedure
Add to Menu
Create Info Text
Assign Roles to Users
053
Evaluation Code 053
Create a New Procedure
Click on the Create button to add your procedure to the database
053
Evaluation Code 053
Create Procedure
Enter Page Name
Enter Description
Select Module
Enable
Enter Page Title
Enter Header Text
053
Evaluation Code 053
Create Procedure (cont.)
Enter Page CSS URL and Help Link (if any)
Enter Back Link URL & Text (if any)
Check Back Menu box
Select Role(s)
053
Evaluation Code 053
Add Page to Menu
Select menu to which the page is to be added
Click the Customize Menu Items button
053
Evaluation Code 053
Add New Menu Item
Click the Add a New Menu Item button at the bottom of the page
053
Evaluation Code 053
Create New Menu Item
Enter Sequence #
Enter the URL and Link Text
If you want additional text displayed, enter a Link Description
Enter Status Bar Text
Be sure that the Enabled and Database Procedure boxes are checked!
053
Evaluation Code 053
Customize Information Text
Select the page to which you want to add/update Information Text
Click the Customize Information Text button
053
Evaluation Code 053
Create Information Text
Click on the Add a New Information Text Entry button
053
Evaluation Code 053
Create Information Text (cont.)
Select the Sequence Number
Enter (or Select) the Label name
Enter the Information Text
Select an Image
053
Evaluation Code 053
Assign Custom Role(s) to User(s)
Custom roles may be assigned to users
Enter the User ID
Click the Submit button
053
Evaluation Code 053
Assign Custom Role(s) to User(s) (cont.)
Check the box next to each role you wish to assign
Student and Faculty roles are dynamically assigned by the system
April 2-5 Orlando, Florida
Demo
“Show me the pages!”
053
Evaluation Code 053
053
Evaluation Code 053
Summary
Learn by Doing
Start Simple
Ask for Help
Collaborate
Examine Existing Code
Read/Post to BINFO, BSTUDENT and BORACLE
053
Evaluation Code 053
Questions & Answers
053
Evaluation Code 053
Thank You!
Robert Nitsosrnitsos@lmu.edu
http://registrar.lmu.edu/Code/LMUBAnnerCode.htm
Please complete the on-line Evaluation Form
Evaluation Code 053
Send me to Las Vega$!
Recommended