Abrufen oder Festlegen des Orts, wenn Sie einen Termin in Outlook verfassenGet or set the location when composing an appointment in Outlook

Die JavaScript-API für Office stellt asynchrone Methoden (getAsync und setAsync) zum Abrufen und Festlegen des Speicherorts eines Termins bereit, den der Benutzer erstellt. Diese asynchronen Methoden sind nur in Erstellungs-Add-Ins verfügbar. Vergewissern Sie sich, dass Sie das Add-In-Manifest entsprechend für Outlook eingerichtet haben, damit das Add-In in Erstellformularen aktiviert wird, wie in Erstellen von Outlook-Add-Ins für Formulare zum Verfassen beschrieben.The JavaScript API for Office provides asynchronous methods (getAsync and setAsync) to get and set the location of an appointment that the user is composing. These asynchronous methods are available to only compose add-ins. To use these methods, make sure you have set up the add-in manifest appropriately for Outlook to activate the add-in in compose forms, as described Create Outlook Add-ins for compose forms.

Die location-Eigenschaft ist in Lese- und Erstellformularen von Terminen für den Lesezugriff verfügbar. In einem Leseformular haben Sie direkt über das übergeordnete Objekt Zugriff auf die Eigenschaft, wie beispielsweise in:The location property is available for read access in both compose and read forms of appointments. In a read form, you can access the property directly from the parent object, as in:

item.location

Da der Benutzer und Ihr Add-In in einem Erstellformular jedoch gleichzeitig den Speicherort einfügen oder ändern können, müssen Sie die asynchrone Methode getAsync verwenden, um den Speicherort abzurufen, siehe unten:But in a compose form, because both the user and your add-in can be inserting or changing the location at the same time, you must use the asynchronous method getAsync to get the location, as shown below:

item.location.getAsync(function(result){
    //do something with result
});

Die location-Eigenschaft ist nur in Erstellformularen von Terminen für den Schreibzugriff, jedoch nicht in Leseformularen verfügbar.The location property is available for write access in only compose forms of appointments, but not in read forms.

Wie bei den meisten asynchronen Methoden in der JavaScript-API für Office akzeptieren getAsync und setAsync optionale Eingabeparameter.As with most asynchronous methods in the JavaScript API for Office, getAsync and setAsync take optional input parameters. Weitere Informationen zur Festlegung dieser optionalen Eingabeparameter finden Sie unter Asynchrone Programmierung in Office-Add-Ins.For more information about specifying these optional input parameters, see Asynchronous programming in Office Add-ins.

Abrufen des OrtsGet the location

Dieser Abschnitt zeigt ein Codebeispiel, das den Ort des vom Benutzer erstellen Termins erhält und diesen Ort anzeigt.This section shows a code sample that gets the location of the appointment that the user is composing, and displays the location.

Um item.location.getAsync zu verwenden, stellen Sie eine Rückrufmethode bereit, die den Status und das Ergebnis des asynchronen Aufrufs überprüft.To use item.location.getAsync, provide a callback method that checks for the status and result of the asynchronous call. Mit dem optionalen Parameter asyncContext können Sie alle notwendigen Argumente für die Rückrufmethode bereitstellen.You can provide any necessary arguments to the callback method through the asyncContext optional parameter. Mithilfe des Ausgabeparameters asyncResult des Rückrufs können Sie den Status, Ergebnisse und jegliche Fehler abrufen.You can obtain status, results and any error using the output parameter asyncResult of the callback. Wenn der asynchrone Aufruf erfolgreich ist, können Sie mit der Eigenschaft AsyncResult.value den Ort als Zeichenfolge abrufen.If the asynchronous call is successful, you can get the location as a string using the AsyncResult.value property.

var item;

Office.initialize = function () {
    item = Office.context.mailbox.item;
    // Checks for the DOM to load using the jQuery ready function.
    $(document).ready(function () {
        // After the DOM is loaded, app-specific code can run.
        // Get the location of the item being composed.
        getLocation();
    });
}

// Get the location of the item that the user is composing.
function getLocation() {
    item.location.getAsync(
        function (asyncResult) {
            if (asyncResult.status == Office.AsyncResultStatus.Failed){
                write(asyncResult.error.message);
            }
            else {
                // Successfully got the location, display it.
                write ('The location is: ' + asyncResult.value);
            }
        });
}

// Write to a div with id='message' on the page.
function write(message){
    document.getElementById('message').innerText += message; 
}

Festlegen des OrtsSet the location

Dieser Abschnitt zeigt ein Codebeispiel, das den Ort des vom Benutzer erstellten Termins festlegt.This section shows a code sample that sets the location of the appointment that the user is composing.

Um item.location.setAsync zu verwenden, geben Sie eine Zeichenfolge von bis zu 255 Zeichen im Datenparameter ein.To use item.location.setAsync, specify a string of up to 255 characters in the data parameter. Optional können Sie im Parameter asyncContext eine Rückrufmethode und jegliche Argumente für die Rückrufmethode angeben.Optionally, you can provide a callback method and any arguments for the callback method in the asyncContext parameter. Sie sollten den Status, Ergebnisse und Fehlermeldungen im asyncResult-Ausgabeparameter des Rückrufs prüfen.You should check the status, result and any error message in the asyncResult output parameter of the callback. Wenn der asynchrone Aufruf erfolgreich ist, fügt setAsync die angegebene Ortzeichenfolge als Nur-Text ein und überschreibt dabei einen ggf. vorhandenen Ort für dieses Element.If the asynchronous call is successful, setAsync inserts the specified location string as plain text, overwriting any existing location for that item.

var item;

Office.initialize = function () {
    item = Office.context.mailbox.item;
    // Check for the DOM to load using the jQuery ready function.
    $(document).ready(function () {
        // After the DOM is loaded, app-specific code can run.
        // Set the location of the item being composed.
        setLocation();
    });
}

// Set the location of the item that the user is composing.
function setLocation() {
    item.location.setAsync(
        'Conference room A',
        { asyncContext: { var1: 1, var2: 2 } },
        function (asyncResult) {
            if (asyncResult.status == Office.AsyncResultStatus.Failed){
                write(asyncResult.error.message);
            }
            else {
                // Successfully set the location.
                // Do whatever appropriate for your scenario
                // using the arguments var1 and var2 as applicable.
            }
        });
}

// Write to a div with id='message' on the page.
function write(message){
    document.getElementById('message').innerText += message; 
}

Siehe auchSee also