Introduction
Elements of this syllabus are subject to change.
This five-day instructor-led course provides students with the knowledge and skills to begin creating objects in Microsoft Dynamics NAV, including tables, forms, and reports, as well as codeunits, MenuSuites, and dataports. In addition, this course provides an intensive introduction to C/AL, the Microsoft Dynamics NAV coding language.
Audience
This course is intended for Microsoft Dynamics NAV partner developers who are responsible for creating application objects in Microsoft Dynamics NAV installations.
At Course Completion
The goal for completing this course is to enable students to create application objects using Microsoft Dynamics NAV code and designers, including:
| • |
Table Designer |
| • |
Form Designer |
| • |
C/AL Code |
| • |
Report Designer |
| • |
Dataport Designer |
| • |
XMLport Designer |
| • |
MenuSuite Designer |
| • |
Automation Server functionality |
Prerequisites
| • |
Introduction to Microsoft Dynamics NAV 5.0 course |
| • |
Basic knowledge of ERP user roles |
Microsoft Certified Professional Exams
No Microsoft Certified Professional exams are associated with this course currently.
Course Materials
The student kit includes a comprehensive workbook and other necessary materials for this class.
Course Outline
Introduction
Lessons
| • |
Introduction to Microsoft Dynamics NAV Development I – C/SIDE |
Chapter 1: Introduction to Microsoft Dynamics NAV Development I – C/SIDE
Lessons
| • |
Beyond Microsoft Dynamics NAV Development I |
| • |
The Physical and Logical Database |
| • |
General C/SIDE Concepts |
| • |
C/SIDE Fundamentals |
| • |
Basic Objects in Microsoft Dynamics NAV |
The goal of completing this chapter is to enable students to:
| • |
Discuss objects in Microsoft Dynamics NAV. |
| • |
Describe fundamental aspects of C/SIDE development, including the UI, application objects, C/SIDE concepts, and types of databases. |
| • |
Discuss database structure. |
| • |
Describe some integration tools and advanced development concepts. |
Chapter 2: Basic Tables
Lessons
| • |
Tables |
| • |
Demonstration – Table and Field Properties Creating Tables |
| • |
Choosing Data Types |
| • |
Primary Keys and Secondary Keys |
| • |
Qualities of Primary Keys Setting Relationships Between Tables |
| • |
Special Table Fields |
| • |
Types of Tables and Their Characteristics |
Lab
| • |
Lab 2.1 –Investigate Existing Tables |
The goal of completing this chapter is to enable students to:
| • |
Introduce table concepts, and the structure and elements of tables. |
| • |
Demonstrate how to use the Table Designer to create simple tables and set field and table properties. |
| • |
Explain the concepts behind primary and secondary keys for tables. |
| • |
Describe setting relationships between tables. |
| • |
Explain the concepts of SumIndexFields, FlowFields, and FlowFilter fields, and how to set them. |
| • |
Modify table properties. |
| • |
Review table types. |
Chapter 3: Basic Forms
Lessons
| • |
Form Controls |
| • |
Bound and Unbound Forms and Controls |
| • |
Form and Control Properties |
| • |
Triggers |
| • |
Creating Buttons |
| • |
Creating Subforms |
| • |
Form Types and Characteristics |
Lab
| • |
Lab 3.1 – 3.19 Design new forms and their controls |
The goal of completing this chapter is to enable students to:
| • |
Introduce elements of forms, including controls. |
| • |
Describe binding forms and controls to source tables. |
| • |
Create a blank form and attach a source table. |
| • |
Add simple controls to a form, such as a text box, a label, and a check box. |
| • |
Use tools from the Toolbox, including the Add Label tool and the Lock tool. |
| • |
Add a tab, frame, and TableBox controls to a form, and then set them to autosize. |
| • |
Add option buttons, an indicator control, and a BLOB field, or picture, to a form. |
| • |
Use the Form Wizard to create a card form and a tabular form. |
| • |
Add fields and buttons to forms. |
| • |
Create a subform and add it to the main form. |
| • |
Discuss form types and the standard navigation in forms. |
Chapter 4 – Chapter 18: C/AL Programming
Lessons
| • |
Chapter 4: Introduction to C/AL Programming |
| • |
Chapter 5: Intrinsic Data Types |
| • |
Chapter 6: Identifiers and Variables |
| • |
Chapter 7: Assignment Statement |
| • |
Chapter 8: Simple Expressions, Terms, and Operators |
| • |
Chapter 9: Numeric Expressions |
| • |
Chapter 10: Logical and Relational Expressions |
| • |
Chapter 11: The IF and EXIT Statements |
| • |
Chapter 12: Compound Statements and Comments |
| • |
Chapter 13: Arrays |
| • |
Chapter 14: Repetitive Statements |
| • |
Chapter 15: WITH and CASE Statements |
| • |
Chapter 16: Functions |
| • |
Chapter 17: Using Intrinsic C/AL Functions |
| • |
Chapter 18: Creating Your Own Functions |
Lab
| • |
Lab 4.1 — View C/AL in a Table Object |
| • |
Lab 6.1 — Create a New Codeunit |
| • |
Lab 7.1 — Use Assignment Statements and the Symbol Menu |
| • |
Lab 8.1 — Use the String Operator |
| • |
Lab 8.2 — Use the MAXSTRLEN Function in an Expression |
| • |
Lab 9.1 — Arithmetic Operator Exercise |
| • |
Lab 9.2 — Examine Operator Precedence |
| • |
Lab 10.1 — Add Logical and Relational Expressions to a Form |
| • |
Lab 11.1 — Perform Calculations with IF and EXIT Statements |
| • |
Lab 12.1 — Code with Compound Statements and Comments |
| • |
Lab 13-1 — Use Arrays |
| • |
Lab 14.1 — Code with Repetitive Statements |
| • |
Lab 15.1 — Simple Use of the CASE Statement |
| • |
Lab 15.2 — Complex Use of CASE Statements |
| • |
Lab 16.1 — Review Built-in Functions |
| • |
Lab 16.2 — Using the DATE2DMY Function |
| • |
Lab 18.1 — Create Functions |
The goal of completing this chapter is to enable students to:
| • |
Describe C/AL programming elements. |
| • |
Use C/AL code. |
| • |
Explore program functionality. |
Chapter 19: Reports
Lessons
| • |
Reports Overview |
| • |
Types of Printed Reports |
| • |
The Report Designers |
Lab
| • |
Lab 19.1 — Create a Data Model |
| • |
Lab 19.2 — Design the Page Layout |
| • |
Lab 19.3 — Experiment with Report Sections |
| • |
Lab 19.4 — TransHeaders and TransFooters |
| • |
Lab 19.5 — Improve Your Report with Some Useful Properties |
| • |
Lab 19.6 — Grouping in a Report |
| • |
Lab 19.7 — Use Grouping and Indentation in a Report |
| • |
Lab 19.8 — Create Subtotals and Grand Totals |
| • |
Lab 19-9 — Add Subtotals and Grand Totals to Indented Data Items |
| • |
Lab 19.10 — Add Some Advanced Features |
| • |
Lab 19.11 — Create a Basic Report |
| • |
Create a Basic Report: Step-by-Step |
The goal of completing this chapter is to enable students to:
| • |
Describe the purpose of reports and their components, such as data items, sections, controls, properties, and triggers. |
| • |
Describe the difference between the logical design of reports and the visual design of reports. |
| • |
Describe the different types of printed reports. |
| • |
Introduce the designers used to create reports. |
| • |
Create a data model for a new report. |
| • |
Design the page layout for a new report. |
| • |
Create new report sections. |
| • |
Add TransHeaders and TransFooters to a report. |
| • |
Employ properties that improve reports by enabling users to filter data and select what information will print. |
| • |
Group report information using table keys and indentation. |
| • |
Create subtotals and grand totals in a report. |
| • |
Work with advanced features of report creation, including using FlowFields, adding a check box to the Options tab of the report request form, and skipping sections in a report. |
| • |
Create a basic report. |
Chapter 20: Dataports
Lessons
| • |
Dataport Fundamentals |
| • |
Designing Dataports |
Lab
| • |
Lab 20.1 — Create a Dataport that Exports in Fixed Format |
| • |
Lab 20.2 — Refine the Dataport |
| • |
Lab 20.3 — Export a Dataport with Variable Format |
| • |
Lab 20.4 — Importing a Dataport in Fixed Format |
| • |
Lab 20.5 — Importing a Dataport in Variable FormatLab 19.11 — Create a Basic Report |
| • |
Create a Basic Report: Step-by-Step |
The goal of completing this chapter is to enable students to:
| • |
Describe dataport fundamentals. |
| • |
Describe dataport components, and the basics of designing, compiling, and running dataports. |
| • |
Explain the difference between dataports for exporting and dataports for importing. |
| • |
Create a dataport that exports in fixed and variable formats. |
| • |
Create a dataport that imports in fixed and variable formats. |
Chapter 21: Customize the Navigation Pane
Lessons
| • |
XMLport Fundamentals |
| • |
Designing XMLports |
Lab
| • |
Lab 21.1 — Create Simple XMLports |
The goal of completing this chapter is to enable students to:
| • |
Describe XMLport fundamentals. |
| • |
Describe designing XMLports, including the properties that must be set. |
| • |
Create simple XMLports that export and import information and codeunits to run them. |
Chapter 22: Codeunits
Lessons
| • |
The C/SIDE Codeunit |
| • |
Demonstration — Create and Modify Codeunits |
| • |
Using the C/AL Editor |
| • |
Demonstration — Define Variables, Text Constants, and Functions in Codeunits |
| • |
Using the C/AL Symbol Menu |
| • |
Using Codeunits |
| • |
Temporary Tables on Forms |
| • |
Demonstration ( Creating a Temporary Table on a Form |
| • |
SMTP |
The goal of completing this chapter is to enable students to:
| • |
Describe the elements of codeunits. |
| • |
Demonstrate how to create codeunits. |
| • |
Define variables, text constants, and functions. |
| • |
Demonstrate the C/AL Symbol Menu. |
| • |
Describe assignments on codeunits. |
| • |
Describe temporary tables on forms, and demonstrate how to create one. |
| • |
Describe SMTP and how to create e-mail programmatically with C/AL. |
Chapter 23: MenuSuites
Lessons
| • |
Creating and Designing MenuSuite Objects |
| • |
Customizing MenuSuite Objects |
| • |
Exporting a MenuSuite Object |
| • |
Upgrading MenuSuite Content |
The goal of completing this chapter is to enable students to:
| • |
Review the basic concepts of the menu suite and MenuSuite objects. |
| • |
Explain how to create and design MenuSuite objects. |
| • |
Describe how to customize and export MenuSuite objects. |
| • |
Explain how to upgrade MenuSuite content. |
Chapter 24: Automation Server
Lessons
| • |
Automation Overview |
| • |
Creating the Variables |
| • |
Demonstration — Automate a Customer List Using Excel |
| • |
Responding to Events |
| • |
Common Problems and Limitations |
Labs
| • |
Lab 24.1— Create a Report with Automation |
| • |
Lab 24.2 — Create a Codeunit with Automation Capabilities |
The goal of completing this chapter is to enable students to:
| • |
Provide an overview of automation concepts. |
| • |
Describe the steps to set up automation. |
| • |
Show how variables are created in automation. |
| • |
Demonstrate how to automate a customer list. |
| • |
Create a report with automation. |
| • |
Describe responding to events. |
| • |
Describe common problems and limitations. |
| • |
Create a codeunit with automation capabilities. |
For more
information or to give feedback, send e-mail to info@OneApex.com or call
949-597-2100 |