Cross-platform Batch Reports Waldo Library Western Michigan University.

Slides:



Advertisements
Similar presentations
Jump to Contents Instructor Tutorial essignments.com Paperless assignment submission system.
Advertisements

Database Basics. What is Access? Database management system Computer-based equivalent of a manual database Makes it easy to organize and update information.
Easy to use Ability to attach policies/procedures to call types Ability to schedule calls in advance Officer safety alerts Robust search capabilities.
Operating System.
CPIT 102 CPIT 102 CHAPTER 1 COLLABORATING on DOCUMENTS.
Scheduling Discoverer Reports Scheduling Standard Reports Printing & Re-printing Standard Reports Focus on Reports Session 2 To print: Right click Choose.
Getting Started: Ansoft HFSS 8.0
Copyright © 2011 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are trademarks of Accenture. SQL Workshop Day 4.
Week 2 IBS 685. Static Page Architecture The user requests the page by typing a URL in a browser The Browser requests the page from the Web Server The.
A Strand of Perls: Some Home Grown Utilities. Our New Books List Call Number Sorting Getting Operator Profiles QPID – Quick Patron Information Dump (cupid…)
Guide To UNIX Using Linux Third Edition
Perl DBI Scripting with the ILS Roy Zimmer Western Michigan University.
PMI Inventory Tracker™
Inventory Throughout this slide show there will be hyperlinks (highlighted in blue) follow the hyperlinks to navigate to the specified Topic or Figure.
MZ790 Print Driver and RINC Software Install and Setup These instructions are to assist you in installation and setup of the MZ790 Print Driver and RINC.
10 March Setup Users. 10 March Setup Users Window Allows you to perform several user tasks –Enroll users –Enable/disable users –Set user access.
SCARY QUERIES LAID TO REST Getting Started with Voyager Prepackaged Access Reports Presented by Jean Vik, Associate Library Director The University of.
Exporting Data and Creating Financial Reports with Excel and Crystal Slide 1 Exporting Data and Creating Financial Reports with Excel and Crystal By Peter.
©2001 Chariot Software Group Using MicroGrade Classroom Management Software.
Installing Ricoh Driver. Items you need to know IP address of Printer Options that are installed And Paper Sizes To get all this information you can print.
Working with SharePoint Document Libraries. What are document libraries? Document libraries are collections of files that you can share with team members.
Creating a Web Page HTML, FrontPage, Word, Composer.
The New Books List Michael Doran, Systems Librarian Ex Libris Southwest Users Group February 6, 2008 – Santa Ana College.
Chapter 9 Collecting Data with Forms. A form on a web page consists of form objects such as text boxes or radio buttons into which users type information.
PHP Programming. Topics Background and History of PHP Installation Comments in PHP Variables Conditions Loops Functions File Handling Database Handling.
Tapit Call Accounting software for the 21st Century Copyright Trisys, Inc Trisys, Inc 215 Ridgedale Avenue Florham Park, NJ (973)
This presentation will guide you though the initial stages of installation, through to producing your first report Click your mouse to advance the presentation.
6/1/2001 Supplementing Aleph Reports Using The Crystal Reports Web Component Server Presented by Bob Gerrity Head.
TRIBUNAL WAIVER Form(s) INSTRUCTIONS in the use of The new Printable Version and The new automated Version.
Installing the SAFARIODBC.EXE For use with Excel May 3, 2002.
XP New Perspectives on Microsoft Access 2002 Tutorial 51 Microsoft Access 2002 Tutorial 5 – Enhancing a Table’s Design, and Creating Advanced Queries and.
Let’s Make An Form! Bonney Armstrong GD 444 Westwood College February 9, 2005.
What’s New in VRS? GUGM May 15, 2008 Presenter: Kelly P. Robinson GIL Service Georgia State University
System for Administration, Training, and Educational Resources for NASA SATERN Overview for Learners May 2006.
Moodle (Course Management Systems). Assignments 1 Assignments are a refreshingly simple method for collecting student work. They are a simple and flexible.
Internet Forms and Database Bob Kisel Amgraf, Inc.
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
Microsoft Access Get a green book. Page AC 2 Define Access Define database.
PHP meets MySQL.
Let VRS Work for You! ELUNA Conference 2008 Presenter: Kelly P. Robinson GIL Service Georgia State University
Management Information Systems MS Access MS Access is an application software that facilitates us to create Database Management Systems (DBMS)
6 th Annual Focus Users’ Conference Manage Integrations Presented by: Mike Morris.
Microsoft ® Access ® 2010 Training Create Queries for a New Database If a yellow security bar appears at the top of the screen in PowerPoint, click Enable.
Writing macros and programs for Voyager cataloging Kathryn Lybarger ELUNA 2013 May 3, #ELUNA2013.
Just as there are many human languages, there are many computer programming languages that can be used to develop software. Some are named after people,
(Chapter 10 continued) Our examples feature MySQL as the database engine. It's open source and free. It's fully featured. And it's platform independent.
Colleague, Excel & Word Best of Friends Presented by: Joan Kaun & Yvonne Nelson College of the Rockies.
MS Access 2007 Management Information Systems 1. Overview 2  What is MS Access?  Access Terminology  Access Window  Database Window  Create New Database.
Page 1 Non-Payroll Cost Transfer Enhancements Last update January 24, 2008 What are the some of the new enhancements of the Non-Payroll Cost Transfer?
1 Data Manipulation (with SQL) HRP223 – 2010 October 13, 2010 Copyright © Leland Stanford Junior University. All rights reserved. Warning: This.
6 th Annual Focus Users’ Conference 6 th Annual Focus Users’ Conference Import Testing Data Presented by: Adrian Ruiz Presented by: Adrian Ruiz.
USAC/Schools and Library Web Site Tour. Web Site Tour – Morning Edition… Navigation on the site – Instructions – Forms – Reference Area – Tools Later.
Lesson 10 - Mail Merge and Reviewing Documents Advanced Microsoft Word.
Instructions.  Open up the letter that Adam has given to you  Format it so it look professional.
Table of Contents TopicSlide Administrator Login 2 Administrator Navigations 3 Managing AlternativeDr.com Blogs 4 Managing Dr. Lloyd May Blogs 5 Managing.
The Homepage My Campaign is where you can track your contacts information.
Automating a Vendor File Load Process with Perl and Shell Scripting Roy Zimmer Western Michigan University.
IT1001 – Personal Computer Hardware & system Operations Week7- Introduction to backup & restore tools Introduction to user account with access rights.
COMP3241 E-Commerce Technologies Richard Henson University of Worcester November 2014.
Electronic Annual Review Files A Guide for Faculty Members.
Access Module Implementing a Database with Microsoft Access A Great Module on Your CD.
Installing a Moodle Test Site The painless and easy way.
5/14/2003Sprint TekNet IP Train the Trainer1 Open TekNet Software If working at a client station, enter the IP address of the server and mark page as a.
Annual Performance Management Cycle Management Training Tutorial
Accsess 2013 Creating Database.
Adding Assignments and Learning Units to Your TSS Course
Explain what touch develop is to your students:
Creating and Modifying Queries
Learning about Taxes with Intuit ProFile
NextGen Trustee General Ledger Accounting
Presentation transcript:

