netsuite 0.8.10 → 0.8.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. checksums.yaml +4 -4
  2. data/.github/FUNDING.yml +1 -0
  3. data/.github/dependabot.yml +14 -0
  4. data/.github/workflows/codeql-analysis.yml +70 -0
  5. data/.github/workflows/main.yml +7 -4
  6. data/Gemfile +5 -3
  7. data/HISTORY.md +27 -2
  8. data/README.md +13 -18
  9. data/lib/netsuite/actions/add.rb +5 -1
  10. data/lib/netsuite/actions/attach_file.rb +87 -0
  11. data/lib/netsuite/actions/search.rb +19 -6
  12. data/lib/netsuite/records/account.rb +0 -1
  13. data/lib/netsuite/records/accounting_period.rb +1 -1
  14. data/lib/netsuite/records/assembly_component.rb +0 -2
  15. data/lib/netsuite/records/assembly_item.rb +0 -1
  16. data/lib/netsuite/records/assembly_unbuild.rb +0 -1
  17. data/lib/netsuite/records/cash_refund.rb +0 -1
  18. data/lib/netsuite/records/cash_sale.rb +1 -2
  19. data/lib/netsuite/records/contact.rb +0 -1
  20. data/lib/netsuite/records/credit_memo.rb +0 -1
  21. data/lib/netsuite/records/currency_rate.rb +0 -1
  22. data/lib/netsuite/records/custom_record.rb +1 -1
  23. data/lib/netsuite/records/customer.rb +0 -1
  24. data/lib/netsuite/records/customer_deposit.rb +0 -1
  25. data/lib/netsuite/records/customer_payment.rb +0 -1
  26. data/lib/netsuite/records/customer_refund.rb +0 -1
  27. data/lib/netsuite/records/deposit.rb +0 -1
  28. data/lib/netsuite/records/deposit_application.rb +0 -1
  29. data/lib/netsuite/records/description_item.rb +1 -1
  30. data/lib/netsuite/records/estimate.rb +0 -1
  31. data/lib/netsuite/records/inbound_shipment.rb +0 -1
  32. data/lib/netsuite/records/inventory_item.rb +236 -37
  33. data/lib/netsuite/records/inventory_number.rb +0 -1
  34. data/lib/netsuite/records/invoice.rb +1 -2
  35. data/lib/netsuite/records/item_fulfillment.rb +0 -1
  36. data/lib/netsuite/records/item_group.rb +1 -1
  37. data/lib/netsuite/records/item_option_custom_field.rb +52 -0
  38. data/lib/netsuite/records/item_receipt.rb +0 -1
  39. data/lib/netsuite/records/item_vendor.rb +10 -1
  40. data/lib/netsuite/records/job.rb +0 -1
  41. data/lib/netsuite/records/kit_item.rb +1 -1
  42. data/lib/netsuite/records/location.rb +0 -1
  43. data/lib/netsuite/records/lot_numbered_inventory_item.rb +225 -81
  44. data/lib/netsuite/records/matrix_option_list.rb +16 -0
  45. data/lib/netsuite/records/non_inventory_resale_item.rb +156 -20
  46. data/lib/netsuite/records/non_inventory_sale_item.rb +133 -21
  47. data/lib/netsuite/records/opportunity.rb +0 -1
  48. data/lib/netsuite/records/other_charge_sale_item.rb +1 -1
  49. data/lib/netsuite/records/payment_item.rb +1 -1
  50. data/lib/netsuite/records/payroll_item.rb +0 -1
  51. data/lib/netsuite/records/purchase_order.rb +0 -1
  52. data/lib/netsuite/records/return_authorization.rb +1 -0
  53. data/lib/netsuite/records/sales_order.rb +1 -2
  54. data/lib/netsuite/records/serialized_inventory_item.rb +1 -1
  55. data/lib/netsuite/records/serialized_inventory_item_location.rb +0 -1
  56. data/lib/netsuite/records/service_resale_item.rb +123 -19
  57. data/lib/netsuite/records/service_sale_item.rb +0 -1
  58. data/lib/netsuite/records/subsidiary.rb +0 -1
  59. data/lib/netsuite/records/subtotal_item.rb +1 -1
  60. data/lib/netsuite/records/transfer_order.rb +0 -1
  61. data/lib/netsuite/records/translation.rb +17 -0
  62. data/lib/netsuite/records/translation_list.rb +11 -0
  63. data/lib/netsuite/records/vendor.rb +0 -1
  64. data/lib/netsuite/records/vendor_bill.rb +0 -1
  65. data/lib/netsuite/records/work_order.rb +0 -1
  66. data/lib/netsuite/records/work_order_item.rb +0 -1
  67. data/lib/netsuite/support/actions.rb +2 -0
  68. data/lib/netsuite/support/fields.rb +2 -0
  69. data/lib/netsuite/support/records.rb +9 -1
  70. data/lib/netsuite/utilities.rb +5 -0
  71. data/lib/netsuite/version.rb +1 -1
  72. data/lib/netsuite.rb +4 -0
  73. data/netsuite.gemspec +2 -2
  74. data/spec/netsuite/actions/add_spec.rb +36 -0
  75. data/spec/netsuite/actions/attach_file_spec.rb +59 -0
  76. data/spec/netsuite/actions/search_spec.rb +205 -0
  77. data/spec/netsuite/records/inventory_item_spec.rb +239 -22
  78. data/spec/netsuite/records/invoice_spec.rb +29 -0
  79. data/spec/netsuite/records/item_option_custom_field_spec.rb +27 -0
  80. data/spec/netsuite/records/item_vendor_list_spec.rb +2 -5
  81. data/spec/netsuite/records/item_vendor_spec.rb +14 -2
  82. data/spec/netsuite/records/lot_numbered_inventory_item_spec.rb +247 -0
  83. data/spec/netsuite/records/matrix_option_list_spec.rb +26 -0
  84. data/spec/netsuite/records/non_inventory_resale_item_spec.rb +159 -24
  85. data/spec/netsuite/records/non_inventory_sale_item_spec.rb +135 -22
  86. data/spec/netsuite/records/return_authorization_spec.rb +62 -0
  87. data/spec/netsuite/records/sales_order_spec.rb +29 -0
  88. data/spec/netsuite/records/service_resale_item_spec.rb +122 -17
  89. data/spec/netsuite/records/translation_list_spec.rb +34 -0
  90. data/spec/netsuite/records/translation_spec.rb +28 -0
  91. data/spec/netsuite/support/fields_spec.rb +16 -4
  92. data/spec/netsuite/support/search_result_spec.rb +12 -0
  93. data/spec/netsuite/utilities_spec.rb +10 -2
  94. data/spec/support/fixtures/add/add_file.xml +20 -0
  95. data/spec/support/fixtures/attach/attach_file_to_sales_order.xml +16 -0
  96. data/spec/support/fixtures/attach/attach_file_to_sales_order_error.xml +20 -0
  97. data/spec/support/fixtures/search/basic_search_contact.xml +39 -0
  98. data/spec/support/fixtures/search/single_search_result.xml +46 -0
  99. metadata +37 -8
@@ -9,97 +9,241 @@ module NetSuite
9
9
 
10
10
  # http://www.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2018_2/schema/record/lotnumberedinventoryitem.html
11
11
 
12
- # TODO
13
- # countryOfManufacture Country
14
- # hazmatPackingGroup HazmatPackingGroup
15
- # accountingBookDetailList ItemAccountingBookDetailList
16
- # costEstimateType ItemCostEstimateType
17
- # costingMethod ItemCostingMethod
18
- # invtClassification ItemInvtClassification
19
- # matrixType ItemMatrixType
20
- # itemOptionsList ItemOptionsList
21
- # outOfStockBehavior ItemOutOfStockBehavior
22
- # overallQuantityPricingType ItemOverallQuantityPricingType
23
- # preferenceCriterion ItemPreferenceCriterion
24
- # itemVendorList ItemVendorList
25
- # weightUnit ItemWeightUnit
26
- # hierarchyVersionsList LotNumberedInventoryItemHierarchyVersionsList
27
- # numbersList LotNumberedInventoryItemNumbersList
28
- # periodicLotSizeType PeriodicLotSizeType
29
- # presentationItemList PresentationItemList
30
- # productFeedList ProductFeedList
31
-
32
- field :pricing_matrix, PricingMatrix
33
- field :custom_field_list, CustomFieldList
34
12
  field :bin_number_list, BinNumberList
