27
ATHOS Benutzertreffen 12.Oktober 2006 - 1 Report of the Lab Glashütten, 12.Oktober 2006 HighQSoft GmbH, Karst Schaap [email protected] www.highqsoft.de / www.highqsoft.com

ATHOS Benutzertreffen

  • Upload
    randy

  • View
    59

  • Download
    5

Embed Size (px)

DESCRIPTION

ATHOS Benutzertreffen. Report of the Lab Glashütten, 12.Oktober 2006 HighQSoft GmbH, Karst Schaap [email protected] www.highqsoft.de / www.highqsoft.com. 12.Oktober 2006 - 1. Themen. Aktueller Stand der Entwicklung Kundenspezifische Projekte Geplante Entwicklungen - PowerPoint PPT Presentation

Citation preview

Page 1: ATHOS  Benutzertreffen

ATHOS Benutzertreffen

12.Oktober 2006 - 1

Report of the Lab

Glashütten, 12.Oktober 2006

HighQSoft GmbH, Karst [email protected] / www.highqsoft.com

Page 2: ATHOS  Benutzertreffen

Themen

12.Oktober 2006 - 2

• Aktueller Stand der Entwicklung

• Kundenspezifische Projekte

• Geplante Entwicklungen

• Zugriff auf Massendaten

Page 3: ATHOS  Benutzertreffen

Aktueller Stand der Entwicklung

12.Oktober 2006 - 3

• Allgemeine Erweiterungen

• Operating System Support

• ASAM ODS 5.1

• Model Mapping

Page 4: ATHOS  Benutzertreffen

Aktueller Stand der Entwicklung

12.Oktober 2006 - 4

• Allgemeine Erweiterungen– Extended Query– DT_ENUM– ID und Referenzen als DT_LONGLONG– Korrektur der Basisattribute bei AoExternal

Component– CorbaFileServer

Page 5: ATHOS  Benutzertreffen

Aktueller Stand der Entwicklung

12.Oktober 2006 - 5

• Operating System Support– Windows 2000 (32-Bit)– Windows XP (32-Bit)– Windows 2003 (32-Bit)– Linux, Suse 10 (32-Bit)– Linux, Suse 10, RedHat (64-Bit)

Page 6: ATHOS  Benutzertreffen

Aktueller Stand der Entwicklung

12.Oktober 2006 - 6

Windows Linux 32-Bit Linux 64-Bit

AsamCommander Ja Ja Ja

Avalon Ja Ja, nur 32 Id. Ja

Ascoba Ja Ja. Ja

AOP3Server Ja Nein Nein

Mme (Oracle 9.2) Ja Ja Ja

XATF Ja Ja Ja

ATF Ja Ja Ja

AVL3 Ja Ja Ja

Esql Ja Nein Nein

Page 7: ATHOS  Benutzertreffen

Aktueller Stand der Entwicklung

12.Oktober 2006 - 7

• ASAM ODS 5.1– Verbesserung der Dokumentation.– Verbesserung ATF/XML.– Neue OO-API Methoden.– Neue OO-API Funktionalität.

• ASAM ODS 5.1.1– Mehrere identische ‚Based Relations‘ an ein

Element.

Page 8: ATHOS  Benutzertreffen

Aktueller Stand der Entwicklung

12.Oktober 2006 - 8

• Neue OO-API Methoden ODS 5.1– Interface AoSession

• createCoSession()• getUser()

– Interface ApplicationElement• getRelationByBaseName()

– Interface BaseRelation• getInverseRelationName()

– Interface BaseAttribute• getEnumerationDefinition()

– Enum SelOpcode• IS_NULL, // Value is NULL• IS_NOT_NULL // Value is not NULL

Page 9: ATHOS  Benutzertreffen

Aktueller Stand der Entwicklung

12.Oktober 2006 - 9

• Neue OO-API Funktionalität– Interface ApplElemAccess

• getInstances()• getInstancesExt()• updateInstances()

The values of the local column instances are part of the result set when the following criteria all fit:

• Only when the attributes id, generation_parameters, values, flags are requested, as soon as any other attributes are requested the values are not reported.

• The values of the local column must all belong to exactly one instance of AoMeasurement

• The server can be configured to a use not more than a specified amount of memory. As soon as a result set exceeds this limit, an exception will be thrown.

• For the rest no iterator is required.

Page 10: ATHOS  Benutzertreffen

