Skip to main content

InterchangeHeader

Struct InterchangeHeader 

Source
pub struct InterchangeHeader {
    pub sender_id: Box<str>,
    pub sender_qualifier: Box<str>,
    pub receiver_id: Box<str>,
    pub receiver_qualifier: Box<str>,
    pub transmission_datetime: Option<OffsetDateTime>,
    pub control_ref: Box<str>,
    pub syntax_id: Box<str>,
    pub syntax_version: u8,
    pub test_indicator: bool,
}
Expand description

Parsed UNB interchange envelope header fields.

All fields come from the UNB segment of the EDIFACT interchange. Use these for routing, acknowledgement generation, and audit logging.

Fields§

§sender_id: Box<str>

Sender identification (UNB S002, DE 0004 — e.g. a 13-digit GLN).

§sender_qualifier: Box<str>

Sender qualifier (UNB S002, DE 0007 — e.g. "14" for GS1 GLN).

§receiver_id: Box<str>

Recipient identification (UNB S003, DE 0010 — e.g. a 13-digit GLN).

§receiver_qualifier: Box<str>

Recipient qualifier (UNB S003, DE 0007).

§transmission_datetime: Option<OffsetDateTime>

Preparation date+time from UNB S004 (DE 0017 + DE 0019).

None when the UNB date/time fields are absent or malformed.

§control_ref: Box<str>

Interchange control reference (UNB DE 0020).

§syntax_id: Box<str>

EDIFACT syntax identifier from UNB S001 (DE 0001 — e.g. "UNOC").

§syntax_version: u8

EDIFACT syntax version number from UNB S001 (DE 0002 — e.g. 3).

§test_indicator: bool

Test indicator from UNB DE 0035.

true when DE 0035 is "1". Per Allgemeine Festlegungen V6.1d §3, interchanges with the test flag must not be processed as production messages. Reject at the ingest boundary and record a dead-letter entry.

Implementations§

Source§

impl InterchangeHeader

Source

pub fn transmission_date(&self) -> Option<Date>

Extract the transmission date component only.

Returns None when transmission_datetime is None.

Trait Implementations§

Source§

impl Clone for InterchangeHeader

Source§

fn clone(&self) -> InterchangeHeader

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for InterchangeHeader

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.