public class ERXGroupingRepetition extends ERXStatelessComponent
[erxgroupingrepetition] [wostring value=currentDepartment.name] [worepetition list=currentEmployees item=currentEmployee] [wostring value=currentEmployees.firstName] [/worepetition] [/erxgroupingrepetition]and then you'd set up the bindings of the grouping repetition like:
list=allEmployees : list of employees to group item=currentEmployee : will be set so the next key can get evaluated sectionForItem=departmentForCurrentEmployee : a method in the parent that returns sth like currentEmployee.department() sectionKey="name" : assuming department has a name, but can be unbound; note that you can group on "city", too! subListSection=currentDepartment : instance variable in the parent that will get set to the current department subList=currentEmployees : instance variable in the parent that will get set to the employees of the current department sortKey="@sortAsc.name" : sorts the department list by nameIf a user could belong to many departments, you could either set the
splitArrays
binding to true,
in which case the sections would be all the departments and the user would be added in each section he belongs
or you could leave it out. Then the sections will be each combination of departments a user belongs to.
Please see the page BugsPerUser.wo from the BugTracker application to find another example on how to use it.Name | Description |
---|---|
list | list of objects to group |
item | current item, will get pushed to the parent, so that it can evaluate sectionForItem |
sectionForItem | value pulled from the parent, after "item" gets pushed |
sectionKey | key to group departments on (usually primaryKey or hashCode) |
subListSection | will get set to the current section |
subList | will get set to the grouped items for the section |
sortKey | optional key for sorting the group list (sth like '@sortAsc.name') |
splitArrays | optional boolean specifying if array keys are regarded as distinct keys |
ignoreNulls | optional boolean specifying if nulls are ignored |
WOComponent._EventLoggingEnabler, WOComponent.Event
NSKeyValueCodingAdditions.DefaultImplementation, NSKeyValueCodingAdditions.Utility
NSKeyValueCoding._BooleanFieldBinding, NSKeyValueCoding._BooleanMethodBinding, NSKeyValueCoding._FieldBinding, NSKeyValueCoding._ForwardingBinding, NSKeyValueCoding._KeyBinding, NSKeyValueCoding._KeyBindingCreation, NSKeyValueCoding._MethodBinding, NSKeyValueCoding._NumberFieldBinding, NSKeyValueCoding._NumberMethodBinding, NSKeyValueCoding._ReflectionKeyBindingCreation, NSKeyValueCoding.ErrorHandling, NSKeyValueCoding.MapImplementation, NSKeyValueCoding.Null<T>, NSKeyValueCoding.UnknownKeyException, NSKeyValueCoding.ValueAccessor
NSValidation._MethodBinding, NSValidation._ValidationBinding, NSValidation.DefaultImplementation, NSValidation.Utility, NSValidation.ValidationException
_dynamicBindings
_Extension, _IsEventLoggingEnabled, _keyAssociations
_CLASS
_CLASS, _KeyPathSeparatorChar, KeyPathSeparator
NullValue
_CLASS
Constructor and Description |
---|
ERXGroupingRepetition(WOContext aContext) |
Modifier and Type | Method and Description |
---|---|
void |
reset()
このメソッドは、指定されているコンテクストのオブジェクトに対する、
ステートレス・コンポーネントの一時的リファレンスをリセットもしくは削除します。
あるコンポーネントの共有化されたインスタンスが、他のセッションによって再利用されるとき、
このメソッドを利用し、各コンポーネントのインスタンス変数を解放します。
|
Object |
sectionItem() |
String |
sectionKey() |
NSArray |
sections() |
void |
setSectionItem(Object section) |
isStateless
appendToResponse, invokeAction, resetCachedBindingsInStatefulComponent, synchronizesVariablesWithBindings, takeValuesFromRequest
_awakeInContext, _checkAccess, _frameworkName, _includeCSSResources, _includeJavascriptResources, additionalCSSFiles, additionalJavascriptFiles, arrayValueForBinding, arrayValueForBinding, booleanValueForBinding, booleanValueForBinding, booleanValueForBinding, browser, checkAccess, clickToOpenEnabled, componentName, defaultCSSPath, defaultJavascriptPath, dynamicBindings, floatValueForBinding, intValueForBinding, isPageAccessAllowed, localizer, objectValueForBinding, objectValueForBinding, pageWithName, postAppendToResponse, preAppendToResponse, primaryCSSFile, primaryJavascriptFile, shouldCheckAccess, stringValueForBinding, stringValueForBinding, useDefaultComponentCSS, useDefaultComponentJavascript
__valueForBinding, _associationWithName, _childTemplate, _cleanUpStatelessComponent, _componentDefinition, _componentUnroll, _isPage, _setContext, _setIsPage, _setParent, _setSubcomponent, _sleepInContext, _subcomponentForElementWithID, _templateNameForClass, _unroll, application, awake, baseURL, bindingKeys, canAccessFieldsDirectly, canGetValueForBinding, canSetValueForBinding, clone, context, debugString, descriptionForResponse, ensureAwakeInContext, frameworkName, generateResponse, handleQueryWithUnboundKey, handleTakeValueForUnboundKey, hasBinding, hasSession, isCachingEnabled, isEventLoggingEnabled, logString, name, pageWithName, parent, path, pathURL, performParentAction, pullValuesFromParent, pushValuesToParent, session, set_componentUnroll, set_unroll, setCachingEnabled, setValueForBinding, setVariableValueForName, sleep, takeValueForKey, takeValueForKeyPath, template, templateWithHTMLString, templateWithHTMLString, templateWithHTMLString, templateWithName, toString, unableToSetNullForKey, validateTakeValueForKeyPath, validateValueForKey, validationFailedWithException, valueForBinding, valueForBooleanBinding, valueForIntegerBinding, valueForKey, valueForKeyPath, valueForNSArrayBindings, valueForNSDictionaryBindings, valueForNumberBinding, valueForStringBinding, variableValueForName, variableWithName
public ERXGroupingRepetition(WOContext aContext)
public String sectionKey()
public NSArray sections()
public Object sectionItem()
public void setSectionItem(Object section)
public void reset()
ERXComponent
reset
in class ERXStatelessComponent
Copyright © 2002 – 2024 Project Wonder.