Salesforce Apex – oblika datuma

Salesforce Apex Oblika Datuma



Sledenje podrobnostim strank v računih/stikih je zelo pomembno pri upravljanju odnosov s strankami (CRM). Na podlagi datuma se zgodijo vsi procesi, kot so nabava, ponudba in servis. Poglejmo, kako ustvariti datum iz niza v Salesforce in pretvoriti datum v niz. Kot del te vadnice si bomo ogledali tudi metode, ki se uporabljajo za formatirani datum, kot je dodajanje dni, let, mesecev itd., s primeri.

Datumski razred Apex

Datumski razred podpira vse datumske metode, ki so primitivne. Uporablja imenski prostor »Sistem«. Za pretvorbo niza v datumsko obliko lahko uporabimo metodo valueOf() iz tega razreda. Po oblikovanju datuma uporabimo nekatere metode za dodajanje dni, mesecev, let itd. temu oblikovanemu datumu z uporabo nekaterih metod, ki so na voljo tudi v tem datumskem razredu.







Najprej si bomo ogledali, kako pretvoriti niz v datum z uporabo metode valueOf() v Salesforce Apex.



Date.valueOf()

ValueOf() v Apexu je na voljo v razredu »Datum«, ki vzame niz kot argument, ki pretvori podani niz v obliko datuma. Vhodni niz (parameter) vključuje tri atribute – leto, mesec in dan. Vsi ti trije so združeni/združeni in posredovani metodi.



Sintaksa: ValueOf()

Kot že omenjeno, moramo deklarirati spremenljivko razreda “Datum” in ji posredovati niz.





Datum date_variable= date.valueOf(string_date_format);

primer:

Korak 1:

Imejmo niz, ki vsebuje 'leto-mesec-dan'.

// Navedite leto, mesec in dan enega za drugim

Leto niza = '2023';

String Month = '4';

Dan niza = '5';

// Združi vse v niz

Niz string_type = leto + '-' + mesec + '-' + dan;

system.debug(vrsta_niza);

Izhod:



2. korak:

Zdaj pretvorite prejšnji niz »Datum« v »Datum« z uporabo metode valueOf() iz razreda Apex »Datum«.

// Pretvori string-Date v Date

Datum pretvorjenega_datuma = datum.valueOf(vrsta_niza);

system.debug(datum_pretvorbe);

Izhod:

Vidimo lahko, da po pretvorbi v »Datum« samodejno vrne datum v formatu DateTime. Ne bo upošteval časa (ure: minute: sekunde), tudi če jih posredujete metodi valueOf(). Vrnjena oblika je LLLL-MM-DD HH:MM:SS.

Pretvori datum v niz

Obstajata dva načina za pretvorbo »Datuma« v »Niz«. Eden od načinov, ki ga podpira Apex, je uporaba metode format(). Drugi način je ročno ekstrahiranje atributov »Datum« (leto, mesec in dan) in njihovo združevanje v niz. Poglejmo jih enega za drugim.

1. Oblika ()

Metoda format() je na voljo v razredu »Datum« v Apexu, ki pretvori »Datum« v niz v obliki zapisa »M/D/LLLL«. Tej metodi lahko podani format posredujemo tudi kot parameter. Navedena oblika je privzeta oblika.

Sintaksa:

input_date.format(“format_type”)

primer:

Oglejmo si prejšnji primer in pretvorimo nazaj »Datum« v »Niz« z uporabo metode format(). Za metodo format() ne zagotavljamo nobene posebne oblike.

// Navedite leto, mesec in dan enega za drugim

Leto niza = '2023';

String Month = '4';

Dan niza = '5';

// Združi vse v niz

Niz string_type = leto + '-' + mesec + '-' + dan;

// Pretvori string-Date v Date

Datum pretvorjenega_datuma = datum.valueOf(vrsta_niza);

system.debug(datum_pretvorbe);

// format()

system.debug(converted_date.format());

Izhod:

2. Uporaba metode datumskega razreda

V tem scenariju izvlečemo leto, mesec in dan ločeno iz »Datuma« z uporabo razpoložljivih metod v razredu »Datum« Apex. Nato združimo te tri, da vrnemo »Datum« v obliki zapisa »Niz«.

  1. dan() – Ta metoda se uporablja za ekstrahiranje datuma iz »Datuma«. Vrne celo število, ki podaja datum.
  2. mesec() – Ta metoda se uporablja za ekstrahiranje meseca iz »Datuma«. Vrne celo število, ki določa številko meseca. Januarja lahko imenujemo 1, februarja 2.... decembra od 12.
  3. leto() – Ta metoda se uporablja za pridobivanje leta iz »Datuma«. Vrne leto v štirimestni obliki.

Sintaksa:

input_date.year() + '-' + input_date.month() + '-' + input_date.day()

primer:

Pretvorite nazaj »Datum« v »Niz« v formatu »LLLL-M-D«.

// Navedite leto, mesec in dan enega za drugim

Leto niza = '2023';

String Month = '4';

Dan niza = '5';

// Združi vse v niz

Niz string_type = leto + '-' + mesec + '-' + dan;

// Pretvori string-Date v Date

Datum pretvorjenega_datuma = datum.valueOf(vrsta_niza);

system.debug(datum_pretvorbe);

// Pretvori datum v niz

system.debug(converted_date.year() + '-' + converted_date.month() + '-' + converted_date.day());

Izhod:

Praktični primeri:

Poglejmo, kako posodobiti »Datum«, kot je dodajanje dni, let in mesecev obstoječemu datumu v predmetih Salesforce. Vse tri metode kot argument sprejmejo celo število 'n'.

1. addDays()

Za dodajanje dni obstoječemu datumu Apex podpira metodo addDays(), ki je na voljo v razredu »Datum«.

2. addMonths()

Za dodajanje mesecev obstoječemu datumu Apex podpira metodo addMonths(), ki je na voljo v razredu »Datum«.

3. addYears()

Za dodajanje let obstoječemu datumu Apex podpira metodo addYears(), ki je na voljo v razredu »Datum«.

Sintaksa:

Oglejmo si sintakso za te tri metode. Tukaj je 'n' celoštevilska vrednost.

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

Preden preidete na primer, upoštevajte naslednje:

  1. Prijavite se v Salesforce in pojdite na »App Launcher« ter na zavihku poiščite »Campaign«. Tukaj vstavimo »Ime oglaševalske akcije« in »Končni datum«.

  1. Izberite »Oglaševalske akcije« in kliknite »Novo«.

  1. Prikaže se pojavno okno za vstavljanje podatkov v akcijo. Dodajte »Objave z namigi za Linux« pod »Ime oglaševalske akcije« in nastavite »Končni datum« na 5. 4. 2023. Nato kliknite »Shrani«.

Z zapisom smo pripravljeni. (Vrsta – Konferenca in Status – Načrtovano bo prišlo samodejno. Pustite to). Odprimo anonimno okno v konzoli za razvijalce.

Primer 1:

Uporabimo metodo addDays(), da dodamo 10 dni obstoječemu »Končnemu datumu« v objektu »Campaign«.

  1. Da bi to naredili, moramo najprej uporabiti poizvedbo SOQL, da dobimo zapis iz predmeta »Campaign« in shranimo ta zapis v objekt »List«.
  2. Nato uporabimo zanko »za« za ponovitev seznama in uporabimo metodo addDays(), da dodamo 10 dni »končnemu datumu«.
  3. Na koncu uporabimo stavek »posodobi DML« za posodobitev »Končnega datuma« v objektu »Oglaševalska akcija«.
// Vrni ime in končni datum iz akcije z uporabo SOQL

List query1 = [SELECT Name,EndDate FROM Campaign WHERE Name = 'Linux Hint Posts'];

// Dodajte 10 dni Končnemu datumu z uporabo metode addDays().

for(Campaign i: query1){

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

}

// Uporabite posodobitev DML za posodobitev končnega datuma

posodobi poizvedbo1;

system.debug(poizvedba1);

Izhod:

Prejšnji »končni datum« je 5. april. Po dodajanju 10 dni je »končni datum« zdaj 15. april.

Preverimo lahko tudi v zavihku »Kampanja«. Premaknite se nazaj in osvežite stran. Vidite lahko, da je »Končni datum« posodobljen.

Primer 2:

Uporabimo metodo addMonths(), da obstoječemu »končnemu datumu« dodamo 3 mesece.

// Vrni ime in končni datum iz akcije z uporabo SOQL

List query1 = [SELECT Name,EndDate FROM Campaign WHERE Name = 'Linux Hint Posts'];

system.debug('Dejansko: '+poizvedba1);

// Dodajte 3 mesece Končnemu datumu z uporabo metode addMonths().

for(Campaign i: query1){

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

}

// Uporabite posodobitev DML za posodobitev končnega datuma

posodobi poizvedbo1;

system.debug('Posodobljeno: '+query1);

Izhod:

Prejšnji mesec v »končnem datumu« je april. Po dodajanju 3 mesecev je zdaj julij.

Primer 3:

Uporabimo metodo addYears(), da obstoječemu »končnemu datumu« dodamo 3 leta.

// Vrni ime in končni datum iz akcije z uporabo SOQL

List query1 = [SELECT Name,EndDate FROM Campaign WHERE Name = 'Linux Hint Posts'];

system.debug('Dejansko: '+poizvedba1);

// Dodajte 3 leta Končnemu datumu z metodo addYears().

for(Campaign i: query1){

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

}

// Uporabite posodobitev DML za posodobitev končnega datuma

posodobi poizvedbo1;

system.debug('Posodobljeno: '+query1);

Izhod:

Po dodajanju 3 let v »Končni datum« je posodobljeno leto 2026.

Zaključek

Oblikovanje datuma v Salesforce Apex je povsem preprosto. Kot del te vadnice smo se naučili, kako pretvoriti »Datum« iz zapisa »Niz« v »Datum« z uporabo metode valueOf(), ki je na voljo v Apexovem razredu »Datum«. Če želite datum pretvoriti nazaj v niz, uporabimo format() in atribute datuma, kot so dan(), mesec() in leto(). Na koncu smo ta vodnik zaključili z razpravo o operaciji DML na objektu »Campaign« Salesforce za posodobitev »Končnega datuma« z uporabo metod addDays(), addMonths() in addYears() z ločenimi primeri.