Skip to end of metadata
Go to start of metadata

Introduction

A NetSuite search activity interacts with a NetSuite connection to retrieve existing records to use as a source in an operation. After configuring a NetSuite connection, you can configure as many NetSuite activities as you like for each NetSuite connection.

Creating a NetSuite Activity

From the design canvas, open the Connectivity tab of the design component palette:

Within the Endpoints filter, click the NetSuite connection block to display activities that are available to be used with a NetSuite connection:

To create an activity that can be configured, the activity must first be added to an operation on the design canvas. To add an activity to an operation, drag the activity block from the palette to the operation.

For more information about the parts of an operation and adding activities to operations, see Operation Creation and Configuration.

Accessing Menu Actions

After a NetSuite activity has been added to an operation, menu actions for that activity are accessible from the project pane in both the Workflows and Components tabs, and from the design canvas:

  • Project Pane: In the Workflows or Components tab of the project pane, hover over an activity name and click the actions menu icon  to open the actions menu.

  • Design Canvas: Within the operation, click an existing activity block to open the actions menu.

Each of these menu actions is available:

  • View/Edit: This opens the activity configuration screen for you to configure the activity. For details, see Configuring a NetSuite Search Activity later on this page.
  • Delete: This is used to permanently delete the activity (see Component Dependencies, Deletion, and Removal).
  • Rename: This positions the cursor on the activity name in the project pane for you to make edits.
  • View Dependencies: This changes the view in the project pane to display any other parts of the project that the activity is dependent on (see Component Dependencies, Deletion, and Removal).
  • Remove: Available only from the actions menu on the design canvas, this removes the activity as a step in the operation without deleting it from the project. When you remove an activity that is adjacent to a transformation, if schemas are provided within that activity, they will no longer be referenced by the transformation. Removed components can be accessed or permanently deleted from the project pane (see Component Dependencies, Deletion, and Removal).
  • Deploy: This deploys the activity and any components it is dependent on (see Component Deployment).
  • Configurable Deploy: This opens the deployment screen, where you can select project components to deploy (see Component Deployment).
  • Add to group: This opens a prompt to create a new custom group or to add the component to an existing group. Custom groups are an organizational tool to help organize a project (see Component Groups).
  • Duplicate: This creates a copy of the activity as a new, unreferenced component. Upon creating the component copy, the cursor is positioned on the component name within the project pane for you to rename the component.

Configuring a NetSuite Search Activity

Follow these steps to configure a NetSuite search activity:

Step 1 – Enter Basic Information and Select Object

  • Name: Enter a name to use to identify the NetSuite activity. The name must be unique for each NetSuite search activity and must not contain forward slashes (/) or colons (:).
  • Select an Object: This section displays objects available in the NetSuite endpoint. When reopening an existing activity configuration, only the selected object is displayed instead of reloading the entire object list.
    • Selected NetSuite Object: After an object is selected, it will be listed here.

    • Search: Enter any part of the object name into the search box to filter the list of objects. The search is not case-sensitive. If objects are already displayed within the table, the table results will be filtered in real time with each keystroke. To reload objects from the endpoint when searching, enter search criteria and then refresh, as described below.
    • Refresh: Click the refresh icon  or the word Refresh to reload objects from the NetSuite endpoint. This may be useful if you have recently added objects or fields to the NetSuite instance. This action refreshes all metadata used to build the table of objects displayed in the configuration.
    • Select an Object: Within the table, click anywhere on a row to select an object. Only one object can be selected. The information available for each object is fetched from the NetSuite endpoint:

      • Name: The object name from NetSuite.

      • Type: The object type from NetSuite. This includes all standard, transaction, item, and custom objects that are available to search within the NetSuite endpoint.

        NOTE: If selecting the Transaction or Item object directly (but not related objects of the same type), you will be able to select sub-types in a later step.
      • Object Description: The object description from NetSuite.

      TIP: If the table does not populate with available objects, the NetSuite connection may not be successful. Ensure you are connected by reopening the connection and retesting the credentials.
  • Save & Exit: Click this button to save the configuration for this step and close the activity configuration.
  • Next: Click Next to save the configuration for this step and continue to the next step.
  • Discard Changes: After making changes to this step, click Discard Changes to close the configuration without saving changes to this step. A message will ask you to confirm that you want to discard changes.

