Fix accessing custom field values returned in advanced search results#480
Merged
iloveitaly merged 2 commits intoNetSweet:masterfrom Jul 16, 2021
Merged
Conversation
NetSuite seems to wrap values in a `searchValue` element rather than just `value`, breaking the ability to access those values the same in an advanced search as compared to either a basic search or simple `get`. Previously, you'd access the value via `my_record.custom_field_list.my_custom_field.attributes.fetch(:search_value)`, and if it was a `CustomRecordRef`, you'd get a raw hash back, not an instance of `CustomRecordRef`. Now, you'd access the value via `my_record.custom_field_list.my_custom_field.value`, so it's consistent across `get`, basic, and advanced searches, plus you'd get an instance of `CustomRecordRef`, where appropriate.
Member
|
Great change! Thanks. Took a long time to review and get merged because I wanted to run some manual tests against some netsuite accounts. Sorry about the delay. |
Contributor
Author
|
All good! Thanks for the merge. |
diegopolido
pushed a commit
to penrosehill/netsuite
that referenced
this pull request
Oct 7, 2021
…NetSweet#480) NetSuite seems to wrap values in a `searchValue` element rather than just `value`, breaking the ability to access those values the same in an advanced search as compared to either a basic search or simple `get`. Previously, you'd access the value via `my_record.custom_field_list.my_custom_field.attributes.fetch(:search_value)`, and if it was a `CustomRecordRef`, you'd get a raw hash back, not an instance of `CustomRecordRef`. Now, you'd access the value via `my_record.custom_field_list.my_custom_field.value`, so it's consistent across `get`, basic, and advanced searches, plus you'd get an instance of `CustomRecordRef`, where appropriate. Co-authored-by: Michael Bianco <iloveitaly@gmail.com>
bdelanghe
pushed a commit
to bdelanghe/netsuite
that referenced
this pull request
Feb 5, 2026
…NetSweet#480) NetSuite seems to wrap values in a `searchValue` element rather than just `value`, breaking the ability to access those values the same in an advanced search as compared to either a basic search or simple `get`. Previously, you'd access the value via `my_record.custom_field_list.my_custom_field.attributes.fetch(:search_value)`, and if it was a `CustomRecordRef`, you'd get a raw hash back, not an instance of `CustomRecordRef`. Now, you'd access the value via `my_record.custom_field_list.my_custom_field.value`, so it's consistent across `get`, basic, and advanced searches, plus you'd get an instance of `CustomRecordRef`, where appropriate. Co-authored-by: Michael Bianco <iloveitaly@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
NetSuite seems to wrap values in a
searchValueelement rather than justvalue, breaking the ability to access those values the same in an advanced search as compared to either a basic search or simpleget.This was already handled for standard fields, but not custom fields:
netsuite/lib/netsuite/support/search_result.rb
Line 81 in 0d1f5ab
Previously, you'd access the value via
my_record.custom_field_list.my_custom_field.attributes.fetch(:search_value), and if it was aCustomRecordRef, you'd get a raw hash back, not an instance ofCustomRecordRef.Now, you'd access the value via
my_record.custom_field_list.my_custom_field.value, so it's consistent acrossget, basic, and advanced searches, plus you'd get an instance ofCustomRecordRef, where appropriate.This originally surfaced in #470, but we're taking that in a different direction, so figured I'd address this separately.