class Eddy::Models::FunctionalGroup
A group of `Eddy::Models::TransactionSet::Base` classes.
Attributes
control_number[RW]
A unique control number for the Functional Group. @return [Integer]
id[R]
@return [String]
store[RW]
Data
store for the Interchange
and all encompassed components. @return [Eddy::Data::Store]
transaction_sets[RW]
An array of Transaction Set instances. @return [Array<Eddy::Models::TransactionSet>]
Public Class Methods
new(store, control_number, *transaction_sets)
click to toggle source
@param store [Eddy::Data::Store] @param control_number
[Integer] @param transaction_sets
[Eddy::Models::TransactionSet] @return [void]
# File lib/eddy/models/functional_group.rb, line 22 def initialize(store, control_number, *transaction_sets) self.store = store self.control_number = control_number transaction_sets.flatten! self.transaction_sets = transaction_sets || [] if self.transaction_sets.length == 0 raise ArgumentError, "At least one transaction set is required to create a functional group" end @id = self.transaction_sets.first.functional_group end
Public Instance Methods
render()
click to toggle source
@return [Array<#render>]
# File lib/eddy/models/functional_group.rb, line 34 def render() gs = Eddy::Segments::GS.new(self.store, self.control_number, @id) ge = Eddy::Segments::GE.new(self.store, self.control_number, self.transaction_sets.length) return [gs, self.transaction_sets, ge].flatten.map(&:render) end