Eingabeparameter
Allgemeine Eingabeparameter
Alle Parameter für die Aktion werden im Methoden-Parameter übergeben.
Folgende Parameter stehen immer zur Verfügung:
| Key | Datentyp | Value | Hinweis |
|---|---|---|---|
| User | Dictionary<string, object> | Benutzerdaten, des angemeldeten Benutzers | |
| TriggeredBy | string | Der Trigger, welcher die Aktion ausgelöst hat. | |
| SourceEvent | string | Das ursprüngliche Ereignis, das zum Auslösen des Triggers der Aktion geführt hat | |
| SaleswareClientId | string | Die Client-Id des Kunden | |
| ManuallyTriggeredEntity | Dictionary<string, object> | Der EntityIdentifier für die auslösende SubEntitätWird lediglich verwendet, sofern der Trigger "Manuelle Ausführung bei Position" aktiv ist | |
| LocationKey | string | Der technische Schlüssel des Standortes, den der Salesware-Benutzer aktuell verwendet | |
| ErpUser (Obsolete) | string | Der Name des beim Salesware-Benutzer hinterlegten ERP-Benutzers | Wird abelöst durch User |
| ElementsClientId (Obsolete) | string | Die Client-Id des Kunden | wird abgelöst durch SaleswareClientId |
| CultureId | string | Die Id der beim Salesware-Benutzer hinterlegten Lokalisierung | |
| Client | Sagede.OfficeLine.Engine.Mandant | ||
| Das Mandanten-Objekt | |||
| Automatic (Obsolete) | boolean | Kennzeichen, das angibt, ob die Aktion automatisch ausgeführt wird | Wird abgelöst durch TriggeredBy |
User
Diese Daten werden für den angemeldeten Benutzer oder Business-Login übergeben:
| Key | Datentyp | Value | Hinweis |
|---|---|---|---|
| Name | string | der Name | |
| FirstName | string | der Vorname | |
| UserAccountType | string | der Kontotyp (crm | reseller) | |
| string | die E-Mailadresse | ||
| CustomerNumber | string | die Kundennummer des zugehörigen Kunden | nur bei Business-Logins (reseller) |
| UserGroups | string[] | ein Array der technischen Schlüssel der zugeordneten Benutzergruppen (bei Benutzern) oder der zugeordneten Business-Login-Gruppen (bei Business-Logins) | |
| ErpRepresentative | string | der technische Schlüssel des hinterlegten ERP Vertreters. | nur bei Benutzern (crm) |
| ErpUser | string | der Name des hinterlegten ERP-Benutzers | nur bei Benutzern (crm) |
Positionen
In einigen Aktionen stehen auch Positionsdaten zur Verfügung. Das sind immer folgende Daten:
| Key | Datentyp | Value |
|---|---|---|
| EntityKey | string | der Salesware-Key für diesen Datensatz |
| ItemNumber | string | die Artikelnummer |
| VariationId | int | die interne Variantennummer (AuspraegungID) |
| Quantity | decimal | die Menge |
| QuantityType | short | die Mengenart |
| QuantityUnit | string | die Mengeneinheit |
| UnitPrice | decimal | der Einzelpreis |
| DiscountValue | decimal | der Rabattsatz (in Prozent) |
| IsManualPrice | bool | das Kennzeichen, ob der Einzelpreis manuell verändert worden ist (EinzelpreisManuell) |
| ExternalEntityReference | string | Salesware-Referenz zur Position |
| Custom | Dictionary<string,object> | siehe Entity-Spezifische Eingabeparameter |
WICHTIG
Wenn in einer Aktion zusätzliche Daten übergeben werden, ist das in der Aktion selbst beschrieben.
Entity-Spezifische Eingabeparameter
Folgende Parameter stehen für die jeweilige Entität immer zur Verfügung:
| Key | Datentyp | Value |
|---|---|---|
| ExternalEntityReference | string | Die Salesware-Referenznummer für diese Entität. Das Format ist abhängig von der Konfiguration in den Salesware-Einstellungen(z.B. DFFC4C71-63E5-4625-83DC-FD937DB3F7C1) Die Salesware-Referenz zur Position, bei ans ERP übergebenen Positionen die BelPosId |
| Custom | Dictionary<string,object> | Das Custom-Feld einer Entität: Als Key dient der Sage-Identifier des Feldes (Klassenname.Datenbankspalte)(z.B. VKBeleg.USER_Zahlungsreferenz) Das Custom-Feld einer Position in einer Entität (z.B. VKBelegPositionen.USER_extern) |
| Files | Dictionary<string,object>[] | das Array von Datei-Definitionen mit der Möglichkeit zum Downloaden via URL |
Files
| Key | Datentyp | Value |
|---|---|---|
| FileName | string | der Dateiname zur Anzeige und zur Ermittlung des Dateityps |
| PermanentUrl | string | URL zum Download der Datei, die beim externen Aufruf eine Autorisierung benötigt und permanent gültig ist Wir empfehlen diese, wenn ein Benutzer oder Business-Login im Browser die Datei herunterladen möchte. |
| TemporaryUrl | string | URL zum Download der Datei, die keine Autorisierung benötigt und ab Start der Aktion für 15 Minuten gültig ist Wir empfehlen diese zum Abruf einer Datei im Rahmen einer Aktion. |
Dateibeispiel
public Dictionary<string, object> Execute(Dictionary<string, object> parameter)
{
return new Dictionary<string, object>()
{
{
"Files",
new [] {
new Dictionary<string, object>
{
{"FileName", "datei1.jpg" },
{"PermanentUrl", "https://url-to-salesware.cloud/PermanentUrl" },
{"TemporaryUrl", "https://url-to-salesware.cloud/TemporaryUrl" }
},
new Dictionary<string, object>
{
{"FileName", "datei2.pdf" },
{"PermanentUrl", "https://url-to-salesware.cloud/PermanentUrl" },
{"TemporaryUrl", "https://url-to-salesware.cloud/TemporaryUrl" }
},
}
}
};
}
Diese Entitäten enthalten die oben genannten Parameter:
- Bestellung
- Bestellposition
- Angebot
- Angebotsposition
- Warenkorb
- Warenkorbposition
In Salesware werden folgende Klassennamen für die Übergabe der Custom-Felder genutzt:
| Entität | Klassenname | Datenbank-Tabelle |
|---|---|---|
| Adresse / Interessent | Adresse | KHKAdressen |
| Angebot | VKBeleg | KHKVKBelege |
| Angebotsposition | VKBelegPosition | KHKVKBelegePositionen |
| Ansprechpartner | Adresse | KHKAdressen |
| Ansprechpartner | Ansprechpartner | KHKAnsprechpartner |
| Artikel | Artikel | KHKArtikel |
| Bestellung | VKBeleg | KHKVKBelege |
| Bestellposition | VKBelegPosition | KHKVKBelegePositionen |
| Kunde | Adresse | KHKAdressen |
| Kunde | Kontokorrent | KHKKontokorrent |
| Lieferant | Adresse | KHKAdressen |
| Lieferant | Kontokorrent | KHKKontokorrent |
| Warenkorb | VKBeleg | KHKVKBelege |
| Warenkorbpositionen | VKBelegPosition | KHKVKBelegePositionen |