Table of contents

Introduction

Development Environment

Web Development and Improvements in user experience

(Productivity and Enterprise-level Application Development Features)

Ajax Overview, [[21759|GeneXus' target='_blank'>Ajax' target='_blank'>Ajax Overview, [[21759|GeneXus and Ajax]]

Business Components

Business Component - Publication as an Enterprise Java Bean

Practical course: Bluesky Charters
 

Application Localization

Application Localization
Demo
Translation Tool
Help "in any language"
Practical course: Bluesky Charters
 

Patterns

About this topic
Patterns based development
Description
Built in Patterns
Work With Pattern
Demo: Work With Pattern
Practical course: Patterns
 

Better data model

Null handling optimizes navigations
Nulls property

 

User experience

New options on rightclick in win
 

Reverse Engineering

Database Reverse Engineering Tool
 

New Platforms

MySQL
.Net Mobile Generator
More J2EE support than ever
 

Data Types and Methods

Message Queue handling data types

DirectoryDataType
LDAP Data Type

URL access Property
New IIF function
New byte count function
New Methods for attributes, variables and enumerated domains!
XSLTApply Method
Procedures can now call web objects
Web Services: Grouping Locations
News about model, object, and control properties


Unofficial Content
  • This documentation is valid for:

GeneXus 9.0 Upgrade Course

Call Syntax

Introduction

From 9.0 and on, an object can be invoked not only by using call commands but also by using method syntax. When writing code, you receive help for this new syntax by being shown the invoked object parameters and types.
This avoids many mistakes when passing parameters, optimizes your work and makes development easier.

Description

The following syntax is supported to invoke an object:

objname.CallMethod(parm1, ..., parmi); 

where:
objname

   Is the Object name to be called (including the prefix as detailed here)

CallMethod

   Is the way to invoke the object. It can be a call, link, submit, udf/udp or create command or function. The CallMethod's color varies depending on whether it's a command (green), function (dark brown) or       deprecated function (light brown).

parm1,...,parmi

  Is the object list of parameters.

Examples

To include a call command into a source, you just need to write the object name, or include it from a dialog.

You may add a dot after the object name to display the available ways to invoke the object.


After selecting how to invoke the object by pressing ENTER, the object parm list appears if a parenthesis is included.


The parameter being edited is highlighted in bold.

Note: The BUSSINESS string refers to the platform (web, win or both) in conditional rules.
A rule can be generated only for an interface (win or web) or both (business).
More information

Considerations & FAQ


What about UDPs?
When using UDPs, the last parameter (return parameter) must be left out. This doesn't change with this syntax, so if you use an UDP simply ignore the last parameter when calling.

Sample
The procedure called as an UDP has this rule:

parm(in:SerialID, out: &SerialLastNbr); 

To invoke this procedure use:

CusCode=PSerializer.Udp("C") If Insert On Aftervalidate; 

More about UDPs

About XPZ File Format
Commands are saved as they were written.
If the call(Program) syntax was used, the XPZ file includes call(program).
If the program.call() syntax was used, the XPZ file includes program.call().

About consolidating non-existing objects (from Beta 3 Build 483)
When an object which calls another object is consolidated and the called object doesn't exist, the "old" syntax is used and a warning is shown at consolidation log.

The message is like: "Could not find %s program. Call method changed to old syntax : %s"
Example: "Could not find 'PPrc01' program. Call method changed to old syntax : Call('PPrc01')."

Comments & Collaboration

Last update: February 2024 | © GeneXus. All rights reserved. GeneXus Powered by Globant