Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  Teamcenter
  TCE Rich Client Customization: Dataset erzeugen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX
  
NX Learning Nugget: Formelementvorlagen, ein Kurs
Autor Thema:  TCE Rich Client Customization: Dataset erzeugen (2001 mal gelesen)
234
Mitglied


Sehen Sie sich das Profil von 234 an!   Senden Sie eine Private Message an 234  Schreiben Sie einen Gästebucheintrag für 234

Beiträge: 4
Registriert: 13.01.2009

erstellt am: 13. Jan. 2009 22:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Erst einmal ein Hallo an alle (1. Post)!

Im Rahmen meiner Tätigkeit als HiWi (bin noch Student) soll ich die Oberfläche von Teamcenter 2007 anpassen.

Hierbei muß ich auch über die Kernel API neue Komponenten in der Teamcenter Datenbank erzeugen.

Bisher habe ich nur Forms erzeugt:

        IMANSession session = (IMANSession) this.application.getSession();

        IMANComponentFormType formType = (IMANComponentFormType) session.getTypeComponent("Form");
       
        IMANComponentForm form =  formType.create("Formname", null, "Formtype");

Dies hat ohne Problem funktioniert.

Wenn ich aber nun auf dem gleichen Weg versuche ein Dataset zu erzeugen, bekomme ich eine Exception beim Aufruf der create-Methode: Instance cannot be saved - has empty attributes.

Der Vorgang ist für das Dataset nahezu der gleiche:

        IMANSession session = (IMANSession) this.application.getSession();

        IMANComponentDatasetType datasetType = (IMANComponentDatasetType) session.getTypeComponent("Dataset");

        IMANComponentDataset dataset = datasetType.create(....);

Hier gibt es nur mehrere mögliche create-Methoden mit oder ohne Angabe von ID, Revision oder Tool. Ich bekomme jedoch bei jeder Version die gleiche Fehlermeldung.

Ich hoffe jemand weiß, welches Attribut ich hier noch setzen muß?

Gruß, 234.