35
- field :locations_list, LocationsList
13
+ field :custom_field_list, CustomFieldList
14
+ field :item_number_options_list, RecordRefList
15
+ field :item_ship_method_list, RecordRefList
36
16
  field :item_vendor_list, ItemVendorList
17
+ field :locations_list, LocationsList
37
18
  field :matrix_option_list, MatrixOptionList
19
+ field :pricing_matrix, PricingMatrix
38
20
  field :subsidiary_list, RecordRefList
21
+ # TODO: field :accounting_book_detail_list, ItemAccountingBookDetailList
22
+ # TODO: field :hierarchy_versions_list, LotNumberedInventoryItemHierarchyVersionsList
23
+ # TODO: field :item_options_list, ItemOptionsList
24
+ # TODO: field :numbers_list, LotNumberedInventoryItemNumbersList
25
+ # TODO: field :presentation_item_list, PresentationItemList
26
+ # TODO: field :product_feed_list, ProductFeedList
27
+ # TODO: field :site_category_list, SiteCategoryList
28
+ field :translations_list, TranslationList
39
29
 
40
30
  actions :get, :get_list, :add, :delete, :search, :update, :upsert, :update_list
41
31
 
42
- record_refs :alternate_demand_source_item, :asset_account, :bill_exch_rate_variance_acct,
43
- :billing_schedule, :bill_price_variance_acct, :bill_qty_variance_acct,
44
- :klass, :cogs_account, :cost_category, :create_revenue_plans_on,
45
- :custom_form, :default_item_ship_method, :deferred_revenue_account,
46
- :demand_source, :department, :dropship_expense_account, :gain_loss_account,
47
- :income_account, :interco_cogs_account, :interco_income_account,
48
- :issue_product, :item_revenue_category, :location, :parent, :preferred_location,
49
- :pricing_group, :purchase_price_variance_acct, :purchase_tax_code, :purchase_unit,
50
- :quantity_pricing_schedule, :revenue_allocation_group, :revenue_recognition_rule,
51
- :rev_rec_forecast_rule, :rev_rec_schedule, :sales_tax_code, :sale_unit,
52
- :ship_package, :soft_descriptor, :stock_unit, :store_display_image,
53
- :store_display_thumbnail, :store_item_template, :supply_lot_sizing_method,
54
- :supply_replenishment_method, :supply_type, :tax_schedule, :units_type, :vendor
55
-
56
- # TODO
57
- # itemNumberOptionsList RecordRefList
58
- # itemShipMethodList RecordRefList
59
- # subsidiaryList RecordRefList
60
- # scheduleBCode ScheduleBCode
61
- # itemCarrier ShippingCarrier
62
- # siteCategoryList SiteCategoryList
63
- # sitemapPriority SitemapPriority
64
- # translationsList TranslationList
65
- # vsoeDeferral VsoeDeferral
66
- # vsoePermitDiscount VsoePermitDiscount
67
- # vsoeSopGroup VsoeSopGroup
68
-
69
- fields :auto_lead_time, :auto_preferred_stock_level, :auto_reorder_point, :available_to_partners,
70
- :copy_description, :direct_revenue_posting, :dont_show_price, :enforce_min_qty_internally,
71
- :exclude_from_sitemap, :include_children, :is_donation_item, :is_drop_ship_item, :is_gco_compliant,
72
- :is_hazmat_item, :is_inactive, :is_online, :is_special_order_item, :is_store_pickup_allowed,
73
- :is_taxable, :match_bill_to_receipt, :mult_manufacture_addr, :offer_support, :on_special,
74
- :prices_include_tax, :producer, :round_up_as_component, :seasonal_demand, :ship_individually,
75
- :show_default_donation_amount, :track_landed_cost, :use_bins, :use_marginal_rates, :vsoe_delivered,
76
- :created_date, :expiration_date, :last_invt_count_date, :last_modified_date, :next_invt_count_date,
77
- :average_cost, :cost, :cost_estimate, :default_return_cost, :demand_modifier, :fixed_lot_size,
78
- :handling_cost, :hazmat_item_units_qty, :last_purchase_price, :max_donation_amount,
79
- :on_hand_value_mli, :preferred_stock_level, :preferred_stock_level_days, :purchase_order_amount,
80
- :purchase_order_quantity, :purchase_order_quantity_diff, :quantity_available,
81
- :quantity_back_ordered, :quantity_committed, :quantity_on_hand, :quantity_on_order,
82
- :rate, :receipt_amount, :receipt_quantity, :receipt_quantity_diff, :reorder_point,
83
- :safety_stock_level, :shipping_cost, :total_value, :transfer_price, :vsoe_price,
84
- :weight, :backward_consumption_days, :demand_time_fence, :forward_consumption_days,
85
- :invt_count_interval, :lead_time, :maximum_quantity, :minimum_quantity, :periodic_lot_size_days,
86
- :reorder_multiple, :reschedule_in_days, :reschedule_out_days, :safety_stock_level_days,
87
- :schedule_b_quantity, :shopzilla_category_id, :supply_time_fence, :costing_method_display,
88
- :cost_units, :currency, :display_name, :featured_description, :handling_cost_units,
89
- :hazmat_hazard_class, :hazmat_id, :hazmat_item_units, :hazmat_shipping_name, :item_id,
90
- :manufacturer, :manufacturer_addr1, :manufacturer_city, :manufacturer_state,
91
- :manufacturer_tariff, :manufacturer_tax_id, :manufacturer_zip, :matrix_item_name_template,
92
- :meta_tag_html, :minimum_quantity_units, :mpn, :nex_tag_category, :no_price_message,
93
- :out_of_stock_message, :page_title, :preferred_stock_level_units, :purchase_description,
94
- :quantity_on_hand_units, :quantity_reorder_units, :related_items_description,
95
- :reorder_point_units, :safety_stock_level_units, :sales_description, :schedule_b_number,
96
- :search_keywords, :serial_numbers, :shipping_cost_units, :shopping_dot_com_category,
97
- :specials_description, :stock_description, :store_description, :store_detailed_description,
98
- :store_display_name, :upc_code, :url_component, :vendor_name, :weight_units
32
+ record_refs :alternate_demand_source_item,
33
+ :asset_account,
34
+ :bill_exch_rate_variance_acct,
35
+ :billing_schedule,
36
+ :bill_price_variance_acct,
37
+ :bill_qty_variance_acct,
38
+ :klass,
39
+ :cogs_account,
40
+ :consumption_unit,
41
+ :cost_category,
42
+ :create_revenue_plans_on,
43
+ :custom_form,
44
+ :default_item_ship_method,
45
+ :deferred_revenue_account,
46
+ :demand_source,
47
+ :department,
48
+ :dropship_expense_account,
49
+ :gain_loss_account,
50
+ :income_account,
51
+ :interco_cogs_account,
52
+ :interco_income_account,
53
+ :issue_product,
54
+ :item_revenue_category,
55
+ :location,
56
+ :parent,
57
+ :planning_item_category,
58
+ :preferred_location,
59
+ :pricing_group,
60
+ :purchase_price_variance_acct,
61
+ :purchase_tax_code,
62
+ :purchase_unit,
63
+ :quantity_pricing_schedule,
64
+ :revenue_allocation_group,
65
+ :revenue_recognition_rule,
66
+ :rev_rec_forecast_rule,
67
+ :rev_rec_schedule,
68
+ :sales_tax_code,
69
+ :sale_unit,
70
+ :secondary_base_unit,
71
+ :secondary_consumption_unit,
72
+ :secondary_purchase_unit,
73
+ :secondary_sale_unit,
74
+ :secondary_stock_unit,
75
+ :secondary_units_type,
76
+ :ship_package,
77
+ :soft_descriptor,
78
+ :stock_unit,
79
+ :store_display_image,
80
+ :store_display_thumbnail,
81
+ :store_item_template,
82
+ :supply_lot_sizing_method,
83
+ :supply_replenishment_method,
84
+ :supply_type,
85
+ :tax_schedule,
86
+ :units_type,
87
+ :vendor
99
88
 
