Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Title Page Credits Foreword About the Authors About the Reviewer www.PacktPub.com Customer Feedback Acknowledgments Preface
A brief history of NAV The beginning Single user PC Plus Multi-user Navigator Navision Financials for Windows Growth and Mergers Continuous enhancement C/AL's Roots What you should know What this book covers What you need for this book Who this book is for Conventions Reader feedback Customer support
Downloading the example code Errata Piracy Questions
Introduction to NAV 2017
NAV 2017 - An ERP system
Financial management Manufacturing Supply chain management Business Intelligence and reporting Artificial Intelligence Relationship Management Human resource management Project management
A developer's overview of NAV 2017
NAV object types The C/SIDE Integrated Development Environment Object Designer tool icons C/AL programming language NAV object and system elements NAV functional terminology User Interface
Hands-on development in NAV 2017
NAV 2017 development exercise scenario Getting started with application design Application tables
Designing a simple table Creating a simple table
Pages
Standard elements of pages List pages Card pages Document pages Journal/Worksheet pages
Creating a List page Creating a Card page Creating some sample data Creating a list report
Other NAV object types
Codeunits Queries MenuSuites XMLports
Development backups and documentation Review questions Summary
Tables
An overview of tables
Components of a table Naming tables Table numbering Table properties Table triggers Keys SumIndexFields Field Groups
Bricks
Enhancing our sample application
Creating and modifying tables Assigning a table relation property Assigning an InitValue property Adding a few activity-tracking tables New tables for our WDTU project New list pages for our WDTU project Keys, SumIndexFields, and TableRelations in our examples
Secondary keys and SumIndexFields Table Relations
Modifying an original NAV table Version List documentation
Types of table
Fully Modifiable tables
Master Data Journal Template Entry tables Subsidiary (Supplementary) tables Register Posted Document Singleton Temporary
Content Modifiable tables
System table
Read-Only tables
Virtual
Review questions Summary
Data Types and Fields
Basic definitions used in NAV Fields
Field properties Field triggers Field events Data structure examples Field numbering Field and variable naming
Data types
Fundamental data types
Numeric data String data Date/Time data
Complex data types
Data structure Objects Automation Input/Output DateFormula References and other data types
Data type usage
FieldClass property options
FieldClass - Normal FieldClass - FlowField FieldClass - FlowFilter FlowFields and a FlowFilter for our application
Filtering
Experimenting with filters Accessing filter controls
Development Environment filter access
Role Tailored Client filter access
Review questions
Summary
Pages - the Interactive Interface
Page Design and Structure Overview
Page Design guidelines NAV 2017 Page structure
Types of pages
Role Center page List page Card page Document page
FastTabs
ListPlus page Worksheet (Journal) page Confirmation Dialog page Standard Dialog page Navigate page
Navigate function
Special pages
Request page Departments page
Page parts
FactBox Area
CardParts and ListParts
Charts
Chart Part Chart Control Add-In
Page names
Page Designer
New Page wizard
Page Components
Page Triggers Page properties Page Preview Tool Inheritance
WDTU Page Enhancement - part 1 Page Controls
Control types
Container controls Group controls Field controls Page Part controls Page Control triggers
Bound and Unbound Pages
WDTU Page Enhancement - part 2 Page Actions
Page Action types and subtypes Action Groups
Navigation Pane Button actions Actions Summary
Learning more
Patterns and creative plagiarism Experimenting on your own Experimentation
Review questions Summary
Queries and Reports
Queries
Building a simple Query Query and Query Component properties
Query properties DataItem properties Column properties
Reports
What is a report? Four NAV report designers NAV report types
Report types summarized Report naming
Report components - overview
Report Structure
Report Data overview Report Layout overview
Report data flow
Report components - detail C/SIDE Report Properties Visual Studio - Report Properties Report triggers Request Page Properties Request Page Triggers DataItem properties DataItem triggers
Creating a Report in NAV 2017
Learn by experimentation Report building - Phase 1 Report building - Phase 2 Report building - Phase 3
Modifying an existing report with Report Designer or Word Runtime rendering Inheritance
Interactive report capabilities
Interactive sorting Interactive Visible / Not Visible
Request Page
Add a Request Page option
Processing-Only reports Creative report plagiarism and Patterns
Review questions Summary
Introduction to C/SIDE and C/AL
Understanding C/SIDE
Object Designer
Starting a new object
Accessing the Table Designer screen Accessing the Page Designer Accessing the Report Dataset Designer Accessing the Codeunit Designer
Query Designer XMLport Designer MenuSuite Designer Object Designer Navigation
Exporting objects
Importing objects
Import Table object changes
Text objects Shipping changes as an extension
Some useful practices
Changing data definitions Saving and compiling
Some C/AL naming conventions Variables
C/AL Globals C/AL Locals Special working storage variables
C/SIDE programming
Non-modifiable functions Modifiable functions Custom functions
Creating a function
C/AL syntax
Assignment and punctuation Expressions
Operators
Arithmetic operators and functions Boolean operators Relational operators and functions Precedence of operators
Frequently used C/AL functions
MESSAGE function ERROR function CONFIRM function STRMENU function Record functions
SETCURRENTKEY function SETRANGE function SETFILTER function GET function
FIND Functions
FIND ([Which]) options and the SQL Server alternates
Conditional statements
BEGIN-END compound statement IF-THEN-ELSE statement
Indenting code
Some simple coding modifications
Adding field validation to a table Adding code to a report
Lay out the new Report Heading Saving and testing Lookup related table data Laying out the new report Body Saving and testing
Handling user entered report options Defining the Request Page
Finishing the processing code
Testing the completed report Output to Excel
Review questions Summary
Intermediate C/AL
C/AL Symbol Menu Internal documentation Source code management Validation functions
TESTFIELD FIELDERROR INIT VALIDATE
Date and Time functions
TODAY, TIME, and CURRENTDATETIME WORKDATE DATE2DMY function DATE2DWY function DMY2DATE and DWY2DATE functions CALCDATE
Data conversion and formatting functions
ROUND function FORMAT function EVALUATE function
FlowField and SumIndexField functions
CALCFIELDS function SETAUTOCALCFIELDS function CALCSUMS function
CALCFIELDS and CALCSUMS comparison
Flow control
REPEAT-UNTIL WHILE-DO FOR-TO or FOR-DOWNTO CASE-ELSE statement WITH-DO statement QUIT, BREAK, EXIT, and SKIP
QUIT function BREAK function EXIT function SKIP function
Input and Output functions
NEXT function with FIND or FINDSET INSERT function MODIFY function
Rec and xRec
DELETE function MODIFYALL function DELETEALL function
Filtering
SETFILTER function COPYFILTER and COPYFILTERS functions GETFILTER and GETFILTERS functions FILTERGROUP function MARK function CLEARMARKS function MARKEDONLY function RESET function
InterObject communication
Communication through data Communication through function parameters Communication via object calls
Enhancing the WDTU application
Modify table fields Adding validation logic
Playlist Header validations
Creating the Playlist Subpage
Playlist Line validations
Creating a function for our Factbox Creating a Factbox Page
Review questions Summary
Advanced NAV Development Tools
NAV process flow
Initial Setup and Data Preparation Transaction entry Testing and Posting the Journal batch Utilizing and maintaining the data Data maintenance
Role Center pages
Role Center structure
Role Center activities page Cue Groups and Cues Cue source table Cue Group Actions
System Part Page Parts
Page Parts Not Visible Page Part Charts Page Parts for User Data
Navigation Pane and Action Menus
Action Designer Creating a WDTU Role Center Ribbon
Action Groups / Ribbon Categories Configuration/Personalization
Navigation Pane
Navigation Home Button Navigation Departments Button Other Navigation Buttons
XMLports
XMLport components
XMLport properties XMLport triggers XMLport data lines The XMLport line properties
SourceType as Text SourceType as Table SourceType as Field
Element or Attribute
NodeType of Element NodeType of Attribute
XMLport line triggers
DataType as Text DataType as Table DataType as Field
XMLport Request Page
Web services
Exposing a web service Publishing a web service Enabling web services Determining what was published XMLport - Web Services Integration example for WDTU
Review questions Summary
Successful Conclusions
Creating new C/AL routines
Callable functions
Codeunit 358 - DateFilterCalc Codeunit 359 - Period Form Management
FindDate function NextDate function CreatePeriodFormat function
Codeunit 365 - Format Address Codeunit 396 - NoSeriesManagement Function models to review and use
Management codeunits
Multi-language system Multi-currency system Navigate
Modifying for Navigate
Debugging in NAV 2017
Text Exports of Objects Dialog function debugging techniques
Debugging with MESSAGE and CONFIRM Debugging with DIALOG Debugging with text output Debugging with ERROR
The NAV 2017 Debugger
Activating the Debugger Attaching the Debugger to a Session Creating Break Events The Debugger window
Ribbon Actions:
Changing code while debugging
C/SIDE Test-Driven Development Other interfaces
Automation Controller Linked Data Sources
NAV Application Server Client Add-ins
Client Add-in construction WDTU Client Add-in Client Add-in comments
Creating an Extension
Table Changes Page Changes Events Creating a WDTU extension
Step 1 - Load PowerShell Step 2 - Create Delta files Step 3 - Manifest XML file Remembering the App ID Step 4 - Create the NAVx package
Installing the Extension
Publishing an Extension Verification Extension installation and setup
Customizing Help NAV development projects - general guidance
Knowledge is key Data-focused design
Defining the required data views Designing the data tables Designing the user data access interface Designing the data validation Data design review and revision
Designing the Posting processes Designing the supporting processes Double-check everything
Design for efficiency
Disk I/O Locking
Updating and Upgrading
Design for updating
Customization project recommendations
One change at a time
Testing
Database testing approaches Testing in production Using a testing database Testing techniques
Deliverables Finishing the project
Plan for upgrading
Benefits of upgrading Coding considerations Good documentation Low-impact coding
Supporting material Review questions Summary
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion