public interface IEssPerformAllocation
performAllocation(boolean, List)
. Before calling this API, all the
parameters must be set using the appropriate set* methods in this class.Modifier and Type | Field and Description |
---|---|
static long |
ESS_ASO_ALLOCATION_METHOD_SHARE |
static long |
ESS_ASO_ALLOCATION_METHOD_SPREAD |
static long |
ESS_ASO_ALLOCATION_NEGBASIS_ABORT
cancel the allocation
|
static long |
ESS_ASO_ALLOCATION_NEGBASIS_ABS
use absolute value
|
static long |
ESS_ASO_ALLOCATION_NEGBASIS_DEFAULT
default behavior
|
static long |
ESS_ASO_ALLOCATION_NEGBASIS_MISSING
treat it as #missing
|
static long |
ESS_ASO_ALLOCATION_NEGBASIS_NEXTAMT
skip to next Amount value
|
static long |
ESS_ASO_ALLOCATION_NEGBASIS_ZERO
treat it as a zero
|
static long |
ESS_ASO_ALLOCATION_ROUND_DISCARDERRORS
Perform rounding, but discard rounding errors
|
static long |
ESS_ASO_ALLOCATION_ROUND_ERRORSTOHIGHEST
Rounding errors are added to the highest allocated value
|
static long |
ESS_ASO_ALLOCATION_ROUND_ERRORSTOLOCATION
Rounding errors are added to a specific location given by roundToLocation
|
static long |
ESS_ASO_ALLOCATION_ROUND_ERRORSTOLOWEST
Rounding errors are added to the lowest allocated value
|
static long |
ESS_ASO_ALLOCATION_ROUND_NONE
No rounding performed
|
static long |
ESS_ASO_ALLOCATION_SPREAD_OPTIONS |
static long |
ESS_ASO_ALLOCATION_SPREAD_SKIPMISSING |
static long |
ESS_ASO_ALLOCATION_SPREAD_SKIPNEGATIVE |
static long |
ESS_ASO_ALLOCATION_SPREAD_SKIPZERO |
static long |
ESS_ASO_ALLOCATION_TIMESPAN_COMBINE_BASIS
Combine basis value across time periods in basisTimeSpan and use the
combined basis for allocation.
|
static long |
ESS_ASO_ALLOCATION_TIMESPAN_DIVIDEAMT |
static long |
ESS_ASO_ALLOCATION_TIMESPAN_REPEATAMT |
static long |
ESS_ASO_ALLOCATION_TIMESPAN_SPLIT_BASIS
Process basis value for each time period individually
|
static long |
ESS_ASO_ALLOCATION_ZEROAMT_ABORT
cancel the whole allocation
|
static long |
ESS_ASO_ALLOCATION_ZEROAMT_DEFAULT
allocate zero values
|
static long |
ESS_ASO_ALLOCATION_ZEROAMT_NEXTAMT
skip to the next Amount value
|
static long |
ESS_ASO_ALLOCATION_ZEROBASIS_ABORT
cancel the whole allocation
|
static long |
ESS_ASO_ALLOCATION_ZEROBASIS_NEXTAMT
skip to the next Amount value
|
Modifier and Type | Method and Description |
---|---|
long |
getAllocationMethod() |
java.lang.String |
getAmount() |
java.lang.String |
getAmountContext() |
java.lang.String |
getAmountTimeSpan() |
java.lang.String |
getBasis() |
java.lang.String |
getBasisTimeSpan() |
long |
getBasisTimeSpanOption() |
java.lang.String |
getCreditMember() |
long |
getDataloadOption() |
java.lang.String |
getDebitMember() |
java.lang.String |
getExcludedRange() |
long |
getGroupID() |
long |
getNegativeBasisOption() |
java.lang.String |
getOffset() |
java.lang.String |
getPOV() |
java.lang.String |
getRange() |
java.lang.String |
getRoundDigits() |
long |
getRoundMethod() |
java.lang.String |
getRoundToLocation() |
long |
getRuleID() |
long |
getSpreadSkipOption() |
java.lang.String |
getTarget() |
java.lang.String |
getTargetTimeSpan() |
long |
getTargetTimeSpanOption() |
long |
getZeroAmountOption() |
long |
getZeroBasisOption() |
boolean |
performAllocation(boolean verifyOnly,
java.util.List outErrorsAndWarnings)
Performs the allocation on a Essbase ASO(Aggregate Storage outline) cube.
|
void |
setAllocationMethod(long allocationMethod)
Sets the allocationMethod - Allocation method to use.
|
void |
setAmount(java.lang.String amount)
Sets the amount - MDX numeric value expression indicating the source of
allocation.
|
void |
setAmountContext(java.lang.String amountContext)
Sets the amountContext - MDX tuple expression indicating the context for
the amount argument above.
|
void |
setAmountInfo(java.lang.String amount,
java.lang.String amountContext,
java.lang.String amountTimeSpan,
long zeroAmountOption)
Sets all amount related parameters.
|
void |
setAmountTimeSpan(java.lang.String amountTimeSpan)
Sets the amountTimeSpan - MDX tuple expression specifying time periods to
consider for amount.
|
void |
setBasis(java.lang.String basis)
Sets the basis - MDX tuple expression specifying the Basis location.
|
void |
setBasisInfo(java.lang.String basis,
java.lang.String basisTimeSpan,
long basisTimeSpanOption,
long zeroBasisOption,
long negativeBasisOption)
Sets all basis related parameters.
|
void |
setBasisTimeSpan(java.lang.String basisTimeSpan)
Sets the basisTimeSpan - MDX tuple expression specifying time periods to
consider for basis.
|
void |
setBasisTimeSpanOption(long basisTimeSpanOption)
Sets the basisTimeSpanOption - Option to specify how basis is computed
across time periods specified in
setBasisTimeSpan(String) . |
void |
setCreditMember(java.lang.String creditMember)
Sets the creditMember - An MDX member expression that specifies the
credit member used for negative and offsetting result values.
|
void |
setDataloadOption(long dataloadOption)
The dataloadOption can have values IEssCube.ESS_ASO_DATA_LOAD_BUFFER_STORE_DATA,
IEssCube.ESS_ASO_DATA_LOAD_BUFFER_ADD_DATA or IEssCube.ESS_ASO_DATA_LOAD_BUFFER_SUBTRACT_DATA
|
void |
setDebitMember(java.lang.String debitMember)
Sets the debitMember - An MDX member expression that specifies the
debit member used for positive result values.
|
void |
setExcludedRange(java.lang.String excludedRange)
Sets the execludedRange - MDX set expression specifying a subset of range
that will be used to calculate allocated values but will not be written
to.
|
void |
setGroupID(long groupID)
Sets the groupID - The groupID refers to the Rule Set that this
allocation is a part of.
|
void |
setNegativeBasisOption(long negativeBasisOption)
Sets negativeBasisOption - If the specified allocationMethod is
ESS_ASO_ALLOCATION_METHOD_SHARE, then you can specify exactly one of the
following options to tell Essbase what to do when a negative Basis value
is encountered.
|
void |
setOffset(java.lang.String offset)
Sets the offset - MDX tuple expression indicating location where
offsetting entries should be made for each source amount that is
allocated.
|
void |
setPOV(java.lang.String pov)
Sets the MDX set expression specifying area of allocation.
|
void |
setRange(java.lang.String range)
Sets the range - MDX set expression that specifies cube region used for
allocation.
|
void |
setRoundDigits(java.lang.String roundDigits)
Sets the roundDigits - If the roundMethod is
ESS_ASO_ALLOCATION_ROUND_NONE, then this must be empty.
|
void |
setRoundingInfo(long roundMethod,
java.lang.String roundDigits,
java.lang.String roundToLocation)
Sets all the rounding related parameters.
|
void |
setRoundMethod(long roundMethod)
Sets the roundMethod - Rounding method to use for rounding allocated
values.
|
void |
setRoundToLocation(java.lang.String roundToLocation)
Sets the roundToLocation - If the roundMethod is anything besides
ESS_ASO_ALLOCATION_ROUND_ERRORSTOLOCATION, then this must be empty.
|
void |
setRuleID(long ruleID)
The rule ID used to identify the information (rule name, rule
description) related to this allocation rule.
|
void |
setSpreadSkipOption(long spreadSkipOption)
Sets the spreadSkipOption - When allocationMethod is
ESS_ASO_ALLOCATION_METHOD_SHARE, this argument must be 0.
|
void |
setTarget(java.lang.String target)
Sets the target - MDX tuple expression indicating target location where
allocations will be made.
|
void |
setTargetInfo(java.lang.String target,
java.lang.String targetTimeSpan,
long targetTimeSpanOption)
Sets all the target related parameters.
|
void |
setTargetTimeSpan(java.lang.String targetTimeSpan)
Sets the targetTimeSpan - MDX tuple expression specifying time periods to
consider for target.
|
void |
setTargetTimeSpanOption(long targetTimeSpanOption)
Set the targetTimeSpanOption - Option to specify how values are allocated
across time periods specified in
setTargetTimeSpan(String) . |
void |
setZeroAmountOption(long zeroAmountOption)
Sets the zeroAmountOption - This option tells Essbase what to do when an
Amount value (the value to be allocated) is either zero or missing.
|
void |
setZeroBasisOption(long zeroBasisOption)
Sets the zeroBasisOption - When the specified allocationMethod is
ESS_ASO_ALLOCATION_METHOD_SHARE, then this argument tells Essbase what to
do when the sum of all Basis values is zero.
|
static final long ESS_ASO_ALLOCATION_METHOD_SHARE
static final long ESS_ASO_ALLOCATION_METHOD_SPREAD
static final long ESS_ASO_ALLOCATION_SPREAD_SKIPMISSING
static final long ESS_ASO_ALLOCATION_SPREAD_SKIPZERO
static final long ESS_ASO_ALLOCATION_SPREAD_SKIPNEGATIVE
static final long ESS_ASO_ALLOCATION_SPREAD_OPTIONS
static final long ESS_ASO_ALLOCATION_ZEROAMT_DEFAULT
static final long ESS_ASO_ALLOCATION_ZEROAMT_NEXTAMT
static final long ESS_ASO_ALLOCATION_ZEROAMT_ABORT
static final long ESS_ASO_ALLOCATION_ZEROBASIS_NEXTAMT
static final long ESS_ASO_ALLOCATION_ZEROBASIS_ABORT
static final long ESS_ASO_ALLOCATION_NEGBASIS_DEFAULT
static final long ESS_ASO_ALLOCATION_NEGBASIS_NEXTAMT
static final long ESS_ASO_ALLOCATION_NEGBASIS_ABORT
static final long ESS_ASO_ALLOCATION_NEGBASIS_ABS
static final long ESS_ASO_ALLOCATION_NEGBASIS_MISSING
static final long ESS_ASO_ALLOCATION_NEGBASIS_ZERO
static final long ESS_ASO_ALLOCATION_TIMESPAN_SPLIT_BASIS
static final long ESS_ASO_ALLOCATION_TIMESPAN_COMBINE_BASIS
static final long ESS_ASO_ALLOCATION_TIMESPAN_DIVIDEAMT
static final long ESS_ASO_ALLOCATION_TIMESPAN_REPEATAMT
static final long ESS_ASO_ALLOCATION_ROUND_NONE
static final long ESS_ASO_ALLOCATION_ROUND_DISCARDERRORS
static final long ESS_ASO_ALLOCATION_ROUND_ERRORSTOHIGHEST
static final long ESS_ASO_ALLOCATION_ROUND_ERRORSTOLOWEST
static final long ESS_ASO_ALLOCATION_ROUND_ERRORSTOLOCATION
java.lang.String getPOV()
void setPOV(java.lang.String pov)
pov
- the pov to setjava.lang.String getAmount()
void setAmount(java.lang.String amount)
amount
- the amount to setjava.lang.String getAmountContext()
void setAmountContext(java.lang.String amountContext)
amountContext
- the amountContext to setjava.lang.String getAmountTimeSpan()
void setAmountTimeSpan(java.lang.String amountTimeSpan)
amountTimeSpan
- the amountTimeSpan to setjava.lang.String getTarget()
void setTarget(java.lang.String target)
target
- the target to setjava.lang.String getTargetTimeSpan()
void setTargetTimeSpan(java.lang.String targetTimeSpan)
setTargetTimeSpanOption(long)
determines how values are
allocated across time periods in targetTimeSpantargetTimeSpan
- the targetTimeSpan to setlong getTargetTimeSpanOption()
void setTargetTimeSpanOption(long targetTimeSpanOption)
setTargetTimeSpan(String)
. It
can have one of the following values:
ESS_ASO_ALLOCATION_TIMESPAN_DIVIDEAMT
ESS_ASO_ALLOCATION_TIMESPAN_REPEATAMTtargetTimeSpanOption
- the targetTimeSpanOption to setjava.lang.String getOffset()
void setOffset(java.lang.String offset)
offset
- the offset to setjava.lang.String getDebitMember()
void setDebitMember(java.lang.String debitMember)
debitMember
- the debitMember to setjava.lang.String getCreditMember()
void setCreditMember(java.lang.String creditMember)
creditMember
- the creditMember to setjava.lang.String getRange()
void setRange(java.lang.String range)
range
- the range to setjava.lang.String getExcludedRange()
void setExcludedRange(java.lang.String excludedRange)
excludedRange
- the excludedRange to setjava.lang.String getBasis()
void setBasis(java.lang.String basis)
basis
- the basis to setjava.lang.String getBasisTimeSpan()
void setBasisTimeSpan(java.lang.String basisTimeSpan)
setBasisTimeSpanOption(long)
determines basis to be used for
allocation.basisTimeSpan
- the basisTimeSpan to setlong getBasisTimeSpanOption()
void setBasisTimeSpanOption(long basisTimeSpanOption)
setBasisTimeSpan(String)
. It
can have one of the following values:
ESS_ASO_ALLOCATION_TIMESPAN_SPLIT_BASIS - Process basis value for each
time period individually. ESS_ASO_ALLOCATION_TIMESPAN_COMBINE_BASIS -
Combine basis value across time periods in basisTimeSpan and use the
combined basis for allocation.basisTimeSpanOption
- the basisTimeSpanOption to setlong getAllocationMethod()
void setAllocationMethod(long allocationMethod)
allocationMethod
- the allocationMethod to setlong getSpreadSkipOption()
void setSpreadSkipOption(long spreadSkipOption)
spreadSkipOption
- the spreadSkipOption to setlong getZeroAmountOption()
void setZeroAmountOption(long zeroAmountOption)
zeroAmountOption
- the zeroAmountOption to setlong getZeroBasisOption()
void setZeroBasisOption(long zeroBasisOption)
zeroBasisOption
- the zeroBasisOption to setlong getNegativeBasisOption()
void setNegativeBasisOption(long negativeBasisOption)
negativeBasisOption
- the negativeBasisOption to setlong getRoundMethod()
void setRoundMethod(long roundMethod)
roundMethod
- the roundMethod to setjava.lang.String getRoundDigits()
void setRoundDigits(java.lang.String roundDigits)
roundDigits
- the roundDigits to set. Acceptable value is in range of [0, 100].java.lang.String getRoundToLocation()
void setRoundToLocation(java.lang.String roundToLocation)
roundToLocation
- the roundToLocation to setlong getGroupID()
void setGroupID(long groupID)
groupID
- the groupID to setlong getRuleID()
void setRuleID(long ruleID)
ruleID
- the rule ID to setlong getDataloadOption()
void setDataloadOption(long dataloadOption)
dataloadOption
- the dataloadOption to setvoid setAmountInfo(java.lang.String amount, java.lang.String amountContext, java.lang.String amountTimeSpan, long zeroAmountOption)
amount
- The amount value.amountContext
- The amount context.amountTimeSpan
- The amount of time span.zeroAmountOption
- The zero amount option.void setBasisInfo(java.lang.String basis, java.lang.String basisTimeSpan, long basisTimeSpanOption, long zeroBasisOption, long negativeBasisOption)
basis
- The basis.basisTimeSpan
- The base time span.basisTimeSpanOption
- The base time optionzeroBasisOption
- The zero basis option.negativeBasisOption
- The negative basis option.void setTargetInfo(java.lang.String target, java.lang.String targetTimeSpan, long targetTimeSpanOption)
target
- The target name.targetTimeSpan
- The target time span.targetTimeSpanOption
- The target time span option.void setRoundingInfo(long roundMethod, java.lang.String roundDigits, java.lang.String roundToLocation)
roundMethod
- The round method.roundDigits
- The round digits.roundToLocation
- The location to be rounded to.boolean performAllocation(boolean verifyOnly, java.util.List outErrorsAndWarnings) throws com.essbase.api.base.EssException
This allocation operation could result in any of the below cases:
1) Succeeds without any warnings:
In this scenario, this operation will return true
and
outErrorsAndWarnings
will not have any messages added
to your outErrorsAndWarnings
object.
2) Executes, but has warning(s):
In this scenario, this operation will return false
,
indicating the operation was executed, but has warning(s) which will be
returned to you, by appending to your outErrorsAndWarnings
object. Each warning message element within your
outErrorsAndWarnings
list is of type, EssPerformAllocationError
3) Fails with Errors (may also have warnings additionally):
This will result in an EssException
being thrown containing the
error message from Essbase. The outErrorsAndWarnings
list will
be populated with the errors (and warnings if any). If there are no errors added
to your outErrorsAndWarnings
object, then the exception occurred
may be due to other reasons like for instance, failing to connect to
Essbase when trying to perform this allocation operation. In such a case, the
EssException
message will clearly reflect the appropriate Essbase
Error code and error message.
Refer Allocation.java sample for an example usage.
verifyOnly
- This is a flag to validate the allocation parameters
without performing allocation. If it is set to true, the
allocation parameters are validated only. If it is false, the
allocation is verified and executed on the associated Essbase cube.outErrorsAndWarnings
- This is output object for collecting the errors and/or warnings
returned by Essbase. This object needs to be instantiated by the
caller so that Essbase can populate the messages (if any).
Note that, if this List object is non-empty, this operation
will be appending the returned errors. So, if you are reusing your
outErrorsAndWarnings
object and like to have the errors/warnings
corresponding to this particular call only, please make sure that
you clear your list before invoking this method.
The list will contain objects of type EssPerformAllocationError
only.com.essbase.api.base.EssException
- when Essbase fails to perform the allocation on the cube.
Refer case (3) mentioned above for more details.EssPerformAllocationError