89
+ fields :auto_lead_time,
90
+ :auto_preferred_stock_level,
91
+ :auto_reorder_point,
92
+ :available_to_partners,
93
+ :average_cost,
94
+ :backward_consumption_days,
95
+ :conversion_rate,
96
+ :copy_description,
97
+ :cost,
98
+ :cost_estimate,
99
+ :cost_estimate_type,
100
+ :costing_method,
101
+ :costing_method_display,
102
+ :cost_units,
103
+ :country_of_manufacture,
104
+ :created_date,
105
+ :currency,
106
+ :default_return_cost,
107
+ :demand_modifier,
108
+ :demand_time_fence,
109
+ :direct_revenue_posting,
110
+ :display_name,
111
+ :dont_show_price,
112
+ :enable_catch_weight,
113
+ :enforce_min_qty_internally,
114
+ :exclude_from_sitemap,
115
+ :expiration_date,
116
+ :featured_description,
117
+ :fixed_lot_size,
118
+ :forward_consumption_days,
119
+ :future_horizon,
120
+ :handling_cost,
121
+ :handling_cost_units,
122
+ :hazmat_hazard_class,
123
+ :hazmat_id,
124
+ :hazmat_item_units,
125
+ :hazmat_item_units_qty,
126
+ :hazmat_packing_group,
127
+ :hazmat_shipping_name,
128
+ :include_children,
129
+ :invt_classification,
130
+ :invt_count_interval,
131
+ :is_donation_item,
132
+ :is_drop_ship_item,
133
+ :is_gco_compliant,
134
+ :is_hazmat_item,
135
+ :is_inactive,
136
+ :is_online,
137
+ :is_special_order_item,
138
+ :is_store_pickup_allowed,
139
+ :is_taxable,
140
+ :item_carrier,
141
+ :item_id,
142
+ :last_invt_count_date,
143
+ :last_modified_date,
144
+ :last_purchase_price,
145
+ :lead_time,
146
+ :lower_warning_limit,
147
+ :manufacturer,
148
+ :manufacturer_addr1,
149
+ :manufacturer_city,
150
+ :manufacturer_state,
151
+ :manufacturer_tariff,
152
+ :manufacturer_tax_id,
153
+ :manufacturer_zip,
154
+ :match_bill_to_receipt,
155
+ :matrix_item_name_template,
156
+ :matrix_type,
157
+ :max_donation_amount,
158
+ :maximum_quantity,
159
+ :meta_tag_html,
160
+ :minimum_quantity,
161
+ :minimum_quantity_units,
162
+ :mpn,
163
+ :mult_manufacture_addr,
164
+ :nex_tag_category,
165
+ :next_invt_count_date,
166
+ :no_price_message,
167
+ :offer_support,
168
+ :on_hand_value_mli,
169
+ :on_special,
170
+ :out_of_stock_behavior,
171
+ :out_of_stock_message,
172
+ :overall_quantity_pricing_type,
173
+ :page_title,
174
+ :periodic_lot_size_days,
175
+ :periodic_lot_size_type,
176
+ :preference_criterion,
177
+ :preferred_stock_level,
178
+ :preferred_stock_level_days,
179
+ :preferred_stock_level_units,
180
+ :prices_include_tax,
181
+ :producer,
182
+ :purchase_description,
183
+ :purchase_order_amount,
184
+ :purchase_order_quantity,
185
+ :purchase_order_quantity_diff,
186
+ :quantity_available,
187
+ :quantity_back_ordered,
188
+ :quantity_committed,
189
+ :quantity_on_hand,
190
+ :quantity_on_hand_units,
191
+ :quantity_on_order,
192
+ :quantity_reorder_units,
193
+ :rate,
194
+ :receipt_amount,
195
+ :receipt_quantity,
196
+ :receipt_quantity_diff,
197
+ :related_items_description,
198
+ :reorder_multiple,
199
+ :reorder_point,
200
+ :reorder_point_units,
201
+ :reschedule_in_days,
202
+ :reschedule_out_days,
203
+ :round_up_as_component,
204
+ :safety_stock_level,
205
+ :safety_stock_level_days,
206
+ :safety_stock_level_units,
207
+ :sales_description,
208
+ :schedule_b_code,
209
+ :schedule_b_number,
210
+ :schedule_b_quantity,
211
+ :search_keywords,
212
+ :seasonal_demand,
213
+ :serial_numbers,
214
+ :ship_individually,
215
+ :shipping_cost,
216
+ :shipping_cost_units,
217
+ :shopping_dot_com_category,
218
+ :shopzilla_category_id,
219
+ :show_default_donation_amount,
220
+ :sitemap_priority,
221
+ :specials_description,
222
+ :stock_description,
223
+ :store_description,
224
+ :store_detailed_description,
225
+ :store_display_name,
226
+ :supply_time_fence,
227
+ :total_value,
228
+ :track_landed_cost,
229
+ :transfer_price,
230
+ :upc_code,
231
+ :upper_warning_limit,
232
+ :url_component,
233
+ :use_bins,
234
+ :use_marginal_rates,
235
+ :vendor_name,
236
+ :vsoe_deferral,
237
+ :vsoe_delivered,
238
+ :vsoe_permit_discount,
239
+ :vsoe_price,
240
+ :vsoe_sop_group,
241
+ :weight,
242
+ :weight_unit,
243
+ :weight_units
100
244
 