Cross-platform Batch Reports Waldo Library Western Michigan University

Objectives n show an implementation of automated, cross-platform, hands-off report generation in the Voyager environment n provide you with the information to do this at your site

Bonus!!!!! Source code for BLOB access and a table+column schema listing included in the handout.

Brief Bio

n Working at WMU for 16 years now

Brief Bio n Working at WMU for 16 years now n Initially spent many years on the VAX

Brief Bio n Working at WMU for 16 years now n Initially spent many years on the VAX n Struggled for several years with the IBM mainframe and NOTIS

Brief Bio n Working at WMU for 16 years now n Initially spent many years on the VAX n Struggled for several years with the IBM mainframe and NOTIS n Supporting Voyager for close to 3 years

Brief Bio n Working at WMU for 16 years now n Initially spent many years on the VAX n Struggled for several years with the IBM mainframe and NOTIS n Supporting Voyager for close to 3 years n Picked up some Oracle, (PL/)SQL, Perl, and Unix along the way

Why We Did This

n initially no access to Access with ODBC stuff; had no clue

Why We Did This n initially no access to Access with ODBC stuff; had no clue n explored our Voyager Unix box, located SQL*PLUS

Why We Did This n So we created reports - n run them on the Voyager box, n transfer to PC n format and print in Word, n etc...

