Event "beas_ Validierung eines Requests für einen Service mit ExternalContext"
Event "beas: Validierung eines Requests für einen Service mit ExternalContext"
Der Event wird nach Empfang eines Service-Requests, der mit dem Contexttyp ExternalContext registriert wurde, ausgeführt. Er dient der Validierung und gegebenenfalls der Ergänzung der Daten des Contexts. Anschließend müssen die Daten des Contexts vollständig sein.
Hinweis
Dieser Event steht ausschließlich für den beas zur Verfügung.
Parameter | Typ | Beschreibung |
---|---|---|
nEvtNo | Enum | |
oUserSession: | TBeasCbUserSession | |
oContext | TBeasCbExternalContext | Context-Parameter aus Service-Request |
oInputParam | TBeasCbDynamicServiceInput | Input-Parameter aus Service-Request ohne Context |
oOutputParam | TBeasCbContextValidationResult | Rückgabewerte |
Rückgabewert
keine - der Parameter oOutputParam wird direkt verwendet.
Verarbeitung des oOutputParam nach Ausführung des Validierungsevent:
sind weder UserNo noch UserLoginName gesetzt, wird als Default der Start-Beas-User als User gesetzt
ist der Standort nicht versorgt (<0), wird der Standort gesetzt, mit dem der beas gestartet wurde.
ist die Abteilung nicht versorgt (<0), wird die Abteilung gesetzt, mit der der beas gestartet wurde.
ist Locale nicht versorgt, wird als Default de-DE gesetzt.
ist die Zeitzone nicht versorgt, wird als Default 'Z' für UTC gesetzt.
Beispiel
| nEvtNo:P1, oUserSession:P2, oContext:P3, oInputParam:P4, oOutputParam:P5,
oParamsContext, oSwitch
|
//******************************************************************************
// oUserSession Klasse: TBeasCbUserSession
// oContext Klasse: TBeasCbExternalContext
// oInputParam Klasse: TBeasCbDynamicServiceInput
// oInputParam.CbParams Klasse: TBeasCbServiceInputParam
// oOutputParam Klasse: TBeasCbContextValidationResult
//
// CbIsValid: entscheidet, ob Context als valide gilt oder nicht
// nach Ausführung des Events werden die versorgten Informationen aus oOutputParam
// in den Context kopiert ( CbUserNo bis CbTimestampUTCStr und CbContextParamOutput )
//
// Rückgabe: keine
//******************************************************************************
oSwitch := oInputParam.CbParams.ParamValueDef("Switch", -1),
case oSwitch
of 0 ::
oOutputParam.CbIsValid := True,
oOutputParam.CbUserNo := 65,
oParamsContext := oOutputParam.CbContextParamOutput.CbParams,
oParamsContext.AddParam("additional", "something"),
oParamsContext.AddParam("additional2", "something2"),
oOutputParam.CbContextLoggingInfo := 'Info fuer Context Logger',
otherwise oOutputParam.CbIsValid := False,
endcase,