Getting Started with Colleague Studio Debugger Presented by:Katie Morgan Pacific University August, 2014.

Slides:



Advertisements
Similar presentations
Introduction to Eclipse. Start Eclipse Click and then click Eclipse from the menu: Or open a shell and type eclipse after the prompt.
Advertisements

CS0004: Introduction to Programming Visual Studio 2010 and Controls.
COMPUTER PROGRAMMING I Essential Standard 5.02 Understand Breakpoint, Watch Window, and Try And Catch to Find Errors.
Using Eclipse. Getting Started There are three ways to create a Java project: 1:Select File > New > Project, 2 Select the arrow of the button in the upper.
Logging In Go to web site:
Georgia Institute of Technology DrJava Appendix A Barb Ericson Georgia Institute of Technology May 2006.
E.1 Eclipse. e.2 Installing Eclipse Download the eclipse.installation.exe from the course web site to your computer and execute it. Keep the destination.
The IDE (Integrated Development Environment) provides a DEBUGGER for locating and correcting errors in program logic (logic errors not syntax errors) The.
Fall 2007CS 2251 Programming Tools Eclipse JUnit Testing make and ant.
How to Debug VB .NET Code.
Visual Basic Debugging Tools Appendix D 6/27/20151Dr. Monther Aldwairi.
6 th Annual Focus Users’ Conference Application Editor and Form Builder Presented by: Mike Morris.
Debugging Logic Errors CPS120 Introduction to Computer Science Lecture 6.
Eclipse IDE. 2 IDE Overview An IDE is an Interactive Development Environment Different IDEs meet different needs BlueJ and DrJava are designed as teaching.
03 Using Eclipse. 2 IDE Overview An IDE is an Interactive Development Environment Different IDEs meet different needs BlueJ and DrJava are designed as.
Computer Programming and Basic Software Engineering 4. Basic Software Engineering 1 Writing a Good Program 4. Basic Software Engineering.
Debugging applications, using properties Jim Warren – COMPSCI 280 S Enterprise Software Development.
DEBUGGING CHAPTER Topics  Getting Started with Debugging  Types of Bugs –Compile-Time Bugs –Bugs Attaching Scripts –Runtime Errors  Stepping.
Programming with Alice Computing Institute for K-12 Teachers Summer 2011 Workshop.
Department of Mechanical Engineering, LSUSession VII MATLAB Tutorials Session VIII Graphical User Interface using MATLAB Rajeev Madazhy
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
Wimba Presenters Guide North Dakota University System 2009.
Playing Back Scripts In HP LoadRunner >>>>>>>>>>>>>>>>>>>>>>
Creating, Editing, & Debugging a VI A.How to Create VIs B.How to Edit VIs C.How to Debug VIs You Will Learn:
CPSC1301 Computer Science 1 Overview of Dr. Java.
Debugging Dwight Deugo Nesa Matic
Debugging. 2 © 2003, Espirity Inc. Module Road Map 1.Eclipse Debugging  Debug Perspective  Debug Session  Breakpoint  Debug Views  Breakpoint Types.
Debugging in Java. Common Bugs Compilation or syntactical errors are the first that you will encounter and the easiest to debug They are usually the result.
Active-HDL Interfaces Debugging C Code Course 10.
® IBM Software Group © 2011 IBM Corporation RDz Workbench – Debugging z/OS COBOL Applications Batch COBOL Debugging Workshop Jon Sayles, Rational System.
VB – Debugging Tools Appendix D. Why do we need debugging? Every program has errors, and the process of finding these errors is debugging Types of errors.
9/2/ CS171 -Math & Computer Science Department at Emory University.
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of The Eclipse debugger.
CSE 232: C++ Programming in Visual Studio Graphical Development Environments for C++ Eclipse –Widely available open-source debugging environment Available.
Copyright © 2004 – 2013 Curt Hill Java Debugging In Eclipse.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Slide 1 What we'll cover here l Using the debugger: Starting the debugger Setting.
Eclipse Project. Installing Visit to download a copy for your home computerhttp:// –Get Release version 3.0 (or.
Debugging tools in Flash CIS 126. Debugging Flash provides several tools for testing ActionScript in your SWF files. –The Debugger, lets you find errors.
Debugging What coders (programmers) do to find the errors (“bugs”) in their own programs “Bugs” – Admiral Grace Hopper, developer of the world’s first.
15 Copyright © 2004, Oracle. All rights reserved. Debugging Triggers.
Using the Eclipse Debugger Extra Help Session (Christina Aiello)
Editing and Debugging Mumps with VistA and the Eclipse IDE Joel L. Ivey, Ph.D. Dept. of Veteran Affairs OI&T, Veterans Health IT Infrastructure & Security.
© 2014 IBM Corporation e-config RPO MES Training Bill Luken September 29 th, 2014 Global Client Value.
Programming and Debugging with the Dragon and JTAG Many thanks to Dr. James Hawthorne for evaluating the Dragon system and providing the core content for.
Debugging using By: Samuel Ashby. What is debugging?  A bug is an error in either a program or the hardware itself.  Debugging is first locating and.
1 Using an Integrated Development Environment. Integrated Development Environments An Integrated Development Environment, or IDE, permits you to edit,
The Next Step Hudson Fare Files 102 – Import & upload Rev. 10/14.
Appendix A Barb Ericson Georgia Institute of Technology May 2006
Setting up Categories, Grading Preferences and Entering Grades
Appendix A Barb Ericson Georgia Institute of Technology May 2006
Debugging Dwight Deugo
Testing and Debugging.
Computer Programming I
Using Visual Studio with C#
Important terms Black-box testing White-box testing Regression testing
Important terms Black-box testing White-box testing Regression testing
Data Entry Interface (DEI) Overview
Debugging with Eclipse
CIS 470 Mobile App Development
DEBUGGING JAVA PROGRAMS USING ECLIPSE DEBUGGER
Data Entry Interface (DEI) Overview
Software Setup & Validation
CIS 470 Mobile App Development
Debugging Dwight Deugo
Data Entry Interface (DEI) Overview
Debugging with Eclipse
Workshop for Programming And Systems Management Teachers
CIS 694/EEC 693 Android Sensor Programming
Presentation transcript:

