java.lang.Object | +--CacheableCommandImpl | +--com.ibm.commerce.command.AbstractECTargetableCommand | +--com.ibm.commerce.command.TaskCommandImpl | +--com.ibm.commerce.inventory.commands.GeneratePickBatchCmdImpl
Default implementation of the GeneratePickBatchCmd
interface.
Generates a pick batch for specified fulfillment center and store.
This is a task command.
The order releases with 'SHIP' status for the specified fulfillment center and store will be included in the pick batch generation. If there are more than the maximum number of eligible order releases when a pick batch is generated, only the maximum number of order releases are picked up in this pick batch and the rest will be picked up by the next pick batch generation. A pack slip XML will be generated for each eligible order release and a pick ticket XML will be generated for the whole batch. An invoice XML may also be generated for each eligible order release.
Uses the following access beans:
Field Summary | |
---|---|
static java.lang.String |
COPYRIGHT The internal copyright field. |
Fields inherited from class com.ibm.commerce.command. AbstractECTargetableCommand |
commandContext |
Fields inherited from interface com.ibm.commerce.inventory.commands. GeneratePickBatchCmd |
defaultCommandClassName,
NAME |
Fields inherited from interface com.ibm.commerce.command. ECCommand |
defaultCommandClassName |
Constructor Summary | |
---|---|
GeneratePickBatchCmdImpl() |
Method Summary | |
---|---|
java.lang.String |
generatePackslip(java.lang.String pickBatchId,
java.lang.String store_name, java.lang.String ffmcenter_name,
java.lang.String order_number, java.lang.String release_number,
java.lang.String customer_number, java.lang.String order_date) Generates the pack slip XML for an order release. |
void |
generatePickbatch(int maxOrderReleases) generate a pick batch with no delay for select how age orders |
void |
generatePickbatch(int maxOrderReleases, int delayInMins) Performs the generation of pick batch if there are any eligible order releases. |
java.lang.String |
generatePickticket(java.lang.String pickBatchId,
java.lang.String store_name, java.lang.String ffmcenter_name) Generates the pick ticket XML for the whole batch. |
java.lang.Integer |
getFfmcenterId() Returns fulfillment center identifier. |
java.lang.Integer |
getLanguageId() Returns language identifier. |
int |
getMaxOrdReleasesPerPickbatch() Returns the maximum number of order releases included in a pick batch. |
java.lang.String |
getMoreOrderReleases() Returns the flag to indicate if there are more eligible order releases not included in this pick batch. |
java.lang.Long |
getPickBatchId() Returns the pick batch identifier. |
java.lang.Integer |
getStoreentId() Returns the store entity identidier. |
boolean |
isReadyToCallExecute() This command is ready to be executed. |
void |
performExecute() Pulls the MaxOrdReleasesPerPickbatch |
void |
reset() Resets the command local variable. |
void |
setFfmcenterId(java.lang.Integer newFfmcenterId) Sets fulfillment center identifier. |
void |
setLanguageId(java.lang.Integer newLanguageId) Sets language identifier. |
void |
setMaxOrdReleasesPerPickbatch(int newMaxOrdReleasesPerPickbatch) Sets the maximum number of order releases included in a pick batch. |
void |
setMoreOrderReleases(java.lang.String newMoreOrderReleases) Set the moreOrderReleases flag to indicate if there are more eligible order releases not included in this pick batch. |
void |
setPickBatchId(java.lang.Long newPickBatchId) Sets the pick batch identifier. |
void |
setRequestProperties(
TypedProperty newRequestProperties) Pulls fulfillment center identifier from the input paramater and saves locally. |
void |
setStoreentId(java.lang.Integer newStoreentId) Sets the store entity identifier. |
void |
validateParameters() Checks the information needed for pick batch generation. |
Methods inherited from class com.ibm.commerce.command. AbstractECTargetableCommand |
accessControlCheck,
checkIsAllowed,
checkParameters,
checkResourcePermission,
createCommandExecutionEvent,
execute,
finalize,
getAccCheck,
getCommandContext,
getCommandIfName,
getCommandName,
getCommandStoreId,
getDefaultProperties,
getResources,
getStoreId,
getUser,
getUserId,
setAccCheck,
setCommandContext,
setCommandIfName,
setCommandStoreId,
setDefaultProperties |
Methods inherited from class java.lang.Object |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait,
wait, wait |
Field Detail |
---|
public static final java.lang.String COPYRIGHT
Constructor Detail |
---|
public GeneratePickBatchCmdImpl()
Method Detail |
---|
public java.lang.Integer getFfmcenterId()
GeneratePickBatchCmd
getFfmcenterId
in interface
GeneratePickBatchCmd
GeneratePickBatchCmd.getFfmcenterId()
,
setFfmcenterId(java.lang.Integer)
public java.lang.Integer getLanguageId()
GeneratePickBatchCmd
getLanguageId
in interface
GeneratePickBatchCmd
GeneratePickBatchCmd.getLanguageId()
,
setLanguageId(java.lang.Integer)
public int getMaxOrdReleasesPerPickbatch()
GeneratePickBatchCmd
getMaxOrdReleasesPerPickbatch
in interface
GeneratePickBatchCmd
GeneratePickBatchCmd.getMaxOrdReleasesPerPickbatch()
,
setMaxOrdReleasesPerPickbatch(int)
public java.lang.String getMoreOrderReleases()
GeneratePickBatchCmd
getMoreOrderReleases
in interface
GeneratePickBatchCmd
GeneratePickBatchCmd.getMoreOrderReleases()
,
setMoreOrderReleases(java.lang.String)
public java.lang.Long getPickBatchId()
GeneratePickBatchCmd
getPickBatchId
in interface
GeneratePickBatchCmd
GeneratePickBatchCmd.getPickBatchId()
,
setPickBatchId(java.lang.Long)
public java.lang.Integer getStoreentId()
GeneratePickBatchCmd
getStoreentId
in interface
GeneratePickBatchCmd
GeneratePickBatchCmd.getStoreentId()
,
setStoreentId(java.lang.Integer)
public void setFfmcenterId(java.lang.Integer newFfmcenterId)
GeneratePickBatchCmd
setFfmcenterId
in interface
GeneratePickBatchCmd
newFfmcenterId
- fulfillment center identifierGeneratePickBatchCmd.setFfmcenterId(java.lang.Integer)
,
getFfmcenterId()
public void setLanguageId(java.lang.Integer newLanguageId)
GeneratePickBatchCmd
setLanguageId
in interface
GeneratePickBatchCmd
newLanguageId
- language identifierGeneratePickBatchCmd.setLanguageId(java.lang.Integer)
,
getLanguageId()
public void setMaxOrdReleasesPerPickbatch(int newMaxOrdReleasesPerPickbatch)
GeneratePickBatchCmd
setMaxOrdReleasesPerPickbatch
in interface
GeneratePickBatchCmd
newMaxOrdReleasesPerPickbatch
- maximum number of order
releasesGeneratePickBatchCmd.setMaxOrdReleasesPerPickbatch(int)
,
getMaxOrdReleasesPerPickbatch()
public void setMoreOrderReleases(java.lang.String newMoreOrderReleases)
setMoreOrderReleases
in interface
GeneratePickBatchCmd
newMoreOrderReleases
- flagGeneratePickBatchCmd.setMoreOrderReleases(java.lang.String)
,
getMoreOrderReleases()
public void setPickBatchId(java.lang.Long newPickBatchId)
GeneratePickBatchCmd
setPickBatchId
in interface
GeneratePickBatchCmd
newPickBatchId
- pick batch identifierGeneratePickBatchCmd.setPickBatchId(java.lang.Long)
,
setPickBatchId(java.lang.Long)
public void setStoreentId(java.lang.Integer newStoreentId)
GeneratePickBatchCmd
setStoreentId
in interface
GeneratePickBatchCmd
newStoreentId
- store entity identifierGeneratePickBatchCmd.setStoreentId(java.lang.Integer)
,
getStoreentId()
public void setRequestProperties(TypedProperty newRequestProperties) throws ECApplicationException
setRequestProperties
in interface
GeneratePickBatchCmd
newRequestProperties
- request properties
ECApplicationException
setFfmcenterId(java.lang.Integer)
,
GeneratePickBatchCmd.setRequestProperties(com.ibm.commerce.datatype.TypedProperty)
public boolean isReadyToCallExecute()
isReadyToCallExecute
in class
AbstractECTargetableCommand
public void validateParameters() throws ECException
StoreId and language id must be set in the command context.
Also checking that fulfillment center id is not null.
validateParameters
in interface
ECCommand
validateParameters
in class
AbstractECTargetableCommand
ECApplicationException
- If mandatory parameters are not set, throw
ECApplicationException.ECException
public void performExecute() throws ECException
MaxOrdReleasesPerPickbatch
generatePickBatch() method
to complete.
performExecute
in interface
ECCommand
performExecute
in class
AbstractECTargetableCommand
ECException
- If the MaxOrderReleasesPerPickbatch does not convert to a numeric, error
specifies _ERR_CMD_INVALID_PARAMgeneratePickbatch(int)
public void generatePickbatch(int maxOrderReleases) throws ECException
maxOrderReleases
- maximum number of order releases in a pick
batchECException
-
#generatePickBatch(int,int)
public void generatePickbatch(int maxOrderReleases, int delayInMins) throws ECException
Here is the flow of events, highlighting the use of access beans, commands and other methods.
setPickBatchId
method.generatePackslip
method for each order release.PrepareInvoiceCmd
.generatePickticket
method.maxOrderReleases
- maximum number of order releases in a pick
batchdelayInMins
- number of minutes the past to use as a criteria
for selecting orders in a pick batch orders.timeplaced < current time -
delayInMins minutesECException
-
generatePackslip(java.lang.String, java.lang.String, java.lang.String,
java.lang.String, java.lang.String, java.lang.String,
java.lang.String)
,
generatePickticket(java.lang.String, java.lang.String,
java.lang.String)
,
setPickBatchId(java.lang.Long)
public java.lang.String generatePackslip(java.lang.String pickBatchId, java.lang.String store_name, java.lang.String ffmcenter_name, java.lang.String order_number, java.lang.String release_number, java.lang.String customer_number, java.lang.String order_date) throws ECException
InventoryJDBCHelperAccessBean()
.findReleaseShipmodeIdByOrdersIdAndOrdreleaseNum
to get the ship mode
id.InventoryJDBCHelperAccessBean()
.findReleaseAddressIdByOrdersIdAndOrdreleaseNum
.InventoryJDBCHelperAccessBean()
.findPackslipItemsListByOrdersIdAndOrdreleaseNum
.InventoryJDBCHelperAccessBean()
.findPackslipComponentsListByOrderItemsId
.pickBatchId
- pick batch identifierstore_name
- store entity nameffmcenter_name
- fulfillment center nameorder_number
- order numberrelease_number
- release numbercustomer_number
- customer numberorder_date
- order dateECException
-
public java.lang.String generatePickticket(java.lang.String pickBatchId, java.lang.String store_name, java.lang.String ffmcenter_name) throws ECException
pickBatchId
- pick batch identifierstore_name
- store nameffmcenter_name
- fulfillment center nameECException
-
public void reset()
reset
in class
AbstractECTargetableCommand