Why We Did This n So we created reports - n library liked them - n I got tired of:

Why We Did This n So we created reports - n library liked them - n I got tired of: n running reports n ftping them n formatting them n printing them n physically delivering them

Cross-Platform Batch Reports Overview of Process (Handout page 4) Unix

cron Cross-Platform Batch Reports Overview of Process Unix

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file script

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file script SQL, PL/SQL, Perl

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file script SQL, PL/SQL, Perl report One cron process running

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file script SQL, PL/SQL, Perl report One cron process running Batch PC

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file script SQL, PL/SQL, Perl report One cron process running Batch PC WinBatch

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file script SQL, PL/SQL, Perl report One cron process running Batch PC WinBatch script or.exe

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file script SQL, PL/SQL, Perl report One cron process running Batch PC WinBatch script or.exe use ftp to get the report pull it into Word format the report

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file script SQL, PL/SQL, Perl report One cron process running Batch PC WinBatch script or.exe use ftp to get the report pull it into Word format the report time/date parameters stored in each script

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file script SQL, PL/SQL, Perl report One cron process running Batch PC WinBatch script or.exe use ftp to get the report pull it into Word format the report time/date parameters stored in each script copy report to destination on LAN

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file script SQL, PL/SQL, Perl report One cron process running Batch PC WinBatch script or.exe use ftp to get the report pull it into Word format the report time/date parameters stored in each script copy report to destination on LAN print report to location

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file script SQL, PL/SQL, Perl report One cron process running Batch PC WinBatch script or.exe use ftp to get the report pull it into Word format the report time/date parameters stored in each script copy report to destination on LAN print report to location Library Administration Library Systems Media Resources Mono Acquisitions Serials

When to Choose SQL, PL/SQL, or Perl n SQL

When to Choose SQL, PL/SQL, or Perl n SQL n invoked from within SQL*PLUS

When to Choose SQL, PL/SQL, or Perl n SQL n invoked from within SQL*PLUS n sufficient for most reports

When to Choose SQL, PL/SQL, or Perl n SQL n invoked from within SQL*PLUS n sufficient for most reports n easy control of page & line size, page formatting

When to Choose SQL, PL/SQL, or Perl n SQL n invoked from within SQL*PLUS n sufficient for most reports n easy control of page & line size, page formatting n takes control, does most of the work for you

When to Choose SQL, PL/SQL, or Perl n SQL n invoked from within SQL*PLUS n sufficient for most reports n easy control of page & line size, page formatting n takes control, does most of the work for you n output to screen or file

When to Choose SQL, PL/SQL, or Perl n SQL n sample of code… (Handout page 5) n output snippet below

When to Choose SQL, PL/SQL, or Perl identify what the report generates

When to Choose SQL, PL/SQL, or Perl include Word format settings

When to Choose SQL, PL/SQL, or Perl define output columns

When to Choose SQL, PL/SQL, or Perl these two columns are for sorting only

When to Choose SQL, PL/SQL, or Perl The call to FISCYRSETUP creates a temporary table, for the duration of this report, that contains the name and start date for the current and previous year. This is used in a number of reports to automatically reference fiscal year data.

When to Choose SQL, PL/SQL, or Perl Set up title and some report parameters. Want output in a file.

When to Choose SQL, PL/SQL, or Perl Run the query to create the report. Clean up when done.

When to Choose SQL, PL/SQL, or Perl n PL/SQL

When to Choose SQL, PL/SQL, or Perl n PL/SQL n invoked from within SQL*PLUS, or embedded in / combined with SQL

When to Choose SQL, PL/SQL, or Perl n PL/SQL n invoked from within SQL*PLUS, or embedded in / combined with SQL n provides SQL capabilities with programming language control added

When to Choose SQL, PL/SQL, or Perl n PL/SQL n invoked from within SQL*PLUS, or embedded in / combined with SQL n provides SQL capabilities with programming language control added n functionality sort of in-between SQL and Perl

When to Choose SQL, PL/SQL, or Perl n PL/SQL n output to screen or to screen

When to Choose SQL, PL/SQL, or Perl n PL/SQL n output to screen or to screen n Oracle allows output to file, but the Voyager installation does not enable this

