Skip to content

KVSFCYManufacturingLib#

Procedures#

CalcIndentation(Record Prod. Order Routing Line, Integer, Option, Record Prod. Order Routing Line, Record Prod. Order Routing Line) :#

Summary: Calculates indentation levels for production order routing line hierarchical display and navigation. This procedure determines the appropriate indentation level for production order routing lines when displayed in hierarchical views or reports, enabling proper visual representation of production order structures with nested routing operations. It analyzes the relationship between routing lines based on production order status, order numbers, routing reference numbers, and operation numbers to determine the hierarchical structure and appropriate indentation levels. The procedure maintains state tracking to ensure consistent indentation calculations across multiple routing lines and supports various indentation states including status level, order level, line level, and operation level indentation. This enables clear visualization of complex production routing structures in manufacturing interfaces.

procedure CalcIndentation(ActProdOrderRoutingLine: Record "Prod. Order Routing Line"; var IndentationVar: Integer; var OldStateVar: Option; var FirstProdOrderRoutingLineVar: Record "Prod. Order Routing Line"; var OldProdOrderRoutingLine: Record "Prod. Order Routing Line"): 

Parameters:

  • ActProdOrderRoutingLine: Current production order routing line record being processed for indentation calculation.
  • IndentationVar: Variable integer that will receive the calculated indentation level for the current routing line.
  • OldStateVar: Variable option indicating the previous state level (Status, No, Line, Operation) used for indentation calculation continuity.
  • FirstProdOrderRoutingLineVar: Variable record containing the first production order routing line used as reference for indentation calculation.
  • OldProdOrderRoutingLine: Variable record containing the previous production order routing line for comparison and indentation level determination.

CalcCapacity(Decimal, Decimal, Decimal, Enum Capacity Type, Code[20], Code[20], Date, Date) :#

procedure CalcCapacity(var CapVar: Decimal; var AllocatedTimeVar: Decimal; var CapEfficiencyVar: Decimal; TypePar: Enum "Capacity Type"; NoPar: Code[20]; WorkCenterNoPar: Code[20]; StartDatePar: Date; EndDatePar: Date): 

ShowCalendarEntryFromRtngLine(Record Prod. Order Routing Line) :#

Summary: Displays calendar entries associated with a production order routing line for capacity and scheduling analysis. This procedure opens the calendar entries page filtered to show calendar information relevant to the specified production order routing line, enabling users to view detailed capacity scheduling, work shifts, and calendar configuration for the routing operation. It filters calendar entries based on the capacity type (work center or machine center) and resource number from the routing line, then shows entries within the routing line's date range. This provides transparent access to underlying calendar data that affects capacity calculations and production scheduling, supporting capacity planning analysis and troubleshooting of scheduling issues in manufacturing environments where detailed calendar visibility is required.

procedure ShowCalendarEntryFromRtngLine(ProdOrderRoutingLinePar: Record "Prod. Order Routing Line"): 

Parameters:

  • ProdOrderRoutingLinePar: Production order routing line record for which associated calendar entries will be displayed.

ShowCapLedgEntryFromRtngLine(Record Prod. Order Routing Line) :#

Summary: Displays capacity ledger entries associated with a production order routing line for output and consumption analysis. This procedure opens the capacity ledger entries page filtered to show posted capacity transactions relevant to the specified production order routing line, enabling users to view detailed output postings, capacity consumption, and actual time recordings for the routing operation. It filters capacity ledger entries based on production order information, routing details, and operation numbers to show only entries related to the specific routing line. This provides comprehensive visibility into actual capacity utilization and output postings, supporting production analysis, cost tracking, and performance monitoring in manufacturing environments where detailed capacity transaction history is required for auditing or analysis.

procedure ShowCapLedgEntryFromRtngLine(ProdOrderRoutingLinePar: Record "Prod. Order Routing Line"): 

Parameters:

  • ProdOrderRoutingLinePar: Production order routing line record for which associated capacity ledger entries will be displayed.

ShowProdCapNeedFromRtngLine(Record Prod. Order Routing Line) :#

Summary: Displays production order capacity need entries associated with a specific routing line for capacity planning analysis. This procedure opens the production order capacity need page filtered to show capacity requirements specific to the selected production order routing line, enabling users to view detailed capacity planning data, time allocations, and scheduling requirements for the routing operation. It filters capacity need entries based on production order status, order number, routing information, and operation details to show only requirements related to the specific routing line. This provides detailed visibility into capacity planning calculations and scheduling requirements, supporting capacity management analysis, production planning verification, and capacity optimization in manufacturing environments.

procedure ShowProdCapNeedFromRtngLine(ProdOrderRoutingLinePar: Record "Prod. Order Routing Line"): 

Parameters:

  • ProdOrderRoutingLinePar: Production order routing line record for which associated capacity need entries will be displayed.

ShowProdCapNeedForTypeFromRtngLine(Record Prod. Order Routing Line) :#

Summary: Displays production order capacity need entries filtered by capacity type and resource for comprehensive capacity analysis. This procedure opens the production order capacity need page filtered to show all capacity requirements for the specific capacity type (work center or machine center) and resource number within the routing line's date range, providing a broader view of capacity utilization across multiple production orders. It enables users to analyze total capacity demand for a specific resource, identify capacity conflicts, and evaluate overall resource utilization patterns. This supports comprehensive capacity planning by showing all capacity needs for a resource rather than just those from a single routing line, enabling better capacity management and scheduling optimization in complex manufacturing environments.

procedure ShowProdCapNeedForTypeFromRtngLine(ProdOrderRoutingLinePar: Record "Prod. Order Routing Line"): 

Parameters:

  • ProdOrderRoutingLinePar: Production order routing line record used to determine capacity type, resource number, and date range for capacity need filtering.

TransAddProdBOMFieldsToPOComp(Record Prod. Order Component, Record Production BOM Line) :#

Summary: Transfers additional production BOM line fields to production order components with type-specific processing. This procedure copies extended field values from production BOM lines to production order components, handling special field mappings and validations that are not covered by standard Business Central BOM explosion processes. It manages type-specific processing for different part provisioning types including order-related components and subcontractor-supplied parts, applying appropriate flushing methods and location assignments based on the component type. The procedure ensures that extended BOM line attributes are properly transferred to production order components, maintaining data integrity and supporting advanced manufacturing scenarios including subcontracting and order-specific component management. This enables comprehensive BOM data transfer beyond standard functionality for specialized manufacturing requirements.

procedure TransAddProdBOMFieldsToPOComp(var prodOrderCompVar: Record "Prod. Order Component"; prodBOMLinePar: Record "Production BOM Line"): 

Parameters:

  • prodOrderCompVar: Production order component record variable that will receive the additional field values from the production BOM line.
  • prodBOMLinePar: Production BOM line record containing the extended field values to be transferred to the production order component.

GetSubcontrLocationPOComp(Record Prod. Order Component, Code[10]) :#

Summary: Retrieves the appropriate subcontractor location code for production order components in subcontracting scenarios. This procedure determines the correct location code to be used for production order components that are supplied by subcontractors, based on the component's production order routing configuration and vendor setup. It analyzes the production order routing lines associated with the component to identify subcontractor work centers, then retrieves the corresponding vendor information and determines the appropriate source location for subcontractor operations. The procedure supports complex subcontracting workflows by ensuring that components receive the correct location assignments based on routing configuration and vendor location setup, enabling accurate inventory management and logistics coordination in subcontracting manufacturing processes.

