...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
Info | ||
---|---|---|
| ||
This article was written for a connector used with the separate Pack & Ship Extension (OnPrem or Per-Tenant). Mobile WMS - Implementing a new Shipping Provider Connector |
Use this event to
...
Validate or update external setup tables prior to posting.
Description
You may use this event to validate or update setup values in the 3rd party Shipping App prior to posting.
A sample use can be seen in our "ShipIt365 Connector" where external user names and passwords for the "Transsmart" service (used by the "IDYS ShipIt365 AppSource App") is updated based on which Packing Station was used for the handling.
Note: Transactional data (License Plates and Transport Orders) are better handled in the Pack & Ship Extension - OnPostPackingOnBeforePostWarehouseShipment (MOS) and Pack & Ship Extension - OnPostPackingOnAfterPostWarehouseShipment (MOS) events.
See also: Pack & Ship Extension - Write transaction data to 3rd party Shipping App
Template
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOS Pack API", 'OnBeforePostPacking', '', true, true)]
local procedure OnBeforePostPacking_UpdatePackingStation(_RegistrationType: Text; _PackingStation: Record "MOS Packing Station"; var _RequestValues: Record "MOB NS Request Element")
begin
if _RegistrationType <> 'PostPacking' then
exit;
// Your custom code here...
end;
Example
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOS Pack API", 'OnBeforePostPacking', '', true, true)]
local procedure OnBeforePostPacking_UpdatePackingStation(_RegistrationType: Text; _PackingStation: Record "MOS Packing Station"; var _RequestValues: Record "MOB NS Request Element")
var
ShipItUserSetup: Record "IDYS User Setup";
begin
if _RegistrationType <> 'PostPacking' then
exit;
If _PackingStation."No." = 0 then
exit;
_PackingStation.TestField("MOSSHIPIT User Name (External)");
_PackingStation.TestField("MOSSHIPIT Password (External)");
if ShipItUserSetup.Get(UserId) then begin
ShipItUserSetup.Validate("User Name (External)", _PackingStation."MOSSHIPIT User Name (External)");
ShipItUserSetup.Validate("Password (External)", _PackingStation."MOSSHIPIT Password (External)");
ShipItUserSetup.Modify();
end;
end;
Version History
Version | Changes |
---|---|
MOS1.0.0 | Introduced |