When to Choose SQL, PL/SQL, or Perl n PL/SQL n output to screen or to screen n Oracle allows output to file, but the Voyager installation does not enable this n size limited to 1 million bytes output

When to Choose SQL, PL/SQL, or Perl n PL/SQL n output to screen or to screen n Oracle allows output to file, but the Voyager installation does not enable this n size limited to 1 million bytes output n screen output can be captured to file

When to Choose SQL, PL/SQL, or Perl n PL/SQL n sample of code… (Handout pages 6 & 7) n output snippet below

When to Choose SQL, PL/SQL, or Perl start off with some comments… output limitation…

When to Choose SQL, PL/SQL, or Perl important reminder

When to Choose SQL, PL/SQL, or Perl note the order by

When to Choose SQL, PL/SQL, or Perl variables must be declared

When to Choose SQL, PL/SQL, or Perl fields from the table

When to Choose SQL, PL/SQL, or Perl you have control of looping through results

When to Choose SQL, PL/SQL, or Perl What is a BLOB? It stands for Binary Large Object. More simply put, it is a collection of bytes that can contain both printable and unprintable characters. This is how MARC data is stored under Voyager.

When to Choose SQL, PL/SQL, or Perl The BLOB can be stored in one or more sections: BibID: 57 Seqnum: 1 Recseg: BLOB Part A BibID: 57 Seqnum: 2 Recseg: BLOB Part B

When to Choose SQL, PL/SQL, or Perl The BLOB can be stored in one or more sections: BibID: 57 Seqnum: 1 Recseg: BLOB Part A BibID: 57 Seqnum: 2 Recseg: BLOB Part B The BLOB is put together in reverse order, because we can depend on Seqnum #1 being the last one that way.

When to Choose SQL, PL/SQL, or Perl get data from the header, then get each tag’s data as we loop through the directory structure

When to Choose SQL, PL/SQL, or Perl do some formatting...

When to Choose SQL, PL/SQL, or Perl print formatted tag data… finish looping and end the program

When to Choose SQL, PL/SQL, or Perl Without the closing “/”, your PL/SQL code will NOT run!

When to Choose SQL, PL/SQL, or Perl n Perl