Getting Started with Colleague Studio Debugger Presented by:Katie Morgan Pacific University August, 2014

What is the CS Debugger? Graphical tool to observe your code in action Step through line by line Set breakpoints and jump from breakpoint to breakpoint Combines Eclipse’s graphical interface with UniData’s built-in debugging software

Polls! How many of you have done development using Colleague Studio? –How many of those have used the Colleague Studio Debugger? Bonus Question! –How many folks out there have ever used the UniData command-line debugger?

What can be debugged? Web forms Batch programs Subroutines UI forms

What can’t be debugged? “Old-Style” Procedures The ones that used to use PGDF

Overview of steps 1.Generate 2.Compile 3.Set breakpoints 4.Configure 5.Launch

1. Generate Make sure your project is connected to the environment. Generate the process you want to debug. Make sure there are no errors and that it really generated.

2. Compile Activate the Generated Code tab For WebAdvisor, it’s the Generated Web Code tab Click the “compile for debugging” button

Compile for Debugging

Set breakpoints Set some breakpoints (at least one, so it will suspend when debugger launches). Make sure you’re on the Generated Code tab. In the margin to the left of the line number, either double-click or right-click and choose Toggle Breakpoint. To remove a misplaced breakpoint, just follow the same steps on the existing blue dot, and it will toggle off.

Add your breakpoints

Some tips about breakpoints The debugger will suspend immediately prior to the line with the breakpoint. Do not put a breakpoint on a “flow-control- only” type of statement. END, END CASE, NEXT, RETURN, internal gosub labels Note that IF’s are fine, because they include other operations (such as logical comparisons) to support the flow control.

More tips about breakpoints This may be obvious, but… the debugger will only suspend if it actually reaches the line with the breakpoint. If you have complicated logic, beware of where you’ve placed your breakpoints, because it might not break when you want/expect it to.

Breakpoint limits If you are UniData or older: You are limited to 6 active breakpoints.

How many breakpoints? This is a UniData limitation that is resolved with and higher. One point per active breakpoint (duh!) … plus One point per process

How many breakpoints? You can have more than 6 defined, and toggle whether they’re active or not. In the development perspective, right-click the breakpoint button and choose Disable/Enable Breakpoint.

Enabling/Disabling Breakpoints Disabled Breakpoint Enabled Breakpoint

How many breakpoints? You can also add/remove breakpoints altogether when in the debug perspective.

Configure Launch configurations provide settings needed to run the process How to connect WebAdvisor: Ports UI: URL Timeout settings Credentials Application Initialization Arguments

Configure There are three ways to configure a launch: from the “bug button” menu from the process explorer context menu from the Run menu

Configuring from the “Bug Button” dropdown Click the down arrow Choose “Debug As” Choose your process type

Configuring from the process explorer context menu Right-click your process name Choose “Debug As” Choose your process type

Configuring from the Run menu Click the Run menu Choose “Debug As” Choose your process type

Subroutine and batch configuration Set argument values Initialize the application Adjust the timeout

Subroutine and batch configuration Initialize the application Enter credentials

UI form configuration Adjust the timeout

UI form configuration Enter UI credentials Enter URL Enter SOD password

