Major release weekends: February 2 / February 9 Sandboxes уже перешли. Top Developer features: https://www.salesforceben.com/salesforce-spring-24-features-top-10-developer-updates-you-need-to-know/ https://developer.salesforce.com/blogs/2024/01/spring24-developers
Savepoint sp = Database.setSavepoint(); try { // Try a database operation insert new Account(name='Foo'); integer bang = 1 / 0; } catch (Exception ex) { Database.rollback(sp); Database.releaseSavepoint(sp); // Also releases any savepoints created after 'sp' makeACallout(); // Callout is allowed because uncommitted work is rolled back and savepoints are released }
Make Callouts After Rolling Back DML and Releasing Savepoints: https://help.salesforce.com/s/articleView?id=release-notes.rn_apex_SavepointCallouts.htm&release=248&type=5 пока что только если делаешь rollback, можно будет вызвать callout после dml statement [code] Savepoint sp = Database.setSavepoint(); try { // Try a database operation insert new Account(name='Foo'); integer bang = 1 / 0; } catch (Exception ex) { Database.rollback(sp); Database.releaseSavepoint(sp); // Also releases any savepoints created after 'sp' makeACallout(); // Callout is allowed because uncommitted work is rolled back and savepoints are released } [/code]
Полезная фича :surprised:. Пару раз сталкивался, приходилось костыли писать.
UUID randomUuid = UUID.randomUUID(); System.debug(randomUuid);
Generating a UUID: [code]UUID randomUuid = UUID.randomUUID(); System.debug(randomUuid);[/code] The new UUID class in Apex is your go-to for generating and working with UUIDs. This class offers various methods for UUID operations: randomUUID(): Generates a random UUID. equals(obj): Compares the UUID instance with another object. hashcode(): Returns the UUID's hashcode. fromString(string): Creates a UUID instance from a string representation. toString(): Converts a UUID instance to its string representation.
[quote="Eric"]Generating a UUID[/quote] А разве в SF UUID не было давно? ААААА блин :rolling: Посмотрел старые проекты. Я просто откуда-то скопипастил кастомный класс который реализует UUID и использовал его как родной уже 100 лет и даже забыл про это :rolling:
[quote="Dmitry Shnyrev"]А разве в SF UUID не было давно[/quote] это новый класс в System namespace (api version должна быть 60) https://help.salesforce.com/s/articleView?id=release-notes.rn_apex_uuid.htm&release=248&type=5 есть idea с 2011: https://ideas.salesforce.com/s/idea/a0B8W00000GdYaOUAV/guid-generator-function
Integer notNullReturnValue = anInteger ?? 100;
А вот этого я давно ждал!!!!!!!!!!!!!!!! https://help.salesforce.com/s/articleView?id=release-notes.rn_apex_NullCoalescingOper.htm&release=248&type=5 [code]Integer notNullReturnValue = anInteger ?? 100;[/code] Eric, почему такую важную мелочь не упомянул :smiley:
[quote="Dmitry Shnyrev"]Eric, почему такую важную мелочь не упомянул[/quote] :smiley: согласен что полезный feature. он первый в списке который уже есть выше: https://developer.salesforce.com/blogs/2024/01/spring24-developers idea с 2015 года https://ideas.salesforce.com/s/idea/a0B8W00000Gdam8UAB/null-coalesce-operator
[quote="Eric"] согласен что полезный feature. он первый в списке который уже есть выше: https://developer.salesforce.com/blogs/2 ... velopers [/quote] Эта фича требует отдельного упоминания :rolling::party:
Einstein for Formulas: берёт логику Формула field и пишет нормальным языком - получаеться обратный NLP (natural language processing) https://admin.salesforce.com/blog/2024/einstein-for-formulas-spring-24?utm_campaign=amer_sfadminaw&utm_content=SalesforceAdmns_Be+Release+Ready&utm_medium=organic_social&utm_source=twitter в Roadmap (Formula creation (Winter ’25)) - пишешь логику обычным текстом и Einstein создает формулу :party:
Люди (да и я) уже давно используют ChatGPT для написания формул. Для ChatGPT простые задачи - идеально. Да, Einstein бы наверно обиделся, что его имя используют для кнопки, объясняющей работу формулы :) если весь этот сегодняшний хайп вокруг AI просто выльется в эту кнопку, то будет забавно