Rules Writing 101 Does RORRULE make you break out in a cold sweat

Slides:



Advertisements
Similar presentations
th Annual PABUG Conference Session Title Presenter Name.
Advertisements

Population Selections, RORRULEs, and Web Text – Oh My!
Cal Grant GPA Submission Training – Non-SSN
TPT EPAF Temporary Part-Time Rehire EPAF. What is a TPT EPAF? The EPAF for Temporary Part-Time (TPT) is an electronic process allowing for paperless personnel.
TIPS AND TRICKS WITH POPSELS! NANCY LARSON FINANCIAL AID COORDINATOR FULLERTON COLLEGE
Lakisha Sanders Assistant Vice President of Financial Aid
PHP meets MySQL.
TIPS AND TRICKS WITH POPSELS!
th Annual PABUG Conference 1098T Banner Process – Easy or Difficult? Cathy Poiesz Messiah College.
th Annual PABUG Conference Recruiter Panel Discussion Erin Marker Temple University Sony Rodriguez Montclair State University.
th Annual PABUG Conference Understanding student enrollment patterns and increasing retention through Registrar software tools including Banner,
th Annual PABUG Conference How I Used Google Products to Create an Interactive Menu Gregory Amarante Bucknell University.
th Annual PABUG Conference Making Sense of Banner Security Ed Siegle, Swarthmore College.
th Annual PABUG Conference SmartCall for Admissions Sherri Wolgemuth Recruiting & Admissions Data Systems Administrator and ACS Supervisor Rachel.
th Annual PABUG Conference Automating PLUS loans How to do it What not to do.
th Annual PABUG Conference Viewing Xtender Documents via Self-Service Sherri Wolgemuth Recruiting & Admissions Data Systems Administrator and ACS.
Chapter 12© copyright Janson Industries Java Server Faces ▮ Explain the JSF framework ▮ SDO (service data objects) ▮ Facelets ▮ Pagecode classes.
th Annual PABUG Conference MESSAGE SOLUTION WITH RHACOMM Judy Strauser Director of Operations, Financial Aid Swarthmore College.
Student Financial Assistance. Session 18-2 Session 18 Updates & Tips for the EDExpress 8.2 Pell Module.
th Annual PABUG Conference ISIR Comparison Lin Taylor.
Python: Building Geoprocessing Tools David Wynne, Ghislain Prince.
N5 Databases Notes Information Systems Design & Development: Structures and links.
Making Sense of Banner Security
MBUG 2016 Session Title: Automating & Streamlining in the FAO
Workflow: Beyond Basics
Catherine Maloney, SHRM-CP, PHR Sr. Business Systems Analyst, HR
Integrating CRM Recruit with Banner
MBUG 2016 Session Title: Return to Title IV in Banner
GO! with Microsoft Office 2016
USING Sql to make banner better
Using the Banner Workflow Process to Validate Security Roles
Basic Population Selections
GO! with Microsoft Access 2016
Algorithmic Packaging
Daniel H. Wilson Data Architect Temple University
Customizing Communication Workflows for CRM Recruit – A Case Study
Associate Director-Business Intelligence
Julie Riganati Finance Systems Analyst La Salle University
Working REAUCOD for PLUS Loans: A new way to get organized
A Moving Target… Current State of Student Reporting & Analytics
Materials Engineering Product Data Management (ePDM)
Stockton and Chrome River: Our Look- Our Requirements for Travel
Banner 9 Registration – Drexel’s Journey
Building and Using Queries
Period Year in College Susan Smith & Karen Ruehlman 9/19/2018
Student Travel Reimbursement
Getting Started with Scratch
Luminis 5 Portal Journey with Integrated Content
LEVERAGE BANNER DATA IN MARKETING WEBSITES
Spreadsheets, Modelling & Databases
Event Analytics Pam Rollins Temple University November 19, 2018
Student Loan Totals in Self Service
1098Ts – A Panel Discussion Tom Roth - Stockton State University
It’s not just collections, it’s your reputation
Using Banner Data to Support Strategic Initiatives for Student Success
Summer Financial Aid A Case Study on How we Manage Summer as a Trailer
The Next Generation Transcript Experience
Becoming a Transformational Leader
The Deposit Block – It’s not just for Deposits
Banner Communication Manager at IUP
Jeremy Mayernik Duquesne University
STOCKTON UNIVERSITY LIVE ON BANNER 9
ALUMNI ENGAGEMENT METRICS
Banner 9 Testing, Implementing, Communicating
Diana Weaver and Keith Bell Lehigh University
PABUG Portal-Mobile Survivor Contest
Student Tracker for Colleges and Universities
Importing And Exporting
Permit Tracking Events
CSF Westfield Dollars for Scholars: Completing the Student Profile
Presentation transcript:

Rules Writing 101 Does RORRULE make you break out in a cold sweat Rules Writing 101 Does RORRULE make you break out in a cold sweat? Does SQL give you hives? This session will teach some basics of writing rules in SQL. No prior SQL knowledge is assumed. Lin Taylor

CPE Credits To receive CPE credits for this session (if eligible), complete the CPE Attendance Form on the PABUG Annual Conference website http://pabug.org/events/cpe-credits/ For additional questions please contact Lora Harper CPE - Coordinator http://pabug.org/contact-us/

Messiah College 2800 Undergraduate students 749 Graduate students Banner school since 2006

Basic SQL Data is stored in tables Often there is a form in Banner for the table that has a similar name ROASTAT RORSTAT RPAAWRD  RPRAWRD RBAPBUD  RBRAPBC

Basic SQL Every table contains fields also called columns, which are pieces of data, and the name starts with the table name: RORSTAT RORSTAT_PIDM RORSTAT_AIDY_CODE RORSTAT_TGRP_CODE

Basic SQL The definition of the table has all its fields

How to find a field in Banner Click on the field

How to find a field in Banner Click on TOOLS To get the tools menu to pop up Then click Item Properties

How to find a field in Banner Scroll down to find the physical name. The is the name of the field/column. Either copy it or type it into your rule.

Basic SQL Rules are SQL Queries. Queries have: SELECT FROM WHERE

Basic SQL Select  what fields (bits of data) you want SELECT RPRAWRD_AIDY_CODE, RPRAWRD_PIDM, RPRAWRD_FUND_CODE, RPRAWRD_OFFER_AMT Note the commas

Basic SQL FROM  what table(s) FROM RPRAWRD

WHERE Filters the results WHERE RPRAWRD_AIDY_CODE = '1819' Basic SQL WHERE Filters the results WHERE RPRAWRD_AIDY_CODE = '1819' Note: Single quotes, not double

Basic SQL SELECT RPRAWRD_AIDY_CODE, RPRAWRD_PIDM, RPRAWRD_FUND_CODE, RPRAWRD_OFFER_AMT FROM RPRAWRD WHERE RPRAWRD_AIDY_CODE = '1819' Results?

Basic SQL SELECT RPRAWRD_AIDY_CODE, RPRAWRD_PIDM, RPRAWRD_FUND_CODE, RPRAWRD_OFFER_AMT FROM RPRAWRD Does it work without the WHERE?

Basic SQL What if you need info from more than 1 table? Join

Basic SQL SELECT RPRAWRD_AIDY_CODE, RPRAWRD_PIDM, RPRAWRD_FUND_CODE, RPRAWRD_OFFER_AMT FROM RPRAWRD WHERE RPRAWRD_AIDY_CODE = '1819‘ What if we want to know the packaging group And only get people who filed the FAFSA?

Basic SQL We need RORSTAT_PGRP_CODE And RORSTAT_APPL_RCVD_DATE FROM RORSTAT

Basic SQL Add the new field to the SELECT SELECT RPRAWRD_AIDY_CODE, RPRAWRD_PIDM, RPRAWRD_FUND_CODE, RPRAWRD_OFFER_AMT, RORSTAT_PGRP_CODE

Basic SQL Add the new table to the FROM FROM RPRAWRD, RORSTAT

Basic SQL Add the new filter to the WHERE using AND WHERE RPRAWRD_AIDY_CODE = '1819‘ AND RORSTAT_APPL_RCVD_DATE IS NOT NULL NULL means there is nothing in it

Basic SQL SELECT RPRAWRD_AIDY_CODE, RPRAWRD_PIDM, RPRAWRD_FUND_CODE, RPRAWRD_OFFER_AMT, RORSTAT_PGRP_CODE FROM RPRAWRD, RORSTAT WHERE RPRAWRD_AIDY_CODE = '1819‘ AND RORSTAT_APPL_RCVD_DATE IS NOT NULL Will that work? No – will return all RPRAWRD for that year matched with all the rorstat records

Basic SQL When you join two tables you have to connect then together using fields. When you look at a student’s award, you only want info: For that student For that aid year

Basic SQL For that student  PIDM For that aid year  AIDY_CODE Note: In GRLSLCT, Banner matches the PIDMS for you.

Basic SQL SELECT RPRAWRD_AIDY_CODE, RPRAWRD_PIDM, RPRAWRD_FUND_CODE, RPRAWRD_OFFER_AMT, RORSTAT_PGRP_CODE FROM RPRAWRD, RORSTAT WHERE RPRAWRD_AIDY_CODE = '1819' AND RORSTAT_APPL_RCVD_DATE IS NOT NULL AND RPRAWRD_AIDY_CODE = RORSTAT_AIDY_CODE AND RPRAWRD_PIDM = RORSTAT_PIDM

