Class: Quickbooks::Model::Line

Inherits:
BaseModel show all
Defined in:
lib/quickbooks/model/line.rb

Constant Summary collapse

SALES_LINE_ITEM_DETAIL =

Constants

'SalesItemLineDetail'
SUB_TOTAL_LINE_DETAIL =
'SubTotalLineDetail'
PAYMENT_LINE_DETAIL =
'PaymentLineDetail'
DISCOUNT_LINE_DETAIL =
'DiscountLineDetail'
JOURNAL_ENTRY_LINE_DETAIL =
'JournalEntryLineDetail'

Instance Method Summary collapse

Methods inherited from BaseModel

attribute_names, #attributes, attrs_with_types, #ensure_line_items_initialization, #inspect, inspect, reference_setters, resource_for_collection, resource_for_singular, to_xml_big_decimal, #to_xml_inject_ns, #to_xml_ns

Methods included from Validator

#line_item_size

Constructor Details

#initialize(*args) ⇒ Line

Returns a new instance of Line.



25
26
27
28
# File 'lib/quickbooks/model/line.rb', line 25

def initialize(*args)
  self.linked_transactions ||= []
  super
end

Instance Method Details

#credit_memo_id=(id) ⇒ Object Also known as: credit_memo_ids=



35
36
37
# File 'lib/quickbooks/model/line.rb', line 35

def credit_memo_id=(id)
  update_linked_transactions([id], 'CreditMemo')
end

#invoice_id=(id) ⇒ Object Also known as: invoice_ids=



30
31
32
# File 'lib/quickbooks/model/line.rb', line 30

def invoice_id=(id)
  update_linked_transactions([id], 'Invoice')
end

#sales_item! {|self.sales_item_line_detail| ... } ⇒ Object

Yields:

  • (self.sales_item_line_detail)


40
41
42
43
44
45
# File 'lib/quickbooks/model/line.rb', line 40

def sales_item!
  self.detail_type = SALES_LINE_ITEM_DETAIL
  self.sales_item_line_detail = SalesItemLineDetail.new

  yield self.sales_item_line_detail if block_given?
end