Extensions.DiagCom.GetDiagServiceFromException

From emotive
Revision as of 04:33, 12 October 2018 by Hb (talk | contribs)
Jump to navigation Jump to search

Classification

Name GetDiagServiceFromException
Short Description Gets the handle of the DiagService that caused the exception
Class Term
Extension OTX DiagCom extension
Group DiagService related terms
Exceptions UnknownTargetException
TypeMismatchException
Checker Rules -
Standard Compliant Yes

OTL Syntax

DiagServiceTerm = DiagCom.GetDiagServiceFromException(ExceptionValue);

Description

The GetDiagServiceFromException term accepts an ExceptionReference and shall return the handle of the DiagService that caused the exception to be thrown. It shall only be used together with exceptions of type UnknownResponseException that shall be thrown by the ExecuteDiagService action in case the static response mapping does not map a response that has been returned from the vehicle.

Return Value

The Term returns the value, see table below.

Icons Note.png In OTX, Terms are categorized according to its return data type!
Data Type Description
DiagService The handle of the DiagService that caused the exception.

Properties

Name Data Type Class Default Cardinality Description
UnknownResponseException Exception Value - [1] Specifies the Exception for which the DiagService shall be retrieved that caused the exception when executed. It is only allowed to reference exceptions of type UnknownResponseException.

OTL Examples

DiagCom.DiagService DiagService1;
DiagCom.UnknownResponseException Handle1;
DiagCom.ComChannel ComChannel1;

/// Flow

try
{
	ComChannel1 = DiagCom.GetComChannel("LL_AllEmissRelatUDSSyste", NULL, false);
	[#MetaData(RequestPdu), <#Data>22 F1 9E</#Data>]
	DiagCom.ExecuteDiagService(DiagCom.CreateDiagServiceByName(ComChannel1, "DiagnServi_ReadDataByIdentASAMODXFileIdent"), {}, {Resp_ReadDataByIdentASAMODXFileIdent.Expected = true}, NULL, NULL, false, false);
}
catch (DiagCom.UnknownResponseException Handle1)
{
	DiagService1 = DiagCom.GetDiagServiceFromException(Handle1);
}

See also

CreateDiagServiceByName
CreateDiagServiceBySemantic
GetDiagServiceListBySemantic
GetDiagServiceFromResult
GetDiagServiceName
ExecuteDiagService
GetComChannel