Basic SQL Joins can be complex: When looking at ISIR info WHERE RCRAPP1_CURR_REC_IND = 'Y‘ -- Match on the current record AND RCRAPP1_PIDM = RCRAPP2_PIDM -- PIDM AND RCRAPP1_PIDM = RCRAPP3_PIDM AND RCRAPP1_PIDM = RCRAPP4_PIDM AND RCRAPP1_AIDY_CODE = '1819‘ -- Aid Year AND RCRAPP2_AIDY_CODE = '1819' AND RCRAPP3_AIDY_CODE = '1819' AND RCRAPP4_AIDY_CODE = '1819' AND RCRAPP1_INFC_CODE = RCRAPP2_INFC_CODE -- Type ISIR vs EDE AND RCRAPP1_INFC_CODE = RCRAPP3_INFC_CODE AND RCRAPP1_INFC_CODE = RCRAPP4_INFC_CODE AND RCRAPP1_SEQ_NO = RCRAPP2_SEQ_NO -- Sequence number AND RCRAPP1_SEQ_NO = RCRAPP3_SEQ_NO AND RCRAPP1_SEQ_NO = RCRAPP4_SEQ_NO

Different types of rules RORRULE – Many types – select pidms PKGALGR – Packaging Rules Amounts RBRABRC – Budgeting Rules Amounts RORWVAR – Web Variables Rule

How to build a rule RORRULE

How to build a rule RORRULE No name validation The rules are based on an already defined name T  Tracking groups A  Fund Codes B  Budget Groups etc

How to build a rule If you find a tracking group with no rule defined, you will see this screen:

How to build a rule Starting from scratch Page down to the 2nd block and click on the … to select a table name.

How to build a rule Type in the table name and click on the table

How to build a rule Click on Column Name

How to build a rule Type in all or part of the name And Click on the field

How to build a rule Click the operator to select what you are looking for, then save it. (Click Save)

How to build a rule I added RCRAPP2_MODEL_CDE = ‘D’ (Dependent)

How to build a rule You can add all your fields this way or… Click tools and select Compiled/Expert SQL Code

How to build a rule Compiled/Expert SQL Code allows for free form editing

How to build a rule Very cool! Because you can make more complex rules than with GLRSLCT

How to build a rule You can add returns to make it more readable

How to build a rule SELECT DISTINCT(RORSTAT_PIDM) FROM RORSTAT WHERE RORSTAT_APPL_RCVD_DATE IS NOT NULL AND RORSTAT_PIDM = :PIDM AND RORSTAT_AIDY_CODE = :AIDY You will notice that it added aid year and pidm for me. :AIDY matches records to the current aid year. :PIDM is the current pidm being evaluated.

How to build a rule Let’s add verification status = ‘V’

We start the line with AND because we want all the things to be true. How to build a rule SELECT DISTINCT(RORSTAT_PIDM) FROM RORSTAT WHERE RORSTAT_APPL_RCVD_DATE IS NOT NULL AND RORSTAT_PIDM = :PIDM AND RORSTAT_AIDY_CODE = :AIDY AND RORSTAT_VER_PAY_IND = 'V' We start the line with AND because we want all the things to be true.

How to build a rule AND RORSTAT_VER_PAY_IND IN ('S','V') If you are looking for more than 1 code, use IN SELECT DISTINCT(RORSTAT_PIDM) FROM RORSTAT WHERE RORSTAT_APPL_RCVD_DATE IS NOT NULL AND RORSTAT_PIDM = :PIDM AND RORSTAT_AIDY_CODE = :AIDY AND RORSTAT_VER_PAY_IND IN ('S','V') RORSTAT_TGRP_CODE IN ('XWTHDN','XCNCLD','XNAPST')

RORSTAT_VER_PAY_IND NOT IN ('S','V') How to build a rule Using NOT RORSTAT_VER_PAY_IND NOT IN ('S','V') RORSTAT_TGRP_CODE NOT IN ('XWTHDN','XCNCLD','XNAPST') When you want all the codes except for those codes.

RORSTAT_TGRP_code LIKE 'U%' How to build a rule LIKE can come in handy. All of our Undergrad Tracking groups start with U RORSTAT_TGRP_code LIKE 'U%' Selects all the students with a tracking group that starts with 'U', which for us is all the students with UG tracking groups.

How to build a rule Matching on a date: RORSTAT_APPL_RCVD_DATE <= TO_DATE('01-APR-2017') Date must be in this format '01-APR-2017' OR you can subtract from today’s date: SYDATE = today RORSTAT_APPL_RCVD_DATE <= SYDATE – 10 FAFSA received at least 10 days ago

How to build a rule SELECT DISTINCT(RPRAWRD_PIDM) FROM RPRAWRD WHERE RPRAWRD_AIDY_CODE = :AIDY Use DISTINCT if there is more than 1 record per student for that filter. RORRULE uses this

How to build a rule SELECT DISTINCT(ROBUSDF_PIDM) FROM ROBUSDF, SPBPERS, RORSTAT WHERE (ROBUSDF_VALUE_3 IS NOT NULL OR (SPBPERS_ETHN_CODE IN ('1','1N') AND RORSTAT_INFC_CODE IS NULL )) AND SPBPERS_PIDM = ROBUSDF_PIDM AND RORSTAT_PIDM = ROBUSDF_PIDM AND RORSTAT_AIDY_CODE = ROBUSDF_AIDY_CODE AND ROBUSDF_AIDY_CODE = :AIDY AND ROBUSDF_PIDM = :PIDM OR!!

OR (SPBPERS_ETHN_CODE IN ('1','1N') AND RORSTAT_INFC_CODE IS NULL )) How to build a rule Using OR WHERE (ROBUSDF_VALUE_3 IS NOT NULL OR (SPBPERS_ETHN_CODE IN ('1','1N') AND RORSTAT_INFC_CODE IS NULL ))

How to build a rule You are admitted: If you have a ticket R rated movie You are admitted: If you have a ticket If you are 17 or older If you are with a parent Either or

WHERE You_have_a_ticket = 'Yes' Age >=17 With_a_ parent = 'Yes' How to build a rule R rated movie WHERE You_have_a_ticket = 'Yes' Age >=17 With_a_ parent = 'Yes'

WHERE You_have_a_ticket = 'Yes' AND Age >=17 How to build a rule R rated movie WHERE You_have_a_ticket = 'Yes' AND Age >=17 OR With_a_ parent = 'Yes'

WHERE You_have_a_ticket = 'Yes' AND How to build a rule R rated movie WHERE You_have_a_ticket = 'Yes' AND (Age >=17 OR With_a_ parent = 'Yes') OR – usually require parenthesis

How to test a rule Yes, how? ?????

How to test a rule ROAIMMP Find a student who should be in the group And run them through ROAIMMP ?????

How to test a rule You can test other rule types like PKGALGR – Packaging Rules Amounts RBRABRC – Budgeting Rules Amounts RORWVAR – Web Variables Rule ?????

How to test a rule Type in the ID and AID Year Then confirm the ????? Type in the ID and AID Year Then confirm the and click Execute calculated Value

Other Rules

RBRABRC Algorithmic budgeting SELECT baninst1.mc_fa_budget.get_art_fee(:AIDY, :PBTP) FROM rzvpbgp WHERE rzvpbgp_pidm = :PIDM AND rzvpbgp_aidy_code = :AIDY AND rzvpbgp_period = :PERIOD AND rzvpbgp_majr_code LIKE '%ART%' Why no hard coded amount?

PHEAA Rule - Packaging SELECT DISTINCT RORSTAT_PIDM FROM RCRAPP1, RORSTAT WHERE RCRAPP1_AIDY_CODE = RORSTAT_AIDY_CODE AND RCRAPP1_PIDM = RORSTAT_PIDM AND RCRAPP1_CURR_REC_IND = 'Y' AND RORSTAT_APPL_RCVD_DATE IS NOT NULL AND RCRAPP1_RCPT_DATE < TO_DATE('01-MAY-2017') AND RCRAPP1_STAT_CODE_RES = 'PA' AND RORSTAT_AIDY_CODE = :AIDY AND RORSTAT_PIDM = :PIDM

Another rule SELECT RORSTAT_PIDM FROM RORSTAT, SHRLGPA WHERE RORSTAT_PIDM = SHRLGPA_PIDM AND RORSTAT_AIDY_CODE = :AIDY AND RORSTAT_PIDM = :PIDM AND SHRLGPA_LEVL_CODE = 'UG' AND SHRLGPA_GPA_TYPE_IND = 'O' AND ROUND(SHRLGPA_GPA, 2) >= 3.0

Continuing students packaging group rule SELECT DISTINCT(RZVTGRP_PIDM) FROM RZVTGRP WHERE RZVTGRP_AIDY_CODE = :AIDY AND RZVTGRP_PIDM = :PIDM AND ((RZVTGRP_MODULE = 'STU' AND RZVTGRP_STYP_CODE IN ('C','E','R','X', 'T', 'N','M','O','B')) OR (RZVTGRP_MODULE = 'ADM' AND RZVTGRP_STYP_CODE = 'R'))

Open to the Floor Questions Comments

Thank You Your input matters! Please submit a session evaluation. PABUG Mobile App Session Browser https://pabug.conferenspy.com/sessionlist/