1 / 43

R18 Administration – A Closer Look

R18 Administration – A Closer Look. NERDug 2006 – Suffolk University Session 10727 7/28/2006 9:30AM Jeff Ohvall – University of Wisconsin, Stout Kay Schnur – University of Wisconsin, Stout Jeff Butera – Hampshire College. R18 Administration – Outline. Computed Columns What's new

trinh
Download Presentation

R18 Administration – A Closer Look

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. R18 Administration – A Closer Look NERDug 2006 – Suffolk University Session 10727 7/28/2006 9:30AM Jeff Ohvall – University of Wisconsin, Stout Kay Schnur – University of Wisconsin, Stout Jeff Butera – Hampshire College

  2. R18 Administration – Outline • Computed Columns • What's new • Tricks/traps! • Development Lifecycle • Conceptually same • Move utilities different, LPR is fun! • R18 Migration Plan • What, when and why • We got there, you can too!

  3. Computed Columns

  4. Computed Columns • New MANDATORY language/syntax • Similar to Java/J# • If Unidata combined, focus effort here • Run scanners early and often! • Take action to correct/change computed columns in R17 live environment NOW!

  5. Computed Columns • Syntax is similar to Java/J# • Follows object-oriented design • There is a learning curve • Frustration will ensue – keep plugging away • Must end with a return statement

  6. Computed Column Variables • CDD vars must have v or vl notation • Temp vars should use x or xl notation • Remove all periods • Capitalize first letter after period ID => vId STUDENTS.ID => vStudentsId X.TEMP => xTemp

  7. Computed Column Variable Types • Matters more for SQL/Oracle • string • money • date • realnum • key • boolean • int

  8. Computed Column Key Type • Creates pointer to another file string xResult1; key xKeyStudentAcadCred for file StudentAcadCred; xKeyStudentAcadCred = vlPstStudentAcadCred[1]; xResult1 = vStcTerm; return xResult1;

  9. Computed Column Typecast • Changes one type to another • List new type in parens int xTemp; xTemp = 5; string xString; xString = (string) xTemp; return xString;

  10. Computed Column Arrays • Like Unidata list variable • Elements can be inserted, deleted, extracted • Use [] notation to grab specific element int xTemp; int[] xlMylist; ... xTemp = xlMylist[4]; return xTemp;

  11. Computed Column Subroutines • Must be IS typed on BGP • First argument is only output allowed • Naming convention same as variables: string xResult1; int xAge; xResult1 = SCalcAge(vId); xAge = (int) xResult1; return xAge;

  12. Computed Column Control/Blocks • May enclose blocks of code in {} • Blocks following if/else MUST have {} string xResult1,xResult2; int xAge; xResult1 = SCalcAge(vId); xAge = (int) xResult1; if (xAge > 40) {   xResult2 = 'OLD'; } else {   xResult2 = 'YOUNG'; } return xResult2;

  13. Computed Column Methods .Char() is like CHAR: X = CHAR(253) string xResult; xResult = (253).Char(); .Size() is like DCOUNT: DCOUNT(APP.APPLICATIONS,@VM) return vlAppApplications.Size();

  14. Computed Column Methods ArrayCat like CATS: XL.RESULT = CATS(STUDENTS.ID:'*', STU.ACAD.PROGRAMS) string xlResult; xlResult = ArrayCat((vStudentsId:'*'), vlStuAcadPrograms) return xlResult;

  15. Computed Column Methods SubArray like FIELD or EXTRACT: XL.RESULT = FIELD(VL.STU.ACAD.PROGRAMS,@VM,2) XL.RESULT<1,-1> = FIELD(VL.STU.ACAD.PROGRAMS,@VM,3) string xlResult; xlResult = SubArray(vlStuAcadPrograms,2,2); return xlResult;

  16. Computed Column Methods ToDelimitedString like CONVERT (not really) Converts Array to string with given delimiter: string [] xlResult; xlResult = vlStuAcadPrograms. ToDelimitedString((253).Char()); return xlResult;

  17. Computed Column Methods Convert like CONVERT (reallly!) Works on Single/multi valued vars: string [] xlResult; xlResult = vlGlpsGlNo.Convert("_",""); return xlResult;

  18. Computed Column Methods • Many other math/other methods: • Abs • Sqrt • Sum • Index • ToUpperCase • ToLowerCase • Count • Trim • Len

  19. Computed Column Operators Comparison < > <= >= == != ArrayLT ArrayGT ArrayLE ArrayGE ArrayEQ ArrayNE Boolean && || ! Math + - * / += -= *= /= ^ % String : :=

  20. Development Lifecycle

  21. Development Lifecycle • Steps/screens to move code different • Overall process not different than before • Code in development appenv • Move into test appenv • Conduct test(s) for code/screen/processes • If needed, fix in development and repeat • Move into production when ready

  22. Development Lifecycle – Step 1 • Code in development appenv • This includes: • files/fields • computed columns • screens (web/UI) • reports/processes • list specs • GENerate process/screen • Debug syntax errors as needed

  23. Development Lifecycle – Step 2 • Declare items as custom • Use CDEC (like MDEF) • Can mark items as clone of Datatel process/screen/et DMSU22 <=> XDMSU22 • Builds MOVEINFO record (like MDEF) • This need only be done once • Remove Datatel-delivered components!

  24. Development Lifecycle – Step 3 • Create release package using CPKG • Can group multiple declarations (CDEC) • This builds a software update like Datatel • Places copy into Local Product Repository • Re-run CPKG anytime you make changes • LPR updated with new version

  25. Development Lifecycle – Step 4 • Install release package into test appenv • Just like any other software update: • Create software group (CSUG) • Install software group (ISUG) • Test screen/process in new appenv • Go back and redevelop in dev appenv • Start at beginning, but skip CDEC

  26. Development Lifecycle – Step 5 • Install release package into production • Just like any other software update: • CSUG already run previously • Install software group (ISUG)

  27. Development Lifecycle – Admin • SA Valet used to download software updates • Copies from DPR to your LPR • Requires various admin logins • Installing software updates done thru UI • Requires screen access, no passwords

  28. Development Lifecycle – Tools • RPIF – Item finder based on process • XCRB01 • SUGS – See software groups/statuses • SUSE – Update finder based on date, status, group, etc • 21141.44-1805 • 21141 • Installed 07/10/2006 thru 7/16/2006 • Released 07/01/2006 thru 07/02/2006 • Release status of Completed

  29. R18 Migration Plan

  30. R18 Migration Plan – Live Date? • Two approaches • build tasks with time estimates, work forward, determine target live date • choose target live date, work backward to assign tasks • Institutional needs/constraints • Database change will require more time • Oracle, SQL or distributed

  31. R18 Migration Plan – Scanners • Computed column • Custom code • Data (format) • Unidata combined • focus on computed column over others • Oracle/SQL • data format cleanup is HUGE • computed column important

  32. R18 Migration Plan – Big Picture • Build/populate test appenv • Test UI/webadvisor • Correct any issues, repeat • Build/populate last appenv before live • Move ALL custom to LPR - no code changes • Build/populate production appenv • Install custom from LPR - don't convert! • Test UI/webadvisor • Live (whew)

  33. R18 Migration Plan – Single Appenv • Copy R17 main to R18 location • Build appenv (SA Valet) • Data migration • Custom code migration • Computed column migration • WebAdvisor setup

  34. R18 Migration Plan – Gotchas • Deploys all Datatel-delivered code from new source • appl.VALCODES not getting copied (inq only) • PDEF changes lost • internal size of fields • DMI parameters reset (fixed?) • HR file permissions • Hard-coded pathes (ELF, shell/perl scripts) • LDAP guest user required • TDClient didn't get copied (fixed?) • Key counter from CONTROL.POINT to PID8 error (fixed?) • new files in toolkit (FS) don't get created until field added

More Related