Хорошо, хороший вопрос. Это самая важная и необходимая вещь в SCA, проверьте подробности ниже -->
Примечание. Ниже приведены шаги для версии SuiteCOMmerce Advance Vision (2016–2017).
Вам нужно создать ниже вещи -->
i. SuiteScript Model
ii. SuiteScript Service
iii.JavaScript Model
iv. JavaScript view
v. JavaScript Template
vi. Update distro.json
Создайте пользовательскую папку (наш пользовательский модуль) в пользовательской папке как
Модули/пользовательские/[email protected]
Создайте папку SuiteScript в вышеуказанном модуле
Создайте службу SuiteScript в папке «SuiteScript», как показано ниже ->
Имя файла и путь: Modules/custom/[email protected]/SuiteScript/Categorylanding.ServiceController.js
Код:
define(
'Categorylanding.ServiceController'
, [
'ServiceController'
, 'Categorylanding.Model'
]
, function(
ServiceController
, Categorylanding
)
{
'use strict';
return ServiceController.extend({
name: 'Categorylanding.ServiceController'
, get: function()
{
return Categorylanding.get();
}
});
}
);
- Создайте модель SuiteScript в папке SuiteScript, как показано ниже -->
Имя файла и путь: Modules/custom/[email protected]/SuiteScript/Categorylanding.Model.js
Код:
define('Categorylanding.Model',
[
'SC.Model'
],
function (SCModel) {
return SCModel.extend({
name: 'Categorylanding',
get: function()
{
var filters = new Array();
var columns = new Array();
columns[0] = new nlobjSearchColumn('custrecord_collection_name');
columns[2] = new nlobjSearchColumn('custrecord_collection_url');
var results = nlapiSearchRecord('customrecord_webstore_category_landing', null, filters, columns);
var results_ = JSON.stringify(results);
return results_;
}
});
}
)
- Создан файл пакета ns
Имя файла и путь:
Модули/custom/[email protected]/ns.package.json
Код:
{
"gulp": {
"javascript": [
"JavaScript/*"
],
"ssp-libraries": [
"SuiteScript/*.js"
],
"autogenerated-services": {
"Categorylanding.Service.ss": "Categorylanding.ServiceController"
},
"templates": [
"Templates/*"
],
"images": [
"Images/*"
],
"sass": [
"Sass/*.scss"
],
"configuration": [
"Configuration/*.json"
]
}
}
- Обновите дистрибутив. json файл, как показано ниже
добавьте свой модуль в раздел модулей как
"custom/Categorylanding": "1.0.0",
и зависимости в
"ssp-libraries": {
"entryPoint": "SCA",
"dependencies": [
"CategoryLanguage.ServiceController",
"CategoryLanguage.Model",
],
Разверните свой код, и как только это будет сделано, вы сможете увидеть свои данные при ответном вызове, вы можете вызвать свою службу, как показано ниже.
http://yoursite.com/sca-dev-vinson/services/Categorylanding.Service.ss?c=4515330
Теперь оставшаяся часть заключается в том, как вы можете получить эти данные в представлении магистрали, для этого перейдите в свое представление, где вы хотите получить эти данные.
Перед этим создайте модель Javascript в той же папке, что и ниже.
Имя файла и путь :
Модули/custom/[email protected]/JavaScript/Categorylanding.Model.js
Код:
define('Categorylanding.Model',
[
'Backbone',
'underscore'
],
function (Backbone, _) {
return Backbone.Model.extend(
{
url: function()
{ var urlRoot = _.getAbsoluteUrl('services/Categorylanding.Service.ss');
return urlRoot;
}
});
}
);
- Как только это будет сделано, вы можете вызвать приведенную выше модель javascript для любого файла представления/маршрутизатора, чтобы получить данные записи в представлении магистрали.
Определите режим и используйте приведенный ниже код
var collection = new CategorylandingModel();
var view = new BrowseView({
translator: translator
, translatorConfig: self.translatorConfig
, application: self.application
, collection: collection
});
collection.fetch().done(function(data) //again fetch Instagram service
{
console.log(data) //your service data will log here
});
- Теперь вы можете получить доступ к своим данным в BrowseView(){} как
var recorddata = this.collection.attributes;
console.log(данные записи);
и передать его руль. Вот и все.
Дайте мне знать, если вам нужна помощь....
person
Anup Chaudhary
schedule
03.04.2017