1/17
Contents
List of Figures
Title and Copyright Information
Preface
Audience
Documentation Accessibility
Related Documents
Conventions
1
Introduction to JD Edwards EnterpriseOne Tools Development Standards for Business Function Programming
1.1
Development Standards for Business Function Programming Overview
1.2
Development Standards for Business Function Programming Implementation
1.2.1
Business Function Programming Implementation Steps
2
Understanding Naming Conventions
2.1
Source and Header File Names
2.2
Function Names
2.3
Variable Names
2.3.1
Example: Hungarian Notation for Variable Names
2.4
Business Function Data Structure Names
3
Ensuring Readability
3.1
Understanding Readability
3.2
Maintaining the Source and Header Code Change Log
3.3
Inserting Comments
3.3.1
Example: Inserting Comments
3.4
Indenting Code
3.4.1
Example: Indenting Code
3.5
Formatting Compound Statements
3.5.1
Example: Formatting Compound Statements
3.5.2
Example: Using Braces to Clarify Flow
3.5.3
Example: Using Braces for Ease in Subsequent Modifications
3.5.4
Example: Handling Multiple Logical Expressions
4
Declaring and Initializing Variables and Data Structures
4.1
Understanding Variables and Data Structures
4.2
Using Define Statements
4.2.1
Example: #define in Source File
4.2.2
Example: #define in Header File
4.3
Using Typedef Statements
4.3.1
Example: Using Typedef for a User-Defined Data Structure
4.4
Creating Function Prototypes
4.4.1
Example: Creating a Business Function Prototype
4.4.2
Example: Creating an Internal Function Prototype
4.4.3
Example: Creating an External Business Function Definition
4.4.4
Example: Creating an Internal Function Definition
4.5
Initializing Variables
4.5.1
Example: Initializing Variables
4.6
Initializing Data Structures
4.6.1
Example: Using Memset to Reset the Data Structure to Null
4.7
Using Standard Variables
4.7.1
Using Flag Variables
4.7.2
Using Input and Output Parameters
4.7.3
Using Fetch Variables
4.7.3.1
Example: Using Standard Variables
5
Applying General Coding Guidelines
5.1
Using Function Calls
5.1.1
Calling an External Business Function
5.1.1.1
Example: Calling an External Business Function
5.1.2
Calling an Internal Business Function
5.1.2.1
Example: Calling an Internal Business Function with No Return Value
5.1.2.2
Example: Calling an Internal Business Function with a Return Value
5.2
Passing Pointers between Business Functions
5.2.1
Storing an Address in an Array
5.2.1.1
Example: Storing an Address in an Array
5.2.2
Retrieving an Address from an Array
5.2.2.1
Example: Retrieving an Address from an Array
5.2.3
Removing an Address from an Array
5.2.3.1
Example: Removing an Address from an Array
5.3
Allocating and Releasing Memory
5.3.1
Example: Allocating and Releasing Memory within a Business Function
5.4
Using hRequest and hUser
5.5
Typecasting
5.6
Comparison Testing
5.6.1
Example: Comparison Test
5.6.2
Example: Creating TRUE or FALSE Test Comparison that Uses Boolean Logic
5.7
Copying Strings with jdeStrcpy or jdeStrncpy
5.8
Using the Function Clean Up Area
5.8.1
Example: Using the Function Clean Up Area to Release Memory
5.9
Inserting Function Exit Points
5.9.1
Example: Inserting an Exit Point in a Function
5.10
Terminating a Function
6
Coding for Portability
6.1
Portability Concepts
6.2
Portability Guidelines
6.3
Preventing Common Server Build Errors and Warnings
6.3.1
Comments within Comments
6.3.1.1
Example: C Comments that Comply with the ANSI Standard
6.3.1.2
Example: C Comments that Comply with the ANSI Standard
6.3.1.3
Example: Comments within Comments Cause Problems on Different Servers
6.3.2
New Line Character at the End of a Business Function
6.3.3
Use of Null Character
6.3.3.1
Example: Use of NULL Character
6.3.4
Lowercase Letters in Include Statements
6.3.4.1
Example: Use of Lowercase Letters in Include Statements
6.3.5
Initialized Variables that are Not Referenced
7
Understanding JD Edwards EnterpriseOne Defined Structures
7.1
MATH_NUMERIC Data Type
7.2
JDEDATE Data Type
7.2.1
Using Memcpy to Assign JDEDATE Variables
7.2.2
JDEDATECopy
8
Implementing Error Messages
8.1
Understanding Error Messages
8.2
Inserting Parameters for Error Messages in lpDS
8.2.1
Example: Parameters in lpDS for an Error Message
8.3
Initializing Behavior Errors
8.3.1
Example: Initialize Behavior Error
8.4
Using Text Substitution to Display Specific Error Messages
8.4.1
Example: Text Substitution in an Error Message
8.5
Mapping Data Structure Errors with jdeCallObject
9
Understanding Data Dictionary Triggers
9.1
Data Dictionary Triggers
10
Understanding Unicode Compliance Standards
10.1
Unicode Compliance Standards
10.2
Unicode String Functions
10.2.1
Example: Using Unicode String Functions
10.3
Unicode Memory Functions
10.3.1
Example: Using jdeMemset when Setting Characters to Values other than NULL
10.4
Pointer Arithmetic
10.5
Offsets
10.6
MATH_NUMERIC APIs
10.7
Third-Party APIs
10.7.1
Example: Third-Party API
10.8
Flat-File APIs
10.8.1
Example: Flat-File APIs
11
Understanding Standard Header and Source Files
11.1
Standard Header
11.1.1
Business Function Name and Description
11.1.2
Copyright Notice
11.1.3
Header Definition for a Business Function
11.1.4
Table Header Inclusions
11.1.5
External Business Function Header Inclusions
11.1.6
Global Definitions
11.1.7
Structure Definitions
11.1.8
DS Template Type Definitions
11.1.9
Source Preprocessing Definitions
11.1.10
Business Function Prototypes
11.1.11
Internal Function Prototypes
11.2
Standard Source
11.2.1
Business Function Name and Description
11.2.2
Copyright Notice
11.2.3
Notes
11.2.4
Global Definitions
11.2.5
Header File for Associated Business Function
11.2.6
Business Function Header
11.2.7
Variable Declarations
11.2.8
Declare Structures
11.2.9
Pointers
11.2.10
Check for NULL Pointers
11.2.11
Set Pointers
11.2.12
Main Processing
11.2.13
Function Clean Up
11.2.14
Internal Function Comment Block
Glossary
Index
Scripting on this page enhances content navigation, but does not change the content in any way.