Home › Forum › Nuclos Entwicklung › Makros und Regeln › Fehler in Regeln nach Update › Aw: Fehler in Regeln nach Update
Hallo,
durch Vereinheitlichungen am Metadatenmodell musste der Konstruktor für CollectableGenericObjectEntityField angepasst werden. Seit Version 2.5.1-final erwartet dieser einen zweiten Parameter (vom Typ EntityFieldMetaDataVO).
Sie erhalten diesen zweiten Parameter von der MetaDataServerProvider-Instanz via getEntityField. In ihrem Fall also MetaDataServerProvider.getInstance().getEntityField(„address“,“addressformat“):
public void rule(RuleInterface server) throws NuclosBusinessRuleException {
Integer objectId = server.getObjectId();
if(server.hasFieldChanged("addressformat", "format") && objectId != null) {
String format = (String)server.getFieldValue("addressformat", "format");
// load all addresses with this address format
CollectableEntityField entityField = new org.nuclos.common.genericobject.CollectableGenericObjectEntityField(
AttributeCache.getInstance().getAttribute("address","addressformat"),
MetaDataServerProvider.getInstance().getEntityField("address", "addressformat"));
CollectableComparison condition = new CollectableComparison(
entityField,
ComparisonOperator.EQUAL,
new CollectableValueIdField(objectId, " "));
Collection addresses = server.getGenericObjectIds("address",condition);
for(Iterator it = addresses.iterator(); it.hasNext();) {
Integer addressId = it.next();
// ...
}
}
}
Ich hoffe, diese Antwort hilft Ihnen weiter.
Viele Grüße,
alpha