When to Choose SQL, PL/SQL, or Perl n Perl n invoked from the operating system n (can be called from within SQL(*PLUS)

When to Choose SQL, PL/SQL, or Perl n Perl n invoked from the operating system n (can be called from within SQL(*PLUS) n you have control over everything, which means:

When to Choose SQL, PL/SQL, or Perl n Perl n invoked from the operating system n (can be called from within SQL(*PLUS) n you have control over everything, which means: n relatively unlimited flexibility n that you have to do ALL the work

When to Choose SQL, PL/SQL, or Perl n Perl n invoked from the operating system n (can be called from within SQL(*PLUS) n you have control over everything, which means: n relatively unlimited flexibility n that you have to do ALL the work n output to screen or file

When to Choose SQL, PL/SQL, or Perl n Perl n sample of code… (Handout pages 8 -10) n output snippet below

When to Choose SQL, PL/SQL, or Perl start off with some comments

When to Choose SQL, PL/SQL, or Perl You’ll need to have DBI and DBD for Oracle set up on your Unix box.

When to Choose SQL, PL/SQL, or Perl set up some variables

When to Choose SQL, PL/SQL, or Perl need to be able to talk to the database

When to Choose SQL, PL/SQL, or Perl Get all the table names. In my experience, I was unable to use the reserved word “distinct” in the query. Thus the extract code to dedupe the results.

When to Choose SQL, PL/SQL, or Perl need to know how many columns per table to aid in output formatting

When to Choose SQL, PL/SQL, or Perl set up and initiate output

When to Choose SQL, PL/SQL, or Perl get the report’s data

When to Choose SQL, PL/SQL, or Perl keep track of column names ending in “_id”

When to Choose SQL, PL/SQL, or Perl go through array, output columns ending in “_id” first

When to Choose SQL, PL/SQL, or Perl go through array, output columns ending in “_id” first Remember counting columns per table? Here we advance to the next page, if the table doesn’t fit on the current page.

When to Choose SQL, PL/SQL, or Perl then repeat this process for columns that do not end in “_id”

When to Choose SQL, PL/SQL, or Perl if not enough room for smallest possible table, go to next page

When to Choose SQL, PL/SQL, or Perl clean up when done

The Batch PC

n Should be dedicated to this task

The Batch PC n Should be dedicated to this task n configuration...

The Batch PC n Hardware

The Batch PC n Hardware n older pc will be adequate

The Batch PC n Hardware n older pc will be adequate n we’re using a 133MHz Pentium

The Batch PC n Hardware n older pc will be adequate n we’re using a 133MHz Pentium n 32 meg RAM

The Batch PC n Hardware n older pc will be adequate n we’re using a 133MHz Pentium n 32 meg RAM n 1.5 gig hard disk, which is way more than necessary

The Batch PC n Software

The Batch PC n Software n running Windows 95

The Batch PC n Software n running Windows 95 n WinBatch software n (see

The Batch PC n Software n running Windows 95 n WinBatch software n (see n the scripts that you write...

The Batch PC n The Batch Software

The Batch PC n The Batch Software n WinBatch installation will leave it running in the background

The Batch PC n The Batch Software n WinBatch installation will leave it running in the background n in Windows Explorer, double click on your WinBatch script, identified as a.WBT file

The Batch PC n The Batch Software n WinBatch installation will leave it running in the background n in Windows Explorer, double click on your WinBatch script, identified as a.WBT file n it will either run right away, or appear on the task bar, awaiting its time

Quick Process Review

cron Cross-Platform Batch Reports Overview of Process Unix Time/date parameters in one crontab file script SQL, PL/SQL, Perl report One cron process running Batch PC WinBatch script or.exe use ftp to get the report pull it into Word format the report time/date parameters stored in each script copy report to destination on LAN print report to location Library Administration Library Systems Media Resources Mono Acquisitions Serials

The Batch PC n The Batch Software n FINALLY, a script! (Handout pages 11 & 12)

The Batch PC start off with comments, including instructions on when the script can be started safely to avoid duplication of report printing

The Batch PC set up paths and filenames on the Unix box and the batch PC, get the database password from a file

The Batch PC determine if it’s time for the script to run

The Batch PC Encapsulating the ftp process in a WinBatch script file works well. Use the DOS ftp program supplied with Windows.

The Batch PC wait a minute for ftp to complete

The Batch PC make sure file exists, then launch Word with it

The Batch PC send formatting keystrokes to Word

The Batch PC Get the printer pull-down menu, select the desired printer, and print. Wait a minute for printing to complete before closing Word.

The Batch PC The rest of the code closes loops and makes the script wait until the next run time occurs.

Example from another script illustrating how to trigger on day of the week. This script runs early in the morning, six days a week.

The Batch PC n The Batch Software n Some final hints

The Batch PC n The Batch Software n Some final hints n WinBatch appears to get application Windows confused, despite referring to them by name in the scripts

The Batch PC n The Batch Software n Some final hints n WinBatch appears to get application Windows confused, despite referring to them by name in the scripts n set up trigger and run times so that they do not overlap

The Batch PC n The Batch Software n Some final hints n long lines in your scripts: n don’t break them up! n WinBatch expects them to remain n contiguous!

Thanks for listening Questions? Phone:

Better Call Number Sorting Roll your own!

What Voyager gives us…

We can achieve better results… this is now our input correctly sorted

Better Call Number Sorting n originally written in SAS back in our NOTIS days

Better Call Number Sorting n originally written in SAS back in our NOTIS days n ported to Perl for use with Voyager

Better Call Number Sorting n originally written in SAS back in our NOTIS days n ported to Perl for use with Voyager n with NOTIS, could only sort on whole call number field, with expected atrocious results

Better Call Number Sorting n originally written in SAS back in our NOTIS days n ported to Perl for use with Voyager n with NOTIS, could only sort on whole call number field, with expected atrocious results n Voyager provides normalized call number, which allows for better than 80% correct sorting

Better Call Number Sorting n with intelligent parsing applied to the call number, we can achieve about 99% correct sorting n implemented it as a Perl module n put use Sort::CallNumber; at the beginning of your Perl code

Better Call Number Sorting n one call returns the call number = cnparse($callnum); then sort on the cnparts

Thanks for listening. Contact me if you want to receive the CallNumber Perl module. Questions? Phone: