You need to sign in to do that
Don't have an account?
Raghavendra M 13
When clicking on button i have to get current time? below is my code getting error
Time field data type is Time
{!REQUIRESCRIPT("/soap/ajax/29.0/connection.js")}
try{
var accToUpdate = new sforce.SObject("Account");
accToUpdate.Id = "{!Account.Id}";
var today = new Date();
function fixTime(time){
if(time < 10) {time = "0" + time};
return time;
}
function fixDate(date){
var Month = fixTime(date.getMonth() + 1);
var Day = fixTime(date.getDate());
var UTC = date.toUTCString();
var Time = UTC.substring(UTC.indexOf(':')-2, UTC.indexOf(':')+6);
var Minutes = fixTime(date.getMinutes());
var Seconds = fixTime(date.getSeconds());
return date.getHours() + ":"+date.getMinutes();
}
accToUpdate.Current_Time__c= fixDate(today);
var result =
sforce.connection.update([accToUpdate]);
if(result[0].success == "true"){
location.reload();
}
else{
alert("An Error has Occurred. Error: " +
result[0].errors.message
);
}
}
catch(e){
alert(
"An Error has Occurred. Error: " +
e
);
}
{!REQUIRESCRIPT("/soap/ajax/29.0/connection.js")}
try{
var accToUpdate = new sforce.SObject("Account");
accToUpdate.Id = "{!Account.Id}";
var today = new Date();
function fixTime(time){
if(time < 10) {time = "0" + time};
return time;
}
function fixDate(date){
var Month = fixTime(date.getMonth() + 1);
var Day = fixTime(date.getDate());
var UTC = date.toUTCString();
var Time = UTC.substring(UTC.indexOf(':')-2, UTC.indexOf(':')+6);
var Minutes = fixTime(date.getMinutes());
var Seconds = fixTime(date.getSeconds());
return date.getHours() + ":"+date.getMinutes();
}
accToUpdate.Current_Time__c= fixDate(today);
var result =
sforce.connection.update([accToUpdate]);
if(result[0].success == "true"){
location.reload();
}
else{
alert("An Error has Occurred. Error: " +
result[0].errors.message
);
}
}
catch(e){
alert(
"An Error has Occurred. Error: " +
e
);
}
You need turn the time string to YYYY-MM-DDTHH:MM:SSZ, for example "2018-04-18T15:46:00Z"
it works fine.
i just modified your code, please use it .
------------------------------------------------------------------------------------------
{!REQUIRESCRIPT("/soap/ajax/29.0/connection.js")}
try{
var accToUpdate = new sforce.SObject("Account");
accToUpdate.Id = "{!Account.Id}";
var today = new Date();
function fixTime(time){
if(time < 10) {time = "0" + time};
return time;
}
function formatDate(date) {
var d = new Date(date),
month = '' + (d.getMonth() + 1),
day = '' + d.getDate(),
year = d.getFullYear();
if (month.length < 2) month = '0' + month;
if (day.length < 2) day = '0' + day;
return [year, month, day].join('-');
}
function fixDate(date){
var Month = fixTime(date.getMonth() + 1);
var Day = fixTime(date.getDate());
var UTC = date.toUTCString();
var Time = UTC.substring(UTC.indexOf(':')-2, UTC.indexOf(':')+6);
var Minutes = fixTime(date.getMinutes());
var Seconds = fixTime(date.getSeconds());
return "T"+date.getHours() + ":"+date.getMinutes() +":00Z";
}
accToUpdate.Current_Time__c= formatDate(today)+fixDate(today);
var result =
sforce.connection.update([accToUpdate]);
if(result[0].success == "true"){
alert(accToUpdate.Current_Time__c);//it works fine.
location.reload();
}
else{
alert("An Error has Occurred. Error: " +
result[0].errors.message
);
}
}
catch(e){
alert(
"An Error has Occurred. Error: " +
e
);
}
The below error message appears when we click the custom button.
An Error has Occurred. Error: {faultcode:'soapenv:Client', faultstring:''15:31' is not a valid value for the type xsd:dateTime', }
Current_Time__c was created , it is not a problem.
The key point is the time format
Please try the below one:
Displaying field is Text field - Test__c
Custom Button coding:
{!REQUIRESCRIPT("/soap/ajax/29.0/connection.js")}
try{
var accToUpdate = new sforce.SObject("Account");
accToUpdate.Id = "{!Account.Id}";
var today = new Date();
function fixTime(time){
if(time < 10) {time = "0" + time};
return time;
}
function fixDate(date){
var hours = date.getHours();
var ampm = hours >= 12 ? 'PM' : 'AM';
return fixTime(date.getHours()) + ":"+fixTime(date.getMinutes())+" "+ampm;
}
accToUpdate.Test__c= fixDate(today);
var result = sforce.connection.update([accToUpdate]);
if(result[0].success == "true"){
location.reload();
}
else{
alert("An Error has Occurred. Error: " + result[0].errors.message);
}
}
catch(e){
alert("An Error has Occurred. Error: " + e);
}
Let me know if its works as you excepted.
Thanks
Jenefa
Sweet Potato Tec
can you show me error message?
It is ok Now , sorry for the bug. i fixed it.
---------------------------------------------------------------------------
{!REQUIRESCRIPT("/soap/ajax/29.0/connection.js")}
try{
var accToUpdate = new sforce.SObject("Account");
accToUpdate.Id = "{!Account.Id}";
var today = new Date();
function fixTime(time){
if(time < 10) {time = "0" + time};
return time;
}
function formatDate(date) {
var d = new Date(date),
month = '' + (d.getMonth() + 1),
day = '' + d.getDate(),
year = d.getFullYear();
if (month.length < 2) month = '0' + month;
if (day.length < 2) day = '0' + day;
return [year, month, day].join('-');
}
function fixDate(date){
var Month = fixTime(date.getMonth() + 1);
var Day = fixTime(date.getDate());
var UTC = date.toUTCString();
var Time = UTC.substring(UTC.indexOf(':')-2, UTC.indexOf(':')+6);
var Minutes = fixTime(date.getMinutes());
var Seconds = fixTime(date.getSeconds());
var Hours = fixTime(date.getHours());
return "T"+ Hours + ":"+Minutes +":00Z";
}
accToUpdate.Current_Time__c= formatDate(today)+fixDate(today);
var result =
sforce.connection.update([accToUpdate]);
if(result[0].success == "true"){
alert(accToUpdate.Current_Time__c);
location.reload();
}
else{
alert("An Error has Occurred. Error: " +
result[0].errors.message
);
}
}
catch(e){
alert(
"An Error has Occurred. Error: " +
e
);
}
---------------------------------------------------------------------------
Now it is perfect, please use it.
------------------------------------------------------------------------------------------
{!REQUIRESCRIPT("/soap/ajax/29.0/connection.js")}
try{
var accToUpdate = new sforce.SObject("Account");
accToUpdate.Id = "{!Account.Id}";
var today = new Date();
function fixTime(time){
if(time < 10) {time = "0" + time};
return time;
}
function fixDate(date){
var Month = fixTime(date.getMonth() + 1);
var Day = fixTime(date.getDate());
var UTC = date.toUTCString();
var Time = UTC.substring(UTC.indexOf(':')-2, UTC.indexOf(':')+6);
var Minutes = fixTime(date.getMinutes());
var Seconds = fixTime(date.getSeconds());
var Hours = fixTime(date.getHours());
return ""+Hours + ":"+ Minutes + ":"+ Seconds+""; // format: 09:00:00
}
accToUpdate.Current_Time__c= fixDate(today);
var result =
sforce.connection.update([accToUpdate]);
if(result[0].success == "true"){
location.reload();
}
else{
alert("An Error has Occurred. Error: " +
result[0].errors.message
);
}
}
catch(e){
alert(
"An Error has Occurred. Error: " +
e
);
}
------------------------------------------------------------------------------------------