Skip to content

KVSKBATransferExtendedText#

Procedures#

AutomCustomer2SalesDocText(Record Sales Header) :#

Summary: Automatically copies extended text from customer and advertising groups to sales document text for all positions.

procedure AutomCustomer2SalesDocText(SalesHeader: Record "Sales Header"): 

Parameters:

  • SalesHeader: The sales header record for which extended text should be automatically added.

Remarks: This procedure automatically transfers customer-related extended text to all text positions in a sales document. It processes all positions defined in the KVSKBATextPosition enum.

         **Process Flow:**
         1. Validates that "Sell-to Customer No." is populated (exits if empty)
         2. Retrieves the customer record
         3. Iterates through all text positions (using KVSKBATextPosition.Ordinals())
         4. Calls SingleAutomCustomer2SalesDocText for each position

         **Automation Scope:**
         - Processes ALL text positions (e.g., Header, Footer, Position-specific sections)
         - Only extended text marked as "Automatically" (KVSKBAUseinDocText::Automatically)
         - Includes customer direct extended text
         - Includes advertising group extended text for customer memberships

         **Key Characteristics:**
         - Header-level text only (not line-specific)
         - Automatic trigger during document processing
         - No user interaction required
         - Comprehensive processing of all text positions

         **Use Cases:**
         - Document creation: Automatically populate standard customer text
         - Customer change: Refresh all text positions with new customer's extended text
         - Batch processing: Ensure all documents have consistent customer text

         **Dependencies:**
         - Requires valid "Sell-to Customer No." on sales header
         - Customer must have extended text records marked as "Automatically"
         - Extended text must be valid for document type, date range, and language

         **Integration:**
         - SingleAutomCustomer2SalesDocText handles position-specific logic
         - Supports advertising group extended text via CalculateTempAdvertGroupMembers

         **Performance:**
         - Iterates through all ordinal values of text position enum
         - Multiple database operations per position
         - Consider performance for documents with many positions

AutomLineTypeNo2SalesDocText(Record Sales Line) :#

Summary: Automatically copies extended text from sales line items to sales document text for all positions.

procedure AutomLineTypeNo2SalesDocText(SalesLine: Record "Sales Line"): 

Parameters:

  • SalesLine: The sales line record for which extended text should be automatically added.

Remarks: This procedure automatically transfers item-specific extended text (from G/L Account, Item, or Resource) to sales document text for all text positions. It is typically triggered when a sales line is created or modified.

         **Validation Checks:**
         - Exits if Line No. = 0 (invalid line)
         - Exits if Type not in [" ", "G/L Account", "Item", "Resource"]
         - Exits if "No." field is empty
         - Exits if handled by OnBeforeAutomLineTypeNo2SalesDocText event
         - Exits if sales header cannot be retrieved

         **Process Flow:**
         1. Validates sales line has a valid line number and type
         2. Checks if extension has handled the operation via integration event
         3. Retrieves parent sales header for document context
         4. Iterates through all text positions (KVSKBATextPosition.Ordinals())
         5. Calls SingleAutomLineTypeNo2SalesDocText for each position

         **Supported Line Types:**
         - " " (Blank): Standard text references
         - "G/L Account": General ledger account extended text
         - "Item": Item descriptions and specifications
         - "Resource": Resource descriptions and details

         **Automation Characteristics:**
         - Automatic processing without user interaction
         - Only extended text marked as "Automatically" (KVSKBAUseinDocText::Automatically)
         - Line-level text (associated with specific document line)
         - Position-specific filtering for targeted text placement

         **Use Cases:**
         - New line insertion: Automatically add item descriptions
         - Line modification: Update extended text when item changes
         - Item selection: Insert standard item specifications
         - G/L Account selection: Add account-specific notes

         **Integration Points:**
         - OnBeforeAutomLineTypeNo2SalesDocText: Allows extensions to override behavior
         - SingleAutomLineTypeNo2SalesDocText: Handles position-specific logic
         - TransferExtText2SalesDocText: Performs actual text insertion

         **Dependencies:**
         - Valid sales header must exist
         - Extended text must be configured for the item/account/resource
         - Extended text must match document type, date range, and language

         **Performance Considerations:**
         - Processes all text positions on each line change
         - Multiple database reads per position
         - Consider caching for bulk line operations

TransferExtText2SalesDocText(Record KVSKBASalesDocumentText, Record Extended Text Header, Date, Code[10], Text[130]) :#

Summary: Transfers extended text lines from extended text headers to sales document text records.

procedure TransferExtText2SalesDocText(var SalesDocumentText: Record "KVSKBASalesDocumentText"; var ExtendedTextHeader: Record "Extended Text Header"; DocDate: Date; LanguageCode: Code[10]; HeadLineText: Text[130]): 

Parameters:

  • SalesDocumentText: The sales document text record that serves as insertion anchor and context.
  • ExtendedTextHeader: The extended text header record(s) to read lines from (with filters applied).
  • DocDate: The document date used for date range filtering of extended text.
  • LanguageCode: The language code for filtering extended text (or empty for default language).
  • HeadLineText: Optional headline text to insert before extended text lines (e.g., standard text description).

Remarks: This is a core procedure for transferring extended text to sales documents. It handles the complex logic of reading extended text lines, calculating line number spacing, and inserting text records into the sales document text table.

         **Process Flow:**

         1. **Read Extended Text Lines:**
            - Calls ReadLines to populate TempGlobalExtTextLine buffer
            - Applies date and language filtering
            - Exits if no lines found and no headline text provided

         2. **Calculate Line Number Spacing:**
            - Counts lines to insert (extended text lines + optional headline)
            - Locks sales document text table to prevent concurrent modifications
            - Finds next existing line in same position
            - Calculates spacing: (NextLineNo - CurrentLineNo) / (1 + NoOfLinesToInsert)
            - Throws error if insufficient space (LineSpacing = 0)
            - Defaults to 10000 spacing if no next line exists

         3. **Insert Extended Text Lines:**
            - Iterates through TempGlobalExtTextLine buffer
            - Creates new sales document text record for each line
            - Copies document key fields (Document Type, No., Line No., Position)
            - Retrieves and copies starting/ending dates and order type from header
            - Calls TransferFieldsFromExtTextLine to copy text content and formatting
            - Increments line number by calculated spacing
            - Marks MustInserted flag when at least one line inserted

         4. **Update Return Record:**
            - Updates var parameter SalesDocumentText with last inserted record
            - Only updates if MustInserted = true

         **Integration Events:**
         - OnTransferExtText2SalesDocTextOnBeforeTempExtTextLine: Allows modification before line insertion

         **Line Spacing Logic:**
         - Ensures sequential line numbers without conflicts
         - Maintains proper sorting of text lines
         - Prevents line number exhaustion with 10000 default spacing

         **Error Handling:**
         - NotEnoughSpaceErr: Thrown when spacing calculation results in 0
         - Occurs when too many lines exist between current and next line
         - Solution: Manual deletion of existing lines or repositioning

         **Field Transfers:**
         - Document key fields: Document Type, Document No., Document Line No., Position
         - Date fields: Starting Date, Ending Date (from Extended Text Header)
         - Order Type: KVSKBAOrderTypeSales (from Extended Text Header)
         - Text content: Via TransferFieldsFromExtTextLine method

         **Use Cases:**
         - Manual text insertion from standard texts
         - Automatic customer text during document creation
         - Line item descriptions from items/resources
         - Advertising group promotional text

         **Performance:**
         - Table locking ensures consistency
         - Sequential line number assignment
         - Batch processing of all extended text lines

AutomLineTypeNo2PurchDocText(Record Purchase Line) :#

Summary: Automatically copies extended text from purchase line items to purchase document text for all positions.

procedure AutomLineTypeNo2PurchDocText(PurchaseLine: Record "Purchase Line"): 

Parameters:

  • PurchaseLine: The purchase line record for which extended text should be automatically added.

