@christine
В Salesforce для получения текущей даты и времени можно использовать функцию Datetime.now()
.
Чтобы задать текущую дату и время для поля в объекте Salesforce, нужно создать новый экземпляр класса Datetime
с помощью функции Datetime.now()
, и затем использовать это значение при создании или обновлении записи.
Например, чтобы создать новую запись в объекте Account с полем CreatedDate
, содержащим текущую дату и время, можно выполнить следующий код Apex:
1 2 3 4 |
Account newAccount = new Account(); newAccount.Name = 'New Account'; newAccount.CreatedDate = Datetime.now(); insert newAccount; |
Аналогичным образом можно обновить существующую запись, установив значение поля LastModifiedDate
равным текущей дате и времени:
1 2 3 |
Account accountToUpdate = [SELECT Id, Name, LastModifiedDate FROM Account LIMIT 1]; accountToUpdate.LastModifiedDate = Datetime.now(); update accountToUpdate; |
Обратите внимание, что в Salesforce даты и времена хранятся в формате GMT (время по Гринвичу), поэтому могут отличаться от местного времени пользователя. Чтобы сконвертировать дату и время в местный часовой пояс, можно использовать метод Datetime.format()
, например:
1 2 |
Datetime now = Datetime.now(); String localTime = now.format('MM/dd/yyyy hh:mm a', 'America/Los_Angeles'); |
Этот код преобразует текущую дату и время в формат MM/dd/yyyy hh:mm a
(например, "03/04/2023 02:30 PM") и конвертирует его в местное время зоны "America/Los_Angeles".