Skip to content

KVSEDX GS1 BMS Manangement#

Procedures#

OnRun#

procedure OnRun(Rec: Record "KVSEDX Inbound")

AddAttributeValuePair(XmlElement, Text, Variant) : XmlElement#

Summary: Adds an AttributeValuePair to the avpList from Variant

procedure AddAttributeValuePair(var GS1avpListXmlElement: XmlElement; AttributeName: Text; ValueVariant: Variant): XmlElement

Parameters:

  • GS1avpListXmlElement: avp List
  • AttributeName: Attribute Name
  • ValueVariant: Value as Variant

Returns: Created XmlElement

Events#

OnMapFieldValue(RecordRef, FieldRef, Text, Text, Text, Enum KVSEDX Channel, Boolean) :#

Summary: The event is fired when the value of a field needs to be mapped. If it is an outbound mapping (see Direction), the current value of the field can be queried via SourceFieldRef.Value. The mapped value is returned with MappedFieldValue. In the case of inbound mapping, the incoming value can be queried with XmlNodeInnerText. The mapped value is returned with MappedFieldValue.

[IntegrationEvent(true, false)]
local procedure OnMapFieldValue(SourceRecordRef: RecordRef; SourceFieldRef: FieldRef; XmlNodeName: Text; SourceValue: Text; var MappedValue: Text; Direction: Enum "KVSEDX Channel"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSEDX GS1 BMS Manangement", 'OnMapFieldValue', '', false, false)]
local procedure DoSomethingOnMapFieldValue(SourceRecordRef: RecordRef; SourceFieldRef: FieldRef; XmlNodeName: Text; SourceValue: Text; var MappedValue: Text; Direction: Enum "KVSEDX Channel"; var IsHandled: Boolean)
begin
end;

Parameters:

  • SourceRecordRef: Current RecordRef
  • SourceFieldRef: Current FieldRef
  • XmlNodeName: Name of the XmlNode
  • SourceValue: Source Value
  • MappedValue: Mapped Value
  • Direction: Message Direction In-/Outbound
  • IsHandled: true if MappedValue is set

OnPreXMLPartyData(RecordId, XmlElement, Record KVSEDX Outbound, Boolean) :#

Summary: The OnPreXMLPartyData event is fired when the avpList (Attribute Value Pair List) is created for the party. Project-related additional data can be transmitted.

[IntegrationEvent(true, false)]
local procedure OnPreXMLPartyData(SourceRecordId: RecordId; var PartyXmlElement: XmlElement; var TempKVSEDXOutbound: Record "KVSEDX Outbound" temporary; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSEDX GS1 BMS Manangement", 'OnPreXMLPartyData', '', false, false)]
local procedure DoSomethingOnPreXMLPartyData(SourceRecordId: RecordId; var PartyXmlElement: XmlElement; var TempKVSEDXOutbound: Record "KVSEDX Outbound" temporary; var IsHandled: Boolean)
begin
end;

Parameters:

  • SourceRecordId: Source Record Purchase Header, Sales Header..
  • PartyXmlElement: XmlElement for the Party Seller, Buyer...
  • TempKVSEDXOutbound: Dynamic Data
  • IsHandled: Is Handled

OnPreXMLTransactionalTradeItemData(RecordId, XmlElement, Record KVSEDX Outbound, Boolean) :#

Summary: The OnPreXMLPartyData event is fired when the avpList (Attribute Value Pair List) is created for the party. Project-related additional data can be transmitted.

[IntegrationEvent(true, false)]
local procedure OnPreXMLTransactionalTradeItemData(SourceRecordId: RecordId; var TransactionalTradeItemXmlElement: XmlElement; var TempKVSEDXOutbound: Record "KVSEDX Outbound" temporary; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSEDX GS1 BMS Manangement", 'OnPreXMLTransactionalTradeItemData', '', false, false)]
local procedure DoSomethingOnPreXMLTransactionalTradeItemData(SourceRecordId: RecordId; var TransactionalTradeItemXmlElement: XmlElement; var TempKVSEDXOutbound: Record "KVSEDX Outbound" temporary; var IsHandled: Boolean)
begin
end;

Parameters:

  • SourceRecordId: Source Record Purchase Header, Sales Header..
  • TransactionalTradeItemXmlElement: XmlElement for the TransactionalTradeItem XmlElement
  • TempKVSEDXOutbound: Dynamic Data
  • IsHandled: Is Handled

OnGS1Process_ApplicationReceiptAcknowledgementMessage(RecordId, Text, XmlNodeList, Boolean) :#

Summary: Integration event fired when processing a GS1 Application Receipt Acknowledgement message. This event allows subscribers to implement custom handling of receipt acknowledgement messages and error processing. Use this event to implement custom business logic for handling document confirmations, rejections, or error responses.

[IntegrationEvent(true, false)]
local procedure OnGS1Process_ApplicationReceiptAcknowledgementMessage(ParRecordID: RecordId; ParapplicationResponseStatusCode: Text; ParXmlNodeListErrors: XmlNodeList; ParHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSEDX GS1 BMS Manangement", 'OnGS1Process_ApplicationReceiptAcknowledgementMessage', '', false, false)]
local procedure DoSomethingOnGS1Process_ApplicationReceiptAcknowledgementMessage(ParRecordID: RecordId; ParapplicationResponseStatusCode: Text; ParXmlNodeListErrors: XmlNodeList; ParHandled: Boolean)
begin
end;

Parameters:

  • ParRecordID: The RecordId of the source document that received the acknowledgement
  • ParapplicationResponseStatusCode: The application response status code (e.g., ACCEPTED, REJECTED, RECEIVED)
  • ParXmlNodeListErrors: XML node list containing any error information from the acknowledgement
  • ParHandled: Set to true if the subscriber has handled the acknowledgement processing

OnGS1Process_ApplicationReceiptAcknowledgementMessageV2(RecordId, XmlElement, Boolean) :#

Summary: Integration event fired when processing a GS1 Application Receipt Acknowledgement message (Version 2). This enhanced version provides access to the complete XML root element for more comprehensive processing. Use this event to implement advanced custom handling of receipt acknowledgements with full XML document access.

[IntegrationEvent(true, false)]
local procedure OnGS1Process_ApplicationReceiptAcknowledgementMessageV2(ParRecordID: RecordId; ParXmlRootElement: XmlElement; ParHandled: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSEDX GS1 BMS Manangement", 'OnGS1Process_ApplicationReceiptAcknowledgementMessageV2', '', false, false)]
local procedure DoSomethingOnGS1Process_ApplicationReceiptAcknowledgementMessageV2(ParRecordID: RecordId; ParXmlRootElement: XmlElement; ParHandled: Boolean)
begin
end;

Parameters:

  • ParRecordID: The RecordId of the source document that received the acknowledgement
  • ParXmlRootElement: The complete XML root element of the acknowledgement message for detailed processing
  • ParHandled: Set to true if the subscriber has handled the acknowledgement processing