SuiteCloud Developer study materials
SuiteCloud Developer study resources

SuiteCloud Developer practice questions

One question at a time. Build your SuiteCloud Developer understanding.

First 50 of 200 questions. Each one lists the choices, the correct answer, and an explanation. The checker at the top of this page saves progress in this browser when it is available.

Continue in the practice tool above to load more questions, 50 at a time.

Question 1SuiteCloud Development Fundamentals

In a SuiteCloud project, which file at the project root declares the project type, its dependencies, and the objects included in the deployment?

  1. package.json
  2. manifest.json
  3. suitecloud.config.js
  4. deploy.xml Correct answer.

Explanation

The deploy.xml file at the project root is the deployment manifest. It records the project type and lists the objects and files that SuiteCloud CLI for Node.js will deploy or validate, so it must be updated when new customization objects are added.

Question 2SuiteCloud Development Fundamentals

A developer runs 'suitecloud project:create' and chooses a SuiteApp project type. Which source folder is the default location for the project's File Cabinet and SDF object files?

  1. /SuiteApps
  2. /src Correct answer.
  3. /Objects
  4. /FileCabinet/SuiteScripts

Explanation

SuiteCloud projects place Account Customization and SuiteApp source files under the /src folder by default, including object XML files and SuiteScript files. The /FileCabinet tree is used for file-based deployments such as SuiteScripts and static resources.

Question 3SuiteCloud Development Fundamentals

Which command authenticates a SuiteCloud project to a NetSuite account using browser-based single sign-on or token credentials and stores the resulting credentials for later commands?

  1. suitecloud account:setup Correct answer.
  2. suitecloud project:validate
  3. suitecloud file:import
  4. suitecloud project:deploy

Explanation

'suitecloud account:setup' configures an authentication ID for a project, prompting for the account, role, and credential method such as browser-based login or token-based authentication. Subsequent commands reuse that saved configuration instead of asking again.

Question 4SuiteCloud Development Fundamentals

What is the primary purpose of the SuiteCloud Development Framework (SDF)?

  1. To provide a customizable framework for building and deploying account customizations as file-based projects Correct answer.
  2. To generate reports from saved searches automatically
  3. To replace SuiteScript with a declarative configuration language
  4. To host NetSuite accounts in a local development sandbox

Explanation

SDF lets developers represent account customizations as XML and script files in a project, then deploy, validate, and import them between accounts. This supports version control and repeatable promotion across environments.

Question 5SuiteCloud Development Fundamentals

A developer wants to check whether a project's objects can be deployed to a target account without actually changing the account. Which command performs this check?

  1. suitecloud project:deploy
  2. suitecloud project:validate Correct answer.
  3. suitecloud project:package
  4. suitecloud object:import

Explanation

'suitecloud project:validate' checks the project against the target account and reports errors or warnings without committing changes. It is used to catch dependency and configuration problems before a real deployment.

Question 6SuiteCloud Development Fundamentals

Which SuiteScript script type runs on the server in response to record create, edit, or delete events?

  1. Client Script
  2. User Event Script Correct answer.
  3. Scheduled Script
  4. Suitelet

Explanation

User Event scripts execute server-side before and after record write operations, supporting beforeLoad, beforeSubmit, and afterSubmit entry points. They are the standard choice for server-side record event logic.

Question 7SuiteCloud Development Fundamentals

In SuiteScript 2.x, which statement correctly describes the module system?

  1. Modules are attached to the global nlapi object namespace.
  2. Modules are loaded with require calls inside each function body.
  3. Modules are loaded with the AMD-style define function, and dependencies are declared as an array of module names. Correct answer.
  4. Modules are imported using ES6 import statements at the top of the file.

Explanation

SuiteScript 2.x uses asynchronous module definition: the script calls define with an array of module identifiers and a callback that receives the loaded modules. This makes dependencies explicit and scoped to the script.

Question 8SuiteCloud Development Fundamentals

Which object in a SuiteCloud project represents a custom record type definition?

  1. customrecordtype XML file under /src/Objects Correct answer.
  2. A saved search XML file
  3. A SuiteScript file under /src/FileCabinet
  4. A workflow definition XML file

Explanation

Custom record types are represented as XML object files in the project's Objects folder, with a scriptid such as customrecord_my_record. Deploying the project creates or updates that record type in the account.

Question 9SuiteCloud Development Fundamentals

A developer needs to add a custom field to a standard Customer record and deploy it through SDF. Which object type should be created in the project?

  1. transactionbodycustomfield only
  2. customrecordtype
  3. customlist
  4. customfield with a body field referencing the entity Correct answer.

Explanation

Fields applied to standard records are represented by customfield object XML, whose fieldtype and body/column placement determine where the field appears. The appliesto or body reference ties it to the Customer record.

Question 10SuiteCloud Development Fundamentals

When deploying a project, an object references a custom list that exists in the target account but is not part of the project. What is the most likely outcome during validation?

  1. The deployment silently creates a duplicate list.
  2. The deployment succeeds because all account objects are automatically included.
  3. Validation reports a missing dependency because the referenced object is not in the project manifest. Correct answer.
  4. The project is converted to a SuiteApp automatically.

Explanation

SDF validates that objects referenced by deployed objects are either included in the project or already present and resolvable in the target account. A referenced object that is neither in the manifest nor importable produces a dependency error.

Question 11SuiteCloud Development Fundamentals

Which command imports existing account customizations into a SuiteCloud project so they can be version controlled?

  1. suitecloud account:manageauth
  2. suitecloud project:adddependencies
  3. suitecloud project:import
  4. suitecloud object:import Correct answer.

Explanation

'suitecloud object:import' retrieves specified objects from the account and writes their XML into the project. This is the supported path for bringing existing account customizations under SDF management.

Question 12SuiteCloud Development Fundamentals

A developer wants a User Event script to run only after a record is successfully saved. Which entry point should be implemented?

  1. beforeSubmit
  2. afterSubmit Correct answer.
  3. beforeLoad
  4. onRequest

Explanation

afterSubmit executes after the record has been committed to the database, making it suitable for post-save logic such as creating related records. beforeSubmit runs before commit and can still block the save.

Question 13SuiteCloud Development Fundamentals

Which SuiteScript 2.x module provides methods to load, create, save, and delete records on the server?

  1. N/runtime
  2. N/record Correct answer.
  3. N/search
  4. N/ui/serverWidget

Explanation

The N/record module exposes load, create, copy, submitFields, save, and delete operations for record manipulation. It is the standard server-side module for record CRUD work.

Question 14SuiteCloud Development Fundamentals

A developer must schedule a script to run nightly and process records in batches. Which script type and deployment mechanism fit this requirement?

  1. RESTlet invoked manually
  2. Client Script deployed to a form
  3. Scheduled Script deployed with a script deployment record and a schedule Correct answer.
  4. Workflow Action Script triggered by a state change

Explanation

Scheduled Scripts run on a defined schedule through a script deployment record and are designed for batch or background processing. The deployment record sets the schedule, status, and audience.

Question 15SuiteCloud Development Fundamentals

Which file type is used to define a script record and its deployment in an SDF project?

  1. CSV import templates
  2. JavaScript files only
  3. XML object files for the script record and script deployment Correct answer.
  4. JSON configuration files

Explanation

Script records and their deployments are represented as XML object files in the project, alongside the JavaScript source file. Deploying the project registers the script and deployment records in the account.

Question 16SuiteCloud Development Fundamentals

A developer needs to share a packaged set of customizations with another account without exposing source files. Which SDF capability supports this?

  1. Building a SuiteApp distribution package and installing it in the target account Correct answer.
  2. Deploying the raw project folder
  3. Exporting a CSV of object records
  4. Copying the deploy.xml file manually

Explanation

SuiteApp projects can be packaged for distribution and installed in other accounts, which is the supported way to ship customizations without handing over the project source. The package contains the deployable artifacts.

Question 17SuiteCloud Development Fundamentals

Which statement about SuiteScript 2.1 versus 2.0 is accurate?

  1. 2.0 only runs on the client.
  2. 2.1 supports additional JavaScript features such as let and const, while 2.0 targets an older JavaScript engine. Correct answer.
  3. 2.1 removes the define function requirement.
  4. 2.1 cannot use N/record.

Explanation

SuiteScript 2.1 runs on a newer JavaScript engine that supports modern syntax such as let, const, and arrow functions, whereas 2.0 targets an older engine with more limited syntax. Both use the same module system and many shared modules.

Question 18SuiteCloud Development Fundamentals

What does the 'suitecloud project:deploy' command do when run with a valid authentication ID?

  1. It only prints a diff without applying changes.
  2. It downloads account objects into the project.
  3. It uploads the project's objects to the account and applies the changes defined by the manifest. Correct answer.
  4. It creates a new NetSuite account.

Explanation

project:deploy sends the objects listed in the manifest to the target account and applies them, creating or updating records such as custom fields and scripts. It is the counterpart to validate, which only checks.

Question 19SuiteCloud Development Fundamentals

A developer wants a script to read a value supplied by an administrator at deployment time rather than hard-coded in code. Which SuiteScript feature should be used?

  1. A saved search result
  2. A hard-coded constant in the script file
  3. An environment variable set on the developer machine
  4. A script parameter defined on the script deployment and read through N/runtime Correct answer.

Explanation

Script parameters are configured on the script or deployment record and read at runtime through the N/runtime module's getParameter method. This lets administrators change behavior without editing code.

Question 20SuiteCloud Development Fundamentals

Which SDF object type would a developer create to define a custom workflow that automates approvals on a transaction?

  1. customlist XML object
  2. savedsearch XML object
  3. role XML object
  4. workflow XML object Correct answer.

Explanation

Workflows are represented as workflow XML objects in the project, capturing states, transitions, and actions. Deploying the object installs or updates the workflow definition in the account.

Question 21SuiteCloud Development Fundamentals

A developer deploys a project and receives an error that a custom field references a script ID that does not exist in the target account. Which action best resolves the issue?

  1. Disable validation and force the deployment.
  2. Delete the field from the account manually.
  3. Rename the field to avoid the reference.
  4. Add the missing object to the project and include it in the manifest, then redeploy. Correct answer.

Explanation

Dependency errors mean a referenced object is neither in the project nor resolvable in the target account. Including the referenced object in the project and manifest ensures SDF deploys it in the correct order.

Question 22SuiteCloud Development Fundamentals

A team maintains the same customizations across sandbox and production accounts. Which SDF practice best supports reliable promotion between environments?

  1. Editing objects directly in production and importing them back into the project before each release.
  2. Keeping object definitions in version control, validating against the target account, then deploying the same project. Correct answer.
  3. Deploying from a developer's local machine without version control.
  4. Copying object XML files manually between accounts using the UI.

Explanation

Treating the project as the source of truth in version control and validating before deployment makes promotions repeatable and auditable. The same validated artifacts then move from sandbox to production.

Question 23SuiteCloud Development Fundamentals

A developer needs a server-side script to expose an HTTP endpoint that an external system can call with JSON payloads. Which script type is designed for this?

  1. Portlet
  2. Bundle Installation Script
  3. RESTlet Correct answer.
  4. Mass Update Script

Explanation

RESTlets expose server-side functions as HTTP endpoints and are commonly used for external integrations exchanging JSON or other payloads. They handle request routing through entry points such as get and post.

Question 24SuiteCloud Development Fundamentals

