Salesforce Apex - Datumsformat

Salesforce Apex - Datumsformat

Das Verfolgen der Details von Kunden in Konten/Kontakten ist im Customer Relationship Management (CRM) sehr wichtig. Basierend auf dem Datum passieren alle Prozesse wie Einkauf, Zitieren und Wartung. Schauen wir uns an, wie Sie das Datum aus der Zeichenfolge in Salesforce erstellen und das Datum in die Zeichenfolge konvertieren können. Im Rahmen dieses Tutorials werden wir auch die Methoden sehen, die auf dem formatierten Datum angewendet werden, z. B. das Hinzufügen von Tagen, Jahren, Monaten usw., mit Beispielen.

Apex Date Klasse

Datumsklasse unterstützt alle Datumsmethoden, die primitiv sind. Es verwendet den Namespace "System". Wir können die ValueOf () -Methode aus dieser Klasse verwenden, um die Zeichenfolge in ein Datumsformat zu konvertieren. Nachdem wir das Datum formatieren, wenden wir einige Methoden an, um die Tage, Monate, Jahre addieren zu können., Zu diesem formatierten Datum unter Verwendung einiger Methoden, die auch in dieser Datumsklasse verfügbar sind.

Zunächst werden wir sehen, wie die Zeichenfolge mit der ValueOf () -Methode in Salesforce Apex bisher konvertiert werden kann.

Datum.Wert von()

Der ValueOf () in Apex ist in der Klasse „Datum“ verfügbar, die die Zeichenfolge als Argument nimmt, das die angegebene Zeichenfolge in das Datumformat umwandelt. Die Eingabezeichenfolge (Parameter) enthält drei Attribute - Jahr, Monat und Tag. Alle diese drei werden kombiniert/verkettet und an die Methode übergeben.

Syntax: valueOf ()

Wie bereits erwähnt, müssen wir eine Variable der „Datum“ -Klasse deklarieren und die Zeichenfolge an sie übergeben.

Datum Datum_Variable = Datum.valueOf (string_date_format);

Beispiel:

Schritt 1:

Lassen Sie uns eine Saite haben, die den „Jahrmonatentag“ hält.

// Jahr, Monat und Tag eins nacheinander deklarieren
String Jahr = '2023';
String Monat = '4';
String Day = '5';
// verkettet sie alle in eine Zeichenfolge
String string_type = Jahr + '-' + Monat + '-' + Tag;
System.debug (string_type);

Ausgang:

Schritt 2:

Konvertieren Sie nun die vorherige "Datum" -Sziel mit der ValueOf () -Methode aus der Apex "Datum" -Klasse in "Datum".

// bisher String-Datum konvertieren
Datum converted_date = Datum.valueOf (string_type);
System.debug (Converted_date);

Ausgang:

Wir sehen. Es wird die Zeit (Stunden: Minuten: Sekunden) nicht berücksichtigen, selbst wenn Sie diese an die ValueOf () -Methode übergeben. Das zurückgegebene Format ist yyyy-mm-dd hh: mm: ss.

Konvertieren Sie das Datum in die Zeichenfolge

Es gibt zwei Möglichkeiten, das "Datum" in "String" umzuwandeln. Ein Weg, der von Apex unterstützt wird, ist die Verwendung der Format () -Methode. Der andere Weg besteht darin. Schauen wir sie uns nacheinander an.

Format()

Die Format () -Methode ist in der "Datum" -Klasse in Apex verfügbar, die das "Datum" im Format "m/d/Yjyy" in die Zeichenfolge umwandelt. Wir können das angegebene Format auch als Parameter für diese Methode übergeben. Das angegebene Format ist das Standardformat.

Syntax:

Datum eingeben.Format ("format_type")

Beispiel:

Betrachten wir das vorherige Beispiel und konvertieren Sie das "Datum" mit der Format () -Methode in "String" zurück in "String". Wir geben der Format () -Methode kein spezifisches Format an.