[Diese Nachricht wurde von 234 am 13. Jan. 2009 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Tömme
Mitglied
Teamcenter Administrator


Sehen Sie sich das Profil von Tömme an!   Senden Sie eine Private Message an Tömme  Schreiben Sie einen Gästebucheintrag für Tömme

Beiträge: 195
Registriert: 19.12.2007

TC 11.5.0 mit NX12

erstellt am: 14. Jan. 2009 10:55    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für 234 10 Unities + Antwort hilfreich

ähm .. das ist ITK oder??
hast du da eine schulung gehabt oder hast du das nur mit der API doku programmiert (gute programmierkenntnisse in C vorausgesetzt)?

ansonsten kann ich dir bei deiner frage leider nicht helfen

------------------
hab doch garnix gemacht .. außer den server neugestartet .. war das etwa falsch? 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Tömme
Mitglied
Teamcenter Administrator


Sehen Sie sich das Profil von Tömme an!   Senden Sie eine Private Message an Tömme  Schreiben Sie einen Gästebucheintrag für Tömme

Beiträge: 195
Registriert: 19.12.2007

TC 11.5.0 mit NX12

erstellt am: 14. Jan. 2009 11:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für 234 10 Unities + Antwort hilfreich

warte ma, aber eins kapier ich nicht ganz. was willstn du überhaupt machen? einfach einen neuen form- und datasettype anlegen??
warum machstn das so umständlich und nicht einfach mit den command prompt tools und lässt teamcenter alles weitere erledigen .. ??

EDIT: achso, du willst einfach nur eine neue form erstellen, kein komplett neuer typ. oder?
klär mich ma auf 


------------------
hab doch garnix gemacht .. außer den server neugestartet .. war das etwa falsch?  

[Diese Nachricht wurde von Tömme am 14. Jan. 2009 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

234
Mitglied


Sehen Sie sich das Profil von 234 an!   Senden Sie eine Private Message an 234  Schreiben Sie einen Gästebucheintrag für 234

Beiträge: 4
Registriert: 13.01.2009

erstellt am: 14. Jan. 2009 11:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Nein, ich habe natürlich keine Schulung gehabt. Wobei die wohl nötig ist, da die Dokumentation der API wirklich sehr mager ist. Normalerweise werden Methoden mit einem einzigen schlichten Satz beschrieben und es werden keine eventuell nötigen Voraussetzungen genannt.

Für die obige create-Funktion ist die Beschreibung in der API: "This method creates a Dataset." Was mir jetzt nicht wirklich weiter hilft.

---------------------------------------------------

Das ganze ist in Java für den Rich Client. ITK ist in C - bezieht sich aber auf den Server soweit ich weiß.

---------------------------------------------------

Ja, ich will nur ein neues Dataset-Objekt in der Datenbank erzeugen. Den Dataset-Typ habe ich vorher schon definiert über das Admin-Panel.

Um ein neues Objekt zu erzeugen, ist dies der normale Weg: Man braucht erst das entsprechende IMANComponentType-Objekt, mittels dessen create-Funktion man dann das jeweile IMANComponent erzeugt. In diesem Fall: IMANComponentDatasetType und IMANComponentDataset.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

234
Mitglied


Sehen Sie sich das Profil von 234 an!   Senden Sie eine Private Message an 234  Schreiben Sie einen Gästebucheintrag für 234

Beiträge: 4
Registriert: 13.01.2009

erstellt am: 14. Jan. 2009 20:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Habe die (banale) Lösung des Problems mittlerweile selbst gefunden.

Der von mir genutzt Name für das Dataset war einfach zu lang. Die Fehlermeldung: "Instance cannot be saved - has empty attributes" hat mich leider nicht gerade auf die Ursache des Problems geführt.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

schulze
Ehrenmitglied V.I.P. h.c.
CAD/CAE Manager


Sehen Sie sich das Profil von schulze an!   Senden Sie eine Private Message an schulze  Schreiben Sie einen Gästebucheintrag für schulze

Beiträge: 2312
Registriert: 26.03.2001

TC_8.1, NX6
( und andere )

erstellt am: 15. Jan. 2009 10:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für 234 10 Unities + Antwort hilfreich

Eine Anmerkung kann ich mir nicht verkneifen:
Deine Situationsbeschreibung mag ja lückenhaft sein, aber mal eben so ein paar Datasets anlegen halte ich für eine fragwürdige Vorgehensweise. Die Standard-Struktur Item -> Item_Revision -> Dataset ist schon essentiell für TCE.
Falls Du grössere Mengen von teilebezogenen Informationen aus dem Dateisystem nach TCE übertragen sollst, wäre es angemessen, eine Routine zu schreiben, die aus einer Excel-Tabelle die notwendigen Informationen entnimmt und die entsprechende Struktur "in einem Rutsch" schlüssig anlegt.
Datasets, die nicht in einer Item_Revision oder zumindest in einem Ordner referenziert sind, betrachten wir als "Datenmüll" und löschen sie einmal im Monat radikal.

------------------
R.Schulze

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

234
Mitglied


Sehen Sie sich das Profil von 234 an!   Senden Sie eine Private Message an 234  Schreiben Sie einen Gästebucheintrag für 234

Beiträge: 4
Registriert: 13.01.2009

erstellt am: 16. Jan. 2009 15:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

ja, meine beschreibung macht diesbezüglich überhaupt keine angaben. ich kann die struktur, in der ich die datasets erzeuge, in gänze bestimmen.

auch kann ich mir die vom benutzer selektierten komponenten angeben lassen, um zu überprüfen, ob die resultierende struktur meinen anforderungen gerecht wird.

die bis jetzt definierte struktur ist dann aber wohl nach deinen angaben nicht tce-konform. was in meinem fall allerdings nicht relevant ist.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz