SuiteCloud Development Framework Flashcards
SuiteApp Project Vs. Account Customisation, are both of these SuiteCloud projects?
Yes, they are both SuiteCloud Projects
Account customization projects are intended for what?
Account customization projects are intended for customizations on accounts you own
Can you lock objects in account customisation projects?
No. Locking objects is not supported in account customisation projects
Can you configure account features in SuiteApp projects?
No. Configuring account features is not supported in SuiteApp projects
Can we edit the custom transaction status from the NetSuite Account UI in SuiteApp projects?
No, editing custom transaction status from the NetSuite Account UI is not allowed in SuiteApp projects
True or False?
We can hide files in Account Customisation projects.
False.
Hiding files is not supported in Account Customisation projects
True or False?
We can import Bundle Components in SuiteApp projects
False.
Importing Bundle Components is not supported in SuiteApp projects
True or False?
Importing files is not supported in SuiteApp projects
True
Deleting files is not allowed in Account Customisation. However, what files CAN be deleted in SuiteApp customisations?
.js files can be deleted in SuiteApp customisations, but only .js files.
True or false?
Deleting instances, objects and subrecords is not allowed in Account customisation projects
True
What ARE SuiteApp projects?
SuiteApp projects are self-contained, standalone projects you can use to develop and deploy SDF SuiteApps to target NetSuite accounts
Can you deploy SDF SuiteApps to NetSuite accounts you don’t own?
Yes, you can deploy SDF SuiteApps to accounts you might not own
Using the Java CLI, what command do we use to create a SuiteCloud project?
“createproject”
When creating a SuiteCloud project through the Java CLI with the “createproject” command, what are the options/parameters for this command?
-type - Required
-overwrite - Optional
-parentdirectory - Required
-projectname - Required
-projectid - Required when type is specified as SUITEAPP
-projectversion - Required when type is specified as SUITEAPP
-publisherid - Required when type is specified as SUITEAPP
Using the createproject command to create a SuiteCloud project through the Java CLI, one of the parameters is “Type”.
What are the 2 account types that can be set?
ACCOUNTCUSTOMIZATION or SUITEAPP
Using the createproject command to create a SuiteCloud project through the Java CLI, one of the parameters is “Overwrite”.
What does this do?
Overwrite is a boolean (true or false flag) that indicates whether this new project will overwrite an existing project with an identical project name.
Using the createproject command to create a SuiteCloud project through the Java CLI, one of the parameters is “parentdirectory”.
What does this do?
Sets the parent directory of the project created.
Using the createproject command to create a SuiteCloud project through the Java CLI, one of the parameters is “projectname “.
What does this do?
It’s a name for your project.
Using the createproject command to create a SuiteCloud project with an account type of SUITEAPP through the Java CLI, one of the parameters is “projectid”.
What does this do?
A unique identifier to assign to the project.
This value must be a word with lowercase alphanumeric characters. It must be less than 40 characters
Using the createproject command to create a SuiteCloud project with an account type of SUITEAPP through the Java CLI, one of the parameters is “publisherid”.
What does this do?
The publisher ID of your SuiteApp project.
Using the createproject command to create a SuiteCloud project with an account type of SUITEAPP through the Java CLI, one of the parameters is “projectversion”.
What does this do?
The version to assign to your project, using semantic versioning.
For example, specify the following project version if your SDF SuiteApp is version 1.02, minor revision #01242016.
1.02.01242016 <– Would look like this
When using the Java CLI to create a new project, it will always prompt you to enter an account password, unless you are using what?
Token based authentication
Using the SuiteCloud CLI for Node.js, what command creates a new SuiteCloud project?
project:create
When creating a SuiteCloud project through the SuiteCloud CLI for Node.js with the “project:create” command, what are the options/parameters for this command?
-i or –interactive - Optional
–type - Required
–overwrite - Optional
–projectname - Required
–projectid - Required when type is specified as SUITEAPP
–projectversion - Required when type is specified as SUITEAPP
–publisherid - Required when type is specified as SUITEAPP
What does the -i or –interactive parameter do for the project:create command when creating a SuiteCloud project through the SuiteCloud CLI for Node.js.
What are the 2 commands not supported when using this parameter?
Runs the command in interactive mode.
-account:savetoken
-account:setup
When creating a SuiteCloud project through the SuiteCloud CLI for Node.js and NOT running in interactive mode, what command must be used before working on the project?
-account:setup
What 3 types of NEW forms can not be created using SDF?
New address, entry and transaction forms cannot be created using SDF
What record type can we not create using SDF?
We cannot create integration records using SDF
What must we do in order to work with forms in SDF?
We must import them from a NetSuite account
What happens if we try to deploy SDF custom objects from an account customisation project if the objects are locked in the target NetSuite account?
We will not be able to deploy those SDF custom objects.
What happens if we are trying to add a subrecord to a locked record type using an account customisation project?
We will not be able to add those subrecords to the locked record types.
What is continuous integration?
An automated process that validates your SDF project before deploying it to a NetSuite account
True or False?
Continuous integration does not allow human interaction
True
True or False?
NetSuite offers Continuous Integration as a preparatory solution.
False.
This is not offered by Oracle NetSuite as a preparatory solution
Continuous integration is only available for SDF projects and it only works for one of the CLI’s available for SDF. Which one?
It only works using SuiteCloud CLI for Node.js
When using Continuous integration with the SuiteCloud CLI for Node.js, which option must you ensure your commands are NOT using?
Only use non-interactive commands
True or False?
We must use a Continuous Integration 3rd party service provider
True, it is not provided by NetSuite
When using Continuous integration, we must use a Version Control System that has what kind of strategy?
What is one primary example of such a Version Control System?
Must use a Version Control System with a Branching Model Strategy like GitHub
Once employed, how does Continuous Integration function when committing and pushing changes to branches in your chosen Version Control System?
Makes it so when you commit and push changes to a specific branch, the project will be automatically tested through unit tests, validated, and deployed to your account
True or False?
The automated actions you set up to be used with your Continuous Integration system can be set up using SuiteCloud CLI for Node.js
True
You can set create different actions for each branch of your Version Control System.
What would be 2 prime examples of separate actions you could set up, assuming you have a development branch, and a production branch?
Can setup a dev branch that automatically deploys to a sandbox environment
Can setup a production branch that automatically deploys to production environment
Any errors that occur when deploying through SDF will appear in 2 locations, what are they?
The errors will be displayed in the deployment and validation logs
Regarding Deployment Logs:
You can review and download installation logs from the Deployment Audit Trail page of the NetSuite account (Customization > SuiteCloud Development)
What information will these logs include?
- The objects and files that were installed
- The date and time when objects and files were installed
- Any warnings or errors that occurred during deployment
SDF Validation logs perform server-side validation during two key processes, catching and logging the errors.
What are the two processes that this server-side validation occurs during?
The project deployment process and when deploying a SuiteCloud project to a target NetSuite account
Regarding SDF;
There are 5 errors that may occur when working with Transaction Forms or Entry Forms.
What are they?
- The object value is either invalid or does not exist in the account.
- The field under the group is invalid
- The property value of the object cannot be modified
- The sameRowAsPrevious field must be set to false because it is the first entry
- The object field must not be NOT_YET_SUPPORTED
While deploying via SDF to a transaction or entry form, you have encountered the following error:
The object value is either invalid or does not exist in the account
What could be the cause?
- The script ID value contains a typo
- The script ID value does not exist in the target NetSuite account
While deploying via SDF to a transaction or entry form, you have encountered the following error:
The field under the group is invalid
What could be the cause?
- There is an invalid field name in the custom object.
- Possibly a Typo
- The field sequence is not in the correct order:
- Unlike other SDF custom object types, form fields must follow the order as exported from the account
While deploying via SDF to a transaction or entry form, you have encountered the following error:
The property value of the object cannot be modified
What could be the cause, and how can we fix it?
- The property value is disabled or set to read-only in the target account
We should set the object’s property to match the default value used in the target account
While deploying via SDF to a transaction or entry form, you have encountered the following error:
The sameRowAsPrevious field must be set to false because it is the first entry
How can we fix it?
- The top and bottom position fields and the first field within a field group must be set as:
<SameRowAsPrevious>F</SameRowAsPrevious>
While deploying via SDF to a transaction or entry form, you have encountered the following error:
The object field must not be NOT_YET_SUPPORTED
What could be the cause, and how can we fix it?
- A custom template for the printing type was selected, but only standard templates are supported
Change the custom template to a standard template
While deploying account configurations via SDF, you have encountered the following error:
Resolve the following conflicts to disable the feature
What could be the cause, and how can we fix it?
The feature specified is dependent on the state of more than one feature with a conflicting state
To fix it adjust the states of the features referenced in the error message.
While deploying account configurations via SDF, you have encountered the following error:
Disable the dependent feature before disabling the feature
What could be the cause, and how can we fix it?
Cause: The feature is dependent on the state of another feature that is either enabled in the target account, or set to enabled in the account configuration
Solution #1
Disable the feature in the target account.
Solution #2
Set the feature to disabled in the AccountConfiguration/features.xml file in the project.
While deploying account configurations via SDF, you have encountered the following error:
The feature must be enabled to deploy this project
What could be the cause, and how can we fix it?
Cause: The feature is set to ‘required’ in the manifest but also set to disabled in the account configuration
Solution #1:
Change the required state of the feature in the manifest file in the project.
Solution #2:
Set the feature to enabled in the AccountConfiguration/features.xml file in the project.
While deploying account configurations via SDF, you have encountered the following error:
The feature is duplicated
What could be the cause, and how can we fix it?
Cause: There are multiple occurrences of the referenced feature ID
Solution:
Remove all the duplicates.
While deploying account configurations via SDF, you have encountered the following error:
Enable the dependent feature before enabling the feature
What could be the cause, and how can we fix it?
Cause: The feature is dependent on the state of another feature that is either disabled in the target account, or set to disabled in the account configuration
Solution #1
Enable the feature in the target account.
Solution #2
Set the feature to enabled in the AccountConfiguration/features.xml file in the project.
While deploying account configurations via SDF, you have encountered the following error:
The feature is missing its field
What could be the cause, and how can we fix it?
Cause: A feature entry in the account configuration is missing its ID field
Solution:
Add the missing field ID to the feature definition in the AccountConfiguration/features.xml file in the project.
While deploying account configurations via SDF, you have encountered the following error:
The feature’s field requires a value
What could be the cause, and how can we fix it?
Cause: A feature entry in the account configuration is missing its field value
Solution
Add the missing field value to the feature definition in the AccountConfiguration/features.xml file in the project.
While deploying account configurations via SDF, you have encountered the following error:
The feature is not available on this account
What could be the cause, and how can we fix it?
Cause: The feature is valid but does not exist in the target account
For example, you may have imported some features from a OneWorld account that are not available in other account types. This error occurs when you try to deploy a OneWorld account configuration to other account types.
Solution #1
Remove the referenced feature definition from the AccountConfiguration/features.xml file in the project so that you can deploy to the target account.
Solution #2
Only deploy the project to account types that support the referenced feature.
While deploying account configurations via SDF, you have encountered the following error:
The configuration field from the feature is missing
What could be the cause, and how can we fix it?
Cause: A feature entry in the account configuration is missing a required field (that is the status field)
Solution
Add the missing field to the feature definition in the AccountConfiguration/features.xml file in the project.
While deploying account configurations via SDF, you have encountered the following error:
Feature is not modifiable
What could be the cause, and how can we fix it?
Cause: There was an attempt to modify a feature (DOCUMENTS or SUITEAPPDEVELOPMENTFRAMEWORK) that SDF requires to function
Solution
Remove the reference to the feature definition in the AccountConfiguration/features.xml file in the project.
While deploying account configurations via SDF, you have encountered the following error:
Feature(s) definition must start with tag but found tag
««««««««««««««««««««««««««
description would show like this:
Feature definition must start with the <tag_name> tag but found the <tag_name> tag.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>></tag_name></tag_name>
What could be the cause, and how can we fix it?
Cause: There was a typo or misspelling in the AccountConfiguration/features.xml file
Solution
Change the referenced tag to <feature> or <features>, depending on where the error occurred.</features></feature>
While deploying account configurations via SDF, you have encountered the following error:
An invalid feature ID
What could be the cause, and how can we fix it?
Cause: There was a typo or misspelling in the AccountConfiguration/features.xml file
Solution
Remove the reference to the invalid ID in the AccountConfiguration/features.xml file in the project.
While deploying account configurations via SDF, you have encountered the following error:
Is an invalid feature state
What could be the cause, and how can we fix it?
Cause: There was a typo or misspelling in the AccountConfiguration/features.xml file
Solution
Change the referenced feature state to ENABLED or DISABLED.
While deploying account configurations via SDF, you have encountered the following error:
You cannot use SuiteCloud Development Framework to enable the feature because it requires a Terms of Service user agreement
What could be the cause, and how can we fix it?
Cause: There was an attempt to change the state of a feature that requires a Terms of Service user agreement
Solution
Remove the reference to the feature definition in the AccountConfiguration/features.xml file in the project.