Show the saved search data based on the Uk time using the suitelet
/**
* @NApiVersion 2.1
* @NScriptType Suitelet
*/
define(['N/search','N/file','N/format'],
(search,file,format) => {
/**
* Defines the Suitelet script trigger point.
* @param {Object} scriptContext
* @param {ServerRequest} scriptContext.request - Incoming request
* @param {ServerResponse} scriptContext.response - Suitelet response
* @since 2015.2
*/
const onRequest = (context ) => {
var results = new Array();
try{
var response = context.response;
//obtain the current date
var date =new Date();
log.debug("date",date)
//converting current date to UK time zone
var london_time = format.format({
value : date,
type : format.Type.DATETIME,
timezone : format.Timezone.EUROPE_LONDON
});
let london__time_new=new Date(london_time.split(' ')[0]);
var londonDate = generateDateString(london__time_new);
log.debug("londonDate",londonDate);
//converting current date to Australia time zone
var australia_time = format.format({
value : date,
type : format.Type.DATETIME,
timezone : format.Timezone.AUSTRALIA_SYDNEY
});
let australia_time_new=new Date(australia_time.split(' ')[0]);
var ausDate = generateDateString(australia_time_new);
log.debug("ausDate",ausDate);
//comapre london time and australian time
if(londonDate < ausDate){
//load the search with id to obtain the required result
var search_load=search.load({
id:'customsearch_jj_uk_test_klipfolio_search',
});
log.debug('search',search_load);
//load the filters
var filters = search_load.filters;
//create a new filter for system note date
var filterOne = search.createFilter({
name: 'date',
join:'systemnotes',
operator: search.Operator.WITHIN,
values:'yesterday'
});
//replace the search filter createddate in the ui search with new filter
var filer= filters.splice(7,1,filterOne)
log.debug("filer",filer);
log.debug('search',search_load);
//Run the search result
var results = search_load.run().getRange(0,100);
}
else{
var search_load=search.load(
id:'customsearch_jj_uk_test_klipfolio_search'
});
log.debug('search',search_load);
var filters = search_load.filters;
var filterOne = search.createFilter({
name: 'date',
join:'systemnotes',
operator: search.Operator.WITHIN,
values: 'today'
});
var filer= filters.splice(7,1,filterOne)
log.debug("filer",filer);
var results = search_load.run().getRange(0,100);
}
}
catch (e) {
log.error('on_request', e.message);
}
response.writeLine(JSON.stringify(results));
function generateDateString(dateObj) {
//convert date to specific format
var date = dateObj;
log.debug("date",date);
var d = date.getDate();
var m = date.getMonth()+1;
var y = date.getFullYear();
var dateString = ((m <= 9 ? '0' + m : m) + '/' + (d <= 9 ? '0' + d : d) + '/' + y);
return dateString;
}
}
return {onRequest}
});