// Jahr, Monat und Tag eins nacheinander deklarieren
String Jahr = '2023';
String Monat = '4';
String Day = '5';
// verkettet sie alle in eine Zeichenfolge
String string_type = Jahr + '-' + Monat + '-' + Tag;
// bisher String-Datum konvertieren
Datum converted_date = Datum.valueOf (string_type);
System.debug (Converted_date);
// Format()
System.Debuggen (Converted_date.Format());

Ausgang:

Verwenden der Datumsklassenmethode

In diesem Szenario extrahieren wir das Jahr, Monat und Tag getrennt vom „Datum“ mit den verfügbaren Methoden in der Apex -Datumsklasse. Als nächstes verkettet wir diese drei, um das "Datum" im "String" -Format zurückzugeben.

  1. Tag() - Diese Methode wird verwendet, um das Datum aus dem „Datum“ zu extrahieren. Es gibt die Ganzzahl zurück, die das Datum angibt.
  2. Monat() - Diese Methode wird verwendet, um den Monat aus dem „Datum“ zu extrahieren. Es gibt die Ganzzahl zurück, die die Monatsnummer angibt. Wir können Januar als 1. Februar als 2… bezeichnen… . Dezember als 12.
  3. Jahr() - Diese Methode wird verwendet, um das Jahr aus dem „Datum“ zu extrahieren. Es kehrt das Jahr in einem vierstelligen Format zurück.

Syntax:

Datum eingeben.Jahr () + '-' + input_date.Monat () + '-' + input_date.Tag()

Beispiel:

Konvertieren Sie das "Datum" im Format "Yyyy-M-D" in "String" zurück in "String".

// Jahr, Monat und Tag eins nacheinander deklarieren
String Jahr = '2023';
String Monat = '4';
String Day = '5';
// verkettet sie alle in eine Zeichenfolge
String string_type = Jahr + '-' + Monat + '-' + Tag;
// bisher String-Datum konvertieren
Datum converted_date = Datum.valueOf (string_type);
System.debug (Converted_date);
// Datum in die Zeichenfolge konvertieren
System.Debuggen (Converted_date.Jahr () + '-' + Converted_date.Monat () + '-' + Converted_date.Tag());

Ausgang:

Praktische Beispiele:

Lassen Sie uns sehen, wie Sie das „Datum“ wie das Hinzufügen von Tagen, Jahren und Monaten zum vorhandenen Datum in den Salesforce -Objekten aktualisieren können. Alle drei Methoden nehmen die Ganzzahl als Argument an.

addays ()

Um dem vorhandenen Datum Tage hinzuzufügen, unterstützt Apex die adddays () -Methode, die in der "Datum" -Klasse verfügbar ist.

addmonths ()

Um dem vorhandenen Datum Monate hinzuzufügen, unterstützt Apex die Methode addmonths (), die in der "Datum" -Klasse verfügbar ist.

Addyears ()

Um dem vorhandenen Datum Jahre hinzuzufügen, unterstützt Apex die addyears () -Methode, die in der "Datum" -Klasse verfügbar ist.

Syntax:

Schauen wir uns die Syntax für diese drei Methoden an. Hier „N“ -Sespezies der ganzzahlige Wert.

  • Datum eingeben.addays (n)
  • Datum eingeben.Addmonths (n)
  • Datum eingeben.Addyears (n)

Bevor Sie zum Beispiel gehen, sollten Sie Folgendes in Betracht ziehen:

  1. Melden Sie sich in Salesforce an und gehen Sie zum "App -Launcher" und suchen Sie in der Registerkarte nach "Kampagne". Hier fügen wir den "Kampagnennamen" und das "Enddatum" ein.
  1. Wählen Sie "Kampagnen" und klicken Sie auf "Neu".
  1. Ein Popup scheint die Daten in die Kampagne einzufügen. Fügen Sie "Linux Hint -Posts" unter den "Kampagnennamen" hinzu und setzen Sie das "Enddatum" als 4/5/2023 fest. Klicken Sie dann auf "Speichern".

Wir sind bereit mit der Aufzeichnung. (Typ - Konferenz und Status - geplant wird automatisch kommen. Lass das)). Öffnen wir das anonyme Fenster in der Entwicklerkonsole.

Beispiel 1:

