Try OpenEdge Now
skip to main content
ABL Reference
ABL Syntax Reference : :: Punctuation
 

:: Punctuation

The double colon (::) is a short-hand syntax for referencing constant named members of database object containers, for example dynamic ProDataSets, queries, temp-tables, and buffers.
The following rules will help you to decide whether to use dot, colon, or double colon syntax:
*Use a dot between two names when the left-hand side name is the actual name of a database or table, known at compile time, and is not a handle or reference of any kind. For example, Customer.CustNum or Sports2000.Customer or Sports2000.Customer.CustNum.
*Use a colon between two character strings when the left-hand side is a handle or reference, and is not the actual name of a database or table, and the right-hand side is an attribute or method for the left-hand-side handle or reference. For example, hBuff:NUM-FIELDS, or hDset:NUM-BUFFERS or hBuff:FIND-FIRST.
*Use a double colon between two character strings when the left-hand side name is a handle to a container object of some kind (buffer, table or ProDataSet) and the right-hand side is not an attribute or method, but instead is a named member of the left-hand side. For example, hBuff::CustNum or hDset::Customer or hDSet::Customer::CustNum.
For example, if hBuff is a HANDLE to the Customer table, then hBuff:NAME returns the string "Customer", but hBuff::NAME returns the value of the NAME field for the current record in the hBuff Buffer, e.g. "Lift Line Skiing".

See also

: Punctuation, . Punctuation