Aktueller Stand der Entwicklung

12.Oktober 2006 - 10

• Mehrere identische ‚Based Relations‘ an ein Element

UnitUnderTest

UnitUnderTestPart_1 UnitUnderTestPart_2

UUT (parent) UUT (parent)

Parts_1(Children)

Parts_2(Children)

Page 11: ATHOS  Benutzertreffen

Aktueller Stand der Entwicklung

12.Oktober 2006 - 11

• Geänderte OO-API Methoden ODS 5.1.1– Interface ApplicationElementAlt:

ApplicationRelation getRelationByBaseName( in Name baseRelName) raises (AoException);

Neu:ApplicationRelationSequence getRelationsByBaseName( in Name baseRelName) raises (AoException);

Page 12: ATHOS  Benutzertreffen

Aktueller Stand der Entwicklung

12.Oktober 2006 - 12

• Model Mapper– Umstellung von TCL auf Java– Konfigurationsfiles mit XML, Prüfung durch XSD– Einbindung Query mit HQLX

Der neue Model Mapper wird nur bei neuen Kunden-projekten eingesetzt, der aktuelle Model Mapper wird weiterhin gewartet und für realisierte Projekte auch erweitert.

Page 13: ATHOS  Benutzertreffen

Kundenspezifische Projekte

12.Oktober 2006 - 13

• Datalogger• PAK Import / Export• Archivierung externe Dateien• Co-Server für Einheiten-Umrechnung• Beratung und Prototyp Erstellung

Page 14: ATHOS  Benutzertreffen

Geplante Entwicklungen

12. Oktober 2006 - 14

• ASAM ODS 5.1.1 Sobald ODS 5.1.1 vom TAB verabschiedet ist,

wird der Avalon auf diese Version umgestellt.

• Kundenspezifische Projekte

Page 15: ATHOS  Benutzertreffen

Zugriff auf Massendaten

12. Oktober 2006 - 15

Verschiedene Möglichkeiten:– Interface ValueMatrix– Interface InstanceElement– Interface InstanceElement mit Auslesen

von ExternalComponent Dateien– Interface ApplElemAccess

Page 16: ATHOS  Benutzertreffen

Zugriff auf Massendaten

12. Oktober 2006 - 16

ValueMatrix– Aufbau der ValueMatrix von SubMatrix oder

Measurement.– Werte immer im MeasurementQuantity

Datentyp.– Zugriff der Daten über Zeilen (Vector), Spalten

(MeaPoint) und Bereiche.– Einheit ist bei Column zu erfragen.

Page 17: ATHOS  Benutzertreffen

Zugriff auf Massendaten

12. Oktober 2006 - 17

z.B:Measurement meaObj = ieMea.upcastMeasurement();ValueMatrix vmObj = meaObj.getValueMatrix();if (vmObj != null) { Column cols[] = vmObj.getColumns("*"); for (int i = 0; i < cols.length; i++) { TS_ValueSeq values = vmObj.getValueVector(cols[i], 0, 0); } vmObj.destroy();}

Page 18: ATHOS  Benutzertreffen

Zugriff auf Massendaten

12. Oktober 2006 - 18

InstanceElement– Navigation von Measurement auf SubMatrix weiter auf

Local Column– Auslesen der Attribute sequence_representation,

values, raw_datatype, generation_parameters, global_flag und flags von AoLocalColumn

– Auslesen des Attributes datatype von AoMeasurementQuantity

– Auswertung der sequence_represenation– Nur Zugriff auf alle Daten einer Local Column– Einheit wird mit geliefert.

Page 19: ATHOS  Benutzertreffen

Zugriff auf Massendaten

12. Oktober 2006 - 19

Sequence_RepresenationExplicit, Daten liegen explizit vor in korrektem Datentyp.Implicit_Constant, Ein Wert bei ‚values‘, der für alle Werte zu verwenden

ist.Implicit_Linear, Zwei Werte bei ‚values‘, Anfangswert und Offset zur

Berechnung der Werte.Implicit_Saw, Drei Werte bei ‚values‘, Anfangswert und Offset und

Maximum zur Berechnung der Werte.Raw_Linear, Raw_Polynomial und Raw_Linear_Calibrated, Daten liegen

in raw_datatype vor, die generation_parameters werden zur Umrechnung gebraucht.

External_Component, Raw_Linear_External, Raw_Polynomial_External und Raw_Linear_Calibrated_External identisch wie Explicit, Raw_Linear, Raw_Polynomial und Raw_Linear_Calibrated der Daten werden von dem Server aus der externen Datei geladen.

Page 20: ATHOS  Benutzertreffen

Zugriff auf Massendaten

12. Oktober 2006 - 20

z.B.:InstanceElementIterator ieSubIter = ieMea.getRelatedInstances(arMeaSub, "*");if (ieSubIter != null) { InstanceElement ieSub; do { ieSub = ieSubIter.nextOne(); if (ieSub != null) { InstanceElementIterator ieLccIter = ieSub.getRelatedInstances(arSubLcc, "*"); if (ieLccIter != null) { InstanceElement ieLcc; do { ieLcc = ieLccIter.nextOne(); if (ieLcc != null) { NameValueUnit values = ieLcc.getValueByBaseName("values");

Page 21: ATHOS  Benutzertreffen

Zugriff auf Massendaten

12. Oktober 2006 - 21

ieLcc.destroy(); } } while (ieLcc != null); ieLccIter.destroy(); } ieSub.destroy(); } } while (ieSub != null); ieSubIter.destroy();}

Page 22: ATHOS  Benutzertreffen

Zugriff auf Massendaten

12. Oktober 2006 - 22

InstanceElement mit Auslesen von ExternalComponent Dateien

– Wie bei InstanceElement.– Nur für sequence_represenation

External_Component, Raw_Linear_External, Raw_Polynomial_External und Raw_Linear_Calibrated_External

– weitere Navigation auf AoExternalComponent.– Zugriff von Client auf Dateien.– Auswertung der Basisattribute von

AoExternalComponent

Page 23: ATHOS  Benutzertreffen

Zugriff auf Massendaten

12. Oktober 2006 - 23

ApplElemAccess– Neu in ODS 5.1– Zugriff auf Werte von mehreren Local Columns

in eine Anfrage.– Attribute Auswertung wie bei InstanceElement– Implementierung für getInstances()– Beschränkungen wie oben angegeben– Nur ein Datentyp pro Anfrage

Page 24: ATHOS  Benutzertreffen

Zugriff auf Massendaten

12. Oktober 2006 - 24

z.B.:// Build query for the request of the valuesQueryStructure qs = new QueryStructure();// Get the Id of the application elementsT_LONGLONG aeSubId = aeSub.getId();T_LONGLONG aeLccId = aeLcc.getId();// Deternime the number of attributesApplicationAttribute aaLccId = aeLcc.getAttributeByBaseName("id");String aaLccIdName = aaLccId.getName();ApplicationAttribute aaLccName = aeLcc.getAttributeByBaseName("name");String aaLccNameName = aaLccName.getName();ApplicationAttribute aaLccValues = aeLcc.getAttributeByBaseName("values");

Page 25: ATHOS  Benutzertreffen

Zugriff auf Massendaten

12. Oktober 2006 - 25

// Report the attributes of the localcolumnqs.anuSeq = new AIDNameUnitId[2];qs.anuSeq[0] = createAIDNameUnitId(aeLccId, aaLccIdName);qs.anuSeq[1] = createAIDNameUnitId(aeLccId, aaLccValues.getName());// Conditions Name of Localcolumnqs.condSeq = new SelValue[1];qs.condSeq[0] = createSelValue(aeLccId, aaLccNameName, SelOpcode.LIKE);qs.condSeq[0].value.u.stringVal("*");// No operationqs.operSeq = new SelOperator[0];// No order byqs.orderBy = new SelOrder[0];// Related instance submatrixqs.relInst = new ElemId();qs.relInst.aid = aeSubId;qs.relName = arSubLcc.getRelationName();

Page 26: ATHOS  Benutzertreffen

Zugriff auf Massendaten

12. Oktober 2006 - 26

InstanceElementIterator ieSubIter = ieMea.getRelatedInstances(arMeaSub, "*");if (ieSubIter != null) { InstanceElement ieSub = null; do { ieSub = ieSubIter.nextOne(); if (ieSub != null) { qs.relInst.iid = ieSub.getId(); ElemResultSet res[] = aea.getInstances(qs, 0); ieSub.destroy(); } } while (ieSub != null);

ieSubIter.destroy();}

Page 27: ATHOS  Benutzertreffen

Vielen Dank für Ihre Aufmerksamkeit