public class Contracts extends AbstractImpl
Modifier and Type | Field and Description |
---|---|
static String |
BOOKING_TEXT_NAME_DELIVER_GOODS |
static String |
BOOKING_TEXT_NAME_RETURN_GOODS |
static String |
CALCULATION_RULE_NAME_DEFAULT |
static short |
CONTRACT_TYPE_GENERIC_CONTRACT |
static short |
CONTRACT_TYPE_INVOICE |
static short |
CONTRACT_TYPE_LEAD |
static short |
CONTRACT_TYPE_OPPORTUNITY |
static short |
CONTRACT_TYPE_QUOTE |
static short |
CONTRACT_TYPE_SALES_ORDER |
static short |
CONTRACT_TYPE_SALESVOLUME_CONTRACT |
static String |
DEFAULT_GET_CONTRACT_AMOUNTS_SCRIPT |
static String |
DEFAULT_GET_POSITION_AMOUNTS_SCRIPT |
static BigDecimal |
HUNDRED |
static int |
MIN_MAX_QUANTITY_HANDLING_LIMIT |
static int |
MIN_MAX_QUANTITY_HANDLING_NA |
static short |
PRICING_STATE_DIRTY |
static short |
PRICING_STATE_NA |
static short |
PRICING_STATE_OK |
static String |
PRIVATE_GROUP_SUFFIX |
static short |
STATUS_CODE_ERROR |
static short |
STATUS_CODE_OK |
Modifier | Constructor and Description |
---|---|
protected |
Contracts()
Constructor
|
Modifier and Type | Method and Description |
---|---|
BigDecimal[] |
calculateAmounts(SalesContract contract) |
BigDecimal[] |
calculateAmounts(SalesContractPosition position) |
String[] |
calculatePriceUomDescriptions(SalesContractPosition position) |
String[] |
calculateProductDescriptions(SalesContractPosition position) |
BigDecimal[] |
calculateQuantities(SalesContractPosition position) |
String[] |
calculateSalesTaxTypeDescriptions(SalesContractPosition position) |
String[] |
calculateUomDescriptions(SalesContractPosition position) |
protected void |
copyCrxObject(CrxObject source,
CrxObject target)
Copy contract specific attributes from source to target.
|
protected void |
copySalesContract(SalesContract source,
SalesContract target)
Copy sales contract specific attributes from source to target.
|
protected void |
copySalesContractPosition(SalesContractPosition source,
SalesContractPosition target)
Copy sales contract position specific attributes from source to target.
|
int |
countFilteredContract(AbstractFilterContract contractFilter)
Count contracts matching the given contract filter.
|
AbstractContract |
createContract(ContractCreator contractCreator,
String name,
String description,
ContractType contractType,
Date activeOn,
Short priority,
AbstractContract basedOn)
Create contract based on given contract creator.
|
AbstractContract |
createContract(Segment contractSegment,
short contractType,
AbstractContract basedOn)
Creates a contract for the given contractType.
|
Invoice |
createInvoice(SalesOrder salesOrder) |
Opportunity |
createOpportunity(Lead lead) |
Quote |
createQuote(Opportunity opportunity) |
AbstractContract |
createSalesContract(SalesContractCreator contractCreator,
String name,
String description,
ContractType contractType,
Date activeOn,
Short priority,
Date pricingDate,
Short contractCurrency,
Account customer,
Account salesRep,
Account broker,
Account supplier,
AbstractContract basedOn)
Create sales contract based on given contract creator.
|
SalesContractPosition |
createSalesContractPosition(SalesContract contract,
Boolean isIgnoreProductConfiguration,
String name,
BigDecimal quantity,
Date pricingDate,
Product product,
Uom uom,
Uom priceUom,
PricingRule pricingRule)
Create sales contract position.
|
SalesOrder |
createSalesOrder(Quote quote) |
CalculationRule |
findCalculationRule(String name,
Segment segment)
Find calculation rule with given name.
|
ContractCreator |
findContractCreator(String name,
Segment segment)
Find contract creator with given name.
|
protected Description |
getAdditionalDescription(DescriptionContainer container,
short language)
Get additional description matching the given language.
|
GetContractAmountsResult |
getContractAmounts(CalculationRule calculationRule,
SalesContract contract,
List<?> lineItemNumbers,
List<?> positionBaseAmounts,
List<?> positionDiscountAmounts,
List<?> positionTaxAmounts,
List<?> positionAmounts,
List<?> salesCommissions,
List<?> salesCommissionIsPercentages) |
static GetContractAmountsResult |
getContractAmounts(org.openmdx.base.accessor.jmi.cci.RefPackage_1_0 rootPkg,
CalculationRule calculationRule,
SalesContract contract,
Integer[] lineItemNumbers,
BigDecimal[] positionBaseAmounts,
BigDecimal[] positionDiscountAmounts,
BigDecimal[] positionTaxAmounts,
BigDecimal[] positionAmounts,
BigDecimal[] salesCommissions,
Boolean[] salesCommissionIsPercentages)
Get contract amounts.
|
protected Contract1Package |
getContractPackage(javax.jdo.PersistenceManager pm) |
Segment |
getContractSegment(javax.jdo.PersistenceManager pm,
String providerName,
String segmentName)
Get contracts segment.
|
protected CalculationRule |
getDefaultCalculationRule(Segment contractSegment)
Get default calculation rule.
|
static Contracts |
getInstance()
Get registered Contracts backend.
|
protected javax.jmi.reflect.RefPackage |
getJmiPackage(javax.jdo.PersistenceManager pm,
String authorityXri) |
protected BigDecimal |
getMinMaxAdjustedQuantity(SalesContractPosition position) |
GetPositionAmountsResult |
getPositionAmounts(CalculationRule calculationRule,
SalesContractPosition position) |
GetPositionAmountsResult |
getPositionAmounts(CalculationRule calculationRule,
SalesContractPosition position,
BigDecimal minMaxAdjustedQuantity,
BigDecimal uomScaleFactor,
BigDecimal salesTaxRate) |
static GetPositionAmountsResult |
getPositionAmounts(org.openmdx.base.accessor.jmi.cci.RefPackage_1_0 rootPkg,
CalculationRule calculationRule,
SalesContractPosition position,
BigDecimal minMaxAdjustedQuantity,
BigDecimal uomScaleFactor,
BigDecimal salesTaxRate) |
GetPositionAmountsResult |
getSalesContractPositionAmounts(CalculationRule calculationRule,
SalesContractPosition position,
BigDecimal minMaxAdjustedQuantity,
BigDecimal uomScaleFactor,
BigDecimal salesTaxRate)
Get amounts for contract positions.
|
static GetPositionAmountsResult |
getSalesContractPositionAmounts(org.openmdx.base.accessor.jmi.cci.RefPackage_1_0 rootPkg,
CalculationRule calculationRule,
SalesContractPosition position,
BigDecimal minMaxAdjustedQuantity,
BigDecimal uomScaleFactor,
BigDecimal salesTaxRate)
Get contract amounts for sales contract permissions.
|
List<SalesContractPosition> |
getSalesContractPositions(SalesContract contract) |
protected BigDecimal |
getSalesTaxRate(SalesContractPosition position) |
protected BigDecimal |
getUomScaleFactor(SalesContractPosition position) |
CalculationRule |
initCalculationRule(String calculationRuleName,
String description,
String getPositionAmountsScript,
String getContractAmountsScript,
javax.jdo.PersistenceManager pm,
String providerName,
String segmentName)
Create / update calculation rule.
|
void |
markAsClosed(AbstractContract contract,
short newContractState)
Mark contract as closed.
|
void |
markContractAsDirty(AbstractContract contract) |
void |
preDelete(org.openmdx.base.accessor.jmi.cci.RefObject_1_0 object,
boolean preDelete)
Pre-delete callback.
|
void |
preStore(org.openmdx.base.accessor.jmi.cci.RefObject_1_0 object)
Pre-store callback.
|
void |
reapplyContractCreator(AbstractContract contract,
ContractCreator contractCreator)
Re-apply contract creator on given contract.
|
static void |
register()
Register Contracts backend.
|
protected void |
removeAccountAssignmentContract(AccountAssignmentContract accountAssignment,
boolean preDelete)
Delete callback for account assignments.
|
protected void |
removeContract(AbstractContract contract,
boolean preDelete)
Remove contract callback.
|
CompoundBooking |
removePendingInventoryBookings(SalesContract contract)
Remove all pending inventory bookings of contract.
|
protected void |
removeSalesContractPosition(SalesContractPosition position,
boolean checkForMinPositions,
boolean preDelete)
Remove sales contract position callback.
|
void |
repriceSalesContract(SalesContract contract)
Re-price the given sales contract.
|
short |
repriceSalesContractPosition(SalesContractPosition position) |
protected void |
updateAccountAssignmentContract(AccountAssignmentContract accountAssignment)
Store callback for account assignments.
|
protected void |
updateContract(AbstractContract contract)
Update contract callback.
|
void |
updateContractState(AbstractContract contract,
short contractState) |
CompoundBooking |
updateInventory(SalesContract contract) |
void |
updateListPrice(SalesContractPosition position,
SalesContract contract,
Product product,
boolean overrideExistingPrice)
Update list price on given position.
|
void |
updatePricingState(SalesContractPosition position,
short pricingState) |
void |
updatePricingState(SalesContract contract,
short pricingState) |
protected void |
updateSalesContract(SalesContract contract)
Update sales contract callback.
|
protected void |
updateSalesContractPosition(SalesContractPosition position)
Update sales contract position callback.
|
void |
updateSalesContractPosition(SalesContract contract,
SalesContractPosition position,
Product product,
boolean reprice)
Update sales contract position.
|
getInstance, getUidAsString, registerImpl
public static final short STATUS_CODE_OK
public static final short STATUS_CODE_ERROR
public static final int MIN_MAX_QUANTITY_HANDLING_NA
public static final int MIN_MAX_QUANTITY_HANDLING_LIMIT
public static final short PRICING_STATE_NA
public static final short PRICING_STATE_DIRTY
public static final short PRICING_STATE_OK
public static final String BOOKING_TEXT_NAME_RETURN_GOODS
public static final String BOOKING_TEXT_NAME_DELIVER_GOODS
public static final String CALCULATION_RULE_NAME_DEFAULT
public static final short CONTRACT_TYPE_LEAD
public static final short CONTRACT_TYPE_OPPORTUNITY
public static final short CONTRACT_TYPE_QUOTE
public static final short CONTRACT_TYPE_SALES_ORDER
public static final short CONTRACT_TYPE_INVOICE
public static final short CONTRACT_TYPE_SALESVOLUME_CONTRACT
public static final short CONTRACT_TYPE_GENERIC_CONTRACT
public static final BigDecimal HUNDRED
public static final String PRIVATE_GROUP_SUFFIX
public static final String DEFAULT_GET_POSITION_AMOUNTS_SCRIPT
public static final String DEFAULT_GET_CONTRACT_AMOUNTS_SCRIPT
public static void register()
public static Contracts getInstance() throws org.openmdx.base.exception.ServiceException
org.openmdx.base.exception.ServiceException
public CalculationRule findCalculationRule(String name, Segment segment)
name
- segment
- pm
- public ContractCreator findContractCreator(String name, Segment segment)
name
- segment
- pm
- public Segment getContractSegment(javax.jdo.PersistenceManager pm, String providerName, String segmentName)
pm
- providerName
- segmentName
- public CalculationRule initCalculationRule(String calculationRuleName, String description, String getPositionAmountsScript, String getContractAmountsScript, javax.jdo.PersistenceManager pm, String providerName, String segmentName)
calculationRuleName
- description
- getPositionAmountsScript
- getContractAmountsScript
- pm
- providerName
- segmentName
- protected void copyCrxObject(CrxObject source, CrxObject target)
source
- target
- protected void copySalesContract(SalesContract source, SalesContract target) throws org.openmdx.base.exception.ServiceException
source
- target
- org.openmdx.base.exception.ServiceException
protected void copySalesContractPosition(SalesContractPosition source, SalesContractPosition target) throws org.openmdx.base.exception.ServiceException
source
- target
- org.openmdx.base.exception.ServiceException
protected Description getAdditionalDescription(DescriptionContainer container, short language) throws org.openmdx.base.exception.ServiceException
container
- language
- org.openmdx.base.exception.ServiceException
protected CalculationRule getDefaultCalculationRule(Segment contractSegment) throws org.openmdx.base.exception.ServiceException
contractSegment
- org.openmdx.base.exception.ServiceException
public void markAsClosed(AbstractContract contract, short newContractState) throws org.openmdx.base.exception.ServiceException
contract
- newContractState
- org.openmdx.base.exception.ServiceException
protected BigDecimal getUomScaleFactor(SalesContractPosition position)
protected BigDecimal getSalesTaxRate(SalesContractPosition position)
protected javax.jmi.reflect.RefPackage getJmiPackage(javax.jdo.PersistenceManager pm, String authorityXri)
protected Contract1Package getContractPackage(javax.jdo.PersistenceManager pm)
protected BigDecimal getMinMaxAdjustedQuantity(SalesContractPosition position)
public static GetPositionAmountsResult getPositionAmounts(org.openmdx.base.accessor.jmi.cci.RefPackage_1_0 rootPkg, CalculationRule calculationRule, SalesContractPosition position, BigDecimal minMaxAdjustedQuantity, BigDecimal uomScaleFactor, BigDecimal salesTaxRate)
public GetPositionAmountsResult getPositionAmounts(CalculationRule calculationRule, SalesContractPosition position, BigDecimal minMaxAdjustedQuantity, BigDecimal uomScaleFactor, BigDecimal salesTaxRate)
public GetPositionAmountsResult getPositionAmounts(CalculationRule calculationRule, SalesContractPosition position) throws org.openmdx.base.exception.ServiceException
org.openmdx.base.exception.ServiceException
public GetContractAmountsResult getContractAmounts(CalculationRule calculationRule, SalesContract contract, List<?> lineItemNumbers, List<?> positionBaseAmounts, List<?> positionDiscountAmounts, List<?> positionTaxAmounts, List<?> positionAmounts, List<?> salesCommissions, List<?> salesCommissionIsPercentages) throws org.openmdx.base.exception.ServiceException
org.openmdx.base.exception.ServiceException
public BigDecimal[] calculateAmounts(SalesContractPosition position) throws org.openmdx.base.exception.ServiceException
org.openmdx.base.exception.ServiceException
public BigDecimal[] calculateQuantities(SalesContractPosition position)
public String[] calculateUomDescriptions(SalesContractPosition position)
public String[] calculatePriceUomDescriptions(SalesContractPosition position)
public String[] calculateProductDescriptions(SalesContractPosition position)
public String[] calculateSalesTaxTypeDescriptions(SalesContractPosition position)
public void markContractAsDirty(AbstractContract contract) throws org.openmdx.base.exception.ServiceException
org.openmdx.base.exception.ServiceException
public List<SalesContractPosition> getSalesContractPositions(SalesContract contract)
public BigDecimal[] calculateAmounts(SalesContract contract) throws org.openmdx.base.exception.ServiceException
org.openmdx.base.exception.ServiceException
protected void updateContract(AbstractContract contract) throws org.openmdx.base.exception.ServiceException
contract
- org.openmdx.base.exception.ServiceException
protected void updateSalesContract(SalesContract contract) throws org.openmdx.base.exception.ServiceException
contract
- org.openmdx.base.exception.ServiceException
public Invoice createInvoice(SalesOrder salesOrder) throws org.openmdx.base.exception.ServiceException
org.openmdx.base.exception.ServiceException
public SalesOrder createSalesOrder(Quote quote) throws org.openmdx.base.exception.ServiceException
org.openmdx.base.exception.ServiceException
public Quote createQuote(Opportunity opportunity) throws org.openmdx.base.exception.ServiceException
org.openmdx.base.exception.ServiceException
public Opportunity createOpportunity(Lead lead) throws org.openmdx.base.exception.ServiceException
org.openmdx.base.exception.ServiceException
public void updateListPrice(SalesContractPosition position, SalesContract contract, Product product, boolean overrideExistingPrice) throws org.openmdx.base.exception.ServiceException
position
- contract
- product
- overrideExistingPrice
- org.openmdx.base.exception.ServiceException
public void updateSalesContractPosition(SalesContract contract, SalesContractPosition position, Product product, boolean reprice)
contract
- position
- product
- reprice
- public SalesContractPosition createSalesContractPosition(SalesContract contract, Boolean isIgnoreProductConfiguration, String name, BigDecimal quantity, Date pricingDate, Product product, Uom uom, Uom priceUom, PricingRule pricingRule)
contract
- isIgnoreProductConfiguration
- name
- quantity
- pricingDate
- product
- uom
- priceUom
- pricingRule
- protected void removeSalesContractPosition(SalesContractPosition position, boolean checkForMinPositions, boolean preDelete) throws org.openmdx.base.exception.ServiceException
position
- checkForMinPositions
- preDelete
- org.openmdx.base.exception.ServiceException
protected void removeContract(AbstractContract contract, boolean preDelete) throws org.openmdx.base.exception.ServiceException
contract
- preDelete
- org.openmdx.base.exception.ServiceException
public CompoundBooking removePendingInventoryBookings(SalesContract contract) throws org.openmdx.base.exception.ServiceException
contract
- org.openmdx.base.exception.ServiceException
public CompoundBooking updateInventory(SalesContract contract) throws org.openmdx.base.exception.ServiceException
org.openmdx.base.exception.ServiceException
public void updatePricingState(SalesContractPosition position, short pricingState)
public void updatePricingState(SalesContract contract, short pricingState)
public void updateContractState(AbstractContract contract, short contractState)
protected void updateSalesContractPosition(SalesContractPosition position) throws org.openmdx.base.exception.ServiceException
position
- org.openmdx.base.exception.ServiceException
public short repriceSalesContractPosition(SalesContractPosition position) throws org.openmdx.base.exception.ServiceException
org.openmdx.base.exception.ServiceException
public void repriceSalesContract(SalesContract contract) throws org.openmdx.base.exception.ServiceException
contract
- org.openmdx.base.exception.ServiceException
public int countFilteredContract(AbstractFilterContract contractFilter) throws org.openmdx.base.exception.ServiceException
contractFilter
- org.openmdx.base.exception.ServiceException
public static GetPositionAmountsResult getSalesContractPositionAmounts(org.openmdx.base.accessor.jmi.cci.RefPackage_1_0 rootPkg, CalculationRule calculationRule, SalesContractPosition position, BigDecimal minMaxAdjustedQuantity, BigDecimal uomScaleFactor, BigDecimal salesTaxRate)
rootPkg
- calculationRule
- position
- minMaxAdjustedQuantity
- uomScaleFactor
- salesTaxRate
- public GetPositionAmountsResult getSalesContractPositionAmounts(CalculationRule calculationRule, SalesContractPosition position, BigDecimal minMaxAdjustedQuantity, BigDecimal uomScaleFactor, BigDecimal salesTaxRate)
calculationRule
- position
- minMaxAdjustedQuantity
- uomScaleFactor
- salesTaxRate
- public static GetContractAmountsResult getContractAmounts(org.openmdx.base.accessor.jmi.cci.RefPackage_1_0 rootPkg, CalculationRule calculationRule, SalesContract contract, Integer[] lineItemNumbers, BigDecimal[] positionBaseAmounts, BigDecimal[] positionDiscountAmounts, BigDecimal[] positionTaxAmounts, BigDecimal[] positionAmounts, BigDecimal[] salesCommissions, Boolean[] salesCommissionIsPercentages)
rootPkg
- calculationRule
- contract
- lineItemNumbers
- positionBaseAmounts
- positionDiscountAmounts
- positionTaxAmounts
- positionAmounts
- salesCommissions
- salesCommissionIsPercentages
- public AbstractContract createContract(Segment contractSegment, short contractType, AbstractContract basedOn) throws org.openmdx.base.exception.ServiceException
contractSegment
- contractType
- basedOn
- org.openmdx.base.exception.ServiceException
public AbstractContract createContract(ContractCreator contractCreator, String name, String description, ContractType contractType, Date activeOn, Short priority, AbstractContract basedOn) throws org.openmdx.base.exception.ServiceException
contractCreator
- name
- description
- contractType
- activeOn
- priority
- basedOn
- org.openmdx.base.exception.ServiceException
public AbstractContract createSalesContract(SalesContractCreator contractCreator, String name, String description, ContractType contractType, Date activeOn, Short priority, Date pricingDate, Short contractCurrency, Account customer, Account salesRep, Account broker, Account supplier, AbstractContract basedOn) throws org.openmdx.base.exception.ServiceException
contractCreator
- name
- description
- contractType
- activeOn
- priority
- pricingDate
- contractCurrency
- customer
- salesRep
- broker
- supplier
- basedOn
- org.openmdx.base.exception.ServiceException
public void reapplyContractCreator(AbstractContract contract, ContractCreator contractCreator) throws org.openmdx.base.exception.ServiceException
contract
- contractCreator
- org.openmdx.base.exception.ServiceException
protected void updateAccountAssignmentContract(AccountAssignmentContract accountAssignment) throws org.openmdx.base.exception.ServiceException
contract
- org.openmdx.base.exception.ServiceException
protected void removeAccountAssignmentContract(AccountAssignmentContract accountAssignment, boolean preDelete) throws org.openmdx.base.exception.ServiceException
contract
- org.openmdx.base.exception.ServiceException
public void preDelete(org.openmdx.base.accessor.jmi.cci.RefObject_1_0 object, boolean preDelete) throws org.openmdx.base.exception.ServiceException
AbstractImpl
preDelete
in class AbstractImpl
org.openmdx.base.exception.ServiceException
public void preStore(org.openmdx.base.accessor.jmi.cci.RefObject_1_0 object) throws org.openmdx.base.exception.ServiceException
AbstractImpl
preStore
in class AbstractImpl
org.openmdx.base.exception.ServiceException
This software is published under the BSD license. Copyright © 2003-${build.year}, CRIXP AG, Switzerland, All rights reserved. Use is subject to license terms.