procedure GetSubcontrLocationPOComp(prodOrderCompPar: Record "Prod. Order Component"; var subcontrLocationCodeVar: Code[10]): 

Parameters:

  • prodOrderCompPar: Production order component record for which the subcontractor location code will be determined.
  • subcontrLocationCodeVar: Variable code that will receive the determined subcontractor location code for the component.

FindReqLineSubcontrPrice(Record Requisition Line, Integer, Boolean) :#

Summary: Finds and calculates subcontractor pricing for requisition lines in manufacturing planning scenarios. This procedure searches for subcontractor pricing information for requisition lines that represent production order items requiring subcontractor services, calculating appropriate direct unit costs based on subcontractor price agreements and currency considerations. It handles various pricing sources including factor-based pricing and standard unit pricing, applying appropriate unit of measure conversions and currency exchange rates. The procedure coordinates with subcontractor price management to retrieve the best available pricing and applies time factor calculations for capacity-based subcontractor services. This supports comprehensive subcontractor cost management in manufacturing planning by ensuring accurate cost calculations for external services.

procedure FindReqLineSubcontrPrice(var reqLineVar: Record "Requisition Line"; calledByFieldNoPar: Integer; var foundSubcontrPriceVar: Boolean): 

Parameters:

  • reqLineVar: Requisition line record variable that will receive the calculated subcontractor pricing information.
  • calledByFieldNoPar: Integer indicating the field number that triggered the price calculation, used for context-specific processing.
  • foundSubcontrPriceVar: Variable boolean that will indicate whether subcontractor pricing was successfully found and applied.

FindRecords(Record KVSKBAProdStructureBuffer, Record KVSKBAProdStructureBuffer, Code[20], Code[20], Code[20], Code[20], Code[20], Date, Boolean, Decimal, Code[10]) :#

Summary: Finds and builds comprehensive production structure records for items, BOMs, and routing information. This procedure constructs detailed production structure buffers by analyzing production BOM hierarchies, routing information, and item relationships to create comprehensive manufacturing structure data. It processes multi-level production BOMs, calculates quantities at each level, and integrates routing information when specified. The procedure handles version management for both production BOMs and routings, applies calculation date filtering, and manages unit of measure conversions across structure levels. It creates temporary buffer records that represent the complete production structure including components, operations, and cost information, supporting manufacturing analysis, costing calculations, and production planning workflows. This enables detailed analysis of production structures for planning and costing purposes in complex manufacturing environments.

procedure FindRecords(var tempProdStructureBufferVar: Record "KVSKBAProdStructureBuffer"; var tempProdStructureBuffer2Var: Record "KVSKBAProdStructureBuffer"; itemNoPar: Code[20]; prodBOMNoPar: Code[20]; prodBOMVersionCodePar: Code[20]; routingNoPar: Code[20]; routingVersionCodePar: Code[20]; calculationDatePar: Date; calcRoutingPar: Boolean; quantityPar: Decimal; uomCodePar: Code[10]): 

Parameters:

  • tempProdStructureBufferVar: Temporary production structure buffer that will receive the complete production structure records.
  • tempProdStructureBuffer2Var: Secondary temporary production structure buffer used for processing and display purposes.
  • itemNoPar: Item number for which the production structure will be analyzed and built.
  • prodBOMNoPar: Production BOM number to be used as the basis for structure analysis.
  • prodBOMVersionCodePar: Production BOM version code for version-specific structure analysis.
  • routingNoPar: Routing number to be included in the production structure analysis.
  • routingVersionCodePar: Routing version code for version-specific routing information.
  • calculationDatePar: Calculation date used for version filtering and date-sensitive structure analysis.
  • calcRoutingPar: Boolean indicating whether routing information should be included in the structure analysis.
  • quantityPar: Base quantity for which the production structure calculations will be performed.
  • uomCodePar: Unit of measure code for the base quantity used in structure calculations.

CalcProdBOMVersionData(Code[20], Code[20], Code[20], Record Item Unit of Measure) :#

Summary: Calculates production BOM version data including unit of measure information for manufacturing calculations. This procedure retrieves and calculates production BOM version-specific data, determining the appropriate unit of measure relationships between items and production BOM headers or versions. It handles both versioned and non-versioned production BOMs, extracting unit of measure codes and quantity per unit of measure relationships that are essential for accurate manufacturing calculations. The procedure validates unit of measure configurations and establishes the proper conversion factors needed for production structure analysis and quantity calculations. This supports manufacturing costing and planning by ensuring accurate unit of measure data for production BOM processing and structure analysis.

procedure CalcProdBOMVersionData(itemNoPar: Code[20]; prodBOMNoPar: Code[20]; versionCodePar: Code[20]; var itemUOMVar: Record "Item Unit of Measure"): 

Parameters:

  • itemNoPar: Item number for which production BOM version data will be calculated and validated.
  • prodBOMNoPar: Production BOM number for which version-specific unit of measure data will be retrieved.
  • versionCodePar: Version code for the production BOM, used to retrieve version-specific unit of measure information.
  • itemUOMVar: Variable item unit of measure record that will receive the calculated unit of measure data and conversion factors.

InsertProdStructure(Record KVSKBAProdStructureBuffer, Code[20], Code[20], Code[20], Code[20], Code[20], Date, Boolean, Integer, Decimal, Decimal) :#

Summary: Inserts comprehensive production structure data into the production structure buffer for manufacturing analysis. This procedure creates detailed production structure records by combining production BOM components with routing information, handling multi-level BOM structures and calculating quantities at each level. It processes production BOM lines and corresponding routing lines to build a complete manufacturing structure that includes components, operations, capacity requirements, and material flows. The procedure supports version management for both BOMs and routings, handles calculation conditions, and manages hierarchical production structures with proper level tracking. This enables comprehensive manufacturing analysis, costing calculations, and production planning by providing a unified view of all components and operations required for production. The procedure integrates BOM explosion with routing operations to create a complete production roadmap.

procedure InsertProdStructure(var tempProdStructureBufferVar: Record "KVSKBAProdStructureBuffer"; itemNoPar: Code[20]; prodBOMNoPar: Code[20]; prodBOMVersionCodePar: Code[20]; routingNoPar: Code[20]; routingVersionCodePar: Code[20]; calculationDatePar: Date; calcRoutingPar: Boolean; actLevelPar: Integer; qtyBOMHeaderPar: Decimal; qtyPerUnitOfMeasurePar: Decimal): 

Parameters:

  • tempProdStructureBufferVar: Temporary production structure buffer that will receive the inserted production structure records and manufacturing data.
  • itemNoPar: Item number for which the production structure will be built and analyzed.
  • prodBOMNoPar: Production BOM number to be used for structure analysis and component explosion.
  • prodBOMVersionCodePar: Production BOM version code for version-specific structure processing and component analysis.
  • routingNoPar: Routing number to be integrated with the production BOM for operation and capacity analysis.
  • routingVersionCodePar: Routing version code for version-specific routing operations and capacity calculations.
  • calculationDatePar: Calculation date used for version management and date-sensitive production structure analysis.
  • calcRoutingPar: Boolean flag indicating whether routing information should be calculated and included in the production structure.
  • actLevelPar: Current hierarchical level in the production structure for proper level tracking and indentation management.
  • qtyBOMHeaderPar: Quantity at the BOM header level used for quantity calculations and material requirements planning.
  • qtyPerUnitOfMeasurePar: Quantity per unit of measure conversion factor for accurate quantity calculations across different unit of measure systems.

Events#

