Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

Use this event to

Excerpt

Validate untransferred License Plates prior to creating transactions in 3rd party Shipping App


Description

Use this event to validate untransferred License Plates (transaction data) stored in internal "Pack and Ship" tables prior to writing transaction data to the 3rd party Shipping App.

See also: Write Transaction Data to Shipping Provider


Template

    [EventSubscriber(ObjectType::CodeunitCodeunit::"MOS Pack API", 'OnPostPackingOnCheckUntransferredLicensePlate''', true, true)]
    local procedure OnPostPackingOnCheckUntransferredLicensePlate(_LicensePlate: Record "MOS License Plate")
    begin
    end;

Example

    [EventSubscriber(ObjectType::CodeunitCodeunit::"MOS Pack API", 'OnPostPackingOnCheckUntransferredLicensePlate''', true, true)]
    local procedure OnPostPackingOnCheckUntransferredLicensePlate(_LicensePlate: Record "MOS License Plate")
    var
        IdysSetup: Record "IDYS Setup";
        IdysPackageType: Record "IDYS Package Type";
        PackageType: Record "MOS Package Type";
    begin
        if not IsShippingProvider(_LicensePlate."Package Type"then
            exit;

        // Check PackageType exists in IDYS and will not error out during validation        
        PackageType.Get(_LicensePlate."Package Type");
        IdysPackageType.Get(PackageType."Shipping Provider Package Type");

        // Check we are indeed supposed to create Transport Order from our code
        IdysSetup.Get();
        IdysSetup.TestField("After Posting Sales Orders", IdysSetup."After Posting Sales Orders"::"Do nothing");    // TODO - baseres på LicensePlate.Source Type og/eller Whse. Document Type
    end;

    /// <summary>
    /// Is the package type handled by the current Shipping Provider Id
    /// </summary>   
    local procedure IsShippingProvider(_PackageType: Code[20])Boolean
    var
        PackageType: Record "MOS Package Type";
    begin
        exit(PackageType.Get(_PackageType) and (PackageType."Shipping Provider Id" = GetShippingProviderId()));
    end;

Version History

VersionChanges
MOB5.42Introduced

...