101
245
  attr_reader :internal_id
102
- attr_accessor :external_id, :search_joins
246
+ attr_accessor :external_id
103
247
 
104
248
  def initialize(attributes = {})
105
249
  @internal_id = attributes.delete(:internal_id) || attributes.delete(:@internal_id)
@@ -1,6 +1,8 @@
1
1
  module NetSuite
2
2
  module Records
3
3
  class MatrixOptionList
4
+ include Namespaces::ListAcct
5
+
4
6
  # Deals with both hash and arrays of attributes[:matrix_option_list]
5
7
  #
6
8
  # Hash:
@@ -50,6 +52,20 @@ module NetSuite
50
52
  def options
51
53
  @options ||= []
52
54
  end
55
+
56
+ def to_record
57
+ {
58
+ "#{record_namespace}:matrixOption" => options.map do |option|
59
+ {
60
+ 'platformCore:value' => {
61
+ '@internalId' => option.value_id,
62
+ '@typeId' => option.type_id,
63
+ },
64
+ '@scriptId' => option.script_id
65
+ }
66
+ end
67
+ }
68
+ end
53
69
  end
54
70
  end
55
71
  end
@@ -9,32 +9,168 @@ module NetSuite
9
9
 
10
10
  actions :get, :get_list, :add, :delete, :search, :upsert, :update
11
11
 
12
- fields :available_to_partners, :cost_estimate, :cost_estimate_type, :cost_estimate_units, :country_of_manufacture,
13
- :created_date, :display_name, :dont_show_price, :enforce_min_qty_internally, :exclude_from_sitemap,
14
- :featured_description, :handling_cost, :handling_cost_units, :include_children, :is_donation_item, :is_fulfillable,
15
- :is_gco_compliant, :is_inactive, :is_online, :is_taxable, :item_id, :last_modified_date, :manufacturer,
16
- :manufacturer_addr1, :manufacturer_city, :manufacturer_state, :manufacturer_tariff, :manufacturer_tax_id,
17
- :manufacturer_zip, :matrix_option_list, :matrix_type, :max_donation_amount, :meta_tag_html, :minimum_quantity,
18
- :minimum_quantity_units, :mpn, :mult_manufacture_addr, :nex_tag_category, :no_price_message, :offer_support,
19
- :on_special, :out_of_stock_behavior, :out_of_stock_message, :overall_quantity_pricing_type, :page_title,
20
- :preference_criterion, :presentation_item_list, :prices_include_tax, :producer, :product_feed_list,
21
- :rate, :related_items_description, :sales_description, :schedule_b_code, :schedule_b_number, :schedule_b_quantity,
22
- :search_keywords, :ship_individually, :shipping_cost, :shipping_cost_units, :shopping_dot_com_category,
23
- :shopzilla_category_id, :show_default_donation_amount, :site_category_list, :sitemap_priority, :soft_descriptor,
24
- :specials_description, :stock_description, :store_description, :store_detailed_description, :store_display_name,
25
- :translations_list, :upc_code, :url_component, :use_marginal_rates, :vsoe_deferral, :vsoe_delivered,
26
- :vsoe_permit_discount, :vsoe_price, :weight, :weight_unit, :weight_units
12
+ fields :amortization_period,
13
+ :available_to_partners,
14
+ :copy_description,
15
+ :cost,
16
+ :cost_estimate,
17
+ :cost_estimate_type,
18
+ :cost_estimate_units,
19
+ :cost_units,
20
+ :country_of_manufacture,
21
+ :created_date,
22
+ :currency,
23
+ :defer_rev_rec,
24
+ :direct_revenue_posting,
25
+ :display_name,
26
+ :dont_show_price,
27
+ :enforce_min_qty_internally,
28
+ :exclude_from_sitemap,
29
+ :featured_description,
30
+ :generate_accruals,
31
+ :handling_cost,
32
+ :handling_cost_units,
33
+ :hazmat_hazard_class,
34
+ :hazmat_id,
35
+ :hazmat_item_units,
36
+ :hazmat_item_units_qty,
37
+ :hazmat_packing_group,
38
+ :hazmat_shipping_name,
39
+ :include_children,
40
+ :is_donation_item,
41
+ :is_drop_ship_item,
42
+ :is_fulfillable,
43
+ :is_gco_compliant,
44
+ :is_hazmat_item,
45
+ :is_inactive,
46
+ :is_online,
47
+ :is_special_order_item,
48
+ :is_taxable,
49
+ :item_carrier,
50
+ :item_id,
51
+ :last_modified_date,
52
+ :manufacturer,
53
+ :manufacturer_addr1,
54
+ :manufacturer_city,
55
+ :manufacturer_state,
56
+ :manufacturer_tariff,
57
+ :manufacturer_tax_id,
58
+ :manufacturer_zip,
59
+ :matrix_item_name_template,
60
+ :matrix_type,
61
+ :max_donation_amount,
62
+ :maximum_quantity,
63
+ :meta_tag_html,
64
+ :minimum_quantity,
65
+ :minimum_quantity_units,
66
+ :mpn,
67
+ :mult_manufacture_addr,
68
+ :nex_tag_category,
69
+ :no_price_message,
70
+ :offer_support,
71
+ :on_special,
72
+ :out_of_stock_behavior,
73
+ :out_of_stock_message,
74
+ :overall_quantity_pricing_type,
75
+ :page_title,
76
+ :preference_criterion,
77
+ :prices_include_tax,
78
+ :producer,
79
+ :purchase_description,
80
+ :purchase_order_amount,
81
+ :purchase_order_quantity,
82
+ :purchase_order_quantity_diff,
83
+ :rate,
84
+ :receipt_amount,
85
+ :receipt_quantity,
86
+ :receipt_quantity_diff,
87
+ :related_items_description,
88
+ :residual,
89
+ :sales_description,
90
+ :schedule_b_code,
91
+ :schedule_b_number,
92
+ :schedule_b_quantity,
93
+ :search_keywords,
94
+ :ship_individually,
95
+ :shipping_cost,
96
+ :shipping_cost_units,
97
+ :shopping_dot_com_category,
98
+ :shopzilla_category_id,
99
+ :show_default_donation_amount,
100
+ :sitemap_priority,
101
+ :soft_descriptor,
102
+ :specials_description,
103
+ :stock_description,
104
+ :store_description,
105
+ :store_detailed_description,
106
+ :store_display_name,
107
+ :upc_code,
108
+ :url_component,
109
+ :use_marginal_rates,
110
+ :vendor_name,
111
+ :vsoe_deferral,
112
+ :vsoe_delivered,
113
+ :vsoe_permit_discount,
114
+ :vsoe_price,
115
+ :vsoe_sop_group,
116
+ :weight,
117
+ :weight_unit,
118
+ :weight_units
27
119
 
28
- record_refs :billing_schedule, :cost_category, :custom_form, :deferred_revenue_account, :department, :income_account,
29
- :issue_product, :item_options_list, :klass, :location, :parent, :pricing_group, :purchase_tax_code,
30
- :quantity_pricing_schedule, :rev_rec_schedule, :sale_unit, :sales_tax_code, :ship_package, :store_display_image,
31
- :store_display_thumbnail, :store_item_template, :tax_schedule, :units_type, :expense_account
120
+ record_refs :amortization_template,
121
+ :bill_exch_rate_variance_acct,
122
+ :billing_schedule,
123
+ :bill_price_variance_acct,
124
+ :bill_qty_variance_acct,
125
+ :klass,
126
+ :consumption_unit,
127
+ :cost_category,
128
+ :create_revenue_plans_on,
129
+ :custom_form,
130
+ :default_item_ship_method,
131
+ :deferral_account,
132
+ :deferred_revenue_account,
133
+ :department,
134
+ :dropship_expense_account,
135
+ :expense_account,
136
+ :income_account,
137
+ :interco_expense_account,
138
+ :interco_income_account,
139
+ :issue_product,
140
+ :item_revenue_category,
141
+ :location,
142
+ :parent,
143
+ :pricing_group,
144
+ :purchase_tax_code,
145
+ :purchase_unit,
146
+ :quantity_pricing_schedule,
147
+ :revenue_allocation_group,
148
+ :revenue_recognition_rule,
149
+ :rev_rec_forecast_rule,
150
+ :rev_rec_schedule,
151
+ :sales_tax_code,
152
+ :sale_unit,
153
+ :ship_package,
154
+ :store_display_image,
155
+ :store_display_thumbnail,
156
+ :store_item_template,
157
+ :tax_schedule,
158
+ :units_type,
159
+ :vendor
32
160
 
33
161
  field :custom_field_list, CustomFieldList
162
+ field :item_ship_method_list, RecordRefList
163
+ field :matrix_option_list, MatrixOptionList
34
164
  field :pricing_matrix, PricingMatrix
35
165
  field :subsidiary_list, RecordRefList
36
166
  field :item_vendor_list, ItemVendorList
37
-
167
+ # TODO: field :accounting_book_detail_list, ItemAccountingBookDetailList
168
+ # TODO: field :hierarchy_versions_list, NonInventoryResaleItemHierarchyVersionsList
169
+ # TODO: field :item_options_list, ItemOptionsList
170
+ # TODO: field :presentation_item_list, PresentationItemList
171
+ # TODO: field :product_feed_list, ProductFeedList
172
+ # TODO: field :site_category_list, SiteCategoryList
173
+ field :translations_list, TranslationList
38
174
 
39
175
  attr_reader :internal_id
40
176
  attr_accessor :external_id