OnBeforeInsertProductionStructure(Record KVSKBAProdStructureBuffer, Code[20], Code[20], Code[20], Code[20], Code[20], Date, Boolean, Integer, Decimal, Decimal, Boolean) :#

Summary: Integration event that fires before inserting production structure records into the production structure buffer during manufacturing analysis. This event allows subscribers to intercept and customize production structure insertion logic before standard structure records are created, providing access to production structure buffer, item information, BOM data, routing information, and calculation parameters for custom structure processing and validation workflows. It enables implementation of alternative structure insertion logic, validation of structure requirements, and extension of production structure analysis processes in manufacturing scenarios where structure insertion requires specialized processing or custom structure manipulation.

[IntegrationEvent(false, false)]
local procedure OnBeforeInsertProductionStructure(var TempProdStructureBuffer: Record "KVSKBAProdStructureBuffer"; ItemNo: Code[20]; ProdBOMNo: Code[20]; ProdBOMVersionCode: Code[20]; RoutingNo: Code[20]; RoutingVersionCode: Code[20]; CalculationDate: Date; CalcRouting: Boolean; ActLevel: Integer; QtyBOMHeader: Decimal; QtyPerUnitOfMeasure: Decimal; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnBeforeInsertProductionStructure', '', false, false)]
local procedure DoSomethingOnBeforeInsertProductionStructure(var TempProdStructureBuffer: Record "KVSKBAProdStructureBuffer"; ItemNo: Code[20]; ProdBOMNo: Code[20]; ProdBOMVersionCode: Code[20]; RoutingNo: Code[20]; RoutingVersionCode: Code[20]; CalculationDate: Date; CalcRouting: Boolean; ActLevel: Integer; QtyBOMHeader: Decimal; QtyPerUnitOfMeasure: Decimal; var IsHandled: Boolean)
begin
end;

Parameters:

  • TempProdStructureBuffer: Temporary production structure buffer that will receive production structure records for manufacturing analysis and processing.
  • ItemNo: Item number for which the production structure is being built and analyzed during structure insertion processing.
  • ProdBOMNo: Production BOM number used for structure analysis and component explosion during structure insertion workflows.
  • ProdBOMVersionCode: Production BOM version code for version-specific structure processing and component analysis during insertion.
  • RoutingNo: Routing number integrated with production BOM for operation and capacity analysis during structure insertion.
  • RoutingVersionCode: Routing version code for version-specific routing operations and capacity calculations during structure processing.
  • CalculationDate: Calculation date used for version management and date-sensitive production structure analysis during insertion.
  • CalcRouting: Boolean flag indicating whether routing information should be calculated and included in production structure insertion.
  • ActLevel: Current hierarchical level in production structure for proper level tracking and indentation management during insertion.
  • QtyBOMHeader: Quantity at BOM header level used for quantity calculations and material requirements planning during structure insertion.
  • QtyPerUnitOfMeasure: Quantity per unit of measure conversion factor for accurate quantity calculations during structure insertion processing.
  • IsHandled: Boolean parameter that can be set to true by subscribers to indicate that custom production structure insertion has been performed and standard workflow should be bypassed.

OnBeforePOCompOnValidateTypOfPartProv(Record Prod. Order Component, Integer, Boolean) :#

Summary: Integration event that fires before validating the type of part provided field for production order components during component processing. This event allows subscribers to intercept and customize the validation logic for production order component type of part provided settings before standard validation processing occurs, providing access to production order component information and field context for custom validation workflows and business rule implementation. It enables implementation of specialized validation logic, custom business rules, and extension of component type validation processes in manufacturing scenarios where component type validation requires additional checks or alternative validation approaches.

[IntegrationEvent(false, false)]
local procedure OnBeforePOCompOnValidateTypOfPartProv(var prodOrderCompVar: Record "Prod. Order Component"; currFieldNoPar: Integer; var Handled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnBeforePOCompOnValidateTypOfPartProv', '', false, false)]
local procedure DoSomethingOnBeforePOCompOnValidateTypOfPartProv(var prodOrderCompVar: Record "Prod. Order Component"; currFieldNoPar: Integer; var Handled: Boolean)
begin
end;

Parameters:

  • prodOrderCompVar: Production order component record variable that will undergo type of part provided validation processing and custom validation workflows.
  • currFieldNoPar: Integer representing the field number that triggered the validation, providing context for field-specific validation logic and processing workflows.
  • Handled: Boolean parameter that can be set to true by subscribers to indicate that custom validation processing has been performed and standard validation workflow should be bypassed.

OnAfterTransferAddItemFieldsToProdBOM(Record Production BOM Line, Record Item) :#

Summary: Integration event that fires after transferring item fields to production BOM line during BOM line processing and item integration. This event allows subscribers to perform additional field transfers or custom processing after standard item fields have been transferred to production BOM lines during manufacturing BOM setup and maintenance workflows, providing access to production BOM line and item information for extended field mapping and custom integration logic. It enables implementation of additional field transfers, validation of transferred data, and extension of item-to-BOM integration processes in manufacturing scenarios where additional fields or custom transfer logic is required for comprehensive BOM line setup.

[IntegrationEvent(false, false)]
local procedure OnAfterTransferAddItemFieldsToProdBOM(var ProductionBOMLine: Record "Production BOM Line"; Item: Record "Item"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnAfterTransferAddItemFieldsToProdBOM', '', false, false)]
local procedure DoSomethingOnAfterTransferAddItemFieldsToProdBOM(var ProductionBOMLine: Record "Production BOM Line"; Item: Record "Item")
begin
end;

Parameters:

  • ProductionBOMLine: Production BOM line record that received item field transfers and is available for additional field mapping and custom processing workflows.
  • Item: Item record that provided field information for production BOM line integration and field transfer processing during BOM setup workflows.

OnFindPORtgLineSubcontrPriceOnFoundPurchPriceAssignAddFields(Record KVSFCYSubcontractingPrice, Record Prod. Order Routing Line, Record Prod. Order Line, Record Work Center) :#

Summary: Integration event that fires when subcontracting price is found for production order routing lines, during additional field assignment processing. This event allows subscribers to perform additional field assignments or custom processing when subcontracting prices are found for production order routing lines during subcontracting cost calculation workflows, providing access to subcontracting price information, production order routing line, production order line, and work center data for extended field mapping and custom cost processing logic. It enables implementation of additional cost field assignments, validation of pricing data, and extension of subcontracting cost integration processes in manufacturing scenarios where subcontracting costs require specialized field mapping or additional processing.

[IntegrationEvent(false, false)]
local procedure OnFindPORtgLineSubcontrPriceOnFoundPurchPriceAssignAddFields(SubcontractingPrice: Record "KVSFCYSubcontractingPrice"; var ProdOrderRoutingLine: Record "Prod. Order Routing Line"; ProdOrderLine: Record "Prod. Order Line"; WorkCenter: Record "Work Center"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnFindPORtgLineSubcontrPriceOnFoundPurchPriceAssignAddFields', '', false, false)]
local procedure DoSomethingOnFindPORtgLineSubcontrPriceOnFoundPurchPriceAssignAddFields(SubcontractingPrice: Record "KVSFCYSubcontractingPrice"; var ProdOrderRoutingLine: Record "Prod. Order Routing Line"; ProdOrderLine: Record "Prod. Order Line"; WorkCenter: Record "Work Center")
begin
end;

Parameters:

  • SubcontractingPrice: Subcontracting price record containing pricing information found for production order routing line cost calculation and field assignment processing.
  • ProdOrderRoutingLine: Production order routing line record that will receive additional subcontracting price fields and custom cost processing during price integration workflows.
  • ProdOrderLine: Production order line record providing context for subcontracting price processing and routing line cost calculation integration workflows.
  • WorkCenter: Work center record associated with subcontracting processing, providing capacity and subcontractor information for price calculation and field assignment workflows.

OnAfterTransAddProdBOMFieldsToPOComp(Record Prod. Order Component, Record Production BOM Line) :#

Summary: Integration event that fires after transferring production BOM fields to production order components during component setup and BOM integration. This event allows subscribers to perform additional field transfers or custom processing after standard production BOM fields have been transferred to production order components during manufacturing order processing workflows, providing access to production order component and production BOM line information for extended field mapping and custom integration logic. It enables implementation of additional field transfers, validation of transferred data, and extension of BOM-to-component integration processes in manufacturing scenarios where additional fields or custom transfer logic is required for comprehensive component setup.

[IntegrationEvent(false, false)]
local procedure OnAfterTransAddProdBOMFieldsToPOComp(var ProdOrderComponent: Record "Prod. Order Component"; ProductionBOMLine: Record "Production BOM Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnAfterTransAddProdBOMFieldsToPOComp', '', false, false)]
local procedure DoSomethingOnAfterTransAddProdBOMFieldsToPOComp(var ProdOrderComponent: Record "Prod. Order Component"; ProductionBOMLine: Record "Production BOM Line")
begin
end;

Parameters:

  • ProdOrderComponent: Production order component record that received production BOM field transfers and is available for additional field mapping and custom processing workflows.
  • ProductionBOMLine: Production BOM line record that provided field information for production order component integration and field transfer processing during component setup workflows.

OnCheckInsertPurchLineSubcontrOnbeforeValidateUnitofMeasureCode(Record Purchase Header, Record Purchase Line, Code[10]) :#

Summary: Integration event that fires during subcontracting purchase line validation, before validating unit of measure code for subcontracting workflows. This event allows subscribers to perform custom validation or setup before unit of measure code validation occurs during subcontracting purchase line processing, providing access to purchase header, purchase line, and subcontracting location information for pre-validation customization and business rule implementation. It enables implementation of specialized unit of measure validation logic, custom business rules, and extension of subcontracting purchase line validation processes in manufacturing scenarios where unit of measure validation requires additional checks or alternative validation approaches.

[IntegrationEvent(false, false)]
local procedure OnCheckInsertPurchLineSubcontrOnbeforeValidateUnitofMeasureCode(PurchaseHeader: Record "Purchase Header"; PurchaseLine: Record "Purchase Line"; SubcontrLocationCode: Code[10]): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnCheckInsertPurchLineSubcontrOnbeforeValidateUnitofMeasureCode', '', false, false)]
local procedure DoSomethingOnCheckInsertPurchLineSubcontrOnbeforeValidateUnitofMeasureCode(PurchaseHeader: Record "Purchase Header"; PurchaseLine: Record "Purchase Line"; SubcontrLocationCode: Code[10])
begin
end;

Parameters:

  • PurchaseHeader: Purchase header record containing document-level information for subcontracting purchase line validation context and processing workflows.
  • PurchaseLine: Purchase line record undergoing subcontracting validation processing, specifically unit of measure code validation for subcontracting workflows.
  • SubcontrLocationCode: Subcontracting location code providing location context for unit of measure validation and subcontracting processing workflows.

OnCheckInsertPurchLineSubcontrOnbeforeValidateSubcontractedQty(Record Purchase Header, Record Purchase Line, Code[10], Decimal, Boolean) :#

Summary: Integration event that fires during subcontracting purchase line validation, before validating subcontracted quantity for subcontracting workflows. This event allows subscribers to perform custom validation or setup before subcontracted quantity validation occurs during subcontracting purchase line processing, providing access to purchase header, purchase line, subcontracting location, and transfer quantity information for pre-validation customization and business rule implementation. It enables implementation of specialized quantity validation logic, custom business rules, and extension of subcontracting purchase line validation processes in manufacturing scenarios where quantity validation requires additional checks or alternative validation approaches.

[IntegrationEvent(false, false)]
local procedure OnCheckInsertPurchLineSubcontrOnbeforeValidateSubcontractedQty(PurchaseHeader: Record "Purchase Header"; PurchaseLine: Record "Purchase Line"; SubcontrLocationCode: Code[10]; QtyToTransfer: Decimal; var Handled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnCheckInsertPurchLineSubcontrOnbeforeValidateSubcontractedQty', '', false, false)]
local procedure DoSomethingOnCheckInsertPurchLineSubcontrOnbeforeValidateSubcontractedQty(PurchaseHeader: Record "Purchase Header"; PurchaseLine: Record "Purchase Line"; SubcontrLocationCode: Code[10]; QtyToTransfer: Decimal; var Handled: Boolean)
begin
end;

Parameters:

  • PurchaseHeader: Purchase header record containing document-level information for subcontracting purchase line quantity validation context and processing workflows.
  • PurchaseLine: Purchase line record undergoing subcontracting validation processing, specifically subcontracted quantity validation for subcontracting workflows.
  • SubcontrLocationCode: Subcontracting location code providing location context for quantity validation and subcontracting processing workflows.
  • QtyToTransfer: Decimal quantity value that will be validated for transfer operations during subcontracting quantity validation and processing workflows.
  • Handled: Boolean parameter that can be set to true by subscribers to indicate that custom quantity validation processing has been performed and standard validation workflow should be bypassed.

OnQtyBaseToTransferProdCompOnbeforeProdOrderCompCALCFIELDS(Record Prod. Order Component, Record Prod. Order Line, Record Purchase Line, Boolean) :#

Summary: Integration event that fires during production component quantity calculation processing, before calculating fields on production order component records. This event allows subscribers to perform custom processing or setup before production order component fields are calculated during quantity base transfer processing for subcontracting workflows, providing access to production order component, production order line, purchase line, and return order information for pre-calculation customization and business logic implementation. It enables implementation of specialized calculation logic, custom field preparation, and extension of component quantity calculation processes in manufacturing scenarios where quantity calculations require additional setup or alternative approaches.

[IntegrationEvent(false, false)]
local procedure OnQtyBaseToTransferProdCompOnbeforeProdOrderCompCALCFIELDS(ProdOrderComponent: Record "Prod. Order Component"; ProdOrderLine: Record "Prod. Order Line"; PurchaseLine: Record "Purchase Line"; ReturnOrder: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnQtyBaseToTransferProdCompOnbeforeProdOrderCompCALCFIELDS', '', false, false)]
local procedure DoSomethingOnQtyBaseToTransferProdCompOnbeforeProdOrderCompCALCFIELDS(ProdOrderComponent: Record "Prod. Order Component"; ProdOrderLine: Record "Prod. Order Line"; PurchaseLine: Record "Purchase Line"; ReturnOrder: Boolean)
begin
end;

Parameters:

  • ProdOrderComponent: Production order component record that will undergo field calculation processing for quantity base transfer and subcontracting workflows.
  • ProdOrderLine: Production order line record providing context for component quantity calculation and transfer processing workflows.
  • PurchaseLine: Purchase line record associated with subcontracting processing, providing purchase context for component quantity calculation workflows.
  • ReturnOrder: Boolean parameter indicating whether the processing involves return order scenarios for quantity calculation and transfer workflows.

OnInsertTransLineFromPOCompOnBeforeInsertTransLine(Record Prod. Order Component, Record Transfer Header, Record Purchase Line) :#

Summary: Integration event that fires during transfer line creation from production order components, before inserting transfer line records. This event allows subscribers to perform custom setup or validation before transfer lines are inserted during subcontracting transfer order creation from production order components, providing access to production order component, transfer header, and purchase line information for pre-insertion customization and business logic implementation. It enables implementation of specialized transfer line setup logic, custom field assignments, and extension of component-to-transfer integration processes in manufacturing scenarios where transfer line creation requires additional setup or alternative processing approaches.

[IntegrationEvent(false, false)]
local procedure OnInsertTransLineFromPOCompOnBeforeInsertTransLine(var ProdOrderComponent: Record "Prod. Order Component"; TransHeader: Record "Transfer Header"; PurchLine: Record "Purchase Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnInsertTransLineFromPOCompOnBeforeInsertTransLine', '', false, false)]
local procedure DoSomethingOnInsertTransLineFromPOCompOnBeforeInsertTransLine(var ProdOrderComponent: Record "Prod. Order Component"; TransHeader: Record "Transfer Header"; PurchLine: Record "Purchase Line")
begin
end;

Parameters:

  • ProdOrderComponent: Production order component record that is being processed for transfer line creation during subcontracting transfer order generation workflows.
  • TransHeader: Transfer header record that will receive the transfer line created from production order component processing during subcontracting workflows.
  • PurchLine: Purchase line record associated with subcontracting processing, providing purchase context for transfer line creation and component integration workflows.

OnFindPlRtgLineSubcontrPriceOnFoundPurchPriceAssignAddFields(Record KVSFCYSubcontractingPrice, Record Planning Routing Line, Record Requisition Line, Record Work Center) :#

Summary: Integration event that fires when subcontracting price is found for planning routing lines, during additional field assignment processing. This event allows subscribers to perform additional field assignments or custom processing when subcontracting prices are found for planning routing lines during planning and requisition cost calculation workflows, providing access to subcontracting price information, planning routing line, requisition line, and work center data for extended field mapping and custom cost processing logic. It enables implementation of additional cost field assignments, validation of pricing data, and extension of subcontracting cost integration processes in planning scenarios where subcontracting costs require specialized field mapping or additional processing.

[IntegrationEvent(false, false)]
local procedure OnFindPlRtgLineSubcontrPriceOnFoundPurchPriceAssignAddFields(SubcontractingPrice: Record "KVSFCYSubcontractingPrice"; var PlanningRoutingLine: Record "Planning Routing Line"; RequisitionLine: Record "Requisition Line"; WorkCenter: Record "Work Center"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnFindPlRtgLineSubcontrPriceOnFoundPurchPriceAssignAddFields', '', false, false)]
local procedure DoSomethingOnFindPlRtgLineSubcontrPriceOnFoundPurchPriceAssignAddFields(SubcontractingPrice: Record "KVSFCYSubcontractingPrice"; var PlanningRoutingLine: Record "Planning Routing Line"; RequisitionLine: Record "Requisition Line"; WorkCenter: Record "Work Center")
begin
end;

Parameters:

  • SubcontractingPrice: Subcontracting price record containing pricing information found for planning routing line cost calculation and field assignment processing.
  • PlanningRoutingLine: Planning routing line record that will receive additional subcontracting price fields and custom cost processing during planning price integration workflows.
  • RequisitionLine: Requisition line record providing context for subcontracting price processing and planning routing line cost calculation integration workflows.
  • WorkCenter: Work center record associated with subcontracting processing, providing capacity and subcontractor information for planning price calculation and field assignment workflows.

OnAfterTransAddPORtgFieldsToReqLine(Record Requisition Line, Record Prod. Order Routing Line) :#

Summary: Integration event that fires after transferring production order routing fields to requisition lines during planning and requisition processing. This event allows subscribers to perform additional field transfers or custom processing after standard production order routing fields have been transferred to requisition lines during manufacturing planning and subcontracting workflows, providing access to requisition line and production order routing line information for extended field mapping and custom integration logic. It enables implementation of additional field transfers, validation of transferred data, and extension of routing-to-requisition integration processes in planning scenarios where additional fields or custom transfer logic is required for comprehensive requisition line setup.

[IntegrationEvent(false, false)]
local procedure OnAfterTransAddPORtgFieldsToReqLine(var RequisitionLine: Record "Requisition Line"; ProdOrderRoutingLine: Record "Prod. Order Routing Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnAfterTransAddPORtgFieldsToReqLine', '', false, false)]
local procedure DoSomethingOnAfterTransAddPORtgFieldsToReqLine(var RequisitionLine: Record "Requisition Line"; ProdOrderRoutingLine: Record "Prod. Order Routing Line")
begin
end;

Parameters:

  • RequisitionLine: Requisition line record that received production order routing field transfers and is available for additional field mapping and custom processing workflows.
  • ProdOrderRoutingLine: Production order routing line record that provided field information for requisition line integration and field transfer processing during planning workflows.

OnAfterTransAddRtgFieldsToPORtg(Record Prod. Order Routing Line, Record Routing Line) :#

Summary: Integration event that fires after transferring routing fields to production order routing lines during production order processing and routing integration. This event allows subscribers to perform additional field transfers or custom processing after standard routing fields have been transferred to production order routing lines during manufacturing order creation and routing setup workflows, providing access to production order routing line and routing line information for extended field mapping and custom integration logic. It enables implementation of additional field transfers, validation of transferred data, and extension of routing-to-production order integration processes in manufacturing scenarios where additional fields or custom transfer logic is required for comprehensive routing line setup.

[IntegrationEvent(false, false)]
local procedure OnAfterTransAddRtgFieldsToPORtg(var ProdOrderRoutingLine: Record "Prod. Order Routing Line"; RoutingLine: Record "Routing Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnAfterTransAddRtgFieldsToPORtg', '', false, false)]
local procedure DoSomethingOnAfterTransAddRtgFieldsToPORtg(var ProdOrderRoutingLine: Record "Prod. Order Routing Line"; RoutingLine: Record "Routing Line")
begin
end;

Parameters:

  • ProdOrderRoutingLine: Production order routing line record that received routing field transfers and is available for additional field mapping and custom processing workflows.
  • RoutingLine: Routing line record that provided field information for production order routing line integration and field transfer processing during manufacturing workflows.

OnAfterTransferAddRtgFieldsToPlaRtg(Record Planning Routing Line, Record Routing Line) :#

Summary: Integration event that fires after transferring routing fields to planning routing lines during planning processing and routing integration. This event allows subscribers to perform additional field transfers or custom processing after standard routing fields have been transferred to planning routing lines during manufacturing planning and requisition workflows, providing access to planning routing line and routing line information for extended field mapping and custom integration logic. It enables implementation of additional field transfers, validation of transferred data, and extension of routing-to-planning integration processes in planning scenarios where additional fields or custom transfer logic is required for comprehensive planning routing line setup.

[IntegrationEvent(false, false)]
local procedure OnAfterTransferAddRtgFieldsToPlaRtg(var PlanningRoutingLine: Record "Planning Routing Line"; RoutingLine: Record "Routing Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnAfterTransferAddRtgFieldsToPlaRtg', '', false, false)]
local procedure DoSomethingOnAfterTransferAddRtgFieldsToPlaRtg(var PlanningRoutingLine: Record "Planning Routing Line"; RoutingLine: Record "Routing Line")
begin
end;

Parameters:

  • PlanningRoutingLine: Planning routing line record that received routing field transfers and is available for additional field mapping and custom processing workflows.
  • RoutingLine: Routing line record that provided field information for planning routing line integration and field transfer processing during planning workflows.

OnAfterTransAddTrLiFieldsToTrShptLi(Record Transfer Line, Record Transfer Shipment Line) :#

Summary: Integration event that fires after transferring transfer line fields to transfer shipment lines during transfer shipment processing. This event allows subscribers to perform additional field transfers or custom processing after standard transfer line fields have been transferred to transfer shipment lines during subcontracting transfer shipment workflows, providing access to transfer line and transfer shipment line information for extended field mapping and custom integration logic. It enables implementation of additional field transfers, validation of transferred data, and extension of transfer-to-shipment integration processes in subcontracting scenarios where additional fields or custom transfer logic is required for comprehensive transfer shipment line setup.

[IntegrationEvent(false, false)]
local procedure OnAfterTransAddTrLiFieldsToTrShptLi(TransferLine: Record "Transfer Line"; var TransferShipmentLine: Record "Transfer Shipment Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnAfterTransAddTrLiFieldsToTrShptLi', '', false, false)]
local procedure DoSomethingOnAfterTransAddTrLiFieldsToTrShptLi(TransferLine: Record "Transfer Line"; var TransferShipmentLine: Record "Transfer Shipment Line")
begin
end;

Parameters:

  • TransferLine: Transfer line record that provided field information for transfer shipment line integration and field transfer processing during shipment workflows.
  • TransferShipmentLine: Transfer shipment line record that received transfer line field transfers and is available for additional field mapping and custom processing workflows.

OnbeforeFindRtgLineSubcontrPrice(Record Item, Record Work Center, Record Routing Line, Boolean, Decimal, Decimal, Decimal, Decimal, Decimal, Option, Date, Boolean) :#

Summary: Integration event that fires before finding subcontracting prices for routing lines during subcontracting cost calculation workflows. This event allows subscribers to intercept and customize subcontracting price discovery logic before standard price finding processes occur, providing access to item information, work center data, routing line details, and cost parameters for custom pricing workflows and business rule implementation. It enables implementation of alternative pricing logic, custom price sources, and extension of subcontracting cost calculation processes in manufacturing scenarios where subcontracting prices require specialized discovery methods or alternative pricing approaches for accurate cost calculation.

[IntegrationEvent(false, false)]
local procedure OnbeforeFindRtgLineSubcontrPrice(Item: Record "Item"; WorkCenter: Record "Work Center"; RoutingLine: Record "Routing Line"; var foundSubcontrPrice: Boolean; MfGItemQtyBase: Decimal; var DirUnitCost: Decimal; var IndirCostPct: Decimal; var OvhdRate: Decimal; var UnitCost: Decimal; var UnitCostCalculation: Option; CalcDate: Date; var Handled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnbeforeFindRtgLineSubcontrPrice', '', false, false)]
local procedure DoSomethingOnbeforeFindRtgLineSubcontrPrice(Item: Record "Item"; WorkCenter: Record "Work Center"; RoutingLine: Record "Routing Line"; var foundSubcontrPrice: Boolean; MfGItemQtyBase: Decimal; var DirUnitCost: Decimal; var IndirCostPct: Decimal; var OvhdRate: Decimal; var UnitCost: Decimal; var UnitCostCalculation: Option; CalcDate: Date; var Handled: Boolean)
begin
end;

Parameters:

  • Item: Item record for which subcontracting pricing will be found during cost calculation and subcontracting processing workflows.
  • WorkCenter: Work center record associated with subcontracting processing, providing capacity and subcontractor information for price discovery workflows.
  • RoutingLine: Routing line record containing operation information for subcontracting price calculation and cost processing workflows.
  • foundSubcontrPrice: Boolean variable indicating whether subcontracting price was found and can be modified by subscribers for custom price discovery logic.
  • MfGItemQtyBase: Manufacturing item quantity base used for subcontracting price calculation and cost processing during price discovery workflows.
  • DirUnitCost: Direct unit cost variable that can be modified by subscribers for custom subcontracting cost calculation and pricing workflows.
  • IndirCostPct: Indirect cost percentage variable that can be modified by subscribers for custom subcontracting overhead calculation and cost processing workflows.
  • OvhdRate: Overhead rate variable that can be modified by subscribers for custom subcontracting overhead calculation and cost processing workflows.
  • UnitCost: Unit cost variable that can be modified by subscribers for custom subcontracting total cost calculation and pricing workflows.
  • UnitCostCalculation: Unit cost calculation option variable that can be modified by subscribers for custom subcontracting cost calculation method and processing workflows.
  • CalcDate: Calculation date used for price validity and date-sensitive subcontracting price discovery during cost calculation workflows.
  • Handled: Boolean parameter that can be set to true by subscribers to indicate that custom subcontracting price discovery has been performed and standard workflow should be bypassed.

OnAfterTransAddTRcptFieldsToItemJnlLi(Record Transfer Receipt Line, Record Item Journal Line) :#

Summary: Integration event that fires after transferring transfer receipt fields to item journal lines during transfer receipt processing and inventory integration. This event allows subscribers to perform additional field transfers or custom processing after standard transfer receipt fields have been transferred to item journal lines during subcontracting transfer receipt and inventory posting workflows, providing access to transfer receipt line and item journal line information for extended field mapping and custom integration logic. It enables implementation of additional field transfers, validation of transferred data, and extension of transfer receipt-to-journal integration processes in subcontracting scenarios where additional fields or custom transfer logic is required for comprehensive item journal line setup.

[IntegrationEvent(false, false)]
local procedure OnAfterTransAddTRcptFieldsToItemJnlLi(TransferReceiptLine: Record "Transfer Receipt Line"; var ItemJournalLine: Record "Item Journal Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnAfterTransAddTRcptFieldsToItemJnlLi', '', false, false)]
local procedure DoSomethingOnAfterTransAddTRcptFieldsToItemJnlLi(TransferReceiptLine: Record "Transfer Receipt Line"; var ItemJournalLine: Record "Item Journal Line")
begin
end;

Parameters:

  • TransferReceiptLine: Transfer receipt line record that provided field information for item journal line integration and field transfer processing during receipt workflows.
  • ItemJournalLine: Item journal line record that received transfer receipt field transfers and is available for additional field mapping and custom processing workflows.

OnAfterTransAddTrHeFieldsToTrRcptHe(Record Transfer Header, Record Transfer Receipt Header) :#

Summary: Integration event that fires after transferring transfer header fields to transfer receipt headers during transfer receipt processing. This event allows subscribers to perform additional field transfers or custom processing after standard transfer header fields have been transferred to transfer receipt headers during subcontracting transfer receipt workflows, providing access to transfer header and transfer receipt header information for extended field mapping and custom integration logic. It enables implementation of additional field transfers, validation of transferred data, and extension of transfer header-to-receipt header integration processes in subcontracting scenarios where additional fields or custom transfer logic is required for comprehensive transfer receipt header setup.

[IntegrationEvent(false, false)]
local procedure OnAfterTransAddTrHeFieldsToTrRcptHe(TransferHeader: Record "Transfer Header"; var TransferReceiptHeader: Record "Transfer Receipt Header"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnAfterTransAddTrHeFieldsToTrRcptHe', '', false, false)]
local procedure DoSomethingOnAfterTransAddTrHeFieldsToTrRcptHe(TransferHeader: Record "Transfer Header"; var TransferReceiptHeader: Record "Transfer Receipt Header")
begin
end;

Parameters:

  • TransferHeader: Transfer header record that provided field information for transfer receipt header integration and field transfer processing during receipt workflows.
  • TransferReceiptHeader: Transfer receipt header record that received transfer header field transfers and is available for additional field mapping and custom processing workflows.

OnAfterTransAddTrLiFieldsToTrRcptLi(Record Transfer Line, Record Transfer Receipt Line) :#

Summary: Integration event that fires after transferring transfer line fields to transfer receipt lines during transfer receipt processing. This event allows subscribers to perform additional field transfers or custom processing after standard transfer line fields have been transferred to transfer receipt lines during subcontracting transfer receipt workflows, providing access to transfer line and transfer receipt line information for extended field mapping and custom integration logic. It enables implementation of additional field transfers, validation of transferred data, and extension of transfer line-to-receipt line integration processes in subcontracting scenarios where additional fields or custom transfer logic is required for comprehensive transfer receipt line setup.

[IntegrationEvent(false, false)]
local procedure OnAfterTransAddTrLiFieldsToTrRcptLi(transLinePar: Record "Transfer Line"; var transRcptLineVar: Record "Transfer Receipt Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnAfterTransAddTrLiFieldsToTrRcptLi', '', false, false)]
local procedure DoSomethingOnAfterTransAddTrLiFieldsToTrRcptLi(transLinePar: Record "Transfer Line"; var transRcptLineVar: Record "Transfer Receipt Line")
begin
end;

Parameters:

  • transLinePar: Transfer line record that provided field information for transfer receipt line integration and field transfer processing during receipt workflows.
  • transRcptLineVar: Transfer receipt line record that received transfer line field transfers and is available for additional field mapping and custom processing workflows.

OnAfterTransAddItJnlFieldsToCapLedgEn(Record Item Journal Line, Record Capacity Ledger Entry) :#

Summary: Integration event that fires after transferring item journal fields to capacity ledger entries during capacity posting and subcontracting integration. This event allows subscribers to perform additional field transfers or custom processing after standard item journal fields have been transferred to capacity ledger entries during subcontracting capacity posting workflows, providing access to item journal line and capacity ledger entry information for extended field mapping and custom integration logic. It enables implementation of additional field transfers, validation of transferred data, and extension of item journal-to-capacity ledger integration processes in subcontracting scenarios where additional fields or custom transfer logic is required for comprehensive capacity ledger entry setup.

[IntegrationEvent(false, false)]
local procedure OnAfterTransAddItJnlFieldsToCapLedgEn(ItemJournalLine: Record "Item Journal Line"; var CapacityLedgerEntry: Record "Capacity Ledger Entry"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnAfterTransAddItJnlFieldsToCapLedgEn', '', false, false)]
local procedure DoSomethingOnAfterTransAddItJnlFieldsToCapLedgEn(ItemJournalLine: Record "Item Journal Line"; var CapacityLedgerEntry: Record "Capacity Ledger Entry")
begin
end;

Parameters:

  • ItemJournalLine: Item journal line record that provided field information for capacity ledger entry integration and field transfer processing during capacity posting workflows.
  • CapacityLedgerEntry: Capacity ledger entry record that received item journal field transfers and is available for additional field mapping and custom processing workflows.

OnAfterTransAddItJnlFieldsToItLedgEn(Record Item Journal Line, Record Item Ledger Entry) :#

Summary: Integration event that fires after transferring item journal fields to item ledger entries during inventory posting and subcontracting integration. This event allows subscribers to perform additional field transfers or custom processing after standard item journal fields have been transferred to item ledger entries during subcontracting inventory posting workflows, providing access to item journal line and item ledger entry information for extended field mapping and custom integration logic. It enables implementation of additional field transfers, validation of transferred data, and extension of item journal-to-item ledger integration processes in subcontracting scenarios where additional fields or custom transfer logic is required for comprehensive item ledger entry setup.

[IntegrationEvent(false, false)]
local procedure OnAfterTransAddItJnlFieldsToItLedgEn(ItemJournalLine: Record "Item Journal Line"; var ItemLedgerEntry: Record "Item Ledger Entry"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnAfterTransAddItJnlFieldsToItLedgEn', '', false, false)]
local procedure DoSomethingOnAfterTransAddItJnlFieldsToItLedgEn(ItemJournalLine: Record "Item Journal Line"; var ItemLedgerEntry: Record "Item Ledger Entry")
begin
end;

Parameters:

  • ItemJournalLine: Item journal line record that provided field information for item ledger entry integration and field transfer processing during inventory posting workflows.
  • ItemLedgerEntry: Item ledger entry record that received item journal field transfers and is available for additional field mapping and custom processing workflows.

OnBeforeTransferOrderForSubcontrExist(Record Item Journal Line, Record Item Ledger Entry, Boolean) :#

Summary: Integration event that fires before checking transfer order existence for subcontracting during inventory posting validation. This event allows subscribers to intercept and customize transfer order existence validation logic before standard validation processes occur during subcontracting inventory posting workflows, providing access to item journal line and item ledger entry information for custom validation workflows and business rule implementation. It enables implementation of alternative validation logic, custom business rules, and extension of transfer order validation processes in subcontracting scenarios where transfer order validation requires specialized checks or alternative validation approaches for accurate inventory processing.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferOrderForSubcontrExist(ItemJournalLine: Record "Item Journal Line"; ItemLedgerEntry: Record "Item Ledger Entry"; var Handled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnBeforeTransferOrderForSubcontrExist', '', false, false)]
local procedure DoSomethingOnBeforeTransferOrderForSubcontrExist(ItemJournalLine: Record "Item Journal Line"; ItemLedgerEntry: Record "Item Ledger Entry"; var Handled: Boolean)
begin
end;

Parameters:

  • ItemJournalLine: Item journal line record undergoing transfer order existence validation during subcontracting inventory posting workflows.
  • ItemLedgerEntry: Item ledger entry record providing context for transfer order validation during subcontracting inventory processing workflows.
  • Handled: Boolean parameter that can be set to true by subscribers to indicate that custom transfer order validation has been performed and standard validation workflow should be bypassed.

SetnotShowWindowatFindRecords(Boolean) :#

Summary: Integration event that allows customization of window display settings during production structure record finding operations. This event allows subscribers to control whether progress windows should be displayed during production structure analysis and record finding processes, providing the ability to suppress or enable user interface elements during automated or batch processing scenarios. It enables implementation of custom user interface control logic, performance optimization for batch operations, and extension of production structure processing workflows in manufacturing scenarios where window display behavior requires customization based on processing context or user preferences for optimal user experience and system performance.

[IntegrationEvent(false, false)]
local procedure SetnotShowWindowatFindRecords(var NotShowWindow: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'SetnotShowWindowatFindRecords', '', false, false)]
local procedure DoSomethingSetnotShowWindowatFindRecords(var NotShowWindow: Boolean)
begin
end;

Parameters:

  • NotShowWindow: Boolean variable that can be modified by subscribers to control whether progress windows should be displayed during production structure finding operations.

SetnewInitTempTableatFindRecords(Boolean) :#

Summary: Integration event that allows customization of temporary table initialization settings during production structure record finding operations. This event allows subscribers to control whether temporary table initialization should be performed during production structure analysis and record finding processes, providing the ability to optimize memory usage and processing performance during automated or batch processing scenarios. It enables implementation of custom table initialization control logic, performance optimization for large data operations, and extension of production structure processing workflows in manufacturing scenarios where table initialization behavior requires customization based on processing context or performance requirements for optimal system operation.

[IntegrationEvent(false, false)]
local procedure SetnewInitTempTableatFindRecords(var SetInitTempTable: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'SetnewInitTempTableatFindRecords', '', false, false)]
local procedure DoSomethingSetnewInitTempTableatFindRecords(var SetInitTempTable: Boolean)
begin
end;

Parameters:

  • SetInitTempTable: Boolean variable that can be modified by subscribers to control whether temporary table initialization should be performed during production structure finding operations.

OnInsertTransLineFromPOCompBeforeAssignLocationCode(Record Transfer Line, Record Transfer Header, Record Prod. Order Component, Boolean) :#

Summary: Integration event that fires during transfer line creation from production order components, before assigning location code for transfer operations. This event allows subscribers to perform custom location assignment or validation before location codes are assigned during subcontracting transfer line creation from production order components, providing access to transfer line, transfer header, and production order component information for custom location logic and business rule implementation. It enables implementation of specialized location assignment logic, custom location validation, and extension of component-to-transfer location processing in manufacturing scenarios where location assignment requires specialized rules or alternative location determination approaches.

[IntegrationEvent(false, false)]
local procedure OnInsertTransLineFromPOCompBeforeAssignLocationCode(TransferLine: Record "Transfer Line"; TransferHeader: Record "Transfer Header"; var prodOrderCompVar: Record "Prod. Order Component"; var isHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnInsertTransLineFromPOCompBeforeAssignLocationCode', '', false, false)]
local procedure DoSomethingOnInsertTransLineFromPOCompBeforeAssignLocationCode(TransferLine: Record "Transfer Line"; TransferHeader: Record "Transfer Header"; var prodOrderCompVar: Record "Prod. Order Component"; var isHandled: Boolean)
begin
end;

Parameters:

  • TransferLine: Transfer line record that will receive location code assignment during subcontracting transfer line creation workflows.
  • TransferHeader: Transfer header record providing document-level context for location assignment during subcontracting transfer processing workflows.
  • prodOrderCompVar: Production order component record variable providing source information for location assignment during component-to-transfer integration workflows.
  • isHandled: Boolean parameter that can be set to true by subscribers to indicate that custom location assignment has been performed and standard assignment workflow should be bypassed.

OnBeforeTransferAddPBOMFieldsToPlaCompValidateLocationCode(Record Planning Component, Record Production BOM Line, Boolean) :#

Summary: Integration event that fires before validating location code during production BOM field transfer to planning components. This event allows subscribers to perform custom validation or setup before location code validation occurs during production BOM field transfer to planning components in manufacturing planning workflows, providing access to planning component and production BOM line information for pre-validation customization and business rule implementation. It enables implementation of specialized location validation logic, custom business rules, and extension of BOM-to-planning component location validation processes in planning scenarios where location validation requires additional checks or alternative validation approaches for accurate component setup.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferAddPBOMFieldsToPlaCompValidateLocationCode(var planningComponent: Record "Planning Component"; var prodBOMLine: Record "Production BOM Line"; var isHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnBeforeTransferAddPBOMFieldsToPlaCompValidateLocationCode', '', false, false)]
local procedure DoSomethingOnBeforeTransferAddPBOMFieldsToPlaCompValidateLocationCode(var planningComponent: Record "Planning Component"; var prodBOMLine: Record "Production BOM Line"; var isHandled: Boolean)
begin
end;

Parameters:

  • planningComponent: Planning component record variable that will undergo location code validation during production BOM field transfer processing workflows.
  • prodBOMLine: Production BOM line record variable providing source information for location validation during BOM-to-component integration workflows.
  • isHandled: Boolean parameter that can be set to true by subscribers to indicate that custom location validation has been performed and standard validation workflow should be bypassed.

OnBeforeInsertPurchPriceForSubcontractor(Record KVSFCYSubcontractingPrice, Record KVSFCYSubcontractingPrice) :#

Summary: Integration event that fires before inserting subcontracting purchase prices during subcontracting price management and processing workflows. This event allows subscribers to perform custom validation, modification, or setup before subcontracting purchase prices are inserted during subcontracting price processing workflows, providing access to target and source subcontracting price records for pre-insertion customization and business rule implementation. It enables implementation of specialized price insertion logic, custom price validation, and extension of subcontracting price management processes in manufacturing scenarios where price insertion requires additional validation or alternative price processing approaches for accurate subcontracting cost management.

[IntegrationEvent(false, false)]
local procedure OnBeforeInsertPurchPriceForSubcontractor(var ToPurchPrice: Record "KVSFCYSubcontractingPrice"; FromSubcontrPrice: Record "KVSFCYSubcontractingPrice"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnBeforeInsertPurchPriceForSubcontractor', '', false, false)]
local procedure DoSomethingOnBeforeInsertPurchPriceForSubcontractor(var ToPurchPrice: Record "KVSFCYSubcontractingPrice"; FromSubcontrPrice: Record "KVSFCYSubcontractingPrice")
begin
end;

Parameters:

  • ToPurchPrice: Target subcontracting price record that will be inserted during subcontracting price processing and can be modified by subscribers for custom price setup workflows.
  • FromSubcontrPrice: Source subcontracting price record providing information for price insertion during subcontracting price processing and management workflows.

OnCheckInsertTransHeaderBeforeModify(Record Transfer Header, Record Purchase Header, Boolean) :#

Summary: Integration event that fires during transfer header validation and processing, before modifying transfer header records for subcontracting workflows. This event allows subscribers to perform custom validation, field setup, or business rule checks before transfer headers are modified during subcontracting transfer order processing workflows, providing access to transfer header, purchase header, and return order information for pre-modification customization and validation logic. It enables implementation of specialized transfer header modification logic, custom validation rules, and extension of subcontracting transfer header processing in manufacturing scenarios where transfer header modification requires additional validation or alternative processing approaches for accurate transfer management.

[IntegrationEvent(false, false)]
local procedure OnCheckInsertTransHeaderBeforeModify(var TransHeader: Record "Transfer Header"; PurchHeader: Record "Purchase Header"; ReturnOrder: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnCheckInsertTransHeaderBeforeModify', '', false, false)]
local procedure DoSomethingOnCheckInsertTransHeaderBeforeModify(var TransHeader: Record "Transfer Header"; PurchHeader: Record "Purchase Header"; ReturnOrder: Boolean)
begin
end;

Parameters:

  • TransHeader: Transfer header record variable that will be modified during subcontracting transfer processing and can be customized by subscribers for specialized workflow requirements.
  • PurchHeader: Purchase header record providing source information for transfer header modification during subcontracting purchase-to-transfer integration workflows.
  • ReturnOrder: Boolean parameter indicating whether the processing involves return order scenarios for transfer header modification and processing workflows.

OnAfterCreateTransferOrdersForSubcontracting(Record Transfer Header, Record Purchase Header, Boolean) :#

Summary: This event is triggered after the transfer orders for subcontracting were created

[IntegrationEvent(false, false)]
local procedure OnAfterCreateTransferOrdersForSubcontracting(var TempCreatedTransferHeaders: Record "Transfer Header" temporary; SourcePurchaseHeader: Record "Purchase Header"; WasPrintAction: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSFCYManufacturingLib", 'OnAfterCreateTransferOrdersForSubcontracting', '', false, false)]
local procedure DoSomethingOnAfterCreateTransferOrdersForSubcontracting(var TempCreatedTransferHeaders: Record "Transfer Header" temporary; SourcePurchaseHeader: Record "Purchase Header"; WasPrintAction: Boolean)
begin
end;

Parameters:

  • TempCreatedTransferHeaders: The temporary record transfer header which contains the created transfer headers
  • SourcePurchaseHeader: The purchase header for which the transfer orders were created
  • WasPrintAction: True if the transfer orders were printed