netsuite 0.2.6 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.travis.yml +3 -0
- data/Gemfile +2 -0
- data/README.md +132 -54
- data/lib/netsuite.rb +123 -76
- data/lib/netsuite/actions/add.rb +1 -0
- data/lib/netsuite/actions/delete.rb +1 -0
- data/lib/netsuite/actions/get.rb +1 -0
- data/lib/netsuite/actions/get_all.rb +67 -0
- data/lib/netsuite/actions/get_list.rb +2 -1
- data/lib/netsuite/actions/get_select_value.rb +1 -0
- data/lib/netsuite/actions/initialize.rb +1 -0
- data/lib/netsuite/actions/login.rb +2 -0
- data/lib/netsuite/actions/search.rb +3 -2
- data/lib/netsuite/actions/update.rb +18 -0
- data/lib/netsuite/actions/upsert.rb +1 -0
- data/lib/netsuite/actions/upsert_list.rb +114 -0
- data/lib/netsuite/configuration.rb +5 -0
- data/lib/netsuite/namespaces/file_cabinet.rb +11 -0
- data/lib/netsuite/namespaces/list_emp.rb +12 -0
- data/lib/netsuite/namespaces/list_mkt.rb +12 -0
- data/lib/netsuite/namespaces/list_website.rb +11 -0
- data/lib/netsuite/namespaces/tran_invt.rb +11 -0
- data/lib/netsuite/records/accounting_period.rb +1 -1
- data/lib/netsuite/records/assembly_item.rb +10 -4
- data/lib/netsuite/records/billing_schedule.rb +33 -0
- data/lib/netsuite/records/billing_schedule_milestone.rb +28 -0
- data/lib/netsuite/records/billing_schedule_milestone_list.rb +33 -0
- data/lib/netsuite/records/billing_schedule_recurrence.rb +28 -0
- data/lib/netsuite/records/billing_schedule_recurrence_list.rb +33 -0
- data/lib/netsuite/records/bin.rb +22 -0
- data/lib/netsuite/records/campaign.rb +28 -0
- data/lib/netsuite/records/cash_refund.rb +1 -1
- data/lib/netsuite/records/classification.rb +1 -1
- data/lib/netsuite/records/contact.rb +1 -1
- data/lib/netsuite/records/contact_access_roles.rb +14 -0
- data/lib/netsuite/records/contact_access_roles_list.rb +9 -0
- data/lib/netsuite/records/custom_field.rb +2 -1
- data/lib/netsuite/records/custom_field_list.rb +23 -4
- data/lib/netsuite/records/custom_list.rb +27 -0
- data/lib/netsuite/records/custom_list_custom_value.rb +14 -0
- data/lib/netsuite/records/custom_list_custom_value_list.rb +13 -0
- data/lib/netsuite/records/custom_record.rb +1 -1
- data/lib/netsuite/records/custom_record_type.rb +1 -1
- data/lib/netsuite/records/customer.rb +4 -4
- data/lib/netsuite/records/customer_addressbook.rb +8 -5
- data/lib/netsuite/records/customer_addressbook_list.rb +13 -1
- data/lib/netsuite/records/customer_deposit.rb +3 -2
- data/lib/netsuite/records/customer_payment.rb +1 -1
- data/lib/netsuite/records/customer_refund.rb +1 -1
- data/lib/netsuite/records/department.rb +4 -2
- data/lib/netsuite/records/deposit.rb +1 -1
- data/lib/netsuite/records/deposit_cash_back.rb +2 -2
- data/lib/netsuite/records/deposit_other.rb +2 -2
- data/lib/netsuite/records/discount_item.rb +32 -0
- data/lib/netsuite/records/employee.rb +20 -0
- data/lib/netsuite/records/file.rb +28 -0
- data/lib/netsuite/records/inventory_assignment.rb +24 -0
- data/lib/netsuite/records/inventory_assignment_list.rb +32 -0
- data/lib/netsuite/records/inventory_detail.rb +18 -0
- data/lib/netsuite/records/inventory_transfer.rb +29 -0
- data/lib/netsuite/records/inventory_transfer_inventory.rb +21 -0
- data/lib/netsuite/records/inventory_transfer_inventory_list.rb +33 -0
- data/lib/netsuite/records/item_fulfillment.rb +1 -1
- data/lib/netsuite/records/item_fulfillment_item_list.rb +3 -21
- data/lib/netsuite/records/item_member.rb +21 -0
- data/lib/netsuite/records/journal_entry.rb +1 -1
- data/lib/netsuite/records/kit_item.rb +1 -1
- data/lib/netsuite/records/location.rb +3 -1
- data/lib/netsuite/records/member_list.rb +32 -0
- data/lib/netsuite/records/non_inventory_sale_item.rb +4 -1
- data/lib/netsuite/records/partner.rb +21 -0
- data/lib/netsuite/records/promotion_code.rb +38 -0
- data/lib/netsuite/records/record_ref_list.rb +40 -0
- data/lib/netsuite/records/role_list.rb +25 -0
- data/lib/netsuite/records/sales_order.rb +6 -2
- data/lib/netsuite/records/sales_tax_item.rb +32 -0
- data/lib/netsuite/records/site_category.rb +33 -0
- data/lib/netsuite/records/subsidiary.rb +38 -0
- data/lib/netsuite/records/tax_type.rb +22 -0
- data/lib/netsuite/records/term.rb +1 -1
- data/lib/netsuite/records/units_type.rb +25 -0
- data/lib/netsuite/records/units_type_uom.rb +20 -0
- data/lib/netsuite/records/units_type_uom_list.rb +33 -0
- data/lib/netsuite/records/work_order.rb +38 -0
- data/lib/netsuite/records/work_order_item.rb +31 -0
- data/lib/netsuite/records/work_order_item_list.rb +31 -0
- data/lib/netsuite/support/actions.rb +4 -0
- data/lib/netsuite/support/base.rb +21 -0
- data/lib/netsuite/support/country.rb +273 -0
- data/lib/netsuite/support/search_result.rb +4 -0
- data/lib/netsuite/support/sublist.rb +54 -0
- data/lib/netsuite/version.rb +1 -1
- data/spec/netsuite/actions/search_spec.rb +1 -1
- data/spec/netsuite/actions/update_spec.rb +62 -31
- data/spec/netsuite/actions/upsert_list_spec.rb +112 -0
- data/spec/netsuite/records/account_spec.rb +4 -4
- data/spec/netsuite/records/accounting_period_spec.rb +4 -4
- data/spec/netsuite/records/assembly_item_spec.rb +38 -0
- data/spec/netsuite/records/billing_schedule_milestone_list_spec.rb +24 -0
- data/spec/netsuite/records/billing_schedule_milestone_spec.rb +51 -0
- data/spec/netsuite/records/billing_schedule_recurrence_list_spec.rb +24 -0
- data/spec/netsuite/records/billing_schedule_recurrence_spec.rb +49 -0
- data/spec/netsuite/records/billing_schedule_spec.rb +164 -0
- data/spec/netsuite/records/campaign_spec.rb +43 -0
- data/spec/netsuite/records/cash_refund_spec.rb +1 -1
- data/spec/netsuite/records/classification_spec.rb +2 -2
- data/spec/netsuite/records/credit_memo_spec.rb +4 -4
- data/spec/netsuite/records/custom_field_list_spec.rb +10 -0
- data/spec/netsuite/records/custom_list_spec.rb +21 -0
- data/spec/netsuite/records/custom_record_spec.rb +5 -5
- data/spec/netsuite/records/custom_record_type_spec.rb +5 -5
- data/spec/netsuite/records/customer_addressbook_list_spec.rb +19 -1
- data/spec/netsuite/records/customer_addressbook_spec.rb +42 -13
- data/spec/netsuite/records/customer_payment_spec.rb +4 -4
- data/spec/netsuite/records/customer_refund_spec.rb +4 -4
- data/spec/netsuite/records/customer_spec.rb +80 -6
- data/spec/netsuite/records/department_spec.rb +4 -4
- data/spec/netsuite/records/deposit_spec.rb +22 -4
- data/spec/netsuite/records/discount_item_spec.rb +124 -0
- data/spec/netsuite/records/inventory_item_spec.rb +4 -4
- data/spec/netsuite/records/inventory_transfer_spec.rb +58 -0
- data/spec/netsuite/records/invoice_spec.rb +4 -4
- data/spec/netsuite/records/job_spec.rb +7 -7
- data/spec/netsuite/records/journal_entry_spec.rb +5 -5
- data/spec/netsuite/records/non_inventory_sale_item_spec.rb +4 -4
- data/spec/netsuite/records/payment_method_spec.rb +1 -1
- data/spec/netsuite/records/pomo_code_spec.rb +40 -0
- data/spec/netsuite/records/sales_order_spec.rb +18 -18
- data/spec/netsuite/records/sales_tax_item_spec.rb +30 -0
- data/spec/netsuite/records/service_sale_item_spec.rb +4 -4
- data/spec/netsuite/records/site_category_spec.rb +51 -0
- data/spec/netsuite/records/subsidiary_spec.rb +25 -0
- data/spec/netsuite/records/support_case_spec.rb +8 -8
- data/spec/netsuite/records/tax_type_spec.rb +11 -0
- data/spec/netsuite/records/term_spec.rb +4 -4
- data/spec/netsuite/records/units_type_spec.rb +33 -0
- data/spec/netsuite/records/units_type_uom_list_spec.rb +23 -0
- data/spec/netsuite/records/units_type_uom_spec.rb +14 -0
- data/spec/netsuite/records/work_order_item_list_spec.rb +26 -0
- data/spec/netsuite/records/work_order_item_spec.rb +45 -0
- data/spec/netsuite/records/work_order_spec.rb +92 -0
- data/spec/netsuite/support/record_refs_spec.rb +1 -1
- data/spec/netsuite/support/sublist_spec.rb +36 -0
- data/spec/spec_helper.rb +1 -0
- data/spec/support/fixtures/update/update_customer_error.xml +21 -0
- data/spec/support/fixtures/update/update_customer_multiple_errors.xml +25 -0
- data/spec/support/fixtures/upsert_list/upsert_list_customers.xml +21 -0
- data/spec/support/fixtures/upsert_list/upsert_list_one_customer.xml +17 -0
- data/spec/support/fixtures/upsert_list/upsert_list_with_errors.xml +32 -0
- data/spec/support/read_only_field_matcher.rb +1 -1
- metadata +115 -5
- checksums.yaml +0 -15
data/.travis.yml
ADDED
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
[![Build Status](https://travis-ci.org/NetSweet/netsuite.svg)](https://travis-ci.org/NetSweet/netsuite)
|
2
|
+
|
1
3
|
# NetSuite Ruby SuiteTalk Gem
|
2
4
|
|
3
5
|
* This gem will act as a wrapper around the NetSuite SuiteTalk WebServices API. Wow, that is a mouthful.
|
@@ -66,14 +68,19 @@ end
|
|
66
68
|
|
67
69
|
### Examples
|
68
70
|
|
71
|
+
#### CRUD Operations
|
72
|
+
|
69
73
|
```ruby
|
70
|
-
#
|
74
|
+
# get a customer
|
71
75
|
customer = NetSuite::Records::Customer.get(:internal_id => 4)
|
72
76
|
customer.is_person
|
73
77
|
|
74
78
|
# or
|
75
79
|
NetSuite::Records::Customer.get(4).is_person
|
76
80
|
|
81
|
+
# get a list of customers
|
82
|
+
customers = NetSuite::Records::Customer.get_list(:list => [4, 5, 6])
|
83
|
+
|
77
84
|
# randomly assign a task
|
78
85
|
customer_support_reps = [12345, 12346]
|
79
86
|
|
@@ -91,6 +98,56 @@ task.add
|
|
91
98
|
|
92
99
|
task.update :message => 'New Message'
|
93
100
|
|
101
|
+
# using get_select_value with a custom record
|
102
|
+
NetSuite::Records::BaseRefList.get_select_value(
|
103
|
+
field: 'custrecord_something',
|
104
|
+
customRecordType: {
|
105
|
+
'@internalId' => 10,
|
106
|
+
'@xsi:type' => 'customRecord'
|
107
|
+
}
|
108
|
+
)
|
109
|
+
|
110
|
+
# updating a custom field list
|
111
|
+
# you need to push ALL the values of ALL of the custom fields that you want set on the record
|
112
|
+
# you can't just push the values of the fields that you want to update: all of the values of
|
113
|
+
# other fields will then fall back to their default values
|
114
|
+
contact = NetSuite::Records::Contact.get(12345)
|
115
|
+
contact.custom_field_list.custentity_alistfield = { internal_id: 1 }
|
116
|
+
contact.custom_field_list.custentity_abooleanfield = true
|
117
|
+
contact.update(custom_field_list: contact.custom_field_list)
|
118
|
+
|
119
|
+
# getting a custom record
|
120
|
+
record = NetSuite::Records::CustomRecord.get(
|
121
|
+
# custom record type
|
122
|
+
type_id: 10,
|
123
|
+
# reference to instance of the custom record type
|
124
|
+
internal_id: 100
|
125
|
+
)
|
126
|
+
|
127
|
+
# getting a list of custom records
|
128
|
+
records = NetSuite::Records::CustomRecord.get_list(
|
129
|
+
# netsuite internalIDs
|
130
|
+
list: [1,2,3],
|
131
|
+
# only needed for a custom record
|
132
|
+
type_id: 1234
|
133
|
+
)
|
134
|
+
|
135
|
+
# adding a custom record
|
136
|
+
record = NetSuite::Records::CustomRecord.new
|
137
|
+
record.rec_type = NetSuite::Records::CustomRecord.new(internal_id: 10)
|
138
|
+
record.custom_field_list.custrecord_locationstate = "New Jersey"
|
139
|
+
record.add
|
140
|
+
|
141
|
+
# updating a custom record
|
142
|
+
record = NetSuite::Records::CustomRecord.new(internal_id: 100)
|
143
|
+
record.custom_field_list.custrecord_locationstate = "New Jersey"
|
144
|
+
record.update(custom_field_list: record.custom_field_list, rec_type: NetSuite::Records::CustomRecord.new(internal_id: 10))
|
145
|
+
|
146
|
+
```
|
147
|
+
|
148
|
+
#### Searching
|
149
|
+
|
150
|
+
```ruby
|
94
151
|
# basic search
|
95
152
|
search = NetSuite::Records::Customer.search({
|
96
153
|
basic: [
|
@@ -104,8 +161,17 @@ search = NetSuite::Records::Customer.search({
|
|
104
161
|
|
105
162
|
`open https://system.netsuite.com/app/common/entity/custjob.nl?id=#{search.results.first.internal_id}`
|
106
163
|
|
164
|
+
# searching for custom records
|
165
|
+
NetSuite::Records::CustomRecord.search(basic: [
|
166
|
+
{
|
167
|
+
field: 'recType',
|
168
|
+
operator: 'is',
|
169
|
+
# custom record type
|
170
|
+
value: NetSuite::Records::CustomRecordRef.new(:internal_id => 10),
|
171
|
+
}]).results
|
172
|
+
|
107
173
|
# advanced search building on saved search
|
108
|
-
|
174
|
+
NetSuite::Records::Customer.search({
|
109
175
|
saved: 500, # your saved search internalId
|
110
176
|
basic: [
|
111
177
|
{
|
@@ -127,20 +193,25 @@ search = NetSuite::Records::Customer.search({
|
|
127
193
|
{
|
128
194
|
field: 'custentity_acustomfield',
|
129
195
|
operator: 'anyOf',
|
130
|
-
# type is needed for
|
196
|
+
# type is needed for all search fields
|
131
197
|
type: 'SearchMultiSelectCustomField',
|
132
198
|
value: [
|
133
199
|
NetSuite::Records::CustomRecordRef.new(:internal_id => 1),
|
134
200
|
NetSuite::Records::CustomRecordRef.new(:internal_id => 2),
|
135
201
|
]
|
136
|
-
}
|
202
|
+
},
|
203
|
+
{
|
204
|
+
field: 'custbody_internetorder',
|
205
|
+
type: 'SearchBooleanCustomField',
|
206
|
+
value: true
|
207
|
+
}
|
137
208
|
]
|
138
209
|
}
|
139
210
|
]
|
140
|
-
})
|
211
|
+
}).results
|
141
212
|
|
142
|
-
# advanced search from
|
143
|
-
|
213
|
+
# advanced search from scratch
|
214
|
+
NetSuite::Records::Transaction.search({
|
144
215
|
criteria: {
|
145
216
|
basic: [
|
146
217
|
{
|
@@ -171,7 +242,6 @@ search = NetSuite::Records::Transaction.search({
|
|
171
242
|
}
|
172
243
|
],
|
173
244
|
|
174
|
-
|
175
245
|
# equivilent to the 'Account' label in the GUI
|
176
246
|
accountJoin: [
|
177
247
|
{
|
@@ -228,7 +298,7 @@ search = NetSuite::Records::Transaction.search({
|
|
228
298
|
preferences: {
|
229
299
|
page_size: 10
|
230
300
|
}
|
231
|
-
})
|
301
|
+
}).results
|
232
302
|
|
233
303
|
# basic search with pagination / SearchMorewithId
|
234
304
|
search = NetSuite::Records::Customer.search(
|
@@ -251,6 +321,53 @@ search.results_in_batches do |batch|
|
|
251
321
|
puts batch.map(&:internal_id)
|
252
322
|
end
|
253
323
|
|
324
|
+
# item search
|
325
|
+
NetSuite::Records::InventoryItem.search({
|
326
|
+
criteria: {
|
327
|
+
basic: [
|
328
|
+
{
|
329
|
+
field: 'type',
|
330
|
+
operator: 'anyOf',
|
331
|
+
type: 'SearchEnumMultiSelectField',
|
332
|
+
value: [
|
333
|
+
'_inventoryItem',
|
334
|
+
|
335
|
+
# note that the naming conventions aren't consistent: AssemblyItem != _assemblyItem
|
336
|
+
'_assembly'
|
337
|
+
]
|
338
|
+
},
|
339
|
+
{
|
340
|
+
field: 'isInactive',
|
341
|
+
value: false
|
342
|
+
}
|
343
|
+
]
|
344
|
+
}
|
345
|
+
}).results.first
|
346
|
+
|
347
|
+
# set body_fields_only = false to include the majority of lists associated with records in the XML response
|
348
|
+
# Some lists you just can't include with searches (a customer's AddressBookList, for example)
|
349
|
+
|
350
|
+
# In order to get the full record data for those records whose lists aren't included when body_fields_only = false
|
351
|
+
# you will have to run a get_list call on the resulting internalIds returned from the search you've executed
|
352
|
+
|
353
|
+
search = NetSuite::Records::File.search({
|
354
|
+
preferences: {
|
355
|
+
body_fields_only: false,
|
356
|
+
page_size: 20
|
357
|
+
}
|
358
|
+
})
|
359
|
+
|
360
|
+
search.results_in_batches do |batch|
|
361
|
+
batch.each do |file|
|
362
|
+
next unless file.file_type == "_JAVASCRIPT"
|
363
|
+
puts Base64.decode64(file.content)
|
364
|
+
end
|
365
|
+
end
|
366
|
+
```
|
367
|
+
|
368
|
+
#### Non-standard Operations
|
369
|
+
|
370
|
+
```ruby
|
254
371
|
# making a call that hasn't been implemented yet
|
255
372
|
NetSuite::Configuration.connection.call :get_customization_id, message: {
|
256
373
|
'platformMsgs:customizationType' => { '@getCustomizationType' => 'customRecordType'},
|
@@ -260,50 +377,11 @@ NetSuite::Configuration.connection.call :get_customization_id, message: {
|
|
260
377
|
server_time_response = NetSuite::Configuration.connection.call :get_server_time
|
261
378
|
server_time_response.body[:get_server_time_response][:get_server_time_result][:server_time]
|
262
379
|
|
263
|
-
#
|
264
|
-
NetSuite::
|
265
|
-
|
266
|
-
|
267
|
-
'@internalId' => 10,
|
268
|
-
'@xsi:type' => 'customRecord'
|
380
|
+
# getting a list of states
|
381
|
+
states = NetSuite::Configuration.connection.call(:get_all, message: {
|
382
|
+
'platformCore:record' => {
|
383
|
+
'@recordType' => 'state'
|
269
384
|
}
|
270
|
-
)
|
271
|
-
|
272
|
-
# updating a custom field list
|
273
|
-
# you need to push ALL the values of ALL of the custom fields that you want set on the record
|
274
|
-
# you can't just push the values of the fields that you want to update: all of the values of
|
275
|
-
# other fields will then fall back to their default values
|
276
|
-
contact = NetSuite::Records::Contact.get(12345)
|
277
|
-
contact.custom_field_list.custentity_alistfield = { internal_id: 1 }
|
278
|
-
contact.custom_field_list.custentity_abooleanfield = true
|
279
|
-
contact.update(custom_field_list: contact.custom_field_list)
|
280
|
-
|
281
|
-
# the getList operation
|
282
|
-
NetSuite::Records::CustomRecord.get_list(
|
283
|
-
# netsuite internalIDs
|
284
|
-
list: [1,2,3],
|
285
|
-
# only needed for a custom record
|
286
|
-
type_id: 1234
|
287
|
-
).each do |record|
|
288
|
-
# do your thing...
|
289
|
-
end
|
290
|
-
|
291
|
-
# getting a custom record
|
292
|
-
record = NetSuite::Records::CustomRecord.get(
|
293
|
-
# custom record type
|
294
|
-
type_id: 10,
|
295
|
-
# reference to instance of the custom record type
|
296
|
-
internal_id: 100
|
297
|
-
)
|
298
|
-
|
299
|
-
# adding a custom record
|
300
|
-
record = NetSuite::Records::CustomRecord.new
|
301
|
-
record.rec_type = NetSuite::Records::CustomRecord.new(internal_id: 10)
|
302
|
-
record.custom_field_list.custrecord_locationstate = "New Jersey"
|
303
|
-
record.add
|
304
|
-
|
305
|
-
# updating a custom record
|
306
|
-
record = NetSuite::Records::CustomRecord.new(internal_id: 100)
|
307
|
-
record.custom_field_list.custrecord_locationstate = "New Jersey"
|
308
|
-
record.update(custom_field_list: record.custom_field_list, rec_type: NetSuite::Records::CustomRecord.new(internal_id: 10))
|
385
|
+
})
|
386
|
+
states.to_array.first[:get_all_response][:get_all_result][:record_list][:record].map { |r| { country: r[:country], abbr: r[:shortname], name: r[:full_name] } }
|
309
387
|
```
|
data/lib/netsuite.rb
CHANGED
@@ -12,118 +12,165 @@ module NetSuite
|
|
12
12
|
|
13
13
|
module Namespaces
|
14
14
|
autoload :ActSched, 'netsuite/namespaces/act_sched'
|
15
|
+
autoload :FileCabinet, 'netsuite/namespaces/file_cabinet'
|
15
16
|
autoload :ListAcct, 'netsuite/namespaces/list_acct'
|
16
17
|
autoload :ListRel, 'netsuite/namespaces/list_rel'
|
17
18
|
autoload :ListSupport, 'netsuite/namespaces/list_support'
|
19
|
+
autoload :ListWebsite, 'netsuite/namespaces/list_website'
|
18
20
|
autoload :PlatformCommon, 'netsuite/namespaces/platform_common'
|
19
21
|
autoload :PlatformCore, 'netsuite/namespaces/platform_core'
|
20
22
|
autoload :TranBank, 'netsuite/namespaces/tran_bank'
|
21
23
|
autoload :TranCust, 'netsuite/namespaces/tran_cust'
|
22
24
|
autoload :TranGeneral, 'netsuite/namespaces/tran_general'
|
25
|
+
autoload :TranInvt, 'netsuite/namespaces/tran_invt'
|
23
26
|
autoload :TranSales, 'netsuite/namespaces/tran_sales'
|
24
27
|
autoload :SetupCustom, 'netsuite/namespaces/setup_custom'
|
28
|
+
autoload :ListEmp, 'netsuite/namespaces/list_emp'
|
29
|
+
autoload :ListMkt, 'netsuite/namespaces/list_mkt'
|
25
30
|
end
|
26
31
|
|
27
32
|
module Support
|
28
33
|
autoload :Actions, 'netsuite/support/actions'
|
29
34
|
autoload :Attributes, 'netsuite/support/attributes'
|
35
|
+
autoload :Base, 'netsuite/support/base'
|
30
36
|
autoload :Fields, 'netsuite/support/fields'
|
37
|
+
autoload :Sublist, 'netsuite/support/sublist'
|
31
38
|
autoload :RecordRefs, 'netsuite/support/record_refs'
|
32
39
|
autoload :Records, 'netsuite/support/records'
|
33
40
|
autoload :Requests, 'netsuite/support/requests'
|
34
41
|
autoload :SearchResult, 'netsuite/support/search_result'
|
42
|
+
autoload :Country, 'netsuite/support/country'
|
35
43
|
end
|
36
44
|
|
37
45
|
module Actions
|
38
46
|
autoload :Add, 'netsuite/actions/add'
|
39
47
|
autoload :Delete, 'netsuite/actions/delete'
|
40
48
|
autoload :Get, 'netsuite/actions/get'
|
49
|
+
autoload :GetAll, 'netsuite/actions/get_all'
|
41
50
|
autoload :GetList, 'netsuite/actions/get_list'
|
42
51
|
autoload :GetSelectValue, 'netsuite/actions/get_select_value'
|
43
52
|
autoload :Initialize, 'netsuite/actions/initialize'
|
44
53
|
autoload :Update, 'netsuite/actions/update'
|
45
54
|
autoload :Upsert, 'netsuite/actions/upsert'
|
55
|
+
autoload :UpsertList, 'netsuite/actions/upsert_list'
|
46
56
|
autoload :Search, 'netsuite/actions/search'
|
47
57
|
autoload :Login, 'netsuite/actions/login'
|
48
58
|
end
|
49
59
|
|
50
60
|
module Records
|
51
|
-
autoload :AssemblyItem,
|
52
|
-
autoload :Account,
|
53
|
-
autoload :AccountingPeriod,
|
54
|
-
autoload :BaseRefList,
|
55
|
-
autoload :BillAddress,
|
56
|
-
autoload :
|
57
|
-
autoload :
|
58
|
-
autoload :
|
59
|
-
autoload :
|
60
|
-
autoload :
|
61
|
-
autoload :
|
62
|
-
autoload :
|
63
|
-
autoload :
|
64
|
-
autoload :
|
65
|
-
autoload :
|
66
|
-
autoload :
|
67
|
-
autoload :
|
68
|
-
autoload :
|
69
|
-
autoload :
|
70
|
-
autoload :
|
71
|
-
autoload :
|
72
|
-
autoload :
|
73
|
-
autoload :
|
74
|
-
autoload :
|
75
|
-
autoload :
|
76
|
-
autoload :
|
77
|
-
autoload :
|
78
|
-
autoload :
|
79
|
-
autoload :
|
80
|
-
autoload :
|
81
|
-
autoload :
|
82
|
-
autoload :
|
83
|
-
autoload :
|
84
|
-
autoload :
|
85
|
-
autoload :
|
86
|
-
autoload :
|
87
|
-
autoload :
|
88
|
-
autoload :
|
89
|
-
autoload :
|
90
|
-
autoload :
|
91
|
-
autoload :
|
92
|
-
autoload :
|
93
|
-
autoload :
|
94
|
-
autoload :
|
95
|
-
autoload :
|
96
|
-
autoload :
|
97
|
-
autoload :
|
98
|
-
autoload :
|
99
|
-
autoload :
|
100
|
-
autoload :
|
101
|
-
autoload :
|
102
|
-
autoload :
|
103
|
-
autoload :
|
104
|
-
autoload :
|
105
|
-
autoload :
|
106
|
-
autoload :
|
107
|
-
autoload :
|
108
|
-
autoload :
|
109
|
-
autoload :
|
110
|
-
autoload :
|
111
|
-
autoload :
|
112
|
-
autoload :
|
113
|
-
autoload :
|
114
|
-
autoload :
|
115
|
-
autoload :
|
116
|
-
autoload :
|
117
|
-
autoload :
|
118
|
-
autoload :
|
119
|
-
autoload :
|
120
|
-
autoload :
|
121
|
-
autoload :
|
122
|
-
autoload :
|
123
|
-
autoload :
|
124
|
-
autoload :
|
125
|
-
autoload :
|
126
|
-
autoload :
|
61
|
+
autoload :AssemblyItem, 'netsuite/records/assembly_item'
|
62
|
+
autoload :Account, 'netsuite/records/account'
|
63
|
+
autoload :AccountingPeriod, 'netsuite/records/accounting_period'
|
64
|
+
autoload :BaseRefList, 'netsuite/records/base_ref_list'
|
65
|
+
autoload :BillAddress, 'netsuite/records/bill_address'
|
66
|
+
autoload :BillingSchedule, 'netsuite/records/billing_schedule'
|
67
|
+
autoload :BillingScheduleMilestone, 'netsuite/records/billing_schedule_milestone'
|
68
|
+
autoload :BillingScheduleMilestoneList, 'netsuite/records/billing_schedule_milestone_list'
|
69
|
+
autoload :BillingScheduleRecurrence, 'netsuite/records/billing_schedule_recurrence'
|
70
|
+
autoload :BillingScheduleRecurrenceList, 'netsuite/records/billing_schedule_recurrence_list'
|
71
|
+
autoload :BinNumberList, 'netsuite/records/bin_number_list'
|
72
|
+
autoload :CashSale, 'netsuite/records/cash_sale'
|
73
|
+
autoload :CashRefund, 'netsuite/records/cash_refund'
|
74
|
+
autoload :CashRefundItem, 'netsuite/records/cash_refund_item'
|
75
|
+
autoload :CashRefundItemList, 'netsuite/records/cash_refund_item_list'
|
76
|
+
autoload :Campaign, 'netsuite/records/campaign'
|
77
|
+
autoload :Classification, 'netsuite/records/classification'
|
78
|
+
autoload :CreditMemo, 'netsuite/records/credit_memo'
|
79
|
+
autoload :CreditMemoApply, 'netsuite/records/credit_memo_apply'
|
80
|
+
autoload :CreditMemoApplyList, 'netsuite/records/credit_memo_apply_list'
|
81
|
+
autoload :CreditMemoItem, 'netsuite/records/credit_memo_item'
|
82
|
+
autoload :CreditMemoItemList, 'netsuite/records/credit_memo_item_list'
|
83
|
+
autoload :CustomField, 'netsuite/records/custom_field'
|
84
|
+
autoload :CustomFieldList, 'netsuite/records/custom_field_list'
|
85
|
+
autoload :CustomList, 'netsuite/records/custom_list'
|
86
|
+
autoload :CustomRecord, 'netsuite/records/custom_record'
|
87
|
+
autoload :CustomRecordRef, 'netsuite/records/custom_record_ref'
|
88
|
+
autoload :CustomRecordType, 'netsuite/records/custom_record_type'
|
89
|
+
autoload :CustomListCustomValue, 'netsuite/records/custom_list_custom_value'
|
90
|
+
autoload :CustomListCustomValueList, 'netsuite/records/custom_list_custom_value_list'
|
91
|
+
autoload :Customer, 'netsuite/records/customer'
|
92
|
+
autoload :CustomerAddressbook, 'netsuite/records/customer_addressbook'
|
93
|
+
autoload :CustomerAddressbookList, 'netsuite/records/customer_addressbook_list'
|
94
|
+
autoload :CustomerCategory, 'netsuite/records/customer_category'
|
95
|
+
autoload :CustomerDeposit, 'netsuite/records/customer_deposit'
|
96
|
+
autoload :CustomerPayment, 'netsuite/records/customer_payment'
|
97
|
+
autoload :CustomerPaymentApply, 'netsuite/records/customer_payment_apply'
|
98
|
+
autoload :CustomerPaymentApplyList, 'netsuite/records/customer_payment_apply_list'
|
99
|
+
autoload :CustomerRefund, 'netsuite/records/customer_refund'
|
100
|
+
autoload :CustomerRefundApply, 'netsuite/records/customer_refund_apply'
|
101
|
+
autoload :CustomerRefundApplyList, 'netsuite/records/customer_refund_apply_list'
|
102
|
+
autoload :CustomerRefundDeposit, 'netsuite/records/customer_refund_deposit'
|
103
|
+
autoload :CustomerRefundDepositList, 'netsuite/records/customer_refund_deposit_list'
|
104
|
+
autoload :ContactList, 'netsuite/records/contact_list'
|
105
|
+
autoload :Contact, 'netsuite/records/contact'
|
106
|
+
autoload :ContactAccessRoles, 'netsuite/records/contact_access_roles'
|
107
|
+
autoload :ContactAccessRolesList, 'netsuite/records/contact_access_roles_list'
|
108
|
+
autoload :Department, 'netsuite/records/department'
|
109
|
+
autoload :Deposit, 'netsuite/records/deposit'
|
110
|
+
autoload :DepositPayment, 'netsuite/records/deposit_payment'
|
111
|
+
autoload :DepositPaymentList, 'netsuite/records/deposit_payment_list'
|
112
|
+
autoload :DepositOther, 'netsuite/records/deposit_other'
|
113
|
+
autoload :DepositOtherList, 'netsuite/records/deposit_other_list'
|
114
|
+
autoload :DepositCashBack, 'netsuite/records/deposit_cash_back'
|
115
|
+
autoload :DepositCashBackList, 'netsuite/records/deposit_cash_back_list'
|
116
|
+
autoload :DiscountItem, 'netsuite/records/discount_item'
|
117
|
+
autoload :Duration, 'netsuite/records/duration'
|
118
|
+
autoload :Employee, 'netsuite/records/employee'
|
119
|
+
autoload :File, 'netsuite/records/file'
|
120
|
+
autoload :InventoryAssignment, 'netsuite/records/inventory_assignment'
|
121
|
+
autoload :InventoryAssignmentList, 'netsuite/records/inventory_assignment_list'
|
122
|
+
autoload :InventoryDetail, 'netsuite/records/inventory_detail'
|
123
|
+
autoload :InventoryItem, 'netsuite/records/inventory_item'
|
124
|
+
autoload :InventoryTransfer, 'netsuite/records/inventory_transfer'
|
125
|
+
autoload :InventoryTransferInventory, 'netsuite/records/inventory_transfer_inventory'
|
126
|
+
autoload :InventoryTransferInventoryList, 'netsuite/records/inventory_transfer_inventory_list'
|
127
|
+
autoload :Invoice, 'netsuite/records/invoice'
|
128
|
+
autoload :InvoiceItem, 'netsuite/records/invoice_item'
|
129
|
+
autoload :InvoiceItemList, 'netsuite/records/invoice_item_list'
|
130
|
+
autoload :ItemFulfillment, 'netsuite/records/item_fulfillment'
|
131
|
+
autoload :ItemFulfillmentItem, 'netsuite/records/item_fulfillment_item'
|
132
|
+
autoload :ItemFulfillmentItemList, 'netsuite/records/item_fulfillment_item_list'
|
133
|
+
autoload :ItemFulfillmentPackage, 'netsuite/records/item_fulfillment_package'
|
134
|
+
autoload :ItemFulfillmentPackageList, 'netsuite/records/item_fulfillment_package_list'
|
135
|
+
autoload :ItemMember, 'netsuite/records/item_member'
|
136
|
+
autoload :Job, 'netsuite/records/job'
|
137
|
+
autoload :JournalEntry, 'netsuite/records/journal_entry'
|
138
|
+
autoload :JournalEntryLine, 'netsuite/records/journal_entry_line'
|
139
|
+
autoload :JournalEntryLineList, 'netsuite/records/journal_entry_line_list'
|
140
|
+
autoload :KitItem, 'netsuite/records/kit_item'
|
141
|
+
autoload :Location, 'netsuite/records/location'
|
142
|
+
autoload :LocationsList, 'netsuite/records/locations_list'
|
143
|
+
autoload :MatrixOptionList, 'netsuite/records/matrix_option_list'
|
144
|
+
autoload :MemberList, 'netsuite/records/member_list'
|
145
|
+
autoload :NonInventorySaleItem, 'netsuite/records/non_inventory_sale_item'
|
146
|
+
autoload :Partner, 'netsuite/records/partner'
|
147
|
+
autoload :PaymentMethod, 'netsuite/records/payment_method'
|
148
|
+
autoload :PhoneCall, 'netsuite/records/phone_call'
|
149
|
+
autoload :PricingMatrix, 'netsuite/records/pricing_matrix'
|
150
|
+
autoload :PromotionCode, 'netsuite/records/promotion_code'
|
151
|
+
autoload :RecordRef, 'netsuite/records/record_ref'
|
152
|
+
autoload :RecordRefList, 'netsuite/records/record_ref_list'
|
153
|
+
autoload :RevRecTemplate, 'netsuite/records/rev_rec_template'
|
154
|
+
autoload :RoleList, 'netsuite/records/role_list'
|
155
|
+
autoload :SalesOrder, 'netsuite/records/sales_order'
|
156
|
+
autoload :SalesOrderItem, 'netsuite/records/sales_order_item'
|
157
|
+
autoload :SalesOrderItemList, 'netsuite/records/sales_order_item_list'
|
158
|
+
autoload :SalesTaxItem, 'netsuite/records/sales_tax_item'
|
159
|
+
autoload :ServiceSaleItem, 'netsuite/records/service_sale_item'
|
160
|
+
autoload :ShipAddress, 'netsuite/records/ship_address'
|
161
|
+
autoload :SiteCategory, 'netsuite/records/site_category'
|
162
|
+
autoload :Subsidiary, 'netsuite/records/subsidiary'
|
163
|
+
autoload :SupportCase, 'netsuite/records/support_case'
|
164
|
+
autoload :TaxType, 'netsuite/records/tax_type'
|
165
|
+
autoload :Task, 'netsuite/records/task'
|
166
|
+
autoload :Term, 'netsuite/records/term'
|
167
|
+
autoload :Transaction, 'netsuite/records/transaction'
|
168
|
+
autoload :UnitsType, 'netsuite/records/units_type'
|
169
|
+
autoload :UnitsTypeUomList, 'netsuite/records/units_type_uom_list'
|
170
|
+
autoload :UnitsTypeUom, 'netsuite/records/units_type_uom'
|
171
|
+
autoload :WorkOrder, 'netsuite/records/work_order'
|
172
|
+
autoload :WorkOrderItem, 'netsuite/records/work_order_item'
|
173
|
+
autoload :WorkOrderItemList, 'netsuite/records/work_order_item_list'
|
127
174
|
end
|
128
175
|
|
129
176
|
def self.configure(&block)
|