During a deployment, SDF must create a custom record type and a custom field that references it. What ordering behavior does SDF apply?

  1. Ordering is random and failures must be fixed manually.
  2. Objects are deployed in alphabetical order of their script IDs.
  3. SDF resolves dependencies and deploys referenced objects before the objects that depend on them. Correct answer.
  4. Objects are deployed in the order the developer lists them in the command line.

Explanation

SDF analyzes the dependency graph among objects in the manifest and orders deployment so that referenced objects are created before dependents. This avoids failures caused by missing references during deployment.

Question 25SuiteCloud Development Fundamentals

A developer wants to prevent a script from exceeding account governance limits during a large record update. Which approach reflects correct SuiteScript practice?

  1. Ignore governance and retry on failure.
  2. Use N/runtime to monitor remaining governance units and yield or reschedule when limits approach. Correct answer.
  3. Run the logic in a Client Script instead.
  4. Increase the script's timeout by editing the JavaScript file.

Explanation

The N/runtime module exposes governance monitoring methods so scripts can check remaining usage and yield or reschedule before hitting limits. This keeps long-running processing within account governance.

Question 26SuiteCloud Development Fundamentals

In a SuiteCloud Development Framework project, which file declares the project-level manifest and records the project's framework version and dependencies between objects?

  1. project.json
  2. deploy.xml
  3. account.json
  4. manifest.json Correct answer.

Explanation

The manifest.json file at the root of a SuiteCloud project declares the project type, framework version, and the list of objects the project contains, along with dependency information. It is the entry point SDF reads when validating and deploying the project.

Question 27SuiteCloud Development Fundamentals

A developer wants a SuiteScript 2.x script file to declare its dependencies explicitly so the loader can resolve them. Which pattern should be used at the top of the script?

  1. loadModule('N/record');
  2. import record from 'N/record';
  3. define(['N/record', 'N/search'], (record, search) => { ... }) Correct answer.
  4. require(['N/record'], function(record) { ... })

Explanation

SuiteScript 2.x uses AMD-style modules, so a script declares its dependencies in the define array and receives them as callback parameters. The loader then injects the requested N/ modules.

Question 28SuiteCloud Development Fundamentals

Which SuiteScript 2.x script type is deployed with a deployment record and is invoked by the scheduler at defined intervals rather than by a user action or record event?

  1. Client Script
  2. Scheduled Script Correct answer.
  3. RESTlet
  4. User Event Script

Explanation

Scheduled scripts are deployed with a script deployment record whose schedule (frequency, start date, time) determines when NetSuite invokes the execute entry point. They run without user interaction and are commonly used for batch processing.

Question 29SuiteCloud Development Fundamentals

Which SuiteScript 2.x module should a server script use to perform a saved search and iterate over its results?

  1. N/record
  2. N/runtime
  3. N/query
  4. N/search Correct answer.

Explanation

The N/search module provides create, load, and run methods for saved searches and returns result sets that can be iterated with each() or ResultSet.getRange(). It is the standard module for search-driven server logic.

Question 30SuiteCloud Development Fundamentals

Which SDF object type is used to define a custom list of values that can be referenced by custom fields in the same project?

  1. customlist Correct answer.
  2. customsegment
  3. customfield
  4. customrecordtype

Explanation

A customlist object defines the list name, values, and options such as hierarchy, and custom fields then reference it through their source selection. The object is stored as a customlist XML file in the project.

Question 31SuiteCloud Development Fundamentals

A developer needs to add a client-side field change handler to a standard form. Which SuiteScript 2.x script type provides the fieldChanged entry point?

  1. User Event Script
  2. Suitelet
  3. Client Script Correct answer.
  4. Map/Reduce Script

Explanation

Client Scripts run in the browser and expose entry points such as pageInit, fieldChanged, postSourcing, and saveRecord. fieldChanged fires when the user changes a field value on the form.

Question 32SuiteCloud Development Fundamentals

