Scan, Pack and Ship > Pack Processing Extension Buttons
  
Pack Processing Extension Buttons
You can add pack-level buttons to the Scan, Pack and Ship screen using the system value key PACK_EXTN_BUTTON_CONFIG. This system value enables you to initiate pack-level tasks from Scan, Pack and Ship. It is expressed through a JSON representation of a JavaScript literal object. The administrator takes the following steps:
Configures the pack-level tasks that are to be initiated from the Scan, Pack and Ship screen.
Specifies the buttons to display for a shipment using the system value key PACK_WORKFLOW_{WorkflowCode}, depending on the workflow code assigned to the shipment.
To simplify the setup process, a sample configuration is provided under the system value key PACK_EXTN_BUTTON_CONFIG. In this sample configuration, each button executes a pack-level task using the configured workflow task ID.
[{
"id" : "packExtnBtn1Id",
"iconCls" : "packSealBtn",
"tooltip" : "Mark pack as sealed",
"readOnlyDisable" : "true",
"enableStatusList" : [""],
"packMaintenanceShow" : "true",
"autoOnWeightScan" : "true",
"closePack" : "true",
"handler" : "function(){performPackStatusUpdate.call(this,\"SEALED\", \"Sealed\");}"
},{
"id" : "packExtnBtn2Id",
"iconCls" : "defaultPrint3Btn",
"tooltip" : "Reprint content label",
"readOnlyDisable" : "false",
"enableStatusList" : ["SEALED"],
"packMaintenanceShow" : "true",
"taskKeyId" : "W-SNPKCL",
"responseStatus" : {"WARN-003" : {
"id" : "shExtnBtnX4Id"}
 
},
"handler" : "function(){performWfTaskPackButton.call(this);}"
},{
"id" : "packExtnBtn3Id",
"iconCls" : "defaultPrint14Btn",
"tooltip" : "Reprint carrier label",
"readOnlyDisable" : "false",
"enableOnShipmentStatus" : ["RATED", "SHIPPED", "CLOSED"],
"packMaintenanceShow" : "true",
"handler" : "function(){performPackPdfPrint.call(this);}"
},{
"id" : "packExtnBtn4Id",
"iconCls" : "packVoidBtn",
"tooltip" : "Open sealed pack",
"readOnlyDisable" : "true",
"enableStatusList" : ["SEALED"],
"enableOnShipmentStatus" : ["CREATED"],
"packMaintenanceShow" : "true",
"confirmRun" : "true",
"handler" : "function(){performPackStatusUpdate.call(this,\"\", \"Open\");}"
}]
Note: To validate JSON content, go to www.jsonlint.com.
With the exception of the three members in Parent Object Members - Pack-Level Extension Buttons, the parent object members in the JavaScript literal object are described in Parent Object Members.

Parent Object Members - Pack-Level Extension Buttons
 
Member
Function
packMaintenanceShow
Determines if the pack-level button is to be displayed on the Pack Maintenance panel as well as the Packs panel.
autoOnWeightScan
Executes this workflow task if a weight is successfully scanned for a selected pack. To activate execution of this task, set its value to true. You can configure multiple buttons to be executed simultaneously using this configuration member.
closePack
Determines if the pack is to be closed on running this action. If no pack is open, this member is not applicable. If a pack is open, by default it remains open when the action is complete. By adding this member with a value of true, the pack is closed when the action is complete.