netsuite 0.8.1 → 0.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d4bb44590fe53e0928b8a73374fe80b794ed3395
4
- data.tar.gz: c868924983bf5cdef3b8c831d577cef5f6d73ced
3
+ metadata.gz: 797165a82ff004915fd35446c562b168fef1d8a8
4
+ data.tar.gz: 361bb3b3119d401e475df8c89e32a4c943b4f3eb
5
5
  SHA512:
6
- metadata.gz: 1808362014a5493c6a5ef4fd513ce3e1041c1f6afcde57323f46be0daf2d7b8f1e22675637a4c08e7c2ac601a287914e2330251e8f8a66ac636859ca5917e95e
7
- data.tar.gz: bcf26630f116004671779737e434c6e46d5c33bfb2d283b189e46cc88d620fad567d9b97783e0b65c0f7b7c20d6b5cf9860537a27f9cc3dba4208fa3a44274de
6
+ metadata.gz: c91ea28fb5fe26b22bfb01fa5db2006cc18cfe7c2a6957cfe87d3b08b2a734ea091bbfccd2f430eb1ceb7cc8f95c809f67feb451c4ae7681c4f4de236e752fec
7
+ data.tar.gz: 5d70ad8c9b507230a4f2a7db2a114eb15ea92d46801d84d89de7b002adf1f65f75e4698f869ddb6a59b570a994896b15b42ce90088e78548850581a46e0670ec
@@ -1 +1 @@
1
- 2.4.0
1
+ 2.3.0
data/README.md CHANGED
@@ -70,6 +70,11 @@ NetSuite.configure do
70
70
  password 'password'
71
71
  account '12345'
72
72
  role 1111
73
+
74
+ # optional, ensures that read-only fields don't cause API errors
75
+ soap_header 'platformMsgs:preferences' => {
76
+ 'platformMsgs:ignoreReadOnlyFields' => true,
77
+ }
73
78
  end
74
79
  ```
75
80
 
@@ -80,6 +80,7 @@ module NetSuite
80
80
  autoload :BillingScheduleMilestoneList, 'netsuite/records/billing_schedule_milestone_list'
81
81
  autoload :BillingScheduleRecurrence, 'netsuite/records/billing_schedule_recurrence'
82
82
  autoload :BillingScheduleRecurrenceList, 'netsuite/records/billing_schedule_recurrence_list'
83
+ autoload :Bin, 'netsuite/records/bin'
83
84
  autoload :BinNumberList, 'netsuite/records/bin_number_list'
84
85
  autoload :CashSale, 'netsuite/records/cash_sale'
85
86
  autoload :CashSaleItem, 'netsuite/records/cash_sale_item'
@@ -123,6 +124,8 @@ module NetSuite
123
124
  autoload :CustomerPartner, 'netsuite/records/customer_partner'
124
125
  autoload :ContactList, 'netsuite/records/contact_list'
125
126
  autoload :Contact, 'netsuite/records/contact'
127
+ autoload :ContactAddressbook, 'netsuite/records/contact_addressbook'
128
+ autoload :ContactAddressbookList, 'netsuite/records/contact_addressbook_list'
126
129
  autoload :ContactRole, 'netsuite/records/contact_role'
127
130
  autoload :ContactAccessRoles, 'netsuite/records/contact_access_roles'
128
131
  autoload :ContactAccessRolesList, 'netsuite/records/contact_access_roles_list'
@@ -184,6 +187,7 @@ module NetSuite
184
187
  autoload :KitItem, 'netsuite/records/kit_item'
185
188
  autoload :Location, 'netsuite/records/location'
186
189
  autoload :LocationsList, 'netsuite/records/locations_list'
190
+ autoload :LotNumberedAssemblyItem, 'netsuite/records/lot_numbered_assembly_item'
187
191
  autoload :MatrixOptionList, 'netsuite/records/matrix_option_list'
188
192
  autoload :MemberList, 'netsuite/records/member_list'
189
193
  autoload :NonInventorySaleItem, 'netsuite/records/non_inventory_sale_item'
@@ -27,10 +27,14 @@ module NetSuite
27
27
  # </platformCore:wsRoleList>
28
28
 
29
29
  def self.call(credentials)
30
- passport = NetSuite::Configuration.auth_header(credentials).dup
30
+ passport = NetSuite::Configuration.auth_header.dup
31
+ passport['platformMsgs:passport']['platformCore:email'] = credentials[:email] || ''
32
+ passport['platformMsgs:passport']['platformCore:password'] = credentials[:password] || ''
33
+ passport['platformMsgs:passport']['platformCore:role'] = credentials[:role] || ''
34
+ passport['platformMsgs:passport']['platformCore:account'] = credentials[:account] if !credentials[:account].nil?
31
35
 
32
36
  begin
33
- response = NetSuite::Configuration.connection(soap_header: {}).call(:login, message: passport)
37
+ response = NetSuite::Configuration.connection(soap_header: {}).call :login, message: passport
34
38
  rescue Savon::SOAPFault => e
35
39
  error_details = e.to_hash[:fault]
36
40
 
@@ -11,5 +11,7 @@ module NetSuite
11
11
  @code = args[:code]
12
12
  @message = args[:message]
13
13
  end
14
+
15
+ alias_method :to_s, :inspect
14
16
  end
15
17
  end
@@ -19,7 +19,7 @@ module NetSuite
19
19
  'platformCore:token' => token_id,
20
20
  'platformCore:nonce' => nonce,
21
21
  'platformCore:timestamp' => timestamp,
22
- 'platformCore:signature' => signature.strip,
22
+ 'platformCore:signature' => signature,
23
23
  :attributes! => { 'platformCore:signature' => { 'algorithm' => 'HMAC-SHA256' } }
24
24
  }
25
25
  }
@@ -11,7 +11,6 @@ module NetSuite
11
11
 
12
12
  fields :alt_handling_cost,
13
13
  :alt_shipping_cost,
14
- :billing_address,
15
14
  :cc_approved,
16
15
  :cc_expire_date,
17
16
  :cc_is_purchase_card_bin,
@@ -78,6 +77,9 @@ module NetSuite
78
77
  :vat_reg_num,
79
78
  :vsoe_auto_calc
80
79
 
80
+ # NOTE only `Address` record in >= 2014_2
81
+ field :billing_address, Address
82
+
81
83
  field :item_list, CashRefundItemList
82
84
  field :custom_field_list, CustomFieldList
83
85
  # partnersList CashRefundPartnersList
@@ -13,7 +13,7 @@ module NetSuite
13
13
  :entity_id, :phonetic_name, :alt_email, :office_phone, :home_phone, :mobile_phone, :supervisor_phone,
14
14
  :assistant_phone, :comments, :bill_pay, :is_private, :is_inactive
15
15
 
16
- field :addressbook_list, CustomerAddressbookList
16
+ field :addressbook_list, ContactAddressbookList
17
17
  field :custom_field_list, CustomFieldList
18
18
  # field :subscriptions_list, SubscriptionsList
19
19
  # field :category_list, CategoryList
@@ -24,6 +24,7 @@ module NetSuite
24
24
 
25
25
  attr_reader :internal_id
26
26
  attr_accessor :external_id
27
+ attr_accessor :search_joins
27
28
 
28
29
  def initialize(attributes = {})
29
30
  @internal_id = attributes.delete(:internal_id) || attributes.delete(:@internal_id)
@@ -0,0 +1,64 @@
1
+ module NetSuite
2
+ module Records
3
+ class ContactAddressbook
4
+ include Support::Fields
5
+ include Support::Records
6
+ include Namespaces::ListRel
7
+
8
+ # address implementation changed
9
+ # https://github.com/NetSweet/netsuite/pull/213
10
+
11
+ # https://system.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2015_1/schema/other/customeraddressbook.html?mode=package
12
+
13
+ fields :default_shipping, :default_billing, :is_residential, :label, :internal_id
14
+
15
+ # NOTE API < 2014_2
16
+ fields :attention, :addressee, :phone, :addr1, :addr2, :addr3, :city, :zip, :override, :state
17
+ field :country, NetSuite::Support::Country
18
+ read_only_fields :addr_text
19
+
20
+ # NOTE API >= 2014_2
21
+ field :addressbook_address, NetSuite::Records::Address
22
+
23
+ def initialize(attributes_or_record = {})
24
+ case attributes_or_record
25
+ when self.class
26
+ initialize_from_record(attributes_or_record)
27
+ when Hash
28
+ attributes_or_record = attributes_or_record[:addressbook] if attributes_or_record[:addressbook]
29
+ initialize_from_attributes_hash(attributes_or_record)
30
+ end
31
+ end
32
+
33
+ def initialize_from_record(obj)
34
+ if NetSuite::Configuration.api_version < "2014_2"
35
+ self.default_shipping = obj.default_shipping
36
+ self.default_billing = obj.default_billing
37
+ self.is_residential = obj.is_residential
38
+ self.label = obj.label
39
+ self.attention = obj.attention
40
+ self.addressee = obj.addressee
41
+ self.phone = obj.phone
42
+ self.addr1 = obj.addr1
43
+ self.addr2 = obj.addr2
44
+ self.addr3 = obj.addr3
45
+ self.city = obj.city
46
+ self.zip = obj.zip
47
+ self.country = obj.country
48
+ self.addr_text = obj.addr_text
49
+ self.override = obj.override
50
+ self.state = obj.state
51
+ self.internal_id = obj.internal_id
52
+ else
53
+ self.addressbook_address = obj.addressbook_address
54
+ self.default_billing = obj.default_billing
55
+ self.default_shipping = obj.default_shipping
56
+ self.internal_id = obj.internal_id
57
+ self.is_residential = obj.is_residential
58
+ self.label = obj.label
59
+ end
60
+ end
61
+
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,11 @@
1
+ module NetSuite
2
+ module Records
3
+ class ContactAddressbookList < Support::Sublist
4
+ include Namespaces::ListRel
5
+
6
+ sublist :addressbook, ContactAddressbook
7
+
8
+ alias :addressbooks :addressbook
9
+ end
10
+ end
11
+ end
@@ -11,7 +11,7 @@ module NetSuite
11
11
 
12
12
  actions :get, :get_list, :add, :update, :upsert, :upsert_list, :delete, :search
13
13
 
14
- fields :phone, :first_name, :last_name, :is_inactive, :email, :give_access, :send_email, :is_support_rep,
14
+ fields :alt_name, :phone, :first_name, :last_name, :is_inactive, :email, :give_access, :send_email, :is_support_rep,
15
15
  :birth_date, :hire_date, :last_review_date, :next_review_date, :title, :home_phone, :office_phone,
16
16
  :eligible_for_commission, :is_sales_rep, :klass, :middle_name, :account_number, :alien_number, :approval_limit,
17
17
  :bill_pay, :comments, :date_created, :direct_deposit, :entity_id, :password, :password2,
@@ -15,7 +15,7 @@ module NetSuite
15
15
  field :custom_field_list, CustomFieldList
16
16
 
17
17
  record_refs :account, :adj_location, :customer, :posting_period, :location, :department,
18
- :subsidiary, :custom_form
18
+ :subsidiary, :custom_form, :klass
19
19
 
20
20
  attr_reader :internal_id
21
21
  attr_accessor :external_id
@@ -11,7 +11,7 @@ module NetSuite
11
11
 
12
12
  field :inventory_detail, InventoryDetail
13
13
 
14
- record_refs :item, :units, :location
14
+ record_refs :item, :units, :location, :department, :klass
15
15
 
16
16
  def initialize(attributes = {})
17
17
  initialize_from_attributes_hash(attributes)
@@ -65,7 +65,7 @@ module NetSuite
65
65
  field :member_list, MemberList
66
66
 
67
67
  attr_reader :internal_id
68
- attr_accessor :external_id
68
+ attr_accessor :external_id, :search_joins
69
69
 
70
70
  def initialize(attributes = {})
71
71
  @internal_id = attributes.delete(:internal_id) || attributes.delete(:@internal_id)
@@ -0,0 +1,64 @@
1
+ module NetSuite
2
+ module Records
3
+ class LotNumberedAssemblyItem
4
+ include Support::Fields
5
+ include Support::RecordRefs
6
+ include Support::Records
7
+ include Support::Actions
8
+ include Namespaces::ListAcct
9
+
10
+ actions :get, :get_list, :get_select_value, :add, :delete, :update, :upsert, :upsert_list, :search
11
+
12
+ fields :auto_lead_time, :auto_preferred_stock_level, :auto_reorder_point, :available_to_partners, :average_cost, :build_entire_assembly,
13
+ :copy_description, :cost, :cost_estimate, :cost_estimate_type, :cost_estimate_units, :cost_units, :costing_method,
14
+ :costing_method_display, :country_of_manufacture, :created_date, :currency, :date_converted_to_inv, :description,
15
+ :default_return_cost, :demand_modifier, :display_name, :dont_show_price, :enforce_min_qty_internally,
16
+ :exclude_from_sitemap, :expiration_date, :featured_description, :fixed_lot_size, :handling_cost, :handling_cost_units, :include_children,
17
+ :is_donation_item, :is_drop_ship_item, :is_gco_compliant, :is_inactive, :is_online, :is_special_order_item, :is_special_work_order_item, :is_taxable,
18
+ :item_id, :last_modified_date, :last_purchase_price, :lead_time, :manufacturer, :manufacturer_addr1, :manufacturer_city,
19
+ :manufacturer_state, :manufacturer_tariff, :manufacturer_tax_id, :manufacturer_zip, :match_bill_to_receipt,
20
+ :matrix_type, :max_donation_amount, :meta_tag_html, :minimum_quantity, :minimum_quantity_units, :mpn,
21
+ :mult_manufacture_addr, :nex_tag_category, :no_price_message, :offer_support, :on_hand_value_mli, :on_special,
22
+ :original_item_subtype, :original_item_type, :out_of_stock_behavior, :out_of_stock_message,
23
+ :overall_quantity_pricing_type, :page_title, :preference_criterion, :preferred_stock_level, :preferred_stock_level_days,
24
+ :preferred_stock_level_units, :prices_include_tax, :producer, :purchase_description, :quantity_available,
25
+ :quantity_available_units, :quantity_back_ordered, :quantity_committed, :quantity_committed_units, :quantity_on_hand,
26
+ :quantity_on_hand_units, :quantity_on_order, :quantity_on_order_units, :quantity_reorder_units, :rate,
27
+ :related_items_description, :reorder_multiple, :reorder_point, :reorder_point_units, :safety_stock_level,
28
+ :safety_stock_level_days, :safety_stock_level_units, :sales_description, :schedule_b_code, :schedule_b_number,
29
+ :schedule_b_quantity, :search_keywords, :seasonal_demand, :ship_individually, :shipping_cost, :shipping_cost_units,
30
+ :shopping_dot_com_category, :shopzilla_category_id, :show_default_donation_amount, :sitemap_priority,
31
+ :specials_description, :stock_description, :store_description, :store_detailed_description, :store_display_name,
32
+ :total_value, :track_landed_cost, :transfer_price, :upc_code, :url_component, :use_bins, :use_marginal_rates,
33
+ :vendor_name, :vsoe_deferral, :vsoe_delivered, :vsoe_permit_discount, :vsoe_price, :weight, :weight_unit, :weight_units
34
+
35
+ record_refs :alternate_demand_source_item, :asset_account, :bill_exch_rate_variance_acct, :bill_price_variance_acct,
36
+ :bill_qty_variance_acct, :billing_schedule, :cogs_account, :cost_category, :custom_form, :deferred_revenue_account,
37
+ :demand_source, :department, :expense_account, :gain_loss_account, :income_account, :issue_product, :klass, :location,
38
+ :parent, :preferred_location, :pricing_group, :purchase_price_variance_acct, :purchase_tax_code, :purchase_unit,
39
+ :quantity_pricing_schedule, :rev_rec_schedule, :sale_unit, :sales_tax_code, :ship_package, :soft_descriptor,
40
+ :stock_unit, :store_display_image, :store_display_thumbnail, :store_item_template, :supply_lot_sizing_method,
41
+ :supply_replenishment_method, :supply_type, :tax_schedule, :units_type, :vendor
42
+
43
+ field :custom_field_list, CustomFieldList
44
+ field :bin_number_list, BinNumberList
45
+ field :item_vendor_list, ItemVendorList
46
+ field :pricing_matrix, PricingMatrix
47
+ field :member_list, MemberList
48
+ field :subsidiary_list, RecordRefList
49
+
50
+ attr_reader :internal_id
51
+ attr_accessor :external_id
52
+
53
+ def initialize(attributes = {})
54
+ @internal_id = attributes.delete(:internal_id) || attributes.delete(:@internal_id)
55
+ @external_id = attributes.delete(:external_id) || attributes.delete(:@external_id)
56
+ initialize_from_attributes_hash(attributes)
57
+ end
58
+
59
+ def self.search_class_name
60
+ "Item"
61
+ end
62
+ end
63
+ end
64
+ end
@@ -37,6 +37,7 @@ module NetSuite
37
37
 
38
38
  attr_reader :internal_id
39
39
  attr_accessor :external_id
40
+ attr_accessor :search_joins
40
41
 
41
42
  def initialize(attributes = {})
42
43
  @internal_id = attributes.delete(:internal_id) || attributes.delete(:@internal_id)
@@ -34,6 +34,7 @@ module NetSuite
34
34
 
35
35
  attr_reader :internal_id
36
36
  attr_accessor :external_id
37
+ attr_accessor :search_joins
37
38
 
38
39
  def initialize(attributes = {})
39
40
  @internal_id = attributes.delete(:internal_id) || attributes.delete(:@internal_id)
@@ -11,9 +11,10 @@ module NetSuite
11
11
 
12
12
  fields :title, :send_email, :message, :status, :access_level, :reminder_type,
13
13
  :reminder_minutes, :start_date, :end_date, :due_date, :timed_event,
14
- :created_date, :last_modified_date
14
+ :created_date, :last_modified_date, :priority
15
15
 
16
16
  field :contact_list, ContactList
17
+ field :custom_field_list, CustomFieldList
17
18
 
18
19
  record_refs :assigned, :owner, :company, :contact, :transaction
19
20
 
@@ -7,7 +7,7 @@ module NetSuite
7
7
  include Namespaces::TranInvt
8
8
 
9
9
  fields :amount, :average_cost, :klass, :commit_inventory, :description,
10
- :expected_receipt_date, :expected_ship_date, :is_closed, :last_purchase_price,
10
+ :expected_receipt_date, :expected_ship_date, :inventory_detail, :is_closed, :last_purchase_price,
11
11
  :line, :options, :order_priority, :quantity, :quantity_available,
12
12
  :quantity_back_ordered, :quantity_committed, :quantity_fulfilled,
13
13
  :quantity_on_hand, :quantity_packed, :quantity_picked, :quantity_received,
@@ -16,7 +16,7 @@ module NetSuite
16
16
  field :options, CustomFieldList
17
17
  field :custom_field_list, CustomFieldList
18
18
 
19
- record_refs :department, :inventory_detail, :item, :units
19
+ record_refs :department, :item, :units
20
20
 
21
21
  def initialize(attributes_or_record = {})
22
22
  case attributes_or_record
@@ -58,6 +58,7 @@ module NetSuite
58
58
  Zlib::BufError,
59
59
  Savon::HTTPError,
60
60
  SocketError,
61
+ Net::OpenTimeout
61
62
  ]
62
63
 
63
64
  # available in ruby > 1.9
@@ -84,6 +85,7 @@ module NetSuite
84
85
  !e.message.include?('java.util.ConcurrentModificationException') &&
85
86
  !e.message.include?('com.netledger.common.exceptions.NLDatabaseOfflineException') &&
86
87
  !e.message.include?('com.netledger.database.NLConnectionUtil$NoCompanyDbsOnlineException') &&
88
+ !e.message.include?('com.netledger.cache.CacheUnavailableException') &&
87
89
  !e.message.include?('An unexpected error occurred.') &&
88
90
  !e.message.include?('Session invalidation is in progress with different thread') &&
89
91
  !e.message.include?('SuiteTalk concurrent request limit exceeded. Request blocked.') &&
@@ -130,6 +132,7 @@ module NetSuite
130
132
  ns_item ||= NetSuite::Utilities.get_record(NetSuite::Records::GiftCertificateItem, ns_item_internal_id, opts)
131
133
  ns_item ||= NetSuite::Utilities.get_record(NetSuite::Records::KitItem, ns_item_internal_id, opts)
132
134
  ns_item ||= NetSuite::Utilities.get_record(NetSuite::Records::SerializedInventoryItem, ns_item_internal_id, opts)
135
+ ns_item ||= NetSuite::Utilities.get_record(NetSuite::Records::LotNumberedAssemblyItem, ns_item_internal_id, opts)
133
136
 
134
137
  if ns_item.nil?
135
138
  fail NetSuite::RecordNotFound, "item with ID #{ns_item_internal_id} not found"
@@ -1,3 +1,3 @@
1
- module Netsuite
2
- VERSION = '0.8.1'
1
+ module NetSuite
2
+ VERSION = '0.8.2'
3
3
  end
@@ -13,7 +13,7 @@ Gem::Specification.new do |gem|
13
13
  gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
14
14
  gem.name = 'netsuite'
15
15
  gem.require_paths = ['lib']
16
- gem.version = Netsuite::VERSION
16
+ gem.version = NetSuite::VERSION
17
17
 
18
18
  gem.add_dependency 'savon', '>= 2.3.0'
19
19
 
@@ -52,7 +52,8 @@ describe 'basic records' do
52
52
  NetSuite::Records::AssemblyBuild,
53
53
  NetSuite::Records::AssemblyUnbuild,
54
54
  NetSuite::Records::AssemblyComponent,
55
- NetSuite::Records::InventoryNumber
55
+ NetSuite::Records::InventoryNumber,
56
+ NetSuite::Records::LotNumberedAssemblyItem
56
57
  ]
57
58
  }
58
59
 
@@ -9,7 +9,7 @@ describe NetSuite::Records::Invoice do
9
9
  [
10
10
  :balance, :bill_address,
11
11
  :billing_schedule, :contrib_pct, :created_date, :currency_name,
12
- :deferred_revenue, :discount_amount, :discount_date, :discount_item, :discount_rate,
12
+ :deferred_revenue, :discount_amount, :discount_date, :discount_rate,
13
13
  :due_date, :email, :end_date, :est_gross_profit, :est_gross_profit_percent, :exchange_rate,
14
14
  :exclude_commission, :exp_cost_disc_amount, :exp_cost_disc_print, :exp_cost_disc_rate, :exp_cost_disc_tax_1_amt,
15
15
  :exp_cost_disc_taxable, :exp_cost_discount, :exp_cost_list, :exp_cost_tax_code, :exp_cost_tax_rate_1,
@@ -44,7 +44,7 @@ describe NetSuite::Records::Invoice do
44
44
  it 'has the right record_refs' do
45
45
  [
46
46
  :account, :bill_address_list, :job, :custom_form, :department, :entity, :klass, :posting_period, :ship_address_list, :terms,
47
- :created_from, :location, :sales_rep, :ship_method, :tax_item, :partner, :lead_source, :promo_code, :subsidiary
47
+ :created_from, :location, :sales_rep, :ship_method, :tax_item, :partner, :lead_source, :promo_code, :subsidiary, :discount_item
48
48
  ].each do |record_ref|
49
49
  expect(invoice).to have_record_ref(record_ref)
50
50
  end
@@ -16,8 +16,8 @@ describe NetSuite::Records::ReturnAuthorizationItemList do
16
16
 
17
17
  it 'can represent itself as a SOAP record' do
18
18
  record = {
19
- 'tranSales:item' => [{
20
- 'tranSales:rate' => 10
19
+ 'tranCust:item' => [{
20
+ 'tranCust:rate' => 10
21
21
  }]
22
22
  }
23
23
  expect(list.to_record).to eql(record)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: netsuite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.1
4
+ version: 0.8.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Moran
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-06-14 00:00:00.000000000 Z
12
+ date: 2017-08-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: savon
@@ -122,6 +122,8 @@ files:
122
122
  - lib/netsuite/records/contact.rb
123
123
  - lib/netsuite/records/contact_access_roles.rb
124
124
  - lib/netsuite/records/contact_access_roles_list.rb
125
+ - lib/netsuite/records/contact_addressbook.rb
126
+ - lib/netsuite/records/contact_addressbook_list.rb
125
127
  - lib/netsuite/records/contact_list.rb
126
128
  - lib/netsuite/records/contact_role.rb
127
129
  - lib/netsuite/records/credit_memo.rb
@@ -214,6 +216,7 @@ files:
214
216
  - lib/netsuite/records/kit_item.rb
215
217
  - lib/netsuite/records/location.rb
216
218
  - lib/netsuite/records/locations_list.rb
219
+ - lib/netsuite/records/lot_numbered_assembly_item.rb
217
220
  - lib/netsuite/records/matrix_option_list.rb
218
221
  - lib/netsuite/records/member_list.rb
219
222
  - lib/netsuite/records/non_inventory_purchase_item.rb
@@ -501,7 +504,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
501
504
  version: '0'
502
505
  requirements: []
503
506
  rubyforge_project:
504
- rubygems_version: 2.6.8
507
+ rubygems_version: 2.5.1
505
508
  signing_key:
506
509
  specification_version: 4
507
510
  summary: NetSuite SuiteTalk API (SOAP) Wrapper