Step 2 – Select Search Type

  • Select Search Type: Select the type of search to perform:
    • Basic Search: This search type will filter only on the selected object. A basic search will always return all available fields for the selected object. For example, a basic search for the selected Transaction object will query fields in the Transaction object.
    • Expanded Search: This option can be selected only for objects that have related objects in NetSuite. This search type will filter on the selected object and related objects. For example, an expanded search for the selected Transaction object will also include additional related objects in NetSuite such as accountJoin, caseJoin, opportunityJoin, purchaseOrderJoin, userJoin, etc.

    • Advanced Search: This option can be selected only for objects that have related objects in NetSuite. This search type will filter on the selected object and related objects for a specific column to return. An advanced search can be much faster than a basic search or expanded search, even if you do not want to query related objects, because it allows you to limit the query to specific fields in NetSuite.

      WARNING: In an advanced search, custom segments of the type List/Record as defined in NetSuite are not supported. However, the Multiple Select type is supported in an advanced search. This limitation does not apply to other types of NetSuite searches (basic, expanded, and saved searches), which support both the List/Record and Multiple Select types.
    • Saved Search: This option can be selected only for objects that support NetSuite saved search. A saved search is a reusable search that you have already defined in NetSuite. Instead of building the search within Jitterbit, the search is already set up within NetSuite and can then be pulled into Jitterbit Harmony. For additional information on NetSuite saved searches, see NetSuite documentation on Using Saved Searches (login to NetSuite required).
    • Select sub types for item or transaction search. You must select at least one when applicable: This section is displayed only when the object selected in the previous step is the Transaction or Item object. If this section is displayed, use the Select All Objects checkbox to select all sub-types to include in the search, or select each sub-type individually.

  • Back: Click Back to save the configuration for this step and return to the previous step.
  • Next: Click Next to save the configuration for this step and continue to the next step.
  • Discard Changes: After making changes to this step, click Discard Changes to close the configuration without saving changes to this step. A message will ask you to confirm that you want to discard changes.

Step 3 – Select Fields and Create Conditions

This step for configuring a NetSuite search differs depending on the search type selected in the previous step:

Basic Search

  • Search: Enter any part of the field name into the search box to filter the list of fields for the selected object. The search is not case-sensitive.
  • Specify criteria to narrow down your search: One at a time, click a field available within the selected object to select the field. When you select a field, the Add Condition area becomes populated with the object and field information.
  • Add Condition: After selecting a field to populate this area, click the Add Condition button. A popup will prompt you for any appropriate selections or user input for the selected field. The presented options will vary depending on the selected field. When ready, click the Add Condition button to add the field to the Current Conditions table.

    TIP: If searching within an object's status field, the search values that correspond to internal statuses within NetSuite are provided for your convenience in a list at the end of this page under NetSuite Search by Status. For search values to enter for other fields, refer to NetSuite's documentation.
  • Current Conditions: As you select fields and add conditions using the methods described above, this table will become populated with a summary of the selected objects and fields. These columns are displayed in the table:
    • Object: The selected NetSuite object.
    • Field: The selected NetSuite field.
    • Operator: The operator used for the search, if any.
    • Search Value: The first search value entered as input while adding the condition, if any.
    • Search Value 2: The second search value entered as input while adding the condition, if any.
    • Actions: In the column with an actions menu icon , hover over any row to show icons for any actions you can take on the row:
      • Edit: Click the edit icon  to reopen the Add Condition prompt where you can edit any selections for the condition.
      • Delete: Click the trash icon  to remove a condition from the Current Conditions table.
    TIP: You can add any number of conditions to your search. In this way you can effectively create any combination of multiple record searches.
  • Test Query: Click this button to validate whether the query is valid. If the query is valid, a summary of the search results will be displayed in an informational message similar to that shown below. If the query is not valid, relevant error messages will be displayed.

  • Back: Click Back to save the configuration for this step and return to the previous step.
  • Next: Click Next to save the configuration for this step and continue to the next step.
  • Discard Changes: After making changes to this step, click Discard Changes to close the configuration without saving changes to this step. A message will ask you to confirm that you want to discard changes.