Which command-line tool is used to create, validate, and deploy SuiteCloud Development Framework projects from a developer workstation?

  1. SuiteApp Bundler Console
  2. NetSuite Record Import Assistant
  3. SuiteScript Debugger
  4. SuiteCloud CLI for Node.js Correct answer.

Explanation

The SuiteCloud CLI for Node.js provides commands such as project:create, project:validate, and project:deploy, and it authenticates with an auth ID. It is the standard command-line interface for SDF work.

Question 33SuiteCloud Development Fundamentals

Which SuiteScript 2.x module provides governance monitoring and script parameter access at runtime?

  1. N/runtime Correct answer.
  2. N/cache
  3. N/config
  4. N/task

Explanation

N/runtime exposes the current script, deployment, and user, along with methods such as getCurrentScript(), getParameter(), and governance-related usage checks. Scripts use it to read deployment parameters and monitor limits.

Question 34SuiteCloud Development Fundamentals

A developer writes a User Event script whose beforeSubmit entry point throws an error when a required field is empty. What is the observable result for the user saving the record?

  1. The save is blocked and the error message is shown to the user. Correct answer.
  2. The record saves and the error is written only to the execution log.
  3. The record saves and the field is silently populated with a default.
  4. The save is blocked and the user is redirected to the script deployment page.

Explanation

Exceptions thrown in beforeSubmit abort the record submission and surface the error text to the user in the UI. This makes beforeSubmit the appropriate entry point for validation that must prevent a save.

Question 35SuiteCloud Development Fundamentals

A developer must ensure a script does not exceed governance during a loop that saves many records. Which approach correctly checks remaining usage before each save?

  1. Call runtime.getCurrentScript().getParameter() and compare it to the loop counter.
  2. Call runtime.getCurrentScript().getRemainingUsage() and stop or reschedule when it falls below a threshold. Correct answer.
  3. Call record.load() and inspect the returned record's governance property.
  4. Call search.create() and read the result set's remainingUnits field.

Explanation

getRemainingUsage() returns the governance units left for the current script execution, so the script can exit gracefully or hand off work before hitting the limit. Comparing it to a safety threshold prevents an unexpected SSS_USAGE_LIMIT_EXCEEDED error.

Question 36SuiteCloud Development Fundamentals

A developer is creating a custom record type in SDF and needs the record to be available in the UI menu. Which element in the customrecordtype object controls where the record appears in the application menu?

  1. The parent/category reference that places the record under a menu section Correct answer.
  2. The isordered element that sorts record instances
  3. The recordname element that sets the display label
  4. The allowattachments element that enables file uploads

Explanation

The customrecordtype definition includes a parent reference that determines which menu category the custom record appears under in the NetSuite UI. Without an appropriate parent, the record is not exposed in the expected menu location.

Question 37SuiteCloud Development Fundamentals

A SuiteScript 2.x script must send an outbound HTTPS request to an external service. Which module and constraint apply?

  1. Use N/https and ensure the destination URL is permitted by the account's outbound request configuration. Correct answer.
  2. Use N/url to resolve the endpoint and send the payload as a query string.
  3. Use N/http and rely on the browser's CORS policy to allow the request.
  4. Use N/file to write the payload and rely on scheduled upload.

Explanation

N/https provides get, post, and request methods for server-side outbound calls, and NetSuite blocks destinations that are not allowed by the account's outbound request settings or that violate restrictions. The script must handle non-2xx responses explicitly.

Question 38SuiteCloud Development Fundamentals

In an SDF project, a developer needs to control the order in which a custom field and the custom record it references are deployed. What does SDF do by default?

  1. It requires the developer to split dependent objects into separate projects and deploy them manually.
  2. It deploys objects in alphabetical order of their script IDs regardless of references.
  3. It deploys only the objects explicitly listed first in the deploy command and skips the rest.
  4. It processes paths in deploy.xml sequentially, so dependencies must be listed before components that reference them. Correct answer.

Explanation

SDF processes deployment paths in the sequence specified in deploy.xml. Place the referenced custom record before the custom field that depends on it to avoid deployment-order validation errors; manifest dependency declarations do not automatically reorder those paths.

Question 39SuiteCloud Development Fundamentals

A developer wants a RESTlet to accept a JSON payload and return a structured error when a required property is missing. Which practice is correct?

  1. Throw an uncaught exception so NetSuite returns the default HTML error page.
  2. Rely on the deployment's audience restriction to reject malformed payloads.
  3. Read the request body, validate required properties, and return an error object with an appropriate HTTP status code. Correct answer.
  4. Return the raw request body without validation and let the caller parse failures.

Explanation

A RESTlet should parse the request body, validate inputs, and return a response object with a clear status code and message so callers can handle failures. Uncaught exceptions produce generic error output that is hard for integrators to consume.

Question 40SuiteCloud Development Fundamentals

A Map/Reduce script processes thousands of records. Which statement about its execution phases is accurate?

  1. The map phase runs once per deployment and the reduce phase runs once per record.
  2. The reduce phase is optional and, when omitted, the map phase output is discarded without being stored.
  3. The getInputData phase supplies data, map processes each item, reduce aggregates by key, and summarize runs once at the end. Correct answer.
  4. The summarize phase executes before getInputData to prepare the input queue.

Explanation

Map/Reduce runs getInputData to produce input, map to process each item, reduce to aggregate values sharing a key, and summarize once after all processing. Each phase has its own governance budget, which is why Map/Reduce suits large workloads.

Question 41SuiteCloud Development Fundamentals

A developer needs to store a small configuration value shared across scripts without creating a custom record. Which SuiteScript 2.x module is appropriate?

  1. N/format
  2. N/cache Correct answer.
  3. N/record
  4. N/search

Explanation

N/cache provides script-scoped or account-scoped key-value storage with optional expiration, which suits small shared configuration values. It avoids the overhead of a custom record for lightweight data.

Question 42SuiteCloud Development Fundamentals

A developer is reviewing a SuiteScript 2.x script that loads a record inside a loop over search results. Which change most directly reduces governance consumption?

  1. Fetch needed field values from the search columns instead of loading each record. Correct answer.
  2. Convert the script from a Scheduled Script to a Client Script.
  3. Move the record.load call inside a try/catch block.
  4. Increase the script deployment's log level to capture more detail.

Explanation

Each record.load consumes governance units, so reading the required fields directly from search result columns avoids repeated loads. This is a standard optimization for scripts that iterate over many records.

Question 43SuiteCloud Development Fundamentals

Which SDF object type defines a role-level or company-level entry point configuration for a script, including status and audience?

  1. customrecordtype
  2. script
  3. scriptdeployment Correct answer.
  4. workflow

Explanation

The scriptdeployment object defines deployment-specific settings such as status, audience, schedule, and parameters, while the script object defines the script file and script record. Both are needed for a deployed script in SDF.

Question 44SuiteCloud Development Fundamentals

A developer wants to prevent a User Event script from running during CSV imports while still running for UI edits. Which configuration approach is most appropriate?

  1. Add a guard in the script that checks the runtime execution context and exits early for imports.
  2. Set the deployment's execution context so the script runs only in the user interface context. Correct answer.
  3. Remove the beforeSubmit entry point so imports cannot trigger the script.
  4. Set the deployment status to Testing so imports skip the script.

Explanation

Script deployments can restrict execution context, so limiting the deployment to the UI context keeps the script from firing during CSV import or web services calls. Alternatively, a runtime context check inside the script achieves the same guard.

Question 45SuiteCloud Development Fundamentals

A developer needs to define a custom field of type select that draws its options from a custom list created in the same SDF project. Which element in the customfield object establishes that relationship?

  1. The selectrecordtype or selection reference pointing to the custom list script ID Correct answer.
  2. The displaytype element set to HIDDEN
  3. The defaultvalue element containing the list values inline
  4. The ismandatory element set to true

Explanation

A select-type custom field references its source list through the selection or selectrecordtype element using the list's script ID. SDF then resolves the dependency so the list is deployed before the field.

Question 46SuiteCloud Development Fundamentals

A developer is troubleshooting a failed SDF deployment where an object depends on a custom segment that exists in the target account but is not in the project. What is the most likely cause and remedy?

  1. The deployment failed because the project manifest is missing the framework version; add the version to manifest.json.
  2. The deployment failed because the auth ID expired; regenerate the auth ID and redeploy.
  3. The dependency is unresolved because the referenced object is not in the project; add it to the project or mark it as an existing dependency. Correct answer.
  4. The deployment failed because the object script ID contains uppercase letters; rename it to lowercase.

Explanation

SDF validates that every referenced object is either included in the project or explicitly treated as an existing dependency. If the custom segment is not in the project, the reference cannot be resolved and deployment fails until the dependency is declared.

Question 47SuiteCloud Development Fundamentals

A developer must design a solution where an external system posts JSON to NetSuite and receives a synchronous response within a short time limit. Which script type and design consideration are most appropriate?

  1. A Scheduled Script, because the scheduler guarantees a response to the caller.
  2. A Map/Reduce Script, because its phases return intermediate results to the caller.
  3. A User Event Script, because it fires when the external system creates a record.
  4. A RESTlet, keeping processing lightweight because the caller waits for the response and the script is subject to governance limits. Correct answer.

Explanation

RESTlets provide synchronous HTTP endpoints that accept and return JSON, making them the standard choice for external integrations needing an immediate response. Processing must stay efficient because the caller blocks and the script consumes governance per request.

Question 48SuiteCloud Development Fundamentals

A developer is choosing between a User Event script and a Map/Reduce script for recalculating a summary field on 50,000 records nightly. Which reasoning is sound?

  1. User Event is preferable because beforeSubmit runs with unlimited governance for bulk updates.
  2. User Event is preferable because it can be scheduled to run at night using the deployment schedule.
  3. Map/Reduce is preferable because it executes synchronously and returns all results in one response.
  4. Map/Reduce is preferable because each phase receives its own governance budget, allowing large volumes to be processed without a single execution exceeding limits. Correct answer.

Explanation

Map/Reduce divides work across getInputData, map, reduce, and summarize phases, and each phase gets a fresh governance budget, which suits large nightly recalculations. A single User Event execution would risk exceeding governance limits on tens of thousands of records.

Question 49SuiteCloud Development Fundamentals

A developer wants to expose a custom button on a record form that triggers server logic without reloading the page. Which combination of SuiteScript capabilities is appropriate?

  1. A Client Script that calls a Suitelet or RESTlet via https, with the server logic implemented in that endpoint. Correct answer.
  2. A User Event script that renders the button and executes the logic in beforeLoad.
  3. A Scheduled Script that polls the form for button clicks.
  4. A Map/Reduce script that registers the button through its summarize entry point.

Explanation

Client Scripts can add buttons and call server-side endpoints such as a Suitelet or RESTlet using N/https or N/url. The server logic belongs in the endpoint, keeping the client script responsive without a full page reload.

Question 50SuiteCloud Development Fundamentals

A developer is reviewing an SDF project that must be promoted from sandbox to production with identical customizations. Which practice best supports reliable promotion?

  1. Keep all customization objects in version control and deploy the same validated project to each account. Correct answer.
  2. Deploy only the changed objects by editing the manifest before each promotion.
  3. Manually recreate objects in production using the UI to avoid deployment conflicts.
  4. Store account-specific values directly in script source files before each deployment.

Explanation

Version-controlling the full project and deploying the same validated artifact to each account keeps environments consistent and makes differences traceable. Account-specific values should be handled through deployment parameters or configuration rather than source edits.