WebAdvisor form configuration Adjust the timeout

WebAdvisor form configuration Modify the ports

Viewing Existing Configurations Once you have your launch configuration built, next time you use Debug as… for that process, it will simply run the debugger. To change arguments or other settings on a future run, go into your launch configurations.

Viewing Existing Configurations There are three ways to view existing configurations: from the “bug button” menu from the process explorer context menu from the Run menu

Viewing configurations from the “Bug Button” dropdown Click the down arrow Choose “Debug Configurations…”

Viewing configurations from the process explorer context menu Right-click your process name Choose “Debug As” Choose “Debug Configurations…”

Viewing configurations from the Run menu Click the Run menu Choose “Debug Configurations…”

Viewing Launch Configurations Make sure it’s the right one!

Launch Now you’re ready to launch. Hit the green bug. It will either take you directly into the debug perspective, or it will prompt you and ask. Once you’re in the debug perspective, you can still switch between perspectives.

Debug Perspective

Debug view Use these buttons to steer See where you are

Debug View Debug view is where you monitor and control the overall flow of your process. Use buttons to start, stop and step through your process. Monitor your stack—see what processes and line numbers are running.

Control Buttons “Clear” clears the perspective of all terminated launches. “Resume” runs the debugger until the next breakpoint. runs to the end if there are no more breakpoints “Suspend” halts the debugger without ending the debug session. but isn’t that what breakpoints are for? “Terminate” ends the debug session without executing any further.

Control Buttons “Step Into” can be used if the process line you’re on is about to call another process, and you want to debug line-by-line in that process. The called process must be in your project for this to work. To debug it, it must be compiled for debugging. If you already have breakpoints in that process, you can just use the play button (rather than Step Into), and it will suspend at the breakpoint

Control Buttons “Step Over” executes the line you’re currently on and suspends again. This is for when you need to go line by line. Also for when you need to execute a called process without bothering to debug it. “Step Return” is used when you’re inside a routine called by another routine, and you want to execute that inner routine until it returns control to the calling process, and then suspend again.

Control Buttons “Drop to Frame”: Never used it. “Use Step Filters”: ditto.

Variables and Breakpoints Views

Variables view Watch the values change as you step through. If the process is suspended, you can alter values here before resuming.

Variables view Highlight an item here Edit its value here

Variables view Changed values are automatically highlighted

Variables view defaults Datatel has preset the variables view to include only local variables defined by the programmer, arguments and process variables (like MSG, etc). Your v. and vl. variables will not show up.

Variables view defaults 1.Window menu -> Preferences 2.Run/Debug -> Variable Filters Check this box

Breakpoints view View all of your breakpoints and their statuses (enabled or disabled). Enable or disable breakpoints as needed. This works “on-the-fly”.

Breakpoints view Check/uncheck to enable/disable breakpoints

Process editor

All of the process editor tabs are available here. The generated code tab will be the focus by default. This tab is where you can see where you currently are in your code. view your breakpoints. You can add/remove and enable/disable here. change your code. You will probably need to terminate your debug session.

Process editor Highlights the suspended line

Outline view

This is exactly like the outline tab in the default Colleague perspective.

Console view

The console displays system messages, including errors and warnings.

Console view

UI Form Debugger It opens UI Web when the debugging session is started. You must go to the screen you’re debugging (it doesn’t do this automagically).

Web Form Debugger It opens WebAdvisor when the debugging session is started. You navigate the login and menus until you arrive at the starting point for the form you’re debugging. If the form is in a chain, you will need to fill out the lead-in forms until it pulls up the form you’re debugging.

Debugging in layers You may want to debug multiple “layers” of processes. Examples: Your subroutine calls another subroutine Your batch process runs based on a front-end UI screen Your web form writes data based on subroutines

Debugging in layers 1.Import all “layers” into your project 2.Compile all the processes for debugging 3.You can set breakpoints in multiple layers If you’re on UniData pre-7.2.5, watch your total number of active breakpoints! When you’re running the debugger, it will continue through the outer process, enter the nested process, and suspend at the first breakpoint in it.

Debugging batch processes Batch processes that run based on select statements can be an issue. Debug them via the front-end screen (provided it uses procedure hook, and is not an “old-style” procedure!), OR Build a wrapper to perform the selection and run the “real” batch process. Sample in proceedings

Try it! Benefits Obviously, finding the logic errors Being able to test numerous scenarios rapidly by just changing values (arguments on the launch configuration or even variables in the variables tab) on the fly Being able to choose between stepping one line at a time or skipping around based on breakpoints And rapidly changing those breakpoints as needed on the fly

Questions & Answers

Thank You! Katie Morgan Please complete the online session evaluation form Session ID © 2014 Ellucian. All rights reserved.