Table of Contents

GOB Calc Availability by Order

Properties

Property Value
Object Type Codeunit
Object Subtype Normal
Object ID 5022209
Accessibility Level Public

Procedures

SetShipmentProposal()

If set, inbound availability entries and reservations against receipts are ignored. This means, that only inventory is considered.

Syntax

SetShipmentProposal(NewIsShipmentProposal: Boolean)

Parameters

NewIsShipmentProposal
 Type: Boolean

Boolean.

SetHideProgressWindow()

Syntax

SetHideProgressWindow(NewHideProgressWindow: Boolean)

Parameters

NewHideProgressWindow
 Type: Boolean

SetExcludeHeaders()

For some applications headers are not needed, e.g. simply showing availability entries. In those cases headers can be excluded to speed up the calculation.

Syntax

SetExcludeHeaders(NewExcludeHeaders: Boolean)

Parameters

NewExcludeHeaders
 Type: Boolean

CalcAvailabilityByOrder()

Performs an availability calculation with the given filters. This is the recommended method for use in other modules.

Syntax

CalcAvailabilityByOrder(NoFilter: Text, VariantFilter: Text, LocationFilter: Text, var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary)

Parameters

NoFilter
 Type: Text

A filter for item numbers. If the filter contains a production or assembly item, the corresponding BOM is automatically added to the filter. Leave blank to run without filter.

VariantFilter
 Type: Text

A filter for variant codes. Should not be used, if "NoFilter" contains a production/assembly item. Leave blank to run without filter.

LocationFilter
 Type: Text

A filter for location codes. Each location in the filter is expected to be properly set up with an availability setup. If not, a runtime error occurs. Leave blank to run without filter.

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

The refined and aggregated result set after the calculation, including headers.

CalcAvailabilityByOrder()

Performs an availability calculation with the given filters. This method is intended for advanced purposes.

Syntax

CalcAvailabilityByOrder(NoFilter: Text, VariantFilter: Text, LocationFilter: Text, var TempGOBAvailabilityEntryInbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary, FetchData: Boolean)

Parameters

NoFilter
 Type: Text

A filter for item numbers. If the filter contains a production or assembly item, the corresponding BOM is automatically added to the filter. Leave blank to run without filter.

VariantFilter
 Type: Text

A filter for variant codes. Should not be used, if "NoFilter" contains a production/assembly item. Leave blank to run without filter.

LocationFilter
 Type: Text

A filter for location codes. Each location in the filter is expected to be properly set up with an availability setup. If not, a runtime error occurs. Leave blank to run without filter.

TempGOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

All inbound Availability entries, that are considered during the calculation.

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

The set of outbound availability entries, without headers. Can contain multiple entries for a single document line, separated by allocation priority. Will contain the raw result after calculation.

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

The refined and aggregated result set after the calculation, including headers. This is the recommended result for use in other modules. This data set will not contain any allocation priorities, as multiple availability entries for the same document line will be aggregated!

FetchData
 Type: Boolean

Set to false, if you want to fill "TempGOBAvailabilityEntryInbound" with your own data.

Preprocessing()

Performs the preliminary steps before calculation. Performs a test for locations with a valid setup. This method can also be used to get the data set and edit it afterwards.

Syntax

Preprocessing(NoFilter: Text, VariantFilter: Text, LocationFilter: Text, var TempGOBAvailabilityEntryInbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary, FetchData: Boolean)

Parameters

NoFilter
 Type: Text

A filter for item numbers. If the filter contains a production or assembly item, the corresponding BOM is automatically added to the filter. Leave blank to run without filter.

VariantFilter
 Type: Text

A filter for variant codes. Should not be used, if "NoFilter" contains a production/assembly item. Leave blank to run without filter.

LocationFilter
 Type: Text

A filter for location codes. Each location in the filter is expected to be properly set up with an availability setup. If not, a runtime error occurs. Leave blank to run without filter.

TempGOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

All inbound availability entries, that are considered during the calculation. Will be cleared and then filled.

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

All outbound availability entries, that are considered during the calculation. Will be cleared and then filled.

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

Will only be cleared.

FetchData
 Type: Boolean

If false, "TempGOBAvailabilityEntryInbound" and "TempGOBAvailabilityEntryOutbound" will only be cleared.

TestLocations()

Syntax

TestLocations(LocationFilter: Text)

Parameters

LocationFilter
 Type: Text

CreateAvailabilityClasses()

Takes all inbound availability entries and creates availability classes from it. An availability class will look like this: <IDENTIFIER>,[DATE, DECIMAL]^n == AvailabilityClassIdentifier + n AvailabilityClassDataPoints Availability class data points will be sorted by date and the quantities are cumulative. Supply for assembly-to-order or production-to-order are excluded.

Syntax

CreateAvailabilityClasses(var TempGOBAvailabilityEntryInbound: Record "GOB Availability Entry" temporary, var AvailabilityClasses: Dictionary of [Text, Dictionary of [Date, Decimal]])

Parameters

TempGOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

All inbound availability entries, that are considered during the calculation.

AvailabilityClasses
 Type: Dictionary of [Text, Dictionary of [Date, Decimal]]

Contains the resulting availability classes.

AssignAvailableQuantities()

Assigns the available quantities from the availability classes to the outbound availability entries. Drop Shipment, Special Order, multi-level production and reservations against receipts (shipment proposal only) are skipped.

Syntax

AssignAvailableQuantities(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var AvailabilityClasses: Dictionary of [Text, Dictionary of [Date, Decimal]])

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

The outbound availability entries that are requesting quantities. Results will be written back to each record.

AvailabilityClasses
 Type: Dictionary of [Text, Dictionary of [Date, Decimal]]

The availability classes, created from inbound availability entries.

CalculateAssembly()

Collects the assembly order lines for each sales order line and accumulates the availability. The final availability for the sales order line is the minimum availability of the assembly order lines. The earliest availability date is the availability date of the assembly order line with the lowest availability. The availability for the corresponding sales headers is also updated.

Syntax

CalculateAssembly(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var HeaderAvailabilities: Dictionary of [RecordId, Integer], ConsiderQtyToShip: Boolean)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

The outbound availability entries that are requesting quantities. Must contain assembly order lines and their corresponding sales order lines. The availability for the assembly order lines must be calculated previously and be known before this calculation. Results will be written back to each record.

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

The availability for all related sales order headers will be added.

ConsiderQtyToShip
 Type: Boolean

If true, and the IsShipmentProposal global flag is true, the qty. to ship is used to determine the requested quantity for each outbound availability entry. Else the outstanding qty. is used.

CalculateProduction()

Calculates availability for production. Runs over all prod. order line entries (sorted descending by "planning level code") and determines the availability from the associated prod. component lines. Multi-level constellations are respected: if a component has the "supplied by" field filled, availability for this component is determined by the availability of the corresponding prod. order line. The sorting on "planning level code" ensures, that all dependent availabilities can be resolved.

Syntax

CalculateProduction(var TempGOBAvailabilityEntryInbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var HeaderAvailabilities: Dictionary of [RecordId, Integer], ConsiderQtyToShip: Boolean)

Parameters

TempGOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

Will contain all prod. order lines with calculated availability after execution.

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

Will contain all prod. components with calculated availability after execution.

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

The availability for all related document headers will be added.

ConsiderQtyToShip
 Type: Boolean

If true, and the IsShipmentProposal global flag is true, the qty. to ship is used to determine the requested quantity for each outbound availability entry. Else the outstanding qty. is used.

UpdateProductionToOrder()

Takes an availability entry for a production order line for a production-to-order process and updates the corresponding sales order line with its availability. The available PTO qty. is added to possibly existing available qty. on sales order line, as this method could be called multiple times for different production order lines for the same sales order line. Also updates the availability of the sales header.

Syntax

UpdateProductionToOrder(ProdOrderLineAvailabilityEntry: Record "GOB Availability Entry", var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var HeaderAvailabilities: Dictionary of [RecordId, Integer], ConsiderQtyToShip: Boolean)

Parameters

ProdOrderLineAvailabilityEntry
 Type: Record "GOB Availability Entry"

A single availability entry for a production order line, that provides supply for a sales order line.

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

The outbound availability entries that are requesting quantities. Will point to the sales order line with updated availability.

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

The availability for all related document headers will be added.

ConsiderQtyToShip
 Type: Boolean

If true, and the IsShipmentProposal global flag is true, the qty. to ship is used to determine the requested quantity for each outbound availability entry. Else the outstanding qty. is used.

SplitProductionProvidingRequesting()

Syntax

SplitProductionProvidingRequesting(var TempGOBAvailabilityEntryInbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var TempProvidingAvailabilityEntry: Record "GOB Availability Entry" temporary, var TempRequestingAvailabilityEntry: Record "GOB Availability Entry" temporary)

Parameters

TempGOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

TempProvidingAvailabilityEntry
 Type: Record "GOB Availability Entry"

TempRequestingAvailabilityEntry
 Type: Record "GOB Availability Entry"

AggregateAllocationPrioritiesPerDocumentLineAndAssignAvailabilityStates()

Syntax

AggregateAllocationPrioritiesPerDocumentLineAndAssignAvailabilityStates(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var HeaderAvailabilities: Dictionary of [RecordId, Integer], var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary, ConsiderQtyToShip: Boolean)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

ConsiderQtyToShip
 Type: Boolean

AddProductionOrderLineEntriesToResult()

Adds inbound entries with type "ProductionOutput" to the result set, which usually only contains outbound entries. This is required for representation in production availability overview.

Syntax

AddProductionOrderLineEntriesToResult(var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryInbound: Record "GOB Availability Entry" temporary)

Parameters

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

The result set.

TempGOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

The inbound entry set.

InsertResult()

Syntax

InsertResult(var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary, var HeaderAvailabilities: Dictionary of [RecordId, Integer], ConsiderQtyToShip: Boolean)

Parameters

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

ConsiderQtyToShip
 Type: Boolean

CreateHeaderEntries()

Syntax

CreateHeaderEntries(var HeaderAvailabilities: Dictionary of [RecordId, Integer], var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary)

Parameters

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

InsertHeaderRecord()

Syntax

InsertHeaderRecord(HeaderRecId: RecordId, var HeaderAvailabilities: Dictionary of [RecordId, Integer], var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary)

Parameters

HeaderRecId
 Type: RecordId

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

FindEarliestDueDate()

Syntax

[Date] := FindEarliestDueDate(var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary)

Parameters

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

AssignAvailability()

Syntax

AssignAvailability(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, ConsiderQtyToShip: Boolean)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

ConsiderQtyToShip
 Type: Boolean

AssignAvailabilityDropShipmentSpecialOrder()

Syntax

AssignAvailabilityDropShipmentSpecialOrder(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

AllocateRequestedQtyBase()

Syntax

AllocateRequestedQtyBase(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var AvailabilityClassDataPoints: Dictionary of [Date, Decimal], NearestAvailabilityDate: Date, QtyBaseAvailableNearestDate: Decimal)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

AvailabilityClassDataPoints
 Type: Dictionary of [Date, Decimal]

NearestAvailabilityDate
 Type: Date

QtyBaseAvailableNearestDate
 Type: Decimal

UpdateHeaderAvailability()

Syntax

UpdateHeaderAvailability(var HeaderAvailabilities: Dictionary of [RecordId, Integer], var TempGOBAvailabilityEntry: Record "GOB Availability Entry" temporary)

Parameters

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

TempGOBAvailabilityEntry
 Type: Record "GOB Availability Entry"

SplitAssemblyOutputAssemblyRequest()

Syntax

SplitAssemblyOutputAssemblyRequest(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryProviding: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryRequesting: Record "GOB Availability Entry" temporary)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

TempGOBAvailabilityEntryProviding
 Type: Record "GOB Availability Entry"

TempGOBAvailabilityEntryRequesting
 Type: Record "GOB Availability Entry"

BinarySearchNearestDataPoint()

Syntax

[Boolean] := BinarySearchNearestDataPoint(TargetAvailabilityDate: Date, var AvailabilityClassDataPoints: Dictionary of [Date, Decimal], var NearestAvailabilityDate: Date, var AvailableQtyBase: Decimal)

Parameters

TargetAvailabilityDate
 Type: Date

AvailabilityClassDataPoints
 Type: Dictionary of [Date, Decimal]

NearestAvailabilityDate
 Type: Date

AvailableQtyBase
 Type: Decimal

DecreaseAvailableQuantitiesForAvailabilityClass()

Syntax

DecreaseAvailableQuantitiesForAvailabilityClass(var AvailabilityClassDataPoints: Dictionary of [Date, Decimal], DecrementQtyBase: Decimal, StartingDate: Date, StartingQtyBase: Decimal)

Parameters

AvailabilityClassDataPoints
 Type: Dictionary of [Date, Decimal]

DecrementQtyBase
 Type: Decimal

StartingDate
 Type: Date

StartingQtyBase
 Type: Decimal

DecreaseAvailableQuantitiesForUpperDataPoints()

Syntax

DecreaseAvailableQuantitiesForUpperDataPoints(var AvailabilityClassDataPoints: Dictionary of [Date, Decimal], var AvailabilityClassDataPointsKeys: List of [Date], StartingIndex: Integer, DecrementQtyBase: Decimal)

Parameters

AvailabilityClassDataPoints
 Type: Dictionary of [Date, Decimal]

AvailabilityClassDataPointsKeys
 Type: List of [Date]

StartingIndex
 Type: Integer

DecrementQtyBase
 Type: Decimal

DecreaseAvailableQuantitiesForLowerDataPoints()

Syntax

DecreaseAvailableQuantitiesForLowerDataPoints(var AvailabilityClassDataPoints: Dictionary of [Date, Decimal], var AvailabilityClassDataPointsKeys: List of [Date], DecrementQtyBase: Decimal, CurrIndex: Integer, CurrAvailabilityDate: Date, CurrAvailableQtyBase: Decimal)

Parameters

AvailabilityClassDataPoints
 Type: Dictionary of [Date, Decimal]

AvailabilityClassDataPointsKeys
 Type: List of [Date]

DecrementQtyBase
 Type: Decimal

CurrIndex
 Type: Integer

CurrAvailabilityDate
 Type: Date

CurrAvailableQtyBase
 Type: Decimal

UpdateAvailabilityClassDataPoint()

Syntax

UpdateAvailabilityClassDataPoint(GOBAvailabilityEntryInbound: Record "GOB Availability Entry", AvailabilityClassIdentifier: Text, var AvailabilityClassDataPoints: Dictionary of [Date, Decimal], var AvailabilityClassSums: Dictionary of [Text, Decimal])

Parameters

GOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

AvailabilityClassIdentifier
 Type: Text

AvailabilityClassDataPoints
 Type: Dictionary of [Date, Decimal]

AvailabilityClassSums
 Type: Dictionary of [Text, Decimal]

BuildAvailabilityClassIdentifier()

Creates an availability class identifier from an availability entry.

Syntax

[Text] := BuildAvailabilityClassIdentifier(AvailabilityEntry: Record "GOB Availability Entry")

Parameters

AvailabilityEntry
 Type: Record "GOB Availability Entry"

Some availability entry.

Return

Text

Availability class identifier with the format: LocationCode + ItemNo. + VariantCode.

CalcRequestedQtyBase()

Syntax

[Decimal] := CalcRequestedQtyBase(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

OpenProgressWindow()

Syntax

OpenProgressWindow()

UpdateProgressWindow()

Syntax

UpdateProgressWindow(FieldNo: Integer, NewValue: Variant)

Parameters

FieldNo
 Type: Integer

NewValue
 Type: Variant

UpdateProgressWindowCounter()

Syntax

UpdateProgressWindowCounter(CurrentNo: Integer, TotalNo: Integer)

Parameters

CurrentNo
 Type: Integer

TotalNo
 Type: Integer

CloseProgressWindow()

Syntax

CloseProgressWindow()

Clamp()

Syntax

[Integer] := Clamp(Value: Integer, Min: Integer, Max: Integer)

Parameters

Value
 Type: Integer

Min
 Type: Integer

Max
 Type: Integer

ExcludeProductionToOrderQuantities()

Syntax

ExcludeProductionToOrderQuantities(var TempGOBAvailabilityEntryInbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary)

Parameters

TempGOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

IsSupplyForMultiLevelProduction()

Syntax

[Boolean] := IsSupplyForMultiLevelProduction(TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

IsReservedAgainstReceipt()

Syntax

[Boolean] := IsReservedAgainstReceipt(TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

OnBeforeCalcAvailabilityByOrder()

Syntax

OnBeforeCalcAvailabilityByOrder(NoFilter: Text, VariantFilter: Text, LocationFilter: Text, var TempGOBAvailabilityEntryInbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary, var FetchData: Boolean, var IsShipmentProposal: Boolean, var HideProgressWindow: Boolean)

Parameters

NoFilter
 Type: Text

VariantFilter
 Type: Text

LocationFilter
 Type: Text

TempGOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

FetchData
 Type: Boolean

IsShipmentProposal
 Type: Boolean

HideProgressWindow
 Type: Boolean

OnAfterCalcAvailabilityByOrder()

Syntax

OnAfterCalcAvailabilityByOrder(NoFilter: Text, VariantFilter: Text, LocationFilter: Text, var TempGOBAvailabilityEntryInbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary, IsShipmentProposal: Boolean, HideProgressWindow: Boolean)

Parameters

NoFilter
 Type: Text

VariantFilter
 Type: Text

LocationFilter
 Type: Text

TempGOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

IsShipmentProposal
 Type: Boolean

HideProgressWindow
 Type: Boolean

OnAfterPreprocessing()

Syntax

OnAfterPreprocessing(NoFilter: Text, VariantFilter: Text, LocationFilter: Text, var TempGOBAvailabilityEntryInbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary)

Parameters

NoFilter
 Type: Text

VariantFilter
 Type: Text

LocationFilter
 Type: Text

TempGOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

OnBeforeAssignAvailQuantities()

Syntax

OnBeforeAssignAvailQuantities(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var AvailabilityClasses: Dictionary of [Text, Dictionary of [Date, Decimal]], IsShipmentProposal: Boolean, HideProgressWindow: Boolean, var IsHandled: Boolean)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

AvailabilityClasses
 Type: Dictionary of [Text, Dictionary of [Date, Decimal]]

IsShipmentProposal
 Type: Boolean

HideProgressWindow
 Type: Boolean

IsHandled
 Type: Boolean

OnBeforeCalculateAssembly()

Syntax

OnBeforeCalculateAssembly(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var HeaderAvailabilities: Dictionary of [RecordId, Integer], ConsiderQtyToShip: Boolean, IsShipmentProposal: Boolean, HideProgressWindow: Boolean, var IsHandled: Boolean)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

ConsiderQtyToShip
 Type: Boolean

IsShipmentProposal
 Type: Boolean

HideProgressWindow
 Type: Boolean

IsHandled
 Type: Boolean

OnBeforeCalculateMultiLevelProduction()

Syntax

OnBeforeCalculateMultiLevelProduction(var TempGOBAvailabilityEntryInbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var HeaderAvailabilities: Dictionary of [RecordId, Integer])

Parameters

TempGOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

OnAggregateAllocationPrioritiesPerDocumentLineAndAssignAvailabilityStates_PerRecord()

Syntax

OnAggregateAllocationPrioritiesPerDocumentLineAndAssignAvailabilityStates_PerRecord(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var HeaderAvailabilities: Dictionary of [RecordId, Integer], var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

OnBeforeInsertResult()

Syntax

OnBeforeInsertResult(var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary, var HeaderAvailabilities: Dictionary of [RecordId, Integer])

Parameters

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

OnInsertHeaderRecord()

Syntax

OnInsertHeaderRecord(HeaderRecId: RecordId, var HeaderAvailabilities: Dictionary of [RecordId, Integer], var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary)

Parameters

HeaderRecId
 Type: RecordId

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

OnInsertHeaderRecordNewType()

Syntax

OnInsertHeaderRecordNewType(HeaderRecId: RecordId, var HeaderAvailabilities: Dictionary of [RecordId, Integer], var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary, var HeaderFound: Boolean)

Parameters

HeaderRecId
 Type: RecordId

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

HeaderFound
 Type: Boolean

OnAfterAssignAvailability()

Syntax

OnAfterAssignAvailability(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, ConsiderQtyToShip: Boolean)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

ConsiderQtyToShip
 Type: Boolean

OnBeforeCalculateEarliestAvailabilityDate()

Syntax

OnBeforeCalculateEarliestAvailabilityDate(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var AvailabilityClassDataPoints: Dictionary of [Date, Decimal], NearestAvailabilityDate: Date, QtyBaseAvailableNearestDate: Decimal, var SkipEarliestAvailDateCalculation: Boolean)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

AvailabilityClassDataPoints
 Type: Dictionary of [Date, Decimal]

NearestAvailabilityDate
 Type: Date

QtyBaseAvailableNearestDate
 Type: Decimal

SkipEarliestAvailDateCalculation
 Type: Boolean

OnAfterAllocateRequestedQtyBaseBeforeModify()

Syntax

OnAfterAllocateRequestedQtyBaseBeforeModify(var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var AvailabilityClassDataPoints: Dictionary of [Date, Decimal], NearestAvailabilityDate: Date, QtyBaseAvailableNearestDate: Decimal)

Parameters

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

AvailabilityClassDataPoints
 Type: Dictionary of [Date, Decimal]

NearestAvailabilityDate
 Type: Date

QtyBaseAvailableNearestDate
 Type: Decimal

OnBeforeSetHeaderAvailability()

Syntax

OnBeforeSetHeaderAvailability(var HeaderAvailabilities: Dictionary of [RecordId, Integer], var TempGOBAvailabilityEntry: Record "GOB Availability Entry" temporary, CurrentHeaderAvailability: Enum "GOB Availability State", var NewHeaderAvailability: Enum "GOB Availability State")

Parameters

HeaderAvailabilities
 Type: Dictionary of [RecordId, Integer]

TempGOBAvailabilityEntry
 Type: Record "GOB Availability Entry"

CurrentHeaderAvailability
 Type: Enum "GOB Availability State"

NewHeaderAvailability
 Type: Enum "GOB Availability State"

OnAfterBuildAvailabilityClassIdentifier()

Syntax

OnAfterBuildAvailabilityClassIdentifier(GOBAvailabilityEntryInbound: Record "GOB Availability Entry", var AvailabilityClassBuilder: TextBuilder)

Parameters

GOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

AvailabilityClassBuilder
 Type: TextBuilder

OnBeforeExcludeProductionToOrderQuantities()

Syntax

OnBeforeExcludeProductionToOrderQuantities(var TempGOBAvailabilityEntryInbound: Record "GOB Availability Entry" temporary, var TempGOBAvailabilityEntryOutbound: Record "GOB Availability Entry" temporary, var IsHandled: Boolean)

Parameters

TempGOBAvailabilityEntryInbound
 Type: Record "GOB Availability Entry"

TempGOBAvailabilityEntryOutbound
 Type: Record "GOB Availability Entry"

IsHandled
 Type: Boolean

OnBeforeFindEarliestDueDate()

Syntax

OnBeforeFindEarliestDueDate(var TempGOBAvailabilityEntryResult: Record "GOB Availability Entry" temporary, var EarliestDueDate: Date, var Handled: Boolean)

Parameters

TempGOBAvailabilityEntryResult
 Type: Record "GOB Availability Entry"

EarliestDueDate
 Type: Date

Handled
 Type: Boolean