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
data/lib/netsuite/records/job.rb
CHANGED
|
@@ -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, :update, :upsert
|
|
10
|
+
actions :get, :get_list, :add, :delete, :search, :update, :upsert
|
|
11
11
|
|
|
12
12
|
fields :account_number, :allocate_payroll_expenses, :allow_all_resources_for_tasks, :allow_expenses, :allow_time,
|
|
13
13
|
:alt_name, :alt_phone, :bill_pay, :calculated_end_date, :calculated_end_date_baseline, :comments, :company_name,
|
|
@@ -10,9 +10,11 @@ module NetSuite
|
|
|
10
10
|
|
|
11
11
|
actions :get, :get_list, :add, :update, :upsert, :upsert_list, :delete, :search
|
|
12
12
|
|
|
13
|
-
fields :phone, :first_name, :last_name, :is_inactive, :email
|
|
13
|
+
fields :phone, :home_phone, :first_name, :last_name, :alt_name, :is_inactive, :email, :give_access,
|
|
14
|
+
:partner_code, :is_person, :company_name, :eligible_for_commission, :entity_id, :last_modified_date,
|
|
15
|
+
:date_created, :title, :mobile_phone, :comments, :middle_name
|
|
14
16
|
|
|
15
|
-
record_refs :klass
|
|
17
|
+
record_refs :klass, :access_role
|
|
16
18
|
|
|
17
19
|
attr_reader :internal_id
|
|
18
20
|
end
|
|
@@ -5,7 +5,7 @@ module NetSuite
|
|
|
5
5
|
include Support::RecordRefs
|
|
6
6
|
include Support::Actions
|
|
7
7
|
|
|
8
|
-
actions :get
|
|
8
|
+
actions :add, :delete, :get, :get_list, :search, :update, :upsert, :upsert_list
|
|
9
9
|
|
|
10
10
|
fields :credit_card, :express_checkout_arrangement, :is_debit_card, :is_inactive, :is_online, :name,
|
|
11
11
|
:pay_pal_email_address, :undep_funds, :use_express_checkout
|
|
@@ -9,7 +9,7 @@ module NetSuite
|
|
|
9
9
|
include Support::Actions
|
|
10
10
|
include Namespaces::ListMkt
|
|
11
11
|
|
|
12
|
-
actions :get, :get_list, :add, :search, :delete, :update
|
|
12
|
+
actions :get, :get_list, :add, :search, :delete, :update, :upsert
|
|
13
13
|
|
|
14
14
|
fields :code, :code_pattern, :description, :discount_type, :display_line_discounts, :end_date,
|
|
15
15
|
:exclude_items, :is_inactive, :is_public, :minimum_order_amount, :name, :number_to_generate,
|
|
@@ -17,7 +17,7 @@ module NetSuite
|
|
|
17
17
|
:rev_rec_on_rev_commitment, :sales_effective_date, :ship_date, :shipping_cost, :shipping_tax1_rate, :shipping_tax2_rate, :source,
|
|
18
18
|
:start_date, :status, :sync_partner_teams, :sync_sales_teams, :tax2_total, :tax_rate, :to_be_emailed, :to_be_faxed,
|
|
19
19
|
:to_be_printed, :total_cost_estimate, :tran_date, :tran_id, :tran_is_vsoe_bundle, :vat_reg_num,
|
|
20
|
-
:vsoe_auto_calc
|
|
20
|
+
:vsoe_auto_calc, :linked_tracking_numbers
|
|
21
21
|
|
|
22
22
|
field :transaction_ship_address, ShipAddress
|
|
23
23
|
field :transaction_bill_address, BillAddress
|
|
@@ -7,7 +7,7 @@ module NetSuite
|
|
|
7
7
|
include Support::Actions
|
|
8
8
|
include Namespaces::ListAcct
|
|
9
9
|
|
|
10
|
-
actions :get, :get_list, :add, :delete, :upsert
|
|
10
|
+
actions :get, :get_list, :add, :update, :delete, :upsert
|
|
11
11
|
|
|
12
12
|
fields :available_to_partners, :cost_estimate, :cost_estimate_type, :cost_estimate_units, :create_job, :created_date,
|
|
13
13
|
:display_name, :dont_show_price, :enforce_min_qty_internally, :exclude_from_sitemap, :featured_description,
|
|
@@ -42,4 +42,4 @@ module NetSuite
|
|
|
42
42
|
|
|
43
43
|
end
|
|
44
44
|
end
|
|
45
|
-
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
module NetSuite
|
|
2
|
+
module Records
|
|
3
|
+
class VendorBill
|
|
4
|
+
include Support::Fields
|
|
5
|
+
include Support::RecordRefs
|
|
6
|
+
include Support::Records
|
|
7
|
+
include Support::Actions
|
|
8
|
+
include Namespaces::TranPurch
|
|
9
|
+
|
|
10
|
+
actions :add, :delete, :get, :get_list, :get_select_value, :initialize, :search, :update, :upsert, :upsert_list
|
|
11
|
+
|
|
12
|
+
fields :created_date, :credit_limit, :currency_name, :discount_amount, :discount_date, :due_date, :exchange_rate,
|
|
13
|
+
:landed_costs_list, :landed_cost_method, :landed_cost_per_line, :last_modified_date, :memo, :tax_total,
|
|
14
|
+
:tax_2_total, :transaction_number, :tran_date, :tran_id, :user_total, :vat_reg_num
|
|
15
|
+
|
|
16
|
+
field :custom_field_list, CustomFieldList
|
|
17
|
+
field :expense_list, VendorBillExpenseList
|
|
18
|
+
field :item_list, VendorBillItemList
|
|
19
|
+
field :purchase_order_list, RecordRefList
|
|
20
|
+
|
|
21
|
+
read_only_fields :status
|
|
22
|
+
|
|
23
|
+
record_refs :custom_form, :account, :entity, :subsidiary, :approval_status, :next_approver, :posting_period, :terms,
|
|
24
|
+
:currency, :klass, :department, :location
|
|
25
|
+
|
|
26
|
+
attr_reader :internal_id
|
|
27
|
+
attr_accessor :external_id
|
|
28
|
+
|
|
29
|
+
def initialize(attributes = {})
|
|
30
|
+
@internal_id = attributes.delete(:internal_id) || attributes.delete(:@internal_id)
|
|
31
|
+
@external_id = attributes.delete(:external_id) || attributes.delete(:@external_id)
|
|
32
|
+
initialize_from_attributes_hash(attributes)
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def to_record
|
|
36
|
+
rec = super
|
|
37
|
+
if rec["#{record_namespace}:customFieldList"]
|
|
38
|
+
rec["#{record_namespace}:customFieldList!"] = rec.delete("#{record_namespace}:customFieldList")
|
|
39
|
+
end
|
|
40
|
+
rec
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
module NetSuite
|
|
2
|
+
module Records
|
|
3
|
+
class VendorBillExpense
|
|
4
|
+
include Support::Fields
|
|
5
|
+
include Support::RecordRefs
|
|
6
|
+
include Support::Records
|
|
7
|
+
include Namespaces::TranPurch
|
|
8
|
+
|
|
9
|
+
fields :amount, :amortization_end_date, :amortiz_start_date, :amortization_residual, :gross_amt, :is_billable,
|
|
10
|
+
:line, :memo, :order_doc, :order_line, :tax_1_amt, :tax_rate_1, :tax_rate_2
|
|
11
|
+
|
|
12
|
+
field :custom_field_list, CustomFieldList
|
|
13
|
+
|
|
14
|
+
record_refs :account, :amortization_sched, :klass, :category, :customer, :department, :location, :tax_code
|
|
15
|
+
|
|
16
|
+
def initialize(attributes_or_record = {})
|
|
17
|
+
case attributes_or_record
|
|
18
|
+
when Hash
|
|
19
|
+
initialize_from_attributes_hash(attributes_or_record)
|
|
20
|
+
when self.class
|
|
21
|
+
initialize_from_record(attributes_or_record)
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def initialize_from_record(record)
|
|
26
|
+
self.attributes = record.send(:attributes)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def to_record
|
|
30
|
+
rec = super
|
|
31
|
+
if rec["#{record_namespace}:customFieldList"]
|
|
32
|
+
rec["#{record_namespace}:customFieldList!"] = rec.delete("#{record_namespace}:customFieldList")
|
|
33
|
+
end
|
|
34
|
+
rec
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
module NetSuite
|
|
2
|
+
module Records
|
|
3
|
+
class VendorBillExpenseList
|
|
4
|
+
include Support::Fields
|
|
5
|
+
include Namespaces::TranPurch
|
|
6
|
+
|
|
7
|
+
fields :expense
|
|
8
|
+
|
|
9
|
+
def initialize(attributes = {})
|
|
10
|
+
initialize_from_attributes_hash(attributes)
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def expense=(expenses)
|
|
14
|
+
case expenses
|
|
15
|
+
when Hash
|
|
16
|
+
self.expenses << VendorBillExpense.new(expenses)
|
|
17
|
+
when Array
|
|
18
|
+
expenses.each { |expense| self.expenses << VendorBillExpense.new(expense) }
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def expenses
|
|
23
|
+
@expenses ||= []
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def to_record
|
|
27
|
+
{ "#{record_namespace}:expense" => expenses.map(&:to_record) }
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
module NetSuite
|
|
2
|
+
module Records
|
|
3
|
+
class VendorBillItem
|
|
4
|
+
include Support::Fields
|
|
5
|
+
include Support::RecordRefs
|
|
6
|
+
include Support::Records
|
|
7
|
+
include Namespaces::TranPurch
|
|
8
|
+
|
|
9
|
+
fields :amortization_end_date, :amortization_residual, :amortiz_start_date, :bin_numbers, :bill_variance_status,
|
|
10
|
+
:description, :expiration_date, :gross_amt, :inventory_detail, :is_billable, :landed_cost, :line,
|
|
11
|
+
:order_doc, :order_line, :quantity, :serial_numbers, :tax_rate_1, :tax_rate_2, :tax_1_amt, :vendor_name
|
|
12
|
+
|
|
13
|
+
field :bill_receipts_list, RecordRefList
|
|
14
|
+
field :custom_field_list, CustomFieldList
|
|
15
|
+
field :options, CustomFieldList
|
|
16
|
+
|
|
17
|
+
read_only_fields :amount
|
|
18
|
+
|
|
19
|
+
record_refs :amortization_sched, :klass, :customer, :department, :item, :landed_cost_category, :location,
|
|
20
|
+
:tax_code, :units
|
|
21
|
+
|
|
22
|
+
def initialize(attributes_or_record = {})
|
|
23
|
+
case attributes_or_record
|
|
24
|
+
when Hash
|
|
25
|
+
initialize_from_attributes_hash(attributes_or_record)
|
|
26
|
+
when self.class
|
|
27
|
+
initialize_from_record(attributes_or_record)
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def initialize_from_record(record)
|
|
32
|
+
self.attributes = record.send(:attributes)
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def to_record
|
|
36
|
+
rec = super
|
|
37
|
+
if rec["#{record_namespace}:customFieldList"]
|
|
38
|
+
rec["#{record_namespace}:customFieldList!"] = rec.delete("#{record_namespace}:customFieldList")
|
|
39
|
+
end
|
|
40
|
+
rec
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
module NetSuite
|
|
2
|
+
module Records
|
|
3
|
+
class VendorBillItemList
|
|
4
|
+
include Support::Fields
|
|
5
|
+
include Namespaces::TranPurch
|
|
6
|
+
|
|
7
|
+
fields :item
|
|
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 << VendorBillItem.new(items)
|
|
17
|
+
when Array
|
|
18
|
+
items.each { |item| self.items << VendorBillItem.new(item) }
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def items
|
|
23
|
+
@items ||= []
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def to_record
|
|
27
|
+
{ "#{record_namespace}:item" => items.map(&:to_record) }
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
module NetSuite
|
|
2
|
+
module Records
|
|
3
|
+
class VendorPayment
|
|
4
|
+
include Support::Fields
|
|
5
|
+
include Support::RecordRefs
|
|
6
|
+
include Support::Records
|
|
7
|
+
include Support::Actions
|
|
8
|
+
include Namespaces::TranPurch
|
|
9
|
+
|
|
10
|
+
actions :get, :get_list, :initialize, :add, :delete, :update, :upsert
|
|
11
|
+
|
|
12
|
+
fields :address, :balance, :bill_pay, :created_at, :credit_list, :currency_name, :exchange_rate, :last_modified_date,
|
|
13
|
+
:memo, :print_voucher, :status, :to_ach, :to_be_printed, :total, :tran_date, :tran_id, :transaction_number
|
|
14
|
+
|
|
15
|
+
field :apply_list, VendorPaymentApplyList
|
|
16
|
+
field :custom_field_list, CustomFieldList
|
|
17
|
+
|
|
18
|
+
record_refs :account, :ap_acct, :currency, :custom_form, :department, :entity, :klass, :location, :posting_period,
|
|
19
|
+
:subsidiary, :void_journal
|
|
20
|
+
|
|
21
|
+
attr_reader :internal_id
|
|
22
|
+
attr_accessor :external_id
|
|
23
|
+
|
|
24
|
+
def initialize(attributes = {})
|
|
25
|
+
@internal_id = attributes.delete(:internal_id) || attributes.delete(:@internal_id)
|
|
26
|
+
@external_id = attributes.delete(:external_id) || attributes.delete(:@external_id)
|
|
27
|
+
initialize_from_attributes_hash(attributes)
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def to_record
|
|
31
|
+
rec = super
|
|
32
|
+
if rec["#{record_namespace}:customFieldList"]
|
|
33
|
+
rec["#{record_namespace}:customFieldList!"] = rec.delete("#{record_namespace}:customFieldList")
|
|
34
|
+
end
|
|
35
|
+
rec
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
module NetSuite
|
|
2
|
+
module Records
|
|
3
|
+
class VendorPaymentApply
|
|
4
|
+
include Support::Fields
|
|
5
|
+
include Support::Records
|
|
6
|
+
include Namespaces::TranPurch
|
|
7
|
+
|
|
8
|
+
fields :amount, :apply, :apply_date, :currency, :disc, :disc_amt, :disc_date, :doc,
|
|
9
|
+
:due, :line, :job, :ref_num, :total, :type
|
|
10
|
+
|
|
11
|
+
def initialize(attributes = {})
|
|
12
|
+
initialize_from_attributes_hash(attributes)
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
module NetSuite
|
|
2
|
+
module Records
|
|
3
|
+
class VendorPaymentApplyList
|
|
4
|
+
include Support::Fields
|
|
5
|
+
include Namespaces::TranPurch
|
|
6
|
+
|
|
7
|
+
fields :apply
|
|
8
|
+
|
|
9
|
+
def initialize(attributes = {})
|
|
10
|
+
initialize_from_attributes_hash(attributes)
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def apply=(applies)
|
|
14
|
+
case applies
|
|
15
|
+
when Hash
|
|
16
|
+
@applies = [VendorPaymentApply.new(applies)]
|
|
17
|
+
when Array
|
|
18
|
+
@applies = applies.map { |apply| VendorPaymentApply.new(apply) }
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def applies
|
|
23
|
+
@applies ||= []
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def to_record
|
|
27
|
+
{ "#{record_namespace}:apply" => applies.map(&:to_record) }
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -28,8 +28,6 @@ module NetSuite
|
|
|
28
28
|
self.send(:include, NetSuite::Actions::GetSelectValue::Support)
|
|
29
29
|
when :search
|
|
30
30
|
self.send(:include, NetSuite::Actions::Search::Support)
|
|
31
|
-
when :search_more_with_id
|
|
32
|
-
self.send(:include, NetSuite::Actions::SearchMoreWithId::Support)
|
|
33
31
|
when :add
|
|
34
32
|
self.send(:include, NetSuite::Actions::Add::Support)
|
|
35
33
|
when :upsert
|
|
@@ -38,6 +36,8 @@ module NetSuite
|
|
|
38
36
|
self.send(:include, NetSuite::Actions::UpsertList::Support)
|
|
39
37
|
when :delete
|
|
40
38
|
self.send(:include, NetSuite::Actions::Delete::Support)
|
|
39
|
+
when :delete_list
|
|
40
|
+
self.send(:include, NetSuite::Actions::DeleteList::Support)
|
|
41
41
|
when :update
|
|
42
42
|
self.send(:include, NetSuite::Actions::Update::Support)
|
|
43
43
|
when :initialize
|
|
@@ -40,11 +40,24 @@ module NetSuite
|
|
|
40
40
|
rec
|
|
41
41
|
end
|
|
42
42
|
|
|
43
|
+
def <<(item)
|
|
44
|
+
@list ||= []
|
|
45
|
+
@list << self.process_sublist_item(item)
|
|
46
|
+
end
|
|
47
|
+
|
|
43
48
|
protected
|
|
44
49
|
def process_sublist(list)
|
|
45
50
|
list = [ list ] if !list.is_a?(Array)
|
|
46
51
|
|
|
47
52
|
@list = list.map do |item|
|
|
53
|
+
self.process_sublist_item(item)
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def process_sublist_item(item)
|
|
58
|
+
if item.class == self.sublist_class
|
|
59
|
+
item
|
|
60
|
+
else
|
|
48
61
|
self.sublist_class.new(item)
|
|
49
62
|
end
|
|
50
63
|
end
|
data/lib/netsuite/version.rb
CHANGED
data/netsuite.gemspec
CHANGED
|
@@ -6,7 +6,7 @@ Gem::Specification.new do |gem|
|
|
|
6
6
|
gem.email = ['ryan.moran@gmail.com', 'mike@cliffsidemedia.com']
|
|
7
7
|
gem.description = %q{NetSuite SuiteTalk API Wrapper}
|
|
8
8
|
gem.summary = %q{NetSuite SuiteTalk API (SOAP) Wrapper}
|
|
9
|
-
gem.homepage = 'https://github.com/
|
|
9
|
+
gem.homepage = 'https://github.com/NetSweet/netsuite'
|
|
10
10
|
|
|
11
11
|
gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
|
12
12
|
gem.files = `git ls-files`.split("\n")
|