„Salesforce Apex“ – datos formatas

Salesforce Apex Datos Formatas



Klientų duomenų sekimas paskyrose/Kontaktuose yra labai svarbus ryšių su klientais valdyme (CRM). Atsižvelgiant į datą, vyksta visi procesai, tokie kaip pirkimas, kainų siūlymas ir aptarnavimas. Pažiūrėkime, kaip sukurti datą iš eilutės „Salesforce“ ir konvertuoti datą į eilutę. Šiame vadove taip pat pamatysime metodus, taikomus suformatuota data, pvz., dienų, metų, mėnesių ir kt. pridėjimą su pavyzdžiais.

Apex datos klasė

Datos klasė palaiko visus datos metodus, kurie yra primityvūs. Jis naudoja vardų erdvę „Sistema“. Norėdami konvertuoti eilutę į datos formatą, galime naudoti šios klasės metodą valueOf(). Suformavę datą, taikome kai kuriuos metodus, kad prie šios suformatuotos datos pridėtume dienas, mėnesius, metus ir kt., naudodami kai kuriuos metodus, kurie taip pat galimi šioje datos klasėje.







Pirmiausia pamatysime, kaip konvertuoti eilutę į datą naudojant „Salesforce Apex“ metodą valueOf().



Data.valueOf()

ValueOf () „Apex“ yra „Data“ klasėje, kuri naudoja eilutę kaip argumentą, konvertuojantį nurodytą eilutę į datos formatą. Įvesties eilutė (parametras) apima tris atributus – metus, mėnesį ir dieną. Visi šie trys yra sujungiami / sujungiami ir perduodami metodui.



Sintaksė: ValueOf()

Kaip jau minėta, turime deklaruoti „Data“ klasės kintamąjį ir perduoti jam eilutę.





Data data_kintamasis= data.valueOf(string_date_format);

Pavyzdys:

1 žingsnis:

Turėkime eilutę, kurioje yra „Metai-mėnuo-diena“.

// Paskelbti metus, mėnesį ir dieną po vieną

Eilutės metai = '2023';

Eilutės mėnuo = '4';

Styginių diena = '5';

// Sujunkite juos visus į eilutę

String string_type = metai + '-' + mėnuo + '-' + diena;

system.debug(eilutės_tipas);

Išvestis:



2 žingsnis:

Dabar konvertuokite ankstesnę eilutę „Data“ į „Data“, naudodami metodą valueOf () iš „Apex“ „Date“ klasės.

// Konvertuoti eilutę-Data į datą

Data konvertavimo_data = data.valueOf(eilutės_tipas);

sistema.debug(konvertavimo_data);

Išvestis:

Matome, kad konvertavus į „Data“, ji automatiškai grąžina datą DateTime formatu. Jis neatsižvelgs į laiką (valandos: minutės: sekundės), net jei juos perduosite metodui valueOf(). Grąžintas formatas yra YYYY-MM-DD HH:MM:SS.

Konvertuoti datą į eilutę

Yra du būdai, kaip „datą“ konvertuoti į „eilutę“. Vienas iš būdų, kurį palaiko „Apex“, yra formato () metodo naudojimas. Kitas būdas yra rankiniu būdu išgauti „Datos“ atributus (metus, mėnesį ir dieną) ir sujungti juos į eilutę. Pažvelkime į juos po vieną.

1. Formatas ()

Formatas() yra prieinamas „Apex“ klasėje „Data“, kuri „Data“ konvertuoja į eilutę „M/D/YYYY“ formatu. Nurodytą formatą taip pat galime perduoti kaip šio metodo parametrą. Nurodytas formatas yra numatytasis formatas.

Sintaksė:

input_date.format('formato_tipas')

Pavyzdys:

Panagrinėkime ankstesnį pavyzdį ir konvertuokime „Datą“ į „Eilutė“ naudodami format() metodą. Mes neteikiame jokio konkretaus formato () metodo formato.

// Paskelbti metus, mėnesį ir dieną po vieną

Eilutės metai = '2023';

Eilutės mėnuo = '4';

Styginių diena = '5';

// Sujunkite juos visus į eilutę

String string_type = metai + '-' + mėnuo + '-' + diena;

// Konvertuoti eilutę-Data į datą

Data konvertavimo_data = data.valueOf(eilutės_tipas);

sistema.debug(konvertavimo_data);

// formatas()

system.debug(converted_date.format());

Išvestis:

2. Datos klasės metodo naudojimas

Pagal šį scenarijų metus, mėnesį ir dieną ištraukiame atskirai nuo „Datos“, naudodami „Apex“ klasės „Data“ metodus. Tada mes sujungiame šiuos tris, kad grąžintume „Datą“ „Eilutės“ formatu.

  1. diena () – Šis metodas naudojamas norint ištraukti datą iš „Datos“. Jis grąžina sveikąjį skaičių, nurodantį datą.
  2. mėnuo () – Šis metodas naudojamas mėnesiui ištraukti iš „datos“. Jis grąžina sveikąjį skaičių, nurodantį mėnesio numerį. Sausio 1-ąją galime vadinti, vasario 2-ąją... Gruodžio 12 d.
  3. metai () – Šis metodas naudojamas metams iš „Datos“ išgauti. Jame pateikiami metai keturių skaitmenų formatu.

Sintaksė:

įvesties_data.metai() + '-' + įvesties_data.mėnesis() + '-' + įvesties_data.diena()

Pavyzdys:

Sugrąžinkite „Datą“ į „Eilutė“ formatu „YYYY-M-D“.

// Paskelbti metus, mėnesį ir dieną po vieną

Eilutės metai = '2023';

Eilutės mėnuo = '4';

Styginių diena = '5';

// Sujunkite juos visus į eilutę

String string_type = metai + '-' + mėnuo + '-' + diena;

// Konvertuoti eilutę-Data į datą

Data konvertavimo_data = data.valueOf(eilutės_tipas);

sistema.debug(konvertavimo_data);

// Konvertuoti datą į eilutę

system.debug(konvertavimo_data.metai() + '-' + konvertuota_data.mėnesis() + '-' + konvertuota_data.diena());

Išvestis:

Praktiniai pavyzdžiai:

Pažiūrėkime, kaip atnaujinti „datą“, pvz., pridėti dienų, metų ir mėnesių prie esamos „Salesforce“ objektų datos. Visi trys metodai kaip argumentą laiko sveikąjį skaičių „n“.

1. AddDays()

Norėdami pridėti dienų prie esamos datos, „Apex“ palaiko „addDays“ metodą, kuris pasiekiamas „Data“ klasėje.

2. pridėti mėnesių ()

Norėdami pridėti mėnesių prie esamos datos, „Apex“ palaiko metodą addMonths(), kuris yra „Data“ klasėje.

3. AddYears ()

Norėdami pridėti metų prie esamos datos, „Apex“ palaiko „addYears()“ metodą, kuris yra „Data“ klasėje.

Sintaksė:

Pažvelkime į šių trijų metodų sintaksę. Čia „n“ reiškia sveikąjį skaičių.

  • input_Date.addDays(n)
  • input_Date.addMonths(n)
  • input_Date.addYears(n)

Prieš pereidami prie pavyzdžio, apsvarstykite šiuos dalykus:

  1. Prisijunkite prie „Salesforce“ ir eikite į „App Launcher“ ir skirtuke ieškokite „Kampanija“. Čia įterpiame „Kampanijos pavadinimą“ ir „Pabaigos datą“.

  1. Pasirinkite „Kampanijos“ ir spustelėkite „Naujas“.

  1. Pasirodo iššokantis langas, kuriame reikia įterpti duomenis į kampaniją. Prie „Kampanijos pavadinimo“ pridėkite „Linux užuominų įrašai“ ir nustatykite „Pabaigos datą“ kaip 2023-04-05. Tada spustelėkite „Išsaugoti“.

Esame pasiruošę įrašui. (Tipas – Konferencija ir Būsena – Planuojama bus automatiškai. Palikite). Kūrėjų pulte atidarykime anoniminį langą.

1 pavyzdys:

Naudokime addDays() metodą, kad pridėtume 10 dienų prie esamos „Pabaigos datos“ objekte „Campaign“.

  1. Norėdami tai padaryti, pirmiausia turime naudoti SOQL užklausą, kad gautume įrašą iš objekto „Campaign“ ir išsaugotume šį įrašą objekte „Sąrašas“.
  2. Toliau sąrašui kartoti naudojame kilpą „for“ ir metodą addDays() pridėti 10 dienų prie „Pabaigos datos“.
  3. Galiausiai naudojame teiginį „update DML“, kad atnaujintume „Pabaigos datą“ objekte „Campaign“.
// Grąžinkite kampanijos pavadinimą ir pabaigos datą naudodami SOQL

List query1 = [SELECT Name,EndDate FROM Campaign WHERE Name = 'Linux užuominų įrašai'];

// Prie EndDate pridėkite 10 dienų naudodami addDays() metodą

for(Campaign i: query1){

i.EndDate = i.EndDate.addDays(10);

}

// Naudokite atnaujinimo DML, kad atnaujintumėte pabaigos datą

atnaujinti užklausą1;

system.debug(query1);

Išvestis:

Ankstesnė „Pabaigos data“ yra balandžio 5 d. Pridėjus 10 dienų, „Pabaigos data“ dabar yra balandžio 15 d.

Taip pat galime patikrinti skirtuką „Kampanija“. Pereikite atgal ir atnaujinkite puslapį. Matote, kad „Pabaigos data“ atnaujinta.

2 pavyzdys:

Naudokime addMonths() metodą, kad pridėtume 3 mėnesius prie esamos „Pabaigos datos“.

// Grąžinkite kampanijos pavadinimą ir pabaigos datą naudodami SOQL

List query1 = [SELECT Name,EndDate FROM Campaign WHERE Name = 'Linux užuominų įrašai'];

system.debug('Tikrai: '+užklausa1);

// Prie EndDate pridėkite 3 mėnesius naudodami addMonths() metodą

for(Campaign i: query1){

i.EndDate = i.EndDate.addMonths(3);

}

// Naudokite atnaujinimo DML, kad atnaujintumėte pabaigos datą

atnaujinti užklausą1;

system.debug('Atnaujinta: '+užklausa1);

Išvestis:

Ankstesnis mėnuo „Pabaigos datoje“ yra balandis. Pridėjus 3 mėnesius, dabar liepos mėn.

3 pavyzdys:

Naudokime addYears() metodą, kad pridėtume 3 metus prie esamos „Pabaigos datos“.

// Grąžinkite kampanijos pavadinimą ir pabaigos datą naudodami SOQL

List query1 = [SELECT Name,EndDate FROM Campaign WHERE Name = 'Linux užuominų įrašai'];

system.debug('Tikrai: '+užklausa1);

// Prie EndDate pridėkite 3 metus naudodami addYears() metodą

for(Campaign i: query1){

i.EndDate = i.EndDate.addYears(3);

}

// Naudokite atnaujinimo DML, kad atnaujintumėte pabaigos datą

atnaujinti užklausą1;

system.debug('Atnaujinta: '+užklausa1);

Išvestis:

Prie „Pabaigos datos“ pridėjus 3 metus, atnaujinti metai yra 2026 m.

Išvada

Datos formatavimas „Salesforce Apex“ yra gana paprastas. Vykdydami šią mokymo programą sužinojome, kaip konvertuoti „Datą“ iš „String“ formato į „Data“, naudojant metodą valueOf(), kuris yra „Apex“ „Date“ klasėje. Jei norite konvertuoti datą atgal į eilutę, naudojame formato () ir datos atributus, tokius kaip diena (), mėnuo () ir metai (). Galiausiai šį vadovą užbaigėme aptardami DML operaciją „Salesforce“ objekte „Campaign“, kad atnaujintume „Pabaigos datą“ naudodami metodus addDays(), addMonths() ir addYears() su atskirais pavyzdžiais.