Remarks: This procedure automatically transfers item-specific extended text from purchase line items (G/L Account, Item, Resource) to purchase document text. It is the purchase document equivalent of AutomLineTypeNo2SalesDocText.

         **Validation Checks:**
         - Exits if Line No. = 0 (invalid line)
         - Exits if Type not in [" ", "G/L Account", "Item", "Resource"]
         - Exits if "No." field is empty
         - Exits if handled by OnBeforeAutomLineTypeNo2PurchaseDocText event
         - Exits if purchase header cannot be retrieved

         **Process Flow:**
         1. Validates purchase line has valid line number and type
         2. Checks for extension override via integration event
         3. Retrieves parent purchase header for document context
         4. Iterates through all text positions (KVSKBATextPosition.Ordinals())
         5. Calls SingleAutomLineTypeNo2PurchDocText for each position

         **Supported Line Types:**
         - " " (Blank): Standard text references
         - "G/L Account": General ledger account extended text
         - "Item": Item descriptions, specifications, vendor part descriptions
         - "Resource": Resource descriptions and details

         **Automation Characteristics:**
         - Automatic processing without user interaction
         - Only extended text marked as "Automatically" (KVSKBAUseinDocText::Automatically)
         - Line-level text (associated with specific document line)
         - Position-specific filtering for targeted text placement

         **Use Cases:**
         - New line insertion: Automatically add item vendor descriptions
         - Line modification: Update extended text when item changes
         - Item selection: Insert standard purchasing specifications
         - G/L Account selection: Add account-specific purchasing notes
         - Resource booking: Include resource requirements or constraints

         **Integration Points:**
         - OnBeforeAutomLineTypeNo2PurchaseDocText: Allows extensions to override behavior
         - SingleAutomLineTypeNo2PurchDocText: Handles position-specific logic
         - TransferExtText2PurchDocText: Performs actual text insertion

         **Dependencies:**
         - Valid purchase header must exist
         - Extended text must be configured for the item/account/resource
         - Extended text must match document type, date range, and language
         - Purchase-specific flags must be set on Extended Text Header

         **Performance Considerations:**
         - Processes all text positions on each line change
         - Multiple database reads per position
         - Consider performance impact for bulk line imports

AutomLineTypeNo2ServiceDocText(Record Service Line) :#

Summary: Automatically copies extended text from service line items to service document text for all positions.

procedure AutomLineTypeNo2ServiceDocText(ServiceLine: Record "Service Line"): 

Parameters:

  • ServiceLine: The service line record for which extended text should be automatically added.

Remarks: This procedure automatically transfers item-specific extended text from service line items to service document text. It parallels the purchase and sales line automation but for service documents.

         **Validation Checks:**
         - Exits if Line No. = 0 (invalid line)
         - Exits if Type not in [" ", "G/L Account", "Item", "Resource"]
         - Exits if "No." field is empty
         - Exits if handled by OnBeforeAutomLineTypeNo2ServiceDocText event
         - Exits if service header cannot be retrieved

         **Process Flow:**
         1. Validates service line has valid line number and type
         2. Checks for extension override via integration event
         3. Retrieves parent service header for document context
         4. Iterates through all text positions (KVSKBATextPosition.Ordinals())
         5. Calls SingleAutomLineTypeNo2ServiceDocText for each position

         **Supported Line Types:**
         - " " (Blank): Standard text references
         - "G/L Account": General ledger account extended text
         - "Item": Service item descriptions and specifications
         - "Resource": Resource/technician descriptions

         **Use Cases:**
         - Service order creation: Auto-add service item descriptions
         - Line modification: Update text when service item changes
         - Resource assignment: Include technician notes or qualifications
         - Standard service tasks: Insert predefined service descriptions

         **Integration Points:**
         - OnBeforeAutomLineTypeNo2ServiceDocText: Override behavior
         - SingleAutomLineTypeNo2ServiceDocText: Position-specific logic
         - TransferExtText2ServiceDocText: Text insertion with service-specific fields

         **Service-Specific Features:**
         - Works with service document structure (Document Type, Document No., Line No.)
         - Integrates with service header context
         - Supports service-specific extended text filters

AutomItemLineTypeNo2ServiceDocText(Record Service Item Line) :#

Summary: Automatically copies extended text from service item lines to service document text for all positions.

procedure AutomItemLineTypeNo2ServiceDocText(ServiceItemLine: Record "Service Item Line"): 

Parameters:

  • ServiceItemLine: The service item line record for which extended text should be automatically added.

Remarks: This procedure automatically transfers item-specific extended text from service item lines to service document text. Service item lines represent the physical items being serviced, distinct from service lines which represent service tasks or parts.

         **Validation Checks:**
         - Exits if Line No. = 0 (invalid line)
         - Exits if "Item No." is empty
         - Exits if handled by OnBeforeAutomItemLineTypeNo2ServiceDocText event
         - Exits if service header cannot be retrieved

         **Process Flow:**
         1. Validates service item line has valid line number and item number
         2. Checks for extension override via integration event
         3. Retrieves parent service header for document context
         4. Iterates through all text positions (KVSKBATextPosition.Ordinals())
         5. Calls SingleAutomItemLineTypeNo2ServiceDocText for each position

         **Service Item Line Context:**
         - Represents the item being serviced (e.g., a machine, device, equipment)
         - Different from Service Lines (which are service tasks, parts, resources)
         - Item No. identifies the service item
         - Extended text comes from Item master data

         **Use Cases:**
         - Service order creation: Auto-add item-specific service instructions
         - Item selection: Insert equipment specifications or warnings
         - Service history: Include item-specific maintenance notes
         - Warranty information: Add item-specific warranty terms

         **Integration Points:**
         - OnBeforeAutomItemLineTypeNo2ServiceDocText: Override behavior
         - SingleAutomItemLineTypeNo2ServiceDocText: Position-specific logic
         - OnBeforeTransferExtText2ServiceItemDocText: Pre-transfer customization

         **Service-Specific Behavior:**
         - Uses Document Table = "Service Item Line" in document text
         - Extended text source: Item table (Table Name = Item)
         - Service document type filtering (Quote, Order, Invoice, Credit Memo)

         **Dependencies:**
         - Valid service header must exist
         - Item must have extended text configured
         - Extended text must be marked for automatic usage
         - Extended text must match service document type and date range

TransferExtText2PurchDocText(Record KVSKBAPurchaseDocumentText, Record Extended Text Header, Date, Code[10], Text[130]) :#

Summary: Transfers extended text lines from extended text headers to purchase document text records.

procedure TransferExtText2PurchDocText(var PurchaseDocumentText: Record "KVSKBAPurchaseDocumentText"; var ExtendedTextHeader: Record "Extended Text Header"; DocDate: Date; LanguageCode: Code[10]; HeadLineText: Text[130]): 

Parameters:

  • PurchaseDocumentText: The purchase document text record that serves as insertion anchor and context.
  • ExtendedTextHeader: The extended text header record(s) to read lines from (with filters applied).
  • DocDate: The document date used for date range filtering of extended text.
  • LanguageCode: The language code for filtering extended text (or empty for default language).
  • HeadLineText: Optional headline text to insert before extended text lines.

Remarks: This is the purchase document equivalent of TransferExtText2SalesDocText. It handles the transfer of extended text to purchase documents with purchase-specific field mappings.

         **Process Flow:**

         1. **Read Extended Text Lines:**
            - Calls ReadLines to populate TempGlobalExtTextLine buffer
            - Applies date and language filtering
            - Exits if no lines found and no headline provided

         2. **Calculate Line Number Spacing:**
            - Counts lines to insert (extended text lines + optional headline)
            - Locks purchase document text table
            - Finds next existing line in same position
            - Calculates spacing: (NextLineNo - CurrentLineNo) / (1 + NoOfLinesToInsert)
            - Throws error if insufficient space (LineSpacing = 0)
            - Defaults to 10000 spacing if no next line exists

         3. **Insert Extended Text Lines:**
            - Enables KVSKBAFormattedText auto-calculation
            - Iterates through TempGlobalExtTextLine buffer
            - Creates new purchase document text record for each line
            - Copies document key fields (Document Type, No., Line No., Position)
            - Retrieves starting/ending dates and order type from header
            - Sets Order Type to KVSKBAOrderTypePurchase (purchase-specific)
            - Calls TransferFieldsFromExtTextLine to copy text content
            - Increments line number by calculated spacing

         4. **Update Return Record:**
            - Updates var parameter with last inserted record if any lines inserted

         **Integration Events:**
         - OnTransferExtText2PurchDocTextOnBeforeTempExtTextLine: Customization before line insertion

         **Purchase-Specific Features:**
         - Order Type set to KVSKBAOrderTypePurchase (distinct from Sales/Service)
         - Purchase document text table structure (KVSKBAPurchaseDocumentText)
         - Purchase-specific filters applied to Extended Text Header

         **Formatted Text Handling:**
         - SetAutoCalcFields(KVSKBAFormattedText) ensures formatted text is retrieved
         - Supports rich text formatting in extended text lines

         **Error Handling:**
         - NotEnoughSpaceErr: Thrown when line spacing calculation results in 0
         - Table locking prevents concurrent modification conflicts

         **Use Cases:**
         - Manual standard text insertion to purchase documents
         - Automatic vendor text during document creation
         - Line item descriptions from items/resources
         - Advertising group promotional or instruction text

CalculateTempAdvertGroupMembers(Enum KVSKBAAdvGroupMemberSourceTbl, Code[20], Record KVSKBAAdvertGroupMember) :#

Summary: Calculates the members of an advertising group into a temporary table.

procedure CalculateTempAdvertGroupMembers(AdvGroupMemberSourceTbl: Enum "KVSKBAAdvGroupMemberSourceTbl"; No: Code[20]; var TempAdvertGroupMember: Record "KVSKBAAdvertGroupMember" temporary): 

Parameters:

  • AdvGroupMemberSourceTbl: The source table enum value indicating whether to get members for Customers, Vendors, or Contacts.
  • No: The No. field value of the source table to filter members by.
  • TempAdvertGroupMember: A temporary record variable of type KVSKBAAdvertGroupMember to hold the calculated members.

Remarks: This procedure populates the provided temporary record variable with members of an advertising group based on the specified source table and No. It first adds all advertising groups that are marked as applicable to all records in the source table, then adds specific members from the KVSKBAAdvertGroupMember table.

SetFilterExtTextHeaderSalesDoc(Record Extended Text Header, Record Sales Header) :#

Summary: Sets document-type-specific filters on Extended Text Header for sales documents.

procedure SetFilterExtTextHeaderSalesDoc(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"): 

Parameters:

  • ExtendedTextHeader: The extended text header record to apply filters to.
  • SalesHeader: The sales header providing the document type context.

Remarks: This procedure applies sales document type-specific filters to the Extended Text Header table, ensuring only extended text marked for the specific document type is retrieved.

         **Document Type Mapping:**
         - Quote → SetRange("Sales Quote", true)
         - Blanket Order → SetRange("Sales Blanket Order", true)
         - Order → SetRange("Sales Order", true)
         - Invoice → SetRange("Sales Invoice", true)
         - Return Order → SetRange("Sales Return Order", true)
         - Credit Memo → SetRange("Sales Credit Memo", true)

         **Integration Events:**
         Each document type has a corresponding integration event for customization:
         - OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeQuote
         - OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeBlanketOrder
         - OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeOrder
         - OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeInvoice
         - OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeReturnOrder
         - OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeCreditMemo
         - OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderCaseElse (for unhandled types)

         **IsHandled Pattern:**
         - Each case checks IsHandled flag before applying default filter
         - Allows extensions to override standard filtering logic
         - Must set IsHandled := true to prevent default behavior

         **Purpose:**
         Extended text records can be configured to appear only on specific document types (e.g., only
         on quotes, only on orders). This procedure ensures the correct filtering is applied based on
         the sales document type being processed.

         **Use Cases:**
         - Quote-specific terms and conditions
         - Order-specific processing instructions
         - Invoice-specific payment terms
         - Return-specific return policies

SetFilterExtTextHeaderPurchDoc(Record Extended Text Header, Record Purchase Header) :#

Summary: Sets document-type-specific filters on Extended Text Header for purchase documents.

procedure SetFilterExtTextHeaderPurchDoc(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"): 

Parameters:

  • ExtendedTextHeader: The extended text header record to apply filters to.
  • PurchaseHeader: The purchase header providing the document type context.

Remarks: This procedure applies purchase document type-specific filters to the Extended Text Header table. It is the purchase document equivalent of SetFilterExtTextHeaderSalesDoc.

         **Document Type Mapping:**
         - Quote → SetRange("Purchase Quote", true)
         - Blanket Order → SetRange("Purchase Blanket Order", true)
         - Order → SetRange("Purchase Order", true)
         - Invoice → SetRange("Purchase Invoice", true)
         - Return Order → SetRange("Purchase Return Order", true)
         - Credit Memo → SetRange("Purchase Credit Memo", true)

         **Integration Events:**
         Each document type has a corresponding integration event:
         - OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeQuote
         - OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeBlanketOrder
         - OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeOrder
         - OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeInvoice
         - OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeReturnOrder
         - OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeCreditMemo
         - OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderCaseElse (for unhandled types)

         **IsHandled Pattern:**
         - Each case checks IsHandled flag before applying default filter
         - Extensions can override filtering by setting IsHandled := true

         **Purpose:**
         Ensures that extended text configured for specific purchase document types (e.g., only on
         purchase orders, only on return orders) is correctly filtered based on the current document type.

         **Use Cases:**
         - Purchase order-specific vendor instructions
         - Invoice-specific payment terms
         - Return order-specific RMA procedures
         - Quote-specific request for quotation terms

Events#

OnBeforeAutomLineTypeNo2PurchaseDocText(Record Purchase Line, Boolean) :#

Summary: Integration event raised before automatically copying extended text from purchase line to purchase document text.

[IntegrationEvent(false, false)]
local procedure OnBeforeAutomLineTypeNo2PurchaseDocText(PurchaseLine: Record "Purchase Line"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeAutomLineTypeNo2PurchaseDocText', '', false, false)]
local procedure DoSomethingOnBeforeAutomLineTypeNo2PurchaseDocText(PurchaseLine: Record "Purchase Line"; var IsHandled: Boolean)
begin
end;

Parameters:

  • PurchaseLine: The purchase line for which extended text is being processed.
  • IsHandled: Set to true to skip default extended text processing.

Remarks: This event allows extensions to override or supplement the automatic extended text processing for purchase lines. When IsHandled is set to true, the standard AutomLineTypeNo2PurchDocText logic is bypassed.

         **Use Cases:**
         - Custom extended text sources for specific item types
         - Conditional extended text based on purchase line attributes
         - Integration with external text management systems
         - Special handling for specific vendors or item categories

OnAfterSingleAutomCustomer2SalesDocText(Record Sales Header, Record KVSKBASalesDocumentText, Record Extended Text Header, Enum KVSKBATextPosition) :#

Summary: Integration event raised after automatically copying customer extended text to sales document text for a specific position.

[IntegrationEvent(false, false)]
local procedure OnAfterSingleAutomCustomer2SalesDocText(SalesHeader: Record "Sales Header"; var KVSKBASalesDocumentText: Record "KVSKBASalesDocumentText"; ExtendedTextHeader: Record "Extended Text Header"; KVSKBATextPosition: Enum "KVSKBATextPosition"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnAfterSingleAutomCustomer2SalesDocText', '', false, false)]
local procedure DoSomethingOnAfterSingleAutomCustomer2SalesDocText(SalesHeader: Record "Sales Header"; var KVSKBASalesDocumentText: Record "KVSKBASalesDocumentText"; ExtendedTextHeader: Record "Extended Text Header"; KVSKBATextPosition: Enum "KVSKBATextPosition")
begin
end;

Parameters:

  • SalesHeader: The sales header for which extended text was processed.
  • KVSKBASalesDocumentText: The last inserted sales document text record.
  • ExtendedTextHeader: The extended text header record (with filters applied).
  • KVSKBATextPosition: The text position that was processed.

Remarks: This event is raised after successful automatic transfer of customer extended text for a single position. It allows extensions to perform post-processing actions such as:

         **Use Cases:**
         - Modifying inserted text lines (formatting, translations)
         - Adding supplementary text from other sources
         - Logging or auditing extended text usage
         - Triggering workflow notifications
         - Custom validation or approval requirements

OnBeforeAutomLineTypeNo2SalesDocText(Record Sales Line, Boolean) :#

Summary: Integration event raised before automatically copying extended text from sales line to sales document text.

[IntegrationEvent(false, false)]
local procedure OnBeforeAutomLineTypeNo2SalesDocText(SalesLine: Record "Sales Line"; var Handled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeAutomLineTypeNo2SalesDocText', '', false, false)]
local procedure DoSomethingOnBeforeAutomLineTypeNo2SalesDocText(SalesLine: Record "Sales Line"; var Handled: Boolean)
begin
end;

Parameters:

  • SalesLine: The sales line for which extended text is being processed.
  • Handled: Set to true to skip default extended text processing.

Remarks: This event allows extensions to override the automatic extended text processing for sales lines. When Handled is set to true, the standard AutomLineTypeNo2SalesDocText logic is bypassed.

         **Use Cases:**
         - Custom extended text sources for specific item types
         - Conditional extended text based on sales line attributes (quantity, price, discounts)
         - Integration with PLM or external description services
         - Special handling for specific customers or item categories
         - Multi-language description services

OnBeforeSingleAutomCustomer2SalesDocText(Record Sales Header, Record Customer, Enum KVSKBATextPosition, Boolean) :#

Summary: Integration event raised before automatically copying customer extended text to sales document text for a specific position.

[IntegrationEvent(false, false)]
local procedure OnBeforeSingleAutomCustomer2SalesDocText(SalesHeader: Record "Sales Header"; Customer: Record "Customer"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeSingleAutomCustomer2SalesDocText', '', false, false)]
local procedure DoSomethingOnBeforeSingleAutomCustomer2SalesDocText(SalesHeader: Record "Sales Header"; Customer: Record "Customer"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean)
begin
end;

Parameters:

  • SalesHeader: The sales header for which extended text is being processed.
  • Customer: The customer record.
  • KVSKBAPosition: The text position being processed.
  • IsHandled: Set to true to skip default processing for this position.

Remarks: This event is raised for each text position during automatic customer extended text processing. It provides fine-grained control over position-specific text transfer.

         **Use Cases:**
         - Skip processing for specific positions
         - Custom text logic for specific positions (e.g., header vs. footer)
         - Position-specific text sources
         - Conditional text based on customer attributes and position

OnBeforeSingleAutomLineTypeNo2SalesDocText(Record Sales Line, Record Sales Header, Enum KVSKBATextPosition, Boolean) :#

Summary: Integration event raised before automatically copying sales line extended text to sales document text for a specific position.

[IntegrationEvent(false, false)]
local procedure OnBeforeSingleAutomLineTypeNo2SalesDocText(SalesLine: Record "Sales Line"; SalesHeader: Record "Sales Header"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeSingleAutomLineTypeNo2SalesDocText', '', false, false)]
local procedure DoSomethingOnBeforeSingleAutomLineTypeNo2SalesDocText(SalesLine: Record "Sales Line"; SalesHeader: Record "Sales Header"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean)
begin
end;

Parameters:

  • SalesLine: The sales line for which extended text is being processed.
  • SalesHeader: The parent sales header.
  • KVSKBAPosition: The text position being processed.
  • IsHandled: Set to true to skip default processing for this position.

Remarks: This event is raised for each text position during automatic sales line extended text processing. It provides position-level control over line item text transfer.

         **Use Cases:**
         - Position-specific text logic for line items
         - Skip certain positions for specific item types
         - Custom text placement based on line attributes
         - Integration with position-aware text services

OnBeforeSingleAutomVendor2PurchDocText(Record Purchase Header, Record Vendor, Enum KVSKBATextPosition, Boolean) :#

Summary: Integration event raised before automatically copying vendor extended text to purchase document text for a specific position.

[IntegrationEvent(false, false)]
local procedure OnBeforeSingleAutomVendor2PurchDocText(PurchaseHeader: Record "Purchase Header"; Vendor: Record "Vendor"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeSingleAutomVendor2PurchDocText', '', false, false)]
local procedure DoSomethingOnBeforeSingleAutomVendor2PurchDocText(PurchaseHeader: Record "Purchase Header"; Vendor: Record "Vendor"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean)
begin
end;

Parameters:

  • PurchaseHeader: The purchase header for which extended text is being processed.
  • Vendor: The vendor record.
  • KVSKBAPosition: The text position being processed.
  • IsHandled: Set to true to skip default processing for this position.

Remarks: This event is raised for each text position during automatic vendor extended text processing. It provides position-level control over vendor text transfer to purchase documents.

         **Use Cases:**
         - Position-specific vendor instructions
         - Skip processing for certain positions based on vendor attributes
         - Custom text logic for specific vendors and positions
         - Integration with vendor-specific text management

OnBeforeSingleAutomLineTypeNo2PurchDocText(Record Purchase Line, Record Purchase Header, Enum KVSKBATextPosition, Boolean) :#

Summary: Integration event raised before automatically copying purchase line extended text to purchase document text for a specific position.

[IntegrationEvent(false, false)]
local procedure OnBeforeSingleAutomLineTypeNo2PurchDocText(PurchaseLine: Record "Purchase Line"; PurchaseHeader: Record "Purchase Header"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeSingleAutomLineTypeNo2PurchDocText', '', false, false)]
local procedure DoSomethingOnBeforeSingleAutomLineTypeNo2PurchDocText(PurchaseLine: Record "Purchase Line"; PurchaseHeader: Record "Purchase Header"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean)
begin
end;

Parameters:

  • PurchaseLine: The purchase line for which extended text is being processed.
  • PurchaseHeader: The parent purchase header.
  • KVSKBAPosition: The text position being processed.
  • IsHandled: Set to true to skip default processing for this position.

Remarks: This event is raised for each text position during automatic purchase line extended text processing. It provides position-level control over purchase line item text transfer.

         **Use Cases:**
         - Position-specific text for purchase items
         - Vendor-specific formatting or content for certain positions
         - Skip positions based on item or purchase line attributes
         - Custom text services for procurement

OnBeforeSingleAutomCustomer2ServiceDocText(Record Service Header, Record Customer, Enum KVSKBATextPosition, Boolean) :#

Summary: Integration event raised before automatically copying customer extended text to service document text for a specific position.

[IntegrationEvent(false, false)]
local procedure OnBeforeSingleAutomCustomer2ServiceDocText(ServiceHeader: Record "Service Header"; Customer: Record "Customer"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeSingleAutomCustomer2ServiceDocText', '', false, false)]
local procedure DoSomethingOnBeforeSingleAutomCustomer2ServiceDocText(ServiceHeader: Record "Service Header"; Customer: Record "Customer"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ServiceHeader: The service header for which extended text is being processed.
  • Customer: The customer record.
  • KVSKBAPosition: The text position being processed.
  • IsHandled: Set to true to skip default processing for this position.

Remarks: Allows position-level control over customer extended text transfer to service documents.

OnBeforeSingleAutomContact2SalesDocText(Record Sales Header, Enum KVSKBATextPosition, Boolean) :#

Summary: Integration event raised before automatically copying contact advertising group text to sales document text for a specific position.

[IntegrationEvent(false, false)]
local procedure OnBeforeSingleAutomContact2SalesDocText(SalesHeader: Record "Sales Header"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeSingleAutomContact2SalesDocText', '', false, false)]
local procedure DoSomethingOnBeforeSingleAutomContact2SalesDocText(SalesHeader: Record "Sales Header"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean)
begin
end;

Parameters:

  • SalesHeader: The sales header (Quote with Contact but no Customer).
  • KVSKBAPosition: The text position being processed.
  • IsHandled: Set to true to skip default processing for this position.

Remarks: Allows customization of contact-based extended text processing for quote scenarios.

OnBeforeSingleAutomServContractHeaderCustomer2ServContractText(Record Service Contract Header, Record Customer, Enum KVSKBATextPosition, Boolean) :#

Summary: Integration event raised before automatically copying customer extended text to service contract text for a specific position.

[IntegrationEvent(false, false)]
local procedure OnBeforeSingleAutomServContractHeaderCustomer2ServContractText(ServiceContractHeader: Record "Service Contract Header"; Customer: Record "Customer"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeSingleAutomServContractHeaderCustomer2ServContractText', '', false, false)]
local procedure DoSomethingOnBeforeSingleAutomServContractHeaderCustomer2ServContractText(ServiceContractHeader: Record "Service Contract Header"; Customer: Record "Customer"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ServiceContractHeader: The service contract header for which extended text is being processed.
  • Customer: The customer record.
  • KVSKBAPosition: The text position being processed.
  • IsHandled: Set to true to skip default processing for this position.

Remarks: Allows position-level control over customer extended text transfer to service contracts.

OnBeforeSingleAutomServContractLineItemNo2ServContractText(Record Service Contract Line, Record Service Contract Header, Enum KVSKBATextPosition, Boolean) :#

Summary: Integration event raised before automatically copying contract line item extended text to service contract text for a specific position.

[IntegrationEvent(false, false)]
local procedure OnBeforeSingleAutomServContractLineItemNo2ServContractText(ServiceContractLine: Record "Service Contract Line"; ServiceContractHeader: Record "Service Contract Header"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeSingleAutomServContractLineItemNo2ServContractText', '', false, false)]
local procedure DoSomethingOnBeforeSingleAutomServContractLineItemNo2ServContractText(ServiceContractLine: Record "Service Contract Line"; ServiceContractHeader: Record "Service Contract Header"; KVSKBAPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ServiceContractLine: The service contract line for which extended text is being processed.
  • ServiceContractHeader: The parent service contract header.
  • KVSKBAPosition: The text position being processed.
  • IsHandled: Set to true to skip default processing for this position.

Remarks: Allows position-level control over item extended text transfer to service contract lines.

OnManualCopyExtText2PurchDocTextOnSetFilterExtTextHeader(Record Extended Text Header, Record Purchase Header, Record Purchase Line, Record KVSKBAPurchaseDocumentText) :#

Summary: Integration event for customizing Extended Text Header filters during manual copy to purchase document text.

[IntegrationEvent(false, false)]
local procedure OnManualCopyExtText2PurchDocTextOnSetFilterExtTextHeader(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; PurchaseLine: Record "Purchase Line"; var PurchaseDocumentText: Record "KVSKBAPurchaseDocumentText"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnManualCopyExtText2PurchDocTextOnSetFilterExtTextHeader', '', false, false)]
local procedure DoSomethingOnManualCopyExtText2PurchDocTextOnSetFilterExtTextHeader(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; PurchaseLine: Record "Purchase Line"; var PurchaseDocumentText: Record "KVSKBAPurchaseDocumentText")
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • PurchaseHeader: The purchase header providing document context.
  • PurchaseLine: The purchase line (if line-level text, otherwise empty).
  • PurchaseDocumentText: The target purchase document text record.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include vendor-specific filters, item category filters, or custom field filters.

OnManualCopyExtText2SalesDocTextOnSetFilterExtTextHeader(Record Extended Text Header, Record Sales Header, Record Sales Line, Record KVSKBASalesDocumentText) :#

Summary: Integration event for customizing Extended Text Header filters during manual copy to sales document text.

[IntegrationEvent(false, false)]
local procedure OnManualCopyExtText2SalesDocTextOnSetFilterExtTextHeader(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line"; var SalesDocText: Record "KVSKBASalesDocumentText"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnManualCopyExtText2SalesDocTextOnSetFilterExtTextHeader', '', false, false)]
local procedure DoSomethingOnManualCopyExtText2SalesDocTextOnSetFilterExtTextHeader(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line"; var SalesDocText: Record "KVSKBASalesDocumentText")
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • SalesHeader: The sales header providing document context.
  • SalesLine: The sales line (if line-level text, otherwise empty).
  • SalesDocText: The target sales document text record.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include customer-specific filters, item category filters, or promotional campaign filters.

OnManualCopyExtText2ServiceDocTextOnSetFilterExtTextHeader(Record Extended Text Header, Record Service Header, Record Service Line, Record KVSKBASrvDocumentText) :#

Summary: Integration event for customizing Extended Text Header filters during manual copy to service document text.

[IntegrationEvent(false, false)]
local procedure OnManualCopyExtText2ServiceDocTextOnSetFilterExtTextHeader(var ExtendedTextHeader: Record "Extended Text Header"; ServiceHeader: Record "Service Header"; ServiceLine: Record "Service Line"; var SrvDocText: Record "KVSKBASrvDocumentText"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnManualCopyExtText2ServiceDocTextOnSetFilterExtTextHeader', '', false, false)]
local procedure DoSomethingOnManualCopyExtText2ServiceDocTextOnSetFilterExtTextHeader(var ExtendedTextHeader: Record "Extended Text Header"; ServiceHeader: Record "Service Header"; ServiceLine: Record "Service Line"; var SrvDocText: Record "KVSKBASrvDocumentText")
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • ServiceHeader: The service header providing document context.
  • ServiceLine: The service line (if line-level text, otherwise empty).
  • SrvDocText: The target service document text record.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include service type filters, customer-specific service terms, or warranty-specific text.

OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeBlanketOrder(Record Extended Text Header, Record Purchase Header, Boolean) :#

Summary: Integration event for customizing Extended Text Header filters for Blanket Orders during manual copy to purchase document text.

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeBlanketOrder(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeBlanketOrder', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeBlanketOrder(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • PurchaseHeader: The purchase header providing document context.
  • IsHandled: Indicates whether the event subscriber has handled the filtering logic.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include purchase type filters, vendor-specific purchase terms, or delivery-specific text.

OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderCaseElse(Record Extended Text Header, Record Purchase Header) :#

Summary: Integration event for customizing Extended Text Header filters during manual copy to purchase document text.

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderCaseElse(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderCaseElse', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderCaseElse(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header")
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • PurchaseHeader: The purchase header providing document context.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include purchase type filters, vendor-specific purchase terms, or delivery-specific text.

OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeCreditMemo(Record Extended Text Header, Record Purchase Header, Boolean) :#

Summary: Integration event for customizing Extended Text Header filters for Credit Memos during manual copy to purchase document text.

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeCreditMemo(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeCreditMemo', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeCreditMemo(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • PurchaseHeader: The purchase header providing document context.
  • IsHandled: Indicates whether the event subscriber has handled the filtering logic.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include purchase type filters, vendor-specific purchase terms, or delivery-specific text.

OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeInvoice(Record Extended Text Header, Record Purchase Header, Boolean) :#

Summary: Integration event for customizing Extended Text Header filters for Invoices during manual copy to purchase document text.

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeInvoice(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeInvoice', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeInvoice(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • PurchaseHeader: The purchase header providing document context.
  • IsHandled: Indicates whether the event subscriber has handled the filtering logic.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include purchase type filters, vendor-specific purchase terms, or delivery-specific text.

OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeOrder(Record Extended Text Header, Record Purchase Header, Boolean) :#

Summary: Integration event for customizing Extended Text Header filters for Orders during manual copy to purchase document text.

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeOrder(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeOrder', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeOrder(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • PurchaseHeader: The purchase header providing document context.
  • IsHandled: Indicates whether the event subscriber has handled the filtering logic.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include purchase type filters, vendor-specific purchase terms, or delivery-specific text.

OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeQuote(Record Extended Text Header, Record Purchase Header, Boolean) :#

Summary: Integration event for customizing Extended Text Header filters for Quotes during manual copy to purchase document text

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeQuote(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeQuote', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeQuote(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • PurchaseHeader: The purchase header providing document context.
  • IsHandled: Indicates whether the event subscriber has handled the filtering logic.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include purchase type filters, vendor-specific purchase terms, or delivery-specific text.

OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeReturnOrder(Record Extended Text Header, Record Purchase Header, Boolean) :#

Summary: Integration event for customizing Extended Text Header filters for Return Orders during manual copy to purchase document text.

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeReturnOrder(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeReturnOrder', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderPurchaseDocOnBeforeCasePurchaseHeaderDocumentTypeReturnOrder(var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • PurchaseHeader: The purchase header providing document context.
  • IsHandled: Indicates whether the event subscriber has handled the filtering logic.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include purchase type filters, vendor-specific purchase terms, or delivery-specific text.

OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeBlanketOrder(Record Extended Text Header, Record Sales Header, Boolean) :#

Summary: Integration event for customizing Extended Text Header filters for Blanket Orders during manual copy to sales document text.

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeBlanketOrder(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var Handled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeBlanketOrder', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeBlanketOrder(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var Handled: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • SalesHeader: The sales header providing document context.
  • Handled: Indicates whether the event subscriber has handled the filtering logic.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include sales type filters, customer-specific sales terms, or delivery-specific text.

OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderCaseElse(Record Extended Text Header, Record Sales Header) :#

Summary: Integration event for customizing Extended Text Header filters during manual copy to sales document text.

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderCaseElse(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderCaseElse', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderCaseElse(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header")
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • SalesHeader: The sales header providing document context.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include sales type filters, customer-specific sales terms, or delivery-specific text.

OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeCreditMemo(Record Extended Text Header, Record Sales Header, Boolean) :#

Summary: Integration event for customizing Extended Text Header filters for Credit Memos during manual copy to sales document text.

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeCreditMemo(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var Handled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeCreditMemo', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeCreditMemo(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var Handled: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • SalesHeader: The sales header providing document context.
  • Handled: Indicates whether the event subscriber has handled the filtering logic.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include sales type filters, customer-specific sales terms, or delivery-specific text.

OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeInvoice(Record Extended Text Header, Record Sales Header, Boolean) :#

Summary: Integration event for customizing Extended Text Header filters for Invoices during manual copy to sales document text.

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeInvoice(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var Handled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeInvoice', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeInvoice(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var Handled: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • SalesHeader: The sales header providing document context.
  • Handled: Indicates whether the event subscriber has handled the filtering logic.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include sales type filters, customer-specific sales terms, or delivery-specific text.

OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeOrder(Record Extended Text Header, Record Sales Header, Boolean) :#

Summary: Integration event for customizing Extended Text Header filters for Orders during manual copy to sales document text

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeOrder(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var Handled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeOrder', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeOrder(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var Handled: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • SalesHeader: The sales header providing document context.
  • Handled: Indicates whether the event subscriber has handled the filtering logic.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include sales type filters, customer-specific sales terms, or delivery-specific text.

OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeQuote(Record Extended Text Header, Record Sales Header, Boolean) :#

Summary: Integration event for customizing Extended Text Header filters for Quotes during manual copy to sales document text

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeQuote(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var Handled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeQuote', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeQuote(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var Handled: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • SalesHeader: The sales header providing document context.
  • Handled: Indicates whether the event subscriber has handled the filtering logic.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include sales type filters, customer-specific sales terms, or delivery-specific text.

OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeReturnOrder(Record Extended Text Header, Record Sales Header, Boolean) :#

Summary: Integration event for customizing Extended Text Header filters for Return Orders during manual copy to sales document text.

[IntegrationEvent(false, false)]
local procedure OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeReturnOrder(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var Handled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeReturnOrder', '', false, false)]
local procedure DoSomethingOnSetFilterExtTextHeaderSalesDocOnBeforeCaseSalesHeaderDocumentTypeReturnOrder(var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var Handled: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with standard filters already applied.
  • SalesHeader: The sales header providing document context.
  • Handled: Indicates whether the event subscriber has handled the filtering logic.

Remarks: Allows extensions to add custom filters to Extended Text Header before text transfer. Use cases include sales type filters, customer-specific sales terms, or delivery-specific text.

OnTransferExtText2SalesDocTextOnBeforeTempExtTextLine(Record KVSKBASalesDocumentText, Record KVSKBASalesDocumentText, Record Extended Text Line, Text[130], Integer, Integer, Boolean) :#

Summary: Integration event raised before inserting each extended text line into the temporary buffer during transfer to sales document text.

[IntegrationEvent(false, false)]
local procedure OnTransferExtText2SalesDocTextOnBeforeTempExtTextLine(var NewSalesDocumentText: Record "KVSKBASalesDocumentText"; var VarSalesDocumentText: Record "KVSKBASalesDocumentText"; var TempExtTextLine: Record "Extended Text Line" temporary; HeadLineText: Text[130]; var NextLineNo: Integer; var LineSpacing: Integer; var Inserted: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnTransferExtText2SalesDocTextOnBeforeTempExtTextLine', '', false, false)]
local procedure DoSomethingOnTransferExtText2SalesDocTextOnBeforeTempExtTextLine(var NewSalesDocumentText: Record "KVSKBASalesDocumentText"; var VarSalesDocumentText: Record "KVSKBASalesDocumentText"; var TempExtTextLine: Record "Extended Text Line" temporary; HeadLineText: Text[130]; var NextLineNo: Integer; var LineSpacing: Integer; var Inserted: Boolean)
begin
end;

Parameters:

  • NewSalesDocumentText: The new sales document text record being created.
  • VarSalesDocumentText: The variable sales document text record used for filtering.
  • TempExtTextLine: The temporary extended text line buffer.
  • HeadLineText: The headline text for the current extended text section.
  • NextLineNo: The next line number to be assigned.
  • LineSpacing: The line spacing value for the current extended text section.
  • Inserted: Indicates whether the line has been inserted.

Remarks: Allows extensions to modify or augment the extended text line before it is added to the temporary buffer. Use cases include custom formatting, additional text insertion, or conditional line modifications.

OnTransferExtText2PurchDocTextOnBeforeTempExtTextLine(Record KVSKBAPurchaseDocumentText, Record KVSKBAPurchaseDocumentText, Record Extended Text Line, Text[130], Integer, Integer, Boolean) :#

[IntegrationEvent(false, false)]
local procedure OnTransferExtText2PurchDocTextOnBeforeTempExtTextLine(var NewPurchDocumentText: Record "KVSKBAPurchaseDocumentText"; var VarPurchDocumentText: Record "KVSKBAPurchaseDocumentText"; var TempExtTextLine: Record "Extended Text Line" temporary; HeadLineText: Text[130]; var NextLineNo: Integer; var LineSpacing: Integer; var Inserted: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnTransferExtText2PurchDocTextOnBeforeTempExtTextLine', '', false, false)]
local procedure DoSomethingOnTransferExtText2PurchDocTextOnBeforeTempExtTextLine(var NewPurchDocumentText: Record "KVSKBAPurchaseDocumentText"; var VarPurchDocumentText: Record "KVSKBAPurchaseDocumentText"; var TempExtTextLine: Record "Extended Text Line" temporary; HeadLineText: Text[130]; var NextLineNo: Integer; var LineSpacing: Integer; var Inserted: Boolean)
begin
end;

OnBeforeReadLines(Record Extended Text Header, Date, Code[10], Record Extended Text Line, Boolean, Boolean) :#

Summary: Integration event for complete override of extended text line reading logic.

[IntegrationEvent(false, false)]
local procedure OnBeforeReadLines(var ExtendedTextHeader: Record "Extended Text Header"; DocDate: Date; LanguageCode: Code[10]; var TempExtTextLine: Record "Extended Text Line" temporary; var IsHandled: Boolean; var Result: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeReadLines', '', false, false)]
local procedure DoSomethingOnBeforeReadLines(var ExtendedTextHeader: Record "Extended Text Header"; DocDate: Date; LanguageCode: Code[10]; var TempExtTextLine: Record "Extended Text Line" temporary; var IsHandled: Boolean; var Result: Boolean)
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with filters applied.
  • DocDate: The document date for date filtering.
  • LanguageCode: The language code for filtering.
  • TempExtTextLine: Temporary buffer to populate with extended text lines.
  • IsHandled: Set to true to bypass standard ReadLines logic.
  • Result: Return value indicating whether lines were found.

Remarks: Allows complete customization of extended text line reading, including integration with external text services, custom text sources, or cached text repositories.

OnManualCopyExtText2ServiceDocTextOnBeforeDocumentTableCaseElse(Record Extended Text Header, Record KVSKBASrvDocumentText) :#

Summary: Integration event for handling custom service document table types in manual extended text copy.

[IntegrationEvent(false, false)]
local procedure OnManualCopyExtText2ServiceDocTextOnBeforeDocumentTableCaseElse(var ExtendedTextHeader: Record "Extended Text Header"; var SrvDocTextVar: Record "KVSKBASrvDocumentText"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnManualCopyExtText2ServiceDocTextOnBeforeDocumentTableCaseElse', '', false, false)]
local procedure DoSomethingOnManualCopyExtText2ServiceDocTextOnBeforeDocumentTableCaseElse(var ExtendedTextHeader: Record "Extended Text Header"; var SrvDocTextVar: Record "KVSKBASrvDocumentText")
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header to filter.
  • SrvDocTextVar: The service document text record.

Remarks: Allows extensions to support custom document table types beyond Service Header, Service Item Line, and Service Line.

OnBeforeTransferExtTextsOfAdvertGroupMemberToSalesHeaderManual(Record KVSKBAAdvertGroupMember, Record Extended Text Header, Record Sales Header, Record KVSKBASalesDocumentText, Boolean) :#

Summary: Integration event for controlling manual transfer of advertising group extended text to sales header.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferExtTextsOfAdvertGroupMemberToSalesHeaderManual(var TempKVSKBAAdvertGroupMember: Record "KVSKBAAdvertGroupMember"; var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var KVSKBASalesDocumentText: Record "KVSKBASalesDocumentText"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeTransferExtTextsOfAdvertGroupMemberToSalesHeaderManual', '', false, false)]
local procedure DoSomethingOnBeforeTransferExtTextsOfAdvertGroupMemberToSalesHeaderManual(var TempKVSKBAAdvertGroupMember: Record "KVSKBAAdvertGroupMember"; var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var KVSKBASalesDocumentText: Record "KVSKBASalesDocumentText"; var IsHandled: Boolean)
begin
end;

Parameters:

  • TempKVSKBAAdvertGroupMember: The temporary advertising group member record.
  • ExtendedTextHeader: The extended text header with filters for the advertising group.
  • SalesHeader: The sales header.
  • KVSKBASalesDocumentText: The target sales document text record.
  • IsHandled: Set to true to skip transfer for this advertising group.

Remarks: Allows selective control over which advertising groups' text is transferred during manual copy. Use cases: Skip certain groups, modify filters, apply custom business logic.

OnBeforeTransferExtTextsOfAdvertGroupMemberToSalesHeaderAutomatic(Record KVSKBAAdvertGroupMember, Record Extended Text Header, Record Sales Header, Record KVSKBASalesDocumentText, Boolean) :#

Summary: Integration event for controlling automatic transfer of advertising group extended text to sales header.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferExtTextsOfAdvertGroupMemberToSalesHeaderAutomatic(var TempKVSKBAAdvertGroupMember: Record "KVSKBAAdvertGroupMember"; var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var KVSKBASalesDocumentText: Record "KVSKBASalesDocumentText"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeTransferExtTextsOfAdvertGroupMemberToSalesHeaderAutomatic', '', false, false)]
local procedure DoSomethingOnBeforeTransferExtTextsOfAdvertGroupMemberToSalesHeaderAutomatic(var TempKVSKBAAdvertGroupMember: Record "KVSKBAAdvertGroupMember"; var ExtendedTextHeader: Record "Extended Text Header"; SalesHeader: Record "Sales Header"; var KVSKBASalesDocumentText: Record "KVSKBASalesDocumentText"; var IsHandled: Boolean)
begin
end;

Parameters:

  • TempKVSKBAAdvertGroupMember: The temporary advertising group member record.
  • ExtendedTextHeader: The extended text header with filters for the advertising group.
  • SalesHeader: The sales header.
  • KVSKBASalesDocumentText: The target sales document text record.
  • IsHandled: Set to true to skip transfer for this advertising group.

Remarks: Allows selective control over which advertising groups' text is transferred during automatic processing. Use cases: Skip promotional groups for specific customers, apply business rules, modify filters.

OnBeforeTransferExtTextsOfAdvertGroupMemberToPurchaseHeaderManual(Record KVSKBAAdvertGroupMember, Record Extended Text Header, Record Purchase Header, Record KVSKBAPurchaseDocumentText, Boolean) :#

Summary: Integration event for controlling manual transfer of advertising group extended text to purchase header.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferExtTextsOfAdvertGroupMemberToPurchaseHeaderManual(var TempKVSKBAAdvertGroupMember: Record "KVSKBAAdvertGroupMember"; var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var KVSKBAPurchaseDocumentText: Record "KVSKBAPurchaseDocumentText"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeTransferExtTextsOfAdvertGroupMemberToPurchaseHeaderManual', '', false, false)]
local procedure DoSomethingOnBeforeTransferExtTextsOfAdvertGroupMemberToPurchaseHeaderManual(var TempKVSKBAAdvertGroupMember: Record "KVSKBAAdvertGroupMember"; var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var KVSKBAPurchaseDocumentText: Record "KVSKBAPurchaseDocumentText"; var IsHandled: Boolean)
begin
end;

Parameters:

  • TempKVSKBAAdvertGroupMember: The temporary advertising group member record.
  • ExtendedTextHeader: The extended text header with filters for the advertising group.
  • PurchaseHeader: The purchase header.
  • KVSKBAPurchaseDocumentText: The target purchase document text record.
  • IsHandled: Set to true to skip transfer for this advertising group.

Remarks: Allows selective control over which advertising groups' text is transferred to purchase documents during manual copy.

OnBeforeTransferExtTextsOfAdvertGroupMemberToPurchaseHeaderAutomatic(Record KVSKBAAdvertGroupMember, Record Extended Text Header, Record Purchase Header, Record KVSKBAPurchaseDocumentText, Boolean) :#

Summary: Integration event for controlling automatic transfer of advertising group extended text to purchase header.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferExtTextsOfAdvertGroupMemberToPurchaseHeaderAutomatic(var TempKVSKBAAdvertGroupMember: Record "KVSKBAAdvertGroupMember"; var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var KVSKBAPurchaseDocumentText: Record "KVSKBAPurchaseDocumentText"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeTransferExtTextsOfAdvertGroupMemberToPurchaseHeaderAutomatic', '', false, false)]
local procedure DoSomethingOnBeforeTransferExtTextsOfAdvertGroupMemberToPurchaseHeaderAutomatic(var TempKVSKBAAdvertGroupMember: Record "KVSKBAAdvertGroupMember"; var ExtendedTextHeader: Record "Extended Text Header"; PurchaseHeader: Record "Purchase Header"; var KVSKBAPurchaseDocumentText: Record "KVSKBAPurchaseDocumentText"; var IsHandled: Boolean)
begin
end;

Parameters:

  • TempKVSKBAAdvertGroupMember: The temporary advertising group member record.
  • ExtendedTextHeader: The extended text header with filters for the advertising group.
  • PurchaseHeader: The purchase header.
  • KVSKBAPurchaseDocumentText: The target purchase document text record.
  • IsHandled: Set to true to skip transfer for this advertising group.

Remarks: Allows selective control over which advertising groups' text is transferred to purchase documents during automatic processing.

OnBeforeTransferExtTextsOfAdvertGroupMemberToServiceHeaderManual(Record KVSKBAAdvertGroupMember, Record Extended Text Header, Record Service Header, Record KVSKBASrvDocumentText, Boolean) :#

Summary: Integration event for controlling manual transfer of advertising group extended text to service header.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferExtTextsOfAdvertGroupMemberToServiceHeaderManual(var TempKVSKBAAdvertGroupMember: Record "KVSKBAAdvertGroupMember"; var ExtendedTextHeader: Record "Extended Text Header"; ServiceHeader: Record "Service Header"; var KVSKBASrvDocumentText: Record "KVSKBASrvDocumentText"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeTransferExtTextsOfAdvertGroupMemberToServiceHeaderManual', '', false, false)]
local procedure DoSomethingOnBeforeTransferExtTextsOfAdvertGroupMemberToServiceHeaderManual(var TempKVSKBAAdvertGroupMember: Record "KVSKBAAdvertGroupMember"; var ExtendedTextHeader: Record "Extended Text Header"; ServiceHeader: Record "Service Header"; var KVSKBASrvDocumentText: Record "KVSKBASrvDocumentText"; var IsHandled: Boolean)
begin
end;

Parameters:

  • TempKVSKBAAdvertGroupMember: The temporary advertising group member record.
  • ExtendedTextHeader: The extended text header with filters for the advertising group.
  • ServiceHeader: The service header.
  • KVSKBASrvDocumentText: The target service document text record.
  • IsHandled: Set to true to skip transfer for this advertising group.

Remarks: Allows selective control over which advertising groups' text is transferred to service documents during manual copy.

OnBeforeTransferExtTextsOfAdvertGroupMemberToServiceHeaderAutomatic(Record KVSKBAAdvertGroupMember, Record Extended Text Header, Record Service Header, Record KVSKBASrvDocumentText, Boolean) :#

Summary: Integration event for controlling automatic transfer of advertising group extended text to service header.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferExtTextsOfAdvertGroupMemberToServiceHeaderAutomatic(var TempKVSKBAAdvertGroupMember: Record "KVSKBAAdvertGroupMember"; var ExtendedTextHeader: Record "Extended Text Header"; ServiceHeader: Record "Service Header"; var KVSKBASrvDocumentText: Record "KVSKBASrvDocumentText"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeTransferExtTextsOfAdvertGroupMemberToServiceHeaderAutomatic', '', false, false)]
local procedure DoSomethingOnBeforeTransferExtTextsOfAdvertGroupMemberToServiceHeaderAutomatic(var TempKVSKBAAdvertGroupMember: Record "KVSKBAAdvertGroupMember"; var ExtendedTextHeader: Record "Extended Text Header"; ServiceHeader: Record "Service Header"; var KVSKBASrvDocumentText: Record "KVSKBASrvDocumentText"; var IsHandled: Boolean)
begin
end;

Parameters:

  • TempKVSKBAAdvertGroupMember: The temporary advertising group member record.
  • ExtendedTextHeader: The extended text header with filters for the advertising group.
  • ServiceHeader: The service header.
  • KVSKBASrvDocumentText: The target service document text record.
  • IsHandled: Set to true to skip transfer for this advertising group.

Remarks: Allows selective control over which advertising groups' text is transferred to service documents during automatic processing.

OnBeforeTransferExtText2SalesDocText(Record Extended Text Header, Record Sales Header, Record Sales Line) :#

Summary: Integration event raised before transferring extended text to sales document text.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferExtText2SalesDocText(var ExtendedTextHeader: Record "Extended Text Header"; var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeTransferExtText2SalesDocText', '', false, false)]
local procedure DoSomethingOnBeforeTransferExtText2SalesDocText(var ExtendedTextHeader: Record "Extended Text Header"; var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line")
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with filters applied.
  • SalesHeader: The sales header.
  • SalesLine: The sales line (may be empty for header-level text).

Remarks: Allows final modifications to Extended Text Header filters or other preparations before text transfer.

OnBeforeTransferExtText2PurchDocText(Record Extended Text Header, Record Purchase Header, Record Purchase Line) :#

Summary: Integration event raised before transferring extended text to purchase document text.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferExtText2PurchDocText(var ExtendedTextHeader: Record "Extended Text Header"; var PurchaseHeader: Record "Purchase Header"; var PurchaseLine: Record "Purchase Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeTransferExtText2PurchDocText', '', false, false)]
local procedure DoSomethingOnBeforeTransferExtText2PurchDocText(var ExtendedTextHeader: Record "Extended Text Header"; var PurchaseHeader: Record "Purchase Header"; var PurchaseLine: Record "Purchase Line")
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with filters applied.
  • PurchaseHeader: The purchase header.
  • PurchaseLine: The purchase line (may be empty for header-level text).

Remarks: Allows final modifications to Extended Text Header filters or other preparations before text transfer.

OnBeforeTransferExtText2ServContractText(Record Extended Text Header, Record Service Contract Header, Record Service Contract Line) :#

Summary: Integration event raised before transferring extended text to service contract text.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferExtText2ServContractText(var ExtendedTextHeader: Record "Extended Text Header"; var ServiceContractHeader: Record "Service Contract Header"; var ServiceContractLine: Record "Service Contract Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeTransferExtText2ServContractText', '', false, false)]
local procedure DoSomethingOnBeforeTransferExtText2ServContractText(var ExtendedTextHeader: Record "Extended Text Header"; var ServiceContractHeader: Record "Service Contract Header"; var ServiceContractLine: Record "Service Contract Line")
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with filters applied.
  • ServiceContractHeader: The service contract header.
  • ServiceContractLine: The service contract line (may be empty for header-level text).

Remarks: Allows final modifications to Extended Text Header filters or other preparations before text transfer.

OnBeforeAutomLineTypeNo2ServiceDocText(Record Service Line, Boolean) :#

Summary: Integration event raised before automatically copying extended text from service line to service document text.

[IntegrationEvent(false, false)]
local procedure OnBeforeAutomLineTypeNo2ServiceDocText(ServiceLine: Record "Service Line"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeAutomLineTypeNo2ServiceDocText', '', false, false)]
local procedure DoSomethingOnBeforeAutomLineTypeNo2ServiceDocText(ServiceLine: Record "Service Line"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ServiceLine: The service line for which extended text is being processed.
  • IsHandled: Set to true to skip default extended text processing.

Remarks: Allows override of automatic extended text processing for service lines.

OnBeforeAutomItemLineTypeNo2ServiceDocText(Record Service Item Line, Boolean) :#

Summary: Integration event raised before automatically copying extended text from service item line to service document text.

[IntegrationEvent(false, false)]
local procedure OnBeforeAutomItemLineTypeNo2ServiceDocText(ServiceItemLine: Record "Service Item Line"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeAutomItemLineTypeNo2ServiceDocText', '', false, false)]
local procedure DoSomethingOnBeforeAutomItemLineTypeNo2ServiceDocText(ServiceItemLine: Record "Service Item Line"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ServiceItemLine: The service item line for which extended text is being processed.
  • IsHandled: Set to true to skip default extended text processing.

Remarks: Allows override of automatic extended text processing for service item lines.

OnBeforeSingleAutomLineTypeNo2ServiceDocText(Record Service Line, Record Service Header, Enum KVSKBATextPosition, Boolean) :#

Summary: Integration event raised before automatically copying service line extended text to service document text for a specific position.

[IntegrationEvent(false, false)]
local procedure OnBeforeSingleAutomLineTypeNo2ServiceDocText(ServiceLine: Record "Service Line"; ServiceHeader: Record "Service Header"; TextPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeSingleAutomLineTypeNo2ServiceDocText', '', false, false)]
local procedure DoSomethingOnBeforeSingleAutomLineTypeNo2ServiceDocText(ServiceLine: Record "Service Line"; ServiceHeader: Record "Service Header"; TextPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ServiceLine: The service line for which extended text is being processed.
  • ServiceHeader: The parent service header.
  • TextPosition: The text position being processed.
  • IsHandled: Set to true to skip default processing for this position.

Remarks: Allows position-level control over service line extended text transfer.

OnBeforeTransferExtText2ServiceDocText(Record Extended Text Header, Record Service Header, Record Service Line) :#

Summary: Integration event raised before transferring extended text to service document text.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferExtText2ServiceDocText(var ExtendedTextHeader: Record "Extended Text Header"; ServiceHeader: Record "Service Header"; ServiceLine: Record "Service Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeTransferExtText2ServiceDocText', '', false, false)]
local procedure DoSomethingOnBeforeTransferExtText2ServiceDocText(var ExtendedTextHeader: Record "Extended Text Header"; ServiceHeader: Record "Service Header"; ServiceLine: Record "Service Line")
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with filters applied.
  • ServiceHeader: The service header.
  • ServiceLine: The service line (may be empty for header or item line text).

Remarks: Allows final modifications to Extended Text Header filters or other preparations before text transfer.

OnBeforeSingleAutomItemLineTypeNo2ServiceDocText(Record Service Item Line, Record Service Header, Enum KVSKBATextPosition, Boolean) :#

Summary: Integration event raised before automatically copying service item line extended text to service document text for a specific position.

[IntegrationEvent(false, false)]
local procedure OnBeforeSingleAutomItemLineTypeNo2ServiceDocText(ServiceItemLine: Record "Service Item Line"; ServiceHeader: Record "Service Header"; TextPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeSingleAutomItemLineTypeNo2ServiceDocText', '', false, false)]
local procedure DoSomethingOnBeforeSingleAutomItemLineTypeNo2ServiceDocText(ServiceItemLine: Record "Service Item Line"; ServiceHeader: Record "Service Header"; TextPosition: Enum "KVSKBATextPosition"; var IsHandled: Boolean)
begin
end;

Parameters:

  • ServiceItemLine: The service item line for which extended text is being processed.
  • ServiceHeader: The parent service header.
  • TextPosition: The text position being processed.
  • IsHandled: Set to true to skip default processing for this position.

Remarks: Allows position-level control over service item line extended text transfer.

OnBeforeTransferExtText2ServiceItemDocText(Record Extended Text Header, Record Service Header, Record Service Item Line) :#

Summary: Integration event raised before transferring extended text from service item line to service document text.

[IntegrationEvent(false, false)]
local procedure OnBeforeTransferExtText2ServiceItemDocText(var ExtendedTextHeader: Record "Extended Text Header"; ServiceHeader: Record "Service Header"; ServiceItemLine: Record "Service Item Line"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBATransferExtendedText", 'OnBeforeTransferExtText2ServiceItemDocText', '', false, false)]
local procedure DoSomethingOnBeforeTransferExtText2ServiceItemDocText(var ExtendedTextHeader: Record "Extended Text Header"; ServiceHeader: Record "Service Header"; ServiceItemLine: Record "Service Item Line")
begin
end;

Parameters:

  • ExtendedTextHeader: The extended text header with filters applied.
  • ServiceHeader: The service header.
  • ServiceItemLine: The service item line.

Remarks: Allows final modifications to Extended Text Header filters specifically for service item line text transfer.