Expanded Search

  • Search: Enter any part of the field name into the search box to filter the list of fields for the selected object and any related objects. The search is not case-sensitive.
  • Specify criteria to narrow down your search: One at a time, click a field available within the selected object or related objects to select the field. When you select a field, the Add Condition area becomes populated with the object and field information.
  • Add Condition: After selecting a field to populate this area, click the Add Condition button. A popup will prompt you for any appropriate selections or user input for the selected field. The presented options will vary depending on the selected field. When ready, click the Add Condition button to add the field to the Current Conditions table.

    TIP: If searching within an object's status field, the search values that correspond to internal statuses within NetSuite are provided for your convenience in a list at the end of this page under NetSuite Search by Status. For search values to enter for other fields, refer to NetSuite's documentation.
  • Current Conditions: As you select fields and add conditions using the methods described above, this table will become populated with a summary of the selected objects and fields. These columns are displayed in the table:
    • Object: The selected NetSuite object.
    • Field: The selected NetSuite field.
    • Operator: The operator used for the search, if any.
    • Search Value: The first search value entered as input while adding the condition, if any.
    • Search Value 2: The second search value entered as input while adding the condition, if any.
    • Actions: In the column with an actions menu icon , hover over any row to show icons for any actions you can take on the row:
      • Edit: Click the edit icon  to reopen the Add Condition prompt where you can edit any selections for the condition.
      • Delete: Click the trash icon  to remove a condition from the Current Conditions table.
    TIP: You can add any number of conditions to your search. In this way you can effectively create any combination of multiple record searches.
  • Test Query: Click this button to validate whether the query is valid. If the query is valid, a summary of the search results will be displayed. If the query is not valid, relevant error messages will be displayed.

    CAUTION: Expanded searches must include a query on a related object, or the Test Query button will be disabled. If the search is on the same object, please use a basic search.
  • Back: Click Back to save the configuration for this step and return to the previous step.
  • Next: Click Next to save the configuration for this step and continue to the next step.
  • Discard Changes: After making changes to this step, click Discard Changes to close the configuration without saving changes to this step. A message will ask you to confirm that you want to discard changes.

Advanced Search

This step shows a different screen depending on whether Selected Columns To Return or Define Filter Criteria is selected:

Although these radio buttons might make it seem like you should select either one option or the other, make sure to select each one to configure the options on each screen. The selections will be retained when you switch from one selection to the other. These options are covered as follows:

  • Select Columns To Return: When this option is selected, these options are available:

    • Search: Enter any part of the field name into the search box to filter the list of fields for the selected object and any related objects. The search is not case-sensitive. 
    • Select Columns To Return: Select the checkboxes of the specific fields to include in the search. You can also select an entire object to select all of its fields at once.
  • Define Filter Criteria: When this option is selected, these options are available:

    • Search: Enter any part of the field name into the search box to filter the list of fields for the selected object and any related objects. The search is not case-sensitive.
    • Specify criteria to narrow down your search: One at a time, click a field available within the selected object or related objects to select the field. When you select a field, the Add Condition area becomes populated with the object and field information.
    • Add Condition: After selecting a field to populate this area, click the Add Condition button. A popup will prompt you for any appropriate selections or user input for the selected field. The presented options will vary depending on the selected field. When ready, click the Add Condition button to add the field to the Current Conditions table.

      TIP: If searching within an object's status field, the search values that correspond to internal statuses within NetSuite are provided for your convenience in a list at the end of this page under NetSuite Search by Status. For search values to enter for other fields, refer to NetSuite's documentation.
    • Current Conditions: As you select fields and add conditions using the methods described above, this table will become populated with a summary of the selected objects and fields. These columns are displayed in the table:
      • Object: The selected NetSuite object.
      • Field: The selected NetSuite field.
      • Operator: The operator used for the search, if any.
      • Search Value: The first search value entered as input while adding the condition, if any.
      • Search Value 2: The second search value entered as input while adding the condition, if any.
      • Actions: In the column with an actions menu icon , hover over any row to show icons for any actions you can take on the row:
        • Edit: Click the edit icon  to reopen the Add Condition prompt where you can edit any selections for the condition.
        • Delete: Click the trash icon  to remove a condition from the Current Conditions table.
      TIP: You can add any number of conditions to your search. In this way you can effectively create any combination of multiple record searches.
    • Test Query: Click this button to validate whether the query is valid. If the query is valid, a summary of the search results will be displayed. If the query is not valid, relevant error messages will be displayed.

  • Back: Click Back to save the configuration for this step and return to the previous step.
  • Next: Click Next to save the configuration for this step and continue to the next step.

  • Discard Changes: After making changes to this step, click Discard Changes to close the configuration without saving changes to this step. A message will ask you to confirm that you want to discard changes.

