Methods
# addReference(attr, guid) → {boolean}
If attr
is a reference attribute, sets it to the given object.
If attr
is a reference set attribute, adds the given object to it.
Parameters:
Name | Type | Description |
---|---|---|
attr |
string
|
The reference attribute. Can refer to either a reference or reference set attribute. |
guid |
GUID
|
|
true
if successful, false
otherwise
boolean
Example
mxobj.addReference("MyFirstModule.Ent_RefEnt", "12345");
# addReferences(attr, guids) → {boolean}
Add an object to a reference set attribute.
Parameters:
Name | Type | Description |
---|---|---|
attr |
string
|
the reference set attribute |
guids |
Array.<GUID>
|
|
true
if successful, false
otherwise
boolean
Example
mxobj.addReferences("MyFirstModule.Ent_RefEnt", ["12345", "12346"]);
# fetch(path, callback, error)
Gets an object or value of an attribute, through a path from this object.
The result is passed to a callback and depends on the requested path:
| Path resolves to | Result
|-------------------------------------------------------------------------------------
| attribute | value of the attribute
| object reference | GUID
of the object
| object reference set | array of GUIDs
with the objects
| entity | array of GUIDs
for a reference set, MxObject
otherwise
If no path is given, the result is set to the object itself. A reference set can only be the last reference in the path.
Parameters:
Name | Type | Description |
---|---|---|
path |
string
|
path from the object to the desired object or attribute |
callback |
mendix/lib/MxObject~FetchCallback
|
called when fetching is done |
error |
mendix/lib/MxObject~FetchErrorCallback
|
function to handle errors |
Examples
mxobj.fetch("Name", function(value) {
alert("Person's name is " + value);
});
mxobj.fetch("MyFirstModule.Friend/MyFirstModule.Person", function(value) {
alert("Name of person's friend is " + value.get("Name"));
});
mxobj.fetch("MyFirstModule.Owns/MyFirstModule.Pet", function(value) {
alert("Person owns the following pets: " + value);
});
mxobj.fetch("MyFirstModule.Friend/MyFirstModule.Person/" +
"MyFirstModule.Father/MyFirstModule.Person/" +
"Age", function(value) {
alert("Name of the father of this person's friend is " + value);
});
# get(attr) → {string|number|external:Big|boolean}
Returns the value of an attribute.
Parameters:
Name | Type | Description |
---|---|---|
attr |
string
|
attribute whose value to return |
value of the specified attribute. The return type depends on the type of the attribute as follows:
Attribute type | Javascript type | Javascript value |
---|---|---|
Integer, Long, Decimal | external:Big |
instance containing the number |
Autonumber | string |
string representation of the number |
DateTime | number |
timestamp of the date |
Enum | string |
value of the enumeration |
String | string |
|
Boolean | boolean |
|
Reference | string |
referenced object GUID as a string |
ReferenceSet | Array<string> |
referenced object GUIDs as strings |
Empty values are always returned as the empty string (""
).
Examples
mxobj.get("IsActive"); // true
mxobj.get("Name"); // "John Doe"
numericValue = mxobj.get("LoginCount");
numericValue instanceof Big // true
numericValue.toString() // "315"
# getAttributes()
Convenience function
Example
var attrs = mxobject.getAttributes(); // ["Name", "Age"];
# getChildren(attr) → {Array.<mendix/lib/MxObject>}
Retrieves the MxObjects
referenced by a reference attribute, if these objects
were retrieved together with the current one using mx.data.get
's args.filter.references
.
Otherwise returns an empty array, including the case when the reference has been modified since retrieval. When trying to retrieve a non-reference attribute this way, an exception is thrown. Passing a reference that contains multiple associations also throws an exception.
Parameters:
Name | Type | Description |
---|---|---|
attr |
string
|
attribute whose referenced objects to return |
MxObject
s referenced by the given reference attribute
Array.<mendix/lib/MxObject>
# getEntity() → {string}
Gets the entity name.
the entity name
string
Example
mxobject.getEntity(); // "System.User"
# getEnumMap()
Convenience function
Example
mxobject.getEnumMap("Color"); // [ { key : "red", caption : "Red" },
// { key : "green", caption : "Green" },
// { key : "blue", caption : "Blue" } ]
# getOptions()
Convenience function
Example
mxobject.getOptions("Color"); // [ "red", "green", "blue" ]
# getOriginalReferences(attr) → {Array.<GUID>}
Retrieves the original MxObjects
referenced by a reference or reference set attribute.
Parameters:
Name | Type | Description |
---|---|---|
attr |
string
|
reference attribute whose original referenced objects to return |
GUIDs
of the original referenced objects
Array.<GUID>
Example
mxobj.getReferences("MyFirstModule.Ref"); // [ "12345", "12346" ]
mxobj.set("MyFirstModule.Ref", [ "12347" ]); // [ "12347" ]
mxobj.getReferences("MyFirstModule.Ref"); // [ "12347" ]
mxobj.getOriginalReferences("MyFirstModule.Ref"); // [ "12345", "12346" ]
# getOriginalValue(attr) → {string|number|external:Big|boolean}
Returns the original, last committed, value of an attribute.
Parameters:
Name | Type | Description |
---|---|---|
attr |
string
|
attribute whose value to return |
- See:
-
- mendix/lib/MxObject#get for an overview of how the return value depends on the attribute's type.
original value of the specified attribute.
Example
mxobj.get("Name"); // "Fred"
mxobj.set("Name", "Henry");
mxobj.get("Name"); // "Henry"
mxobj.getOriginalValue("Name") // "Fred"
# getReference(reference) → {string}
Retrieves the GUID of the object referenced by a reference attribute. When trying to retrieve a non-reference or reference set attribute this way, an exception is thrown.
Parameters:
Name | Type | Description |
---|---|---|
reference |
string
|
attribute whose referenced object to return |
GUID
of the MxObject
referenced by the given reference attribute
string
Example
// Get GUID of object over association MyFirstModule.Ref.
refs = mxobj.getReference("MyFirstModule.Ref"); // "12345"
# getReferenceAttributes()
Convenience function
Example
var refs = mxobject.getReferenceAttributes(); // [ "Mod.Person_Parent",
// "Mod.Person_Company" ]
# getReferences(attr) → {Array.<GUID>}
Retrieves the MxObjects
referenced by a reference or reference set attribute.
Parameters:
Name | Type | Description |
---|---|---|
attr |
string
|
reference attribute whose referenced objects to return |
GUIDs
of the references objects
Array.<GUID>
Example
// Get GUIDs of objects over association MyFirstModule.Ref.
mxobj.getReferences("MyFirstModule.Ref"); // [ "12345", "12346" ]
# getSelectorEntity(attr)
Convenience function
Parameters:
Name | Type | Description |
---|---|---|
attr |
Attribute
|
Example
mxobject.getSelectorEntity("Order_OrderLine"); // "CRM.OrderLine"
# getSubEntities()
Convenience function
Example
mxobject.getSubEntities(); // [ "MyModule.EntityA", "MyModule.EntityB" ]
# getSuperEntities()
Convenience function
Example
mxobject.getSuperEntities(); // [ "MyModule.EntityC",
// "MyModule.EntityD",
// "System.User" ]
# hasChanges() → {boolean}
Checks an MxObject
for changes.
true
if this MxObject
has changes, false
otherwise
boolean
Example
mx.data.get({
guid: "12345",
callback: function(obj) {
// Object is fresh from the runtime; next line prints 'false'.
console.log(obj.hasChanges());
obj.set("Name", "foo");
// Object has a changed attribute; next line prints 'true'.
console.log(obj.hasChanges());
}
});
# hasSubEntities()
Convenience function
Example
mxobject.getSubEntities(); // [ "MyModule.EntityA", "MyModule.EntityB" ]
# hasSuperEntities()
Convenience function
Example
if (mxobject.hasSuperEntities()) {
alert("This object inherits from another Entity");
} else {
alert("This object does not inherit from another Entity");
}
# inheritsFrom(className)
Convenience function
Parameters:
Name | Type | Description |
---|---|---|
className |
Entity
|
Example
if (mxobject.inheritsFrom("System.User")) {
alert("This object inherits from System.User");
} else {
alert("This object does not inherit from System.User");
}
# isA(classname)
Convenience function
Parameters:
Name | Type | Description |
---|---|---|
classname |
Entity
|
Example
if (mxobject.isA("System.User")) {
alert("This object is a System.User");
} else {
alert("This object is not a System.User");
}
# isBoolean(attr)
Convenience function
Parameters:
Name | Type | Description |
---|---|---|
attr |
Attribute
|
Example
if (mxobject.isBoolean("Checked")) {
alert("Attribute 'Checked' is a Boolean");
} else {
alert("Attribute 'Checked' is not a Boolean");
}
# isDate(attr)
Convenience function
Parameters:
Name | Type | Description |
---|---|---|
attr |
Attribute
|
Example
if (mxobject.isDate("DoB")) {
alert("Attribute 'DoB' is a Date");
} else {
alert("Attribute 'DoB' is not a Date");
}
# isEnum(attr)
Convenience function
Parameters:
Name | Type | Description |
---|---|---|
attr |
Attribute
|
Example
if (mxobject.isEnum("Colors")) {
alert("Attribute 'Colors' is an Enumeration");
} else {
alert("Attribute 'Colors' is not an Enumeration");
}
# isLocalizedDate(attr)
Convenience function
Parameters:
Name | Type | Description |
---|---|---|
attr |
Attribute
|
Example
if (mxobject.isLocalizedDate("DoB")) {
alert("Attribute 'DoB' is a Localized Date");
} else {
alert("Attribute 'DoB' is not a Localized Date");
}
# isNumeric(attr)
Convenience function
Parameters:
Name | Type | Description |
---|---|---|
attr |
Attribute
|
Example
if (mxobject.isNumeric("Count")) {
alert("Attribute 'Count' is numeric");
} else {
alert("Attribute 'Count' is not numeric");
}
# isObjectReference(attr)
Convenience function
Parameters:
Name | Type | Description |
---|---|---|
attr |
Attribute
|
Example
if (mxobject.isObjectReference("Mother")) {
alert("Attribute Parent is a reference");
} else {
alert("Attribute Parent is not a reference");
}
# isObjectReferenceSet(attr)
Convenience function
Parameters:
Name | Type | Description |
---|---|---|
attr |
Attribute
|
Example
if (mxobject.isObjectReferenceSet("Children")) {
alert("Attribute Children is a reference set");
} else {
alert("Attribute Children is not a reference set");
}
# isPassword(attr)
Convenience function
Parameters:
Name | Type | Description |
---|---|---|
attr |
Attribute
|
Example
if (mxobject.isPassword("Password")) {
alert("Attribute 'Password' is a Password");
} else {
alert("Attribute 'Password' is not a Password");
}
# isReadonlyAttr(attr) → {boolean}
Checks whether an attribute is read-only.
Parameters:
Name | Type | Description |
---|---|---|
attr |
string
|
attribute for which to check |
true
if attr
is a read-only attribute, false
otherwise
boolean
# isReference(attr)
Convenience function
Parameters:
Name | Type | Description |
---|---|---|
attr |
Attribute
|
Example
if (mxobject.isReference("Children")) {
alert("Attribute Children is a reference set");
} else {
alert("Attribute Children is not a reference set");
}
# removeReferences(attr, guids) → {boolean}
Removes references from a reference attribute.
Parameters:
Name | Type | Description |
---|---|---|
attr |
string
|
refererence attribute to remove references from |
guids |
Array.<GUID>
|
|
false
if an exception occured while removing the reference,
true
otherwise
boolean
Example
mxobj.removeReferences("MyFirstMdule.Ent_RefEnt", ["12345", "12346"]);
# set(attr, val)
Sets the value of attribute attr
to the value of val
.
The type of val
depends on the type of attribute.
This only changes the mendix/lib/MxObject
instance in the client session. To
commit the object to the backend database, see mx.data.commit
.
Parameters:
Name | Type | Description |
---|---|---|
attr |
string
|
attribute to set |
val |
*
|
value to set |
Error if value
is invalid, use validator#validate before calling this method
Examples
mxobj.set("Name", "John Smith");
mxobj.set("IsActive", true);
# inner FetchCallback(requested)
Callback for returning data with mendix/lib/MxObject#fetch
.
Parameters:
Name | Type | Description |
---|---|---|
requested |
*
|
object, attribute value or an |
Type Definitions
# FetchCallback(requested)
Callback for returning data with mendix/lib/MxObject#fetch
.
Parameters:
Name | Type | Description |
---|---|---|
requested |
*
|
object, attribute value or an |
# FetchErrorCallback(error)
Error callback for mendix/lib/MxObject#fetch
Parameters:
Name | Type | Description |
---|---|---|
error |
Error
|
error describing the failure of the request |