netsuite 0.3.3 → 0.4.0
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 +15 -0
- data/README.md +14 -12
- data/lib/netsuite.rb +16 -2
- data/lib/netsuite/actions/delete_list.rb +104 -0
- data/lib/netsuite/actions/login.rb +26 -1
- data/lib/netsuite/actions/search.rb +7 -3
- data/lib/netsuite/actions/upsert.rb +0 -4
- data/lib/netsuite/configuration.rb +1 -0
- data/lib/netsuite/namespaces/tran_purch.rb +11 -0
- data/lib/netsuite/records/cash_refund.rb +2 -2
- data/lib/netsuite/records/cash_sale.rb +41 -1
- data/lib/netsuite/records/cash_sale_item.rb +40 -0
- data/lib/netsuite/records/cash_sale_item_list.rb +25 -0
- data/lib/netsuite/records/contact.rb +1 -1
- data/lib/netsuite/records/contact_list.rb +1 -4
- data/lib/netsuite/records/credit_memo.rb +1 -1
- data/lib/netsuite/records/credit_memo_apply_list.rb +1 -4
- data/lib/netsuite/records/credit_memo_item.rb +1 -0
- data/lib/netsuite/records/credit_memo_item_list.rb +1 -4
- data/lib/netsuite/records/custom_field_list.rb +3 -0
- data/lib/netsuite/records/customer.rb +8 -8
- data/lib/netsuite/records/customer_payment.rb +1 -1
- data/lib/netsuite/records/customer_payment_apply.rb +1 -1
- data/lib/netsuite/records/customer_payment_apply_list.rb +13 -9
- data/lib/netsuite/records/customer_refund.rb +1 -1
- data/lib/netsuite/records/customer_refund_apply_list.rb +7 -3
- data/lib/netsuite/records/customer_refund_deposit_list.rb +1 -1
- data/lib/netsuite/records/deposit.rb +3 -3
- data/lib/netsuite/records/deposit_payment_list.rb +5 -2
- data/lib/netsuite/records/employee.rb +12 -4
- data/lib/netsuite/records/inventory_assignment.rb +1 -1
- data/lib/netsuite/records/inventory_assignment_list.rb +3 -1
- data/lib/netsuite/records/inventory_detail.rb +3 -3
- data/lib/netsuite/records/inventory_item.rb +4 -0
- data/lib/netsuite/records/invoice.rb +8 -4
- data/lib/netsuite/records/invoice_item_list.rb +4 -21
- data/lib/netsuite/records/job.rb +1 -1
- data/lib/netsuite/records/kit_item.rb +1 -1
- data/lib/netsuite/records/partner.rb +4 -2
- data/lib/netsuite/records/payment_method.rb +1 -1
- data/lib/netsuite/records/promotion_code.rb +1 -1
- data/lib/netsuite/records/rev_rec_template.rb +1 -1
- data/lib/netsuite/records/sales_order.rb +1 -1
- data/lib/netsuite/records/sales_order_item_list.rb +0 -1
- data/lib/netsuite/records/service_sale_item.rb +2 -2
- data/lib/netsuite/records/vendor_bill.rb +45 -0
- data/lib/netsuite/records/vendor_bill_expense.rb +40 -0
- data/lib/netsuite/records/vendor_bill_expense_list.rb +32 -0
- data/lib/netsuite/records/vendor_bill_item.rb +45 -0
- data/lib/netsuite/records/vendor_bill_item_list.rb +32 -0
- data/lib/netsuite/records/vendor_payment.rb +43 -0
- data/lib/netsuite/records/vendor_payment_apply.rb +16 -0
- data/lib/netsuite/records/vendor_payment_apply_list.rb +32 -0
- data/lib/netsuite/support/actions.rb +2 -2
- data/lib/netsuite/support/sublist.rb +13 -0
- data/lib/netsuite/version.rb +1 -1
- data/netsuite.gemspec +1 -1
- data/spec/netsuite/actions/delete_list_spec.rb +86 -0
- data/spec/netsuite/actions/login_spec.rb +21 -0
- data/spec/netsuite/records/cash_refund_spec.rb +1 -1
- data/spec/netsuite/records/cash_sale_item_list_spec.rb +27 -0
- data/spec/netsuite/records/cash_sale_item_spec.rb +23 -0
- data/spec/netsuite/records/credit_memo_apply_list_spec.rb +7 -8
- data/spec/netsuite/records/credit_memo_item_list_spec.rb +6 -8
- data/spec/netsuite/records/customer_payment_apply_list_spec.rb +25 -0
- data/spec/netsuite/records/customer_refund_apply_list_spec.rb +6 -8
- data/spec/netsuite/records/customer_spec.rb +6 -6
- data/spec/netsuite/records/employee_spec.rb +152 -0
- data/spec/netsuite/records/inventory_assignment_list_spec.rb +59 -0
- data/spec/netsuite/records/inventory_assignment_spec.rb +21 -0
- data/spec/netsuite/records/inventory_detail_spec.rb +13 -0
- data/spec/netsuite/records/invoice_spec.rb +3 -3
- data/spec/netsuite/records/job_spec.rb +4 -0
- data/spec/netsuite/records/vendor_bill_expense_list_spec.rb +36 -0
- data/spec/netsuite/records/vendor_bill_expense_spec.rb +72 -0
- data/spec/netsuite/records/vendor_bill_item_list_spec.rb +36 -0
- data/spec/netsuite/records/vendor_bill_item_spec.rb +118 -0
- data/spec/netsuite/records/vendor_bill_spec.rb +187 -0
- data/spec/netsuite/records/vendor_payment_apply_list_spec.rb +25 -0
- data/spec/netsuite/records/vendor_payment_apply_spec.rb +15 -0
- data/spec/netsuite/records/vendor_payment_spec.rb +164 -0
- data/spec/netsuite/support/sublist_spec.rb +6 -0
- data/spec/support/fixtures/delete_list/delete_list_customers.xml +26 -0
- data/spec/support/fixtures/delete_list/delete_list_customers_with_errors.xml +31 -0
- data/spec/support/fixtures/login.xml +35 -0
- metadata +58 -12
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
module NetSuite
|
|
2
|
+
module Records
|
|
3
|
+
class CashSaleItemList
|
|
4
|
+
include Namespaces::TranSales
|
|
5
|
+
|
|
6
|
+
def initialize(attributes = {})
|
|
7
|
+
case attributes[:item]
|
|
8
|
+
when Hash
|
|
9
|
+
items << CashSaleItem.new(attributes[:item])
|
|
10
|
+
when Array
|
|
11
|
+
attributes[:item].each { |item| items << CashSaleItem.new(item) }
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def items
|
|
16
|
+
@items ||= []
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def to_record
|
|
20
|
+
{ "#{record_namespace}:item" => items.map(&:to_record) }
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
@@ -7,7 +7,7 @@ module NetSuite
|
|
|
7
7
|
include Support::Actions
|
|
8
8
|
include Namespaces::ListRel
|
|
9
9
|
|
|
10
|
-
actions :get, :get_list, :add, :delete, :search, :update, :upsert
|
|
10
|
+
actions :get, :get_list, :add, :delete, :delete_list, :search, :update, :upsert
|
|
11
11
|
|
|
12
12
|
fields :salutation, :first_name, :middle_name, :last_name, :title, :phone, :fax, :email, :default_address,
|
|
13
13
|
:entity_id, :phonetic_name, :alt_email, :office_phone, :home_phone, :mobile_phone, :supervisor_phone,
|
|
@@ -7,7 +7,7 @@ module NetSuite
|
|
|
7
7
|
include Support::Actions
|
|
8
8
|
include Namespaces::TranCust
|
|
9
9
|
|
|
10
|
-
actions :get, :get_list, :add, :initialize, :delete, :update, :upsert
|
|
10
|
+
actions :get, :get_list, :add, :initialize, :delete, :update, :upsert, :search
|
|
11
11
|
|
|
12
12
|
fields :alt_handling_cost, :alt_shipping_cost, :amount_paid, :amount_remaining, :auto_apply, :balance,
|
|
13
13
|
:bill_address, :contrib_pct, :created_date, :currency_name, :deferred_revenue, :discount_rate, :email,
|
|
@@ -72,6 +72,9 @@ module NetSuite
|
|
|
72
72
|
'@xsi:type' => custom_field.type
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
+
# TODO this is broken in > 2013_1; need to conditionally change the synax here
|
|
76
|
+
# if NetSuite::Configuration.api_version < "2013_2"
|
|
77
|
+
|
|
75
78
|
if custom_field.internal_id
|
|
76
79
|
base['@internalId'] = custom_field.internal_id
|
|
77
80
|
end
|
|
@@ -7,23 +7,23 @@ module NetSuite
|
|
|
7
7
|
include Support::Actions
|
|
8
8
|
include Namespaces::ListRel
|
|
9
9
|
|
|
10
|
-
actions :get, :get_list, :add, :update, :upsert, :upsert_list, :delete, :search
|
|
10
|
+
actions :get, :get_list, :add, :update, :upsert, :upsert_list, :delete, :delete_list, :search
|
|
11
11
|
|
|
12
12
|
# https://system.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2014_1/schema/record/customer.html
|
|
13
13
|
|
|
14
|
-
fields :
|
|
14
|
+
fields :account_number, :aging, :alt_email, :alt_name, :alt_phone, :bill_pay,
|
|
15
15
|
:buying_reason, :buying_time_frame, :campaign_category, :click_stream, :comments, :company_name,
|
|
16
16
|
:consol_aging, :consol_days_overdue, :contrib_pct, :credit_cards_list, :credit_hold_override,
|
|
17
|
-
:credit_limit, :
|
|
17
|
+
:credit_limit, :currency_list, :date_created, :days_overdue, :default_address,
|
|
18
18
|
:download_list, :email, :email_preference, :email_transactions, :end_date, :entity_id,
|
|
19
19
|
:estimated_budget, :fax, :fax_transactions, :first_name, :first_visit, :give_access, :global_subscription_status,
|
|
20
20
|
:group_pricing_list, :home_phone, :image, :is_budget_approved, :is_inactive, :is_person, :item_pricing_list, :keywords,
|
|
21
21
|
:language, :last_modified_date, :last_name, :last_page_visited, :last_visit, :middle_name, :mobile_phone,
|
|
22
|
-
:opening_balance, :opening_balance_account, :opening_balance_date, :
|
|
22
|
+
:opening_balance, :opening_balance_account, :opening_balance_date, :partners_list,
|
|
23
23
|
:password, :password2, :phone, :phonetic_name, :pref_cc_processor, :print_on_check_as,
|
|
24
24
|
:print_transactions, :referrer, :reminder_days, :representing_subsidiary, :require_pwd_change, :resale_number,
|
|
25
|
-
:sales_group, :sales_readiness, :
|
|
26
|
-
:stage, :start_date, :subscriptions_list, :sync_partner_teams, :tax_exempt, :tax_item, :taxable,
|
|
25
|
+
:sales_group, :sales_readiness, :sales_team_list, :salutation, :send_email, :ship_complete, :shipping_item,
|
|
26
|
+
:stage, :start_date, :subscriptions_list, :sync_partner_teams, :tax_exempt, :tax_item, :taxable,
|
|
27
27
|
:territory, :third_party_acct, :third_party_country, :third_party_zipcode, :title, :url,
|
|
28
28
|
:vat_reg_number, :visits, :web_lead
|
|
29
29
|
|
|
@@ -34,8 +34,8 @@ module NetSuite
|
|
|
34
34
|
read_only_fields :balance, :consol_balance, :deposit_balance, :consol_deposit_balance, :overdue_balance,
|
|
35
35
|
:consol_overdue_balance, :unbilled_orders, :consol_unbilled_orders
|
|
36
36
|
|
|
37
|
-
record_refs :custom_form, :entity_status, :partner, :category, :lead_source,
|
|
38
|
-
:price_level, :subsidiary
|
|
37
|
+
record_refs :access_role, :custom_form, :currency, :entity_status, :partner, :category, :lead_source,
|
|
38
|
+
:price_level,:sales_rep, :subsidiary, :terms, :parent
|
|
39
39
|
|
|
40
40
|
attr_reader :internal_id
|
|
41
41
|
attr_accessor :external_id
|
|
@@ -7,7 +7,7 @@ module NetSuite
|
|
|
7
7
|
include Support::Actions
|
|
8
8
|
include Namespaces::TranCust
|
|
9
9
|
|
|
10
|
-
actions :get, :get_list, :initialize, :add, :delete, :upsert
|
|
10
|
+
actions :get, :get_list, :initialize, :add, :delete, :update, :upsert
|
|
11
11
|
|
|
12
12
|
fields :auth_code, :auto_apply, :cc_approved, :cc_avs_street_match, :cc_avs_zip_match,
|
|
13
13
|
:cc_expire_date, :cc_name, :cc_number, :cc_security_code, :cc_security_code_match, :cc_street, :cc_zip_code,
|
|
@@ -1,14 +1,21 @@
|
|
|
1
1
|
module NetSuite
|
|
2
2
|
module Records
|
|
3
3
|
class CustomerPaymentApplyList
|
|
4
|
+
include Support::Fields
|
|
4
5
|
include Namespaces::TranCust
|
|
5
6
|
|
|
7
|
+
fields :apply
|
|
8
|
+
|
|
6
9
|
def initialize(attributes = {})
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
initialize_from_attributes_hash(attributes)
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def apply=(applies)
|
|
14
|
+
case applies
|
|
15
|
+
when Hash
|
|
16
|
+
self.applies << CustomerPaymentApply.new(applies)
|
|
17
|
+
when Array
|
|
18
|
+
applies.each { |apply| self.applies << CustomerPaymentApply.new(apply) }
|
|
12
19
|
end
|
|
13
20
|
end
|
|
14
21
|
|
|
@@ -17,11 +24,8 @@ module NetSuite
|
|
|
17
24
|
end
|
|
18
25
|
|
|
19
26
|
def to_record
|
|
20
|
-
applies.map
|
|
21
|
-
{ "#{record_namespace}:apply" => apply.to_record }
|
|
22
|
-
end
|
|
27
|
+
{ "#{record_namespace}:apply" => applies.map(&:to_record) }
|
|
23
28
|
end
|
|
24
|
-
|
|
25
29
|
end
|
|
26
30
|
end
|
|
27
31
|
end
|
|
@@ -7,7 +7,7 @@ module NetSuite
|
|
|
7
7
|
include Support::Actions
|
|
8
8
|
include Namespaces::TranCust
|
|
9
9
|
|
|
10
|
-
actions :get, :get_list, :initialize, :add, :delete, :upsert
|
|
10
|
+
actions :get, :get_list, :initialize, :add, :delete, :update, :upsert
|
|
11
11
|
|
|
12
12
|
fields :address, :cc_approved, :cc_expire_date, :cc_name, :cc_number, :cc_street, :cc_zip_code, :charge_it,
|
|
13
13
|
:created_date, :currency_name, :debit_card_issue_no, :exchange_rate, :last_modified_date, :memo, :pn_ref_num, :status,
|
|
@@ -3,6 +3,10 @@ module NetSuite
|
|
|
3
3
|
class CustomerRefundApplyList
|
|
4
4
|
include Namespaces::TranCust
|
|
5
5
|
|
|
6
|
+
# TODO should use new sublist implementation
|
|
7
|
+
|
|
8
|
+
attr_accessor :replace_all
|
|
9
|
+
|
|
6
10
|
def initialize(attributes = {})
|
|
7
11
|
case attributes[:apply]
|
|
8
12
|
when Hash
|
|
@@ -17,9 +21,9 @@ module NetSuite
|
|
|
17
21
|
end
|
|
18
22
|
|
|
19
23
|
def to_record
|
|
20
|
-
applies.map
|
|
21
|
-
|
|
22
|
-
|
|
24
|
+
rec = { "#{record_namespace}:apply" => applies.map(&:to_record) }
|
|
25
|
+
rec[:@replaceAll] = @replace_all unless @replace_all.nil?
|
|
26
|
+
rec
|
|
23
27
|
end
|
|
24
28
|
|
|
25
29
|
end
|
|
@@ -7,9 +7,9 @@ module NetSuite
|
|
|
7
7
|
include Support::Actions
|
|
8
8
|
include Namespaces::TranBank
|
|
9
9
|
|
|
10
|
-
actions :get, :get_list, :add, :delete, :upsert
|
|
10
|
+
actions :get, :get_list, :add, :delete, :upsert, :update
|
|
11
11
|
|
|
12
|
-
fields :created_date, :last_modified_date, :currency_name, :tran_id, :total, :tran_date, :memo, :to_be_printed
|
|
12
|
+
fields :created_date, :last_modified_date, :currency_name, :exchange_rate, :tran_id, :total, :tran_date, :memo, :to_be_printed
|
|
13
13
|
|
|
14
14
|
record_refs :custom_form, :account, :posting_period, :subsidiary, :department, :klass, :location
|
|
15
15
|
|
|
@@ -29,4 +29,4 @@ module NetSuite
|
|
|
29
29
|
|
|
30
30
|
end
|
|
31
31
|
end
|
|
32
|
-
end
|
|
32
|
+
end
|
|
@@ -4,6 +4,8 @@ module NetSuite
|
|
|
4
4
|
include Support::Fields
|
|
5
5
|
include Namespaces::TranBank
|
|
6
6
|
|
|
7
|
+
attr_accessor :replace_all
|
|
8
|
+
|
|
7
9
|
fields :deposit_payment
|
|
8
10
|
|
|
9
11
|
def initialize(attributes = {})
|
|
@@ -24,9 +26,10 @@ module NetSuite
|
|
|
24
26
|
end
|
|
25
27
|
|
|
26
28
|
def to_record
|
|
27
|
-
{ "#{record_namespace}:depositPayment" => payments.map(&:to_record) }
|
|
29
|
+
rec = { "#{record_namespace}:depositPayment" => payments.map(&:to_record) }
|
|
30
|
+
rec[:@replaceAll] = @replace_all unless @replace_all.nil?
|
|
31
|
+
rec
|
|
28
32
|
end
|
|
29
|
-
|
|
30
33
|
end
|
|
31
34
|
end
|
|
32
35
|
end
|
|
@@ -1,20 +1,28 @@
|
|
|
1
1
|
module NetSuite
|
|
2
2
|
module Records
|
|
3
|
-
|
|
4
3
|
class Employee < Support::Base
|
|
4
|
+
include Support::RecordRefs
|
|
5
5
|
include Support::Actions
|
|
6
|
+
include Support::RecordRefs
|
|
6
7
|
include Namespaces::ListEmp
|
|
7
8
|
|
|
8
9
|
# https://system.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2014_1/script/record/employee.html
|
|
9
10
|
|
|
10
11
|
actions :get, :get_list, :add, :update, :upsert, :upsert_list, :delete, :search
|
|
11
12
|
|
|
12
|
-
fields :phone, :first_name, :last_name, :is_inactive, :email
|
|
13
|
+
fields :phone, :first_name, :last_name, :is_inactive, :email, :give_access, :send_email, :is_support_rep,
|
|
14
|
+
:birth_date, :hire_date, :last_review_date, :next_review_date, :title, :home_phone, :office_phone,
|
|
15
|
+
:eligible_for_commission, :is_sales_rep, :klass, :middle_name, :account_number, :alien_number, :approval_limit,
|
|
16
|
+
:bill_pay, :comments, :date_created, :direct_deposit, :employee_status, :employee_type, :entity_id,
|
|
17
|
+
:expense_limit, :fax, :is_job_resource, :job_description, :labor_cost, :last_modified_date, :mobile_phone, :pay_frequency,
|
|
18
|
+
:phonetic_name, :purchase_order_approval_limit, :purchase_order_approver, :purchase_order_limit, :release_date,
|
|
19
|
+
:resident_status, :salutation, :social_security_number, :visa_exp_date, :visa_type
|
|
20
|
+
|
|
21
|
+
record_refs :currency, :department, :location, :subsidiary
|
|
13
22
|
|
|
14
23
|
field :roles_list, RoleList
|
|
15
24
|
|
|
16
|
-
attr_reader
|
|
25
|
+
attr_reader :internal_id
|
|
17
26
|
end
|
|
18
|
-
|
|
19
27
|
end
|
|
20
28
|
end
|
|
@@ -6,7 +6,7 @@ module NetSuite
|
|
|
6
6
|
include Support::Fields
|
|
7
7
|
include Namespaces::PlatformCommon
|
|
8
8
|
|
|
9
|
-
fields :date_time, :quantity, :quantity_available,
|
|
9
|
+
fields :date_time, :quantity, :quantity_available, :expiration_date,
|
|
10
10
|
:receipt_inventory_number
|
|
11
11
|
|
|
12
12
|
record_refs :bin_number, :issue_inventory_number, :to_bin_number
|
|
@@ -25,7 +25,9 @@ module NetSuite
|
|
|
25
25
|
end
|
|
26
26
|
|
|
27
27
|
def to_record
|
|
28
|
-
{ "#{record_namespace}:inventoryAssignment" => inventory_assignment.map(&:to_record) }
|
|
28
|
+
rec = { "#{record_namespace}:inventoryAssignment" => inventory_assignment.map(&:to_record) }
|
|
29
|
+
rec[:@replaceAll] = self.replace_all if !self.replace_all.nil?
|
|
30
|
+
rec
|
|
29
31
|
end
|
|
30
32
|
end
|
|
31
33
|
end
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
module NetSuite
|
|
2
2
|
module Records
|
|
3
3
|
class InventoryDetail
|
|
4
|
+
include Support::Fields
|
|
4
5
|
include Support::RecordRefs
|
|
5
6
|
include Support::Records
|
|
6
|
-
include Support::Fields
|
|
7
7
|
include Namespaces::PlatformCommon
|
|
8
8
|
|
|
9
|
-
record_ref :custom_form
|
|
10
|
-
|
|
11
9
|
field :inventory_assignment_list, InventoryAssignmentList
|
|
12
10
|
|
|
11
|
+
record_refs :custom_form
|
|
12
|
+
|
|
13
13
|
def initialize(attributes = {})
|
|
14
14
|
initialize_from_attributes_hash(attributes)
|
|
15
15
|
end
|
|
@@ -58,6 +58,10 @@ module NetSuite
|
|
|
58
58
|
field :bin_number_list, BinNumberList
|
|
59
59
|
field :locations_list, LocationsList
|
|
60
60
|
field :matrix_option_list, MatrixOptionList
|
|
61
|
+
field :subsidiary_list, RecordRefList
|
|
62
|
+
|
|
63
|
+
# for Assembly/Kit
|
|
64
|
+
field :member_list, MemberList
|
|
61
65
|
|
|
62
66
|
attr_reader :internal_id
|
|
63
67
|
attr_accessor :external_id
|
|
@@ -7,7 +7,7 @@ module NetSuite
|
|
|
7
7
|
include Support::Actions
|
|
8
8
|
include Namespaces::TranSales
|
|
9
9
|
|
|
10
|
-
actions :get, :get_list, :initialize, :add, :delete, :upsert
|
|
10
|
+
actions :get, :get_list, :initialize, :add, :delete, :upsert, :search
|
|
11
11
|
|
|
12
12
|
fields :balance, :bill_address,
|
|
13
13
|
:billing_schedule, :contrib_pct, :created_date, :currency_name, :custom_field_list,
|
|
@@ -19,8 +19,8 @@ module NetSuite
|
|
|
19
19
|
:handling_tax_2_rate, :handling_tax_code, :is_taxable, :item_cost_disc_amount, :item_cost_disc_print,
|
|
20
20
|
:item_cost_disc_rate, :item_cost_disc_tax_1_amt, :item_cost_disc_taxable, :item_cost_discount, :item_cost_list,
|
|
21
21
|
:item_cost_tax_code, :item_cost_tax_rate_1, :item_cost_tax_rate_2, :item_list, :job, :last_modified_date,
|
|
22
|
-
:
|
|
23
|
-
:other_ref_num, :partners_list, :
|
|
22
|
+
:linked_tracking_numbers, :memo, :message, :message_sel, :on_credit_hold, :opportunity,
|
|
23
|
+
:other_ref_num, :partners_list, :rev_rec_end_date,
|
|
24
24
|
:rev_rec_on_rev_commitment, :rev_rec_schedule, :rev_rec_start_date, :revenue_status, :sales_effective_date,
|
|
25
25
|
:sales_group, :sales_team_list, :ship_address, :ship_date, :ship_group_list,
|
|
26
26
|
:shipping_cost, :shipping_tax_1_rate, :shipping_tax_2_rate, :shipping_tax_code, :source, :start_date,
|
|
@@ -40,7 +40,7 @@ module NetSuite
|
|
|
40
40
|
|
|
41
41
|
record_refs :account, :bill_address_list, :custom_form, :department, :entity, :klass, :partner,
|
|
42
42
|
:posting_period, :ship_address_list, :terms, :location, :sales_rep, :tax_item, :created_from,
|
|
43
|
-
:ship_method
|
|
43
|
+
:ship_method, :lead_source, :promo_code
|
|
44
44
|
|
|
45
45
|
attr_reader :internal_id
|
|
46
46
|
attr_accessor :external_id
|
|
@@ -59,6 +59,10 @@ module NetSuite
|
|
|
59
59
|
rec
|
|
60
60
|
end
|
|
61
61
|
|
|
62
|
+
def self.search_class_name
|
|
63
|
+
"Transaction"
|
|
64
|
+
end
|
|
65
|
+
|
|
62
66
|
end
|
|
63
67
|
end
|
|
64
68
|
end
|
|
@@ -1,30 +1,13 @@
|
|
|
1
1
|
module NetSuite
|
|
2
2
|
module Records
|
|
3
|
-
class InvoiceItemList
|
|
4
|
-
include Support::Fields
|
|
3
|
+
class InvoiceItemList < Support::Sublist
|
|
5
4
|
include Namespaces::TranSales
|
|
6
5
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
def initialize(attributes = {})
|
|
10
|
-
initialize_from_attributes_hash(attributes)
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
def item=(items)
|
|
14
|
-
case items
|
|
15
|
-
when Hash
|
|
16
|
-
self.items << InvoiceItem.new(items)
|
|
17
|
-
when Array
|
|
18
|
-
items.each { |item| self.items << InvoiceItem.new(item) }
|
|
19
|
-
end
|
|
20
|
-
end
|
|
6
|
+
sublist :item, InvoiceItem
|
|
21
7
|
|
|
8
|
+
# legacy support
|
|
22
9
|
def items
|
|
23
|
-
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
def to_record
|
|
27
|
-
{ "#{record_namespace}:item" => items.map(&:to_record) }
|
|
10
|
+
self.item
|
|
28
11
|
end
|
|
29
12
|
|
|
30
13
|
end
|