Sha256: b28c3d927e83767644c095c9f2fbc10428256635253357316caf15750c40163b

Contents?: true

Size: 922 Bytes

Versions: 3

Compression:

Stored size: 922 Bytes

Contents

module QbIif::DSL
  class Trns < Base
    HEADER_COLUMNS = [
      :trnsid,
      :trnstype,
      :date,
      :accnt,
      :name,
      :class,
      :amount,
      :docnum,
      :memo,
      :clear,
      :toprint,
      :addr1,
      :addr2,
      :addr3,
      :addr4,
      :addr5,
      :saddr1,
      :saddr2,
      :saddr3,
      :saddr4,
      :saddr5,
      :duedate,
      :terms,
      :paid,
      :paymeth,
      :shipdate,
      :rep,
      :ponum,
      :invtitle,
      :invmemo
    ]
    START_COLUMN = 'TRNS'
    END_COLUMN = 'ENDTRNS'

    def headers
      [
        ["!#{START_COLUMN}"].concat(HEADER_COLUMNS.map(&:upcase)),
        ["!SPL"].concat(Spl::HEADER_COLUMNS.map(&:upcase)),
        ["!#{END_COLUMN}"]
      ]
    end

    def rows
      @rows << [END_COLUMN]
    end

    def spl(&block)
      Spl.new.build(&block)[:rows].each do |row|
        @rows << row
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
qb_iif-0.1.2 lib/qb_iif/dsl/trns.rb
qb_iif-0.1.1 lib/qb_iif/dsl/trns.rb
qb_iif-0.1.0 lib/qb_iif/dsl/trns.rb