Saved Search

  • Select a Saved Search: Use the dropdown to select a NetSuite saved search that already exists within the NetSuite connection for the selected object.

    WARNING: If searching on an object with more than 1,000 saved searches, it may appear as if there are no saved searches available on the object. For more information including a workaround, see NetSuite Saved Search Limitations later on this page.
  • Test Query: Click this button to validate whether the query is valid. If the query is valid, a summary of the search results will be displayed. If the query is not valid, relevant error messages will be displayed.

  • Back: Click Back to save the configuration for this step and return to the previous step.
  • Next: Click Next to save the configuration for this step and continue to the next step.
  • Discard Changes: After making changes to this step, click Discard Changes to close the configuration without saving changes to this step. A message will ask you to confirm that you want to discard changes.

Step 4 – Review Data Schema

  • Data Schema: The response data schema is displayed. If the operation uses a transformation, the data schemas will be displayed again later during the transformation mapping process, where you can map to target fields using source objects, scripts, variables, custom values, and more.

  • Back: Click Back to save the configuration for this step and return to the previous step.
  • Finished: Click Finished to save the configuration for this step and close the activity configuration.
  • Discard Changes: After making changes to this step, click Discard Changes to close the configuration without saving changes to this step. A message will ask you to confirm that you want to discard changes.

Next Steps

After configuring a NetSuite search activity, you can use it within an operation as described below. In addition, if you are running into record limits imposed by the target, you may want to use chunking.

Completing the Operation

After configuring a NetSuite search activity, complete the configuration of the operation by adding and configuring other activitiestransformations, or scripts as operation steps (see Operation Creation and Configuration). You can also configure an operation's operation settings, which include the ability to chain operations together that are in the same or different workflows (see Operation Settings).

NetSuite search activities can be used as a source with these operation patterns:

Operations that contain a NetSuite activity can have only one NetSuite activity and cannot also contain any Salesforce, SAP, ServiceMax, or SOAP activities.

Other patterns are not valid using NetSuite search activities. See the validation patterns on the Operation Validity page.

This example setup depicts one common operation setup using a NetSuite search activity:

When ready, deploy and run the operation (see Operation Deployment and Execution) and validate behavior by checking the operation logs (see Operation Logs).

Using Chunking

When using chunking on an operation where the source is a NetSuite activity, the data will be chunked in the transformation, not when the data is retrieved. The target data will first be written to numerous temporary files (one for each chunk). These files will then be combined to one target file.

For instructions and best practices on using chunking, see Operation Options.

Reference Information

This section provides additional material for reference when configuring a NetSuite search activity.

NetSuite Saved Search Limitations

When using a NetSuite saved search, if you are trying to search on objects that have more than 1,000 saved searches, it may appear in Cloud Studio as if there are no saved searches available on the object. In this case, the saved search dropdown in Cloud Studio will not be populated with any saved searches. This is due to a NetSuite-imposed 1,000-record limit on API requests.

Confirmation of Limitation

To confirm the issue is with the NetSuite limitation, you can check the Web Services Usage Log within the NetSuite instance. For an error of this type, the log will have an entry similar to the following:

<platformCore:code>MAX_RCRDS_EXCEEDED</platformCore:code>
<platformCore:message>The maximum number ( 1000 ) of records allowed for a READ operation has been exceeded.</platformCore:message>

Workaround to Limitation

As a workaround, it is recommended to clean up NetSuite saved searches that are no longer being used to reduce the number of saved searches to fewer than 1,000. After the number of searches is reduced, you will be able to select a saved search from the dropdown in Cloud Studio.

An alternative to reducing the number of saved searches is to execute the saved search using a SOAP, referencing the saved search by ID. Note that this alternative does not make use of a NetSuite and may result in issues when migrating environments.

NetSuite Search by Status

When searching for NetSuite objects based on a specific status, you will need to specify the correct search filter value that corresponds with the desired status. You can determine the corresponding search filter value as provided in the table below.

For example, if you want search criteria to limit the ItemFulfillment records to only ones where the Ship Status = Shipped, instead of using the enum for Shipped (_shipped), you would actually need to use the a value of ItemShip:C as provided in table below. Similar translations apply to a variety of NetSuite objects.

StatusSearch Value
 Cash Sale:Unapproved Payment CashSale:A
 Cash Sale:Not Deposited CashSale:B
 Cash Sale:Deposited CashSale:C
 Check:Voided Check:V
 Check:Online Bill Pay Pending Accounting Approval Check:Z
 Commission:Pending Payment Commissn:A
 Commission:Overpaid Commissn:O
 Commission:Pending Accounting Approval Commissn:P
 Commission:Rejected by Accounting Commissn:R
 Commission:Paid in Full Commissn:X
 Statement Charge:Open CustChrg:A
 Statement Charge:Paid In Full CustChrg:B
 Credit Memo:Open CustCred:A
 Credit Memo:Fully Applied CustCred:B
 Customer Deposit:Not Deposited CustDep:A
 Customer Deposit:Deposited CustDep:B
 Customer Deposit:Fully Applied CustDep:C
 Invoice:Open CustInvc:A
 Invoice:Paid In Full CustInvc:B
 Payment:Unapproved Payment CustPymt:A
 Payment:Not Deposited CustPymt:B
 Payment:Deposited CustPymt:C
 Customer Refund:Voided CustRfnd:V
 Quote:Open Estimate:A
 Quote:Processed Estimate:B
 Quote:Closed Estimate:C
 Quote:Voided Estimate:V
 Quote:Expired Estimate:X
 Expense Report:In Progress ExpRept:A
 Expense Report:Pending Supervisor Approval ExpRept:B
 Expense Report:Pending Accounting Approval ExpRept:C
 Expense Report:Rejected by Supervisor ExpRept:D
 Expense Report:Rejected by Accounting ExpRept:E
 Expense Report:Approved by Accounting ExpRept:F
 Expense Report:Approved (Overridden) by Accounting ExpRept:G
 Expense Report:Rejected (Overridden) by Accounting ExpRept:H
 Expense Report:Paid In Full ExpRept:I
 Inventory Count:Open InvCount:A
 Inventory Count:Started InvCount:B
 Inventory Count:Completed/Pending Approval InvCount:C
 Inventory Count:Approved InvCount:D
 Item Fulfillment:Picked ItemShip:A
 Item Fulfillment:Packed ItemShip:B
 Item Fulfillment:Shipped ItemShip:C
 Journal:Pending Approval Journal:A
 Journal:Approved for Posting Journal:B
 Payroll Liability Check:Voided LiabPymt:V
 Opportunity:In Progress Opprtnty:A
 Opportunity:Issued Estimate Opprtnty:B
 Opportunity:Closed – Won Opprtnty:C
 Opportunity:Closed – Lost Opprtnty:D
 Paycheck:Undefined Paycheck:A
 Paycheck:Pending Tax Calculation Paycheck:C
 Paycheck:Pending Commitment Paycheck:D
 Paycheck:Committed Paycheck:F
 Paycheck:Preview Paycheck:P
 Paycheck:Reversed Paycheck:R
 Purchase Order:Pending Supervisor Approval PurchOrd:A
 Purchase Order:Pending Receipt PurchOrd:B
 Purchase Order:Rejected by Supervisor PurchOrd:C
 Purchase Order:Partially Received PurchOrd:D
 Purchase Order:Pending Billing/Partially Received PurchOrd:E
 Purchase Order:Pending Bill PurchOrd:F
 Purchase Order:Fully Billed PurchOrd:G
 Purchase Order:Closed PurchOrd:H
 Return Authorization:Pending Approval RtnAuth:A
 Return Authorization:Pending Receipt RtnAuth:B
 Return Authorization:Cancelled RtnAuth:C
 Return Authorization:Partially Received RtnAuth:D
 Return Authorization:Pending Refund/Partially Received RtnAuth:E
 Return Authorization:Pending Refund RtnAuth:F
 Return Authorization:Refunded RtnAuth:G
 Return Authorization:Closed RtnAuth:H
 Sales Order:Pending Approval SalesOrd:A
 Sales Order:Pending Fulfillment SalesOrd:B
 Sales Order:Cancelled SalesOrd:C
 Sales Order:Partially Fulfilled SalesOrd:D
 Sales Order:Pending Billing/Partially Fulfilled SalesOrd:E
 Sales Order:Pending Billing SalesOrd:F
 Sales Order:Billed SalesOrd:G
 Sales Order:Closed SalesOrd:H
 Tax Liability Cheque:Voided TaxLiab:V
 Sales Tax Payment:Voided TaxPymt:V
 Sales Tax Payment:Online Bill Pay Pending Accounting Approval TaxPymt:Z
 Tegata Payable:Endorsed TegPybl:E
 Tegata Payable:Issued TegPybl:I
 Tegata Payable:Paid TegPybl:P
 Tegata Receivables:Collected TegRcvbl:C
 Tegata Receivables:Discounted TegRcvbl:D
 Tegata Receivables:Endorsed TegRcvbl:E
 Tegata Receivables:Holding TegRcvbl:H
 Transfer Order:Pending Approval TrnfrOrd:A
 Transfer Order:Pending Fulfillment TrnfrOrd:B
 Transfer Order:Rejected TrnfrOrd:C
 Transfer Order:Partially Fulfilled TrnfrOrd:D
 Transfer Order:Pending Receipt/Partially Fulfilled TrnfrOrd:E
 Transfer Order:Pending Receipt TrnfrOrd:F
 Transfer Order:Received TrnfrOrd:G
 Transfer Order:Closed TrnfrOrd:H
 Vendor Return Authorization:Pending Approval VendAuth:A
 Vendor Return Authorization:Pending Return VendAuth:B
 Vendor Return Authorization:Cancelled VendAuth:C
 Vendor Return Authorization:Partially Returned VendAuth:D
 Vendor Return Authorization:Pending Credit/Partially Returned VendAuth:E
 Vendor Return Authorization:Pending Credit VendAuth:F
 Vendor Return Authorization:Credited VendAuth:G
 Vendor Return Authorization:Closed VendAuth:H
 Bill:Open VendBill:A
 Bill:Paid In Full VendBill:B
 Bill:Cancelled VendBill:C
 Bill:Pending Approval VendBill:D
 Bill:Rejected VendBill:E
 Cash Payment:Voided VendPymt:V
 Cash Payment:Online Bill Pay Pending Accounting Approval VendPymt:Z
 Work Order:Pending Build WorkOrd:B
 Work Order:Cancelled WorkOrd:C
 Work Order:In Process WorkOrd:D
 Work Order:Built WorkOrd:G
 Work Order:Closed WorkOrd:H

Source: http://blog.prolecto.com/2013/08/30/netsuite-searchfilter-transaction-internal-status-list/

On This Page

Last updated:  Dec 10, 2019

  • No labels