Verwenden wir die adddays () -Methode, um dem vorhandenen "Enddatum" im "Kampagnen" -Objekt 10 Tage hinzuzufügen.

  1. Dazu müssen wir zunächst die SOQL -Abfrage verwenden, um den Datensatz aus dem "Kampagnen" -Objekt zu erhalten und diesen Datensatz in einem "List" -Objekt zu speichern.
  2. Als nächstes verwenden wir die "für" -Schloop, um die Liste zu iterieren und die Methode adddays () zu iterieren, um dem "Enddatum" 10 Tage hinzuzufügen.
  3. Schließlich verwenden wir die Anweisung "DML aktualisieren", um das "Enddatum" im Objekt "Kampagne" zu aktualisieren.
// Return Name und Enddate aus der Kampagne mit SOQL
LISTE query1 = [Name auswählen, Enddate aus der Kampagne, wobei Name = 'Linux Hint -Posts'];
// mit der adddays () -Methode 10 Tage zum Enddate hinzufügen
für (Kampagne I: query1)
ich.Enddate = i.Endtermin.addays (10);

// Verwenden Sie die Aktualisierung von DML, um das Enddate zu aktualisieren
Aktualisieren Sie Query1;
System.Debug (Query1);

Ausgang:

Das vorherige „Enddatum“ ist der 5. April. Nach 10 Tagen ist das „Enddatum“ jetzt der 15. April statt.

Wir können auch die Registerkarte "Kampagne" einchecken. Bewegen Sie sich zurück und aktualisieren Sie die Seite. Sie können sehen, dass das "Enddatum" aktualisiert wird.

Beispiel 2:

Verwenden wir die Methode addmonths (), um dem vorhandenen „Enddatum“ 3 Monate hinzuzufügen,.

// Return Name und Enddate aus der Kampagne mit SOQL
LISTE query1 = [Name auswählen, Enddate aus der Kampagne, wobei Name = 'Linux Hint -Posts'];
System.Debug ('tatsächliche:'+query1);
// 3 Monate zum Enddate mithilfe von addmonths () -Methoden hinzufügen
für (Kampagne I: query1)
ich.Enddate = i.Endtermin.Addmonths (3);

// Verwenden Sie die Aktualisierung von DML, um das Enddate zu aktualisieren
Aktualisieren Sie Query1;
System.debug ('aktualisiert:'+query1);

Ausgang:

Der Vormonat im „Enddatum“ ist April. Nach dem Hinzufügen von 3 Monaten ist es jetzt Juli.

Beispiel 3:

Verwenden wir die addyears () -Methode, um dem vorhandenen „Enddatum“ 3 Jahre hinzuzufügen,.

// Return Name und Enddate aus der Kampagne mit SOQL
LISTE query1 = [Name auswählen, Enddate aus der Kampagne, wobei Name = 'Linux Hint -Posts'];
System.Debug ('tatsächliche:'+query1);
// 3 Jahre zum Enddate mit addyears () Methode hinzufügen
für (Kampagne I: query1)
ich.Enddate = i.Endtermin.Addyears (3);

// Verwenden Sie die Aktualisierung von DML, um das Enddate zu aktualisieren
Aktualisieren Sie Query1;
System.debug ('aktualisiert:'+query1);

Ausgang:

Nach 3 Jahren zum „Enddatum“ beträgt das aktualisierte Jahr 2026.

Abschluss

Das Formatieren des Datums in Salesforce Apex ist recht einfach. Im Rahmen dieses Tutorials haben wir gelernt, wie man das "Datum" aus "String" -Format in "Datum" mit der ValueOf () -Methode konvertiert, die in der Apex "Datum" -Klasse verfügbar ist. Wenn Sie das Datum in die Zeichenfolge umwandeln möchten, verwenden wir das Format () und Datumattribute wie Day (), Monat () und Jahr (). Schließlich beendeten wir diesen Leitfaden mit der Erörterung des DML -Betriebs auf dem Salesforce -Kampagnenobjekt, um das „Enddatum“ mithilfe von adddays (), addmonths () und addyears () mit separaten Beispielen zu aktualisieren.