| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
 | PNY: der unverzichtbare Partner für umfassende KI-Lösungen von Workstations bis zu Edge Computing und KI-Cluster-Bereitstellung, eine Pressemitteilung
|
Autor
|
Thema: Wert zum SML eines PART (1389 mal gelesen)
|
Jörg2 Mitglied
  
 Beiträge: 509 Registriert: 20.02.2007
|
erstellt am: 30. Aug. 2011 11:01 <-- editieren / zitieren --> Unities abgeben:         
|
MB007 Mitglied

 Beiträge: 46 Registriert: 02.02.2009
|
erstellt am: 30. Aug. 2011 13:42 <-- editieren / zitieren --> Unities abgeben:          Nur für Jörg2
Hallo Jörg2, wie wäre es mit diesen SQL-Abfragen: 1) Alle Merkmale: SELECT dbo.PART.AIMKEY , dbo.PART.IDENT, dbo.VIEW_CRCLIST.IDENT, dbo.VIEW_CRCLIST.X_NUMBER1, dbo.VIEW_CRCLIST.SHORT_DESC, dbo.VIEW_CRCLIST.VALUE, dbo.VIEW_CRCLIST.DIMENSION FROM dbo.VIEW_CRCLIST, dbo.PART WHERE dbo.VIEW_CRCLIST.ELEMENT_AIMKEY=dbo.PART.AIMKEY And dbo.PART.IDENT = '0000283' ORDER by ELEMENT_AIMKEY, X_NUMBER1 2) Vier Ziffern von VALUE:
SELECT dbo.PART.AIMKEY , dbo.PART.IDENT, dbo.VIEW_CRCLIST.IDENT, dbo.VIEW_CRCLIST.X_NUMBER1, dbo.VIEW_CRCLIST.SHORT_DESC, left(dbo.VIEW_CRCLIST.VALUE,4) as WERT4, dbo.VIEW_CRCLIST.DIMENSION FROM dbo.VIEW_CRCLIST, dbo.PART WHERE dbo.VIEW_CRCLIST.ELEMENT_AIMKEY=dbo.PART.AIMKEY And dbo.PART.IDENT = '0000283' ORDER by ELEMENT_AIMKEY, X_NUMBER1 Gruß MB007
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Jörg2 Mitglied
  
 Beiträge: 509 Registriert: 20.02.2007
|
erstellt am: 30. Aug. 2011 14:43 <-- editieren / zitieren --> Unities abgeben:         
|
MB007 Mitglied

 Beiträge: 46 Registriert: 02.02.2009
|
erstellt am: 31. Aug. 2011 09:18 <-- editieren / zitieren --> Unities abgeben:          Nur für Jörg2
Hallo Jörg2, man könnte die SQL-Abfrage in einer gespeicherten Prozedur ablegen. Mit diesem Skript wird die Prozedur "procPRT" erzeugt: CREATE Procedure [dbo].[procPRT] (@out varchar(20) output, @in varchar(20)) AS BEGIN SELECT @out =left(dbo.VIEW_CRCLIST.VALUE,4) FROM dbo.VIEW_CRCLIST, dbo.PART WHERE dbo.VIEW_CRCLIST.ELEMENT_AIMKEY=dbo.PART.AIMKEY And dbo.PART.IDENT = @in AND dbo.VIEW_CRCLIST.SHORT_DESC ='Werkstoff' END Die Abfrage liest den Wert des Merkmals "Werkstoff" aus und schneidet nach dem 4 Buchstaben alles ab [left(stringXY,4)]. Die Prozedur kann man dann über die Shell aufrufen oder in einer dbp-Routine verwenden: read()#(XDWSFKT: procPRT(,#IDENT)) Gruß MB007 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Jörg2 Mitglied
  
 Beiträge: 509 Registriert: 20.02.2007
|
erstellt am: 02. Sep. 2011 16:28 <-- editieren / zitieren --> Unities abgeben:         
|
MB007 Mitglied

 Beiträge: 46 Registriert: 02.02.2009
|
erstellt am: 03. Sep. 2011 15:25 <-- editieren / zitieren --> Unities abgeben:          Nur für Jörg2
Hallo Jörg2, hier ist die Shell-Abfrage: read()"#(where db=CRCLIST (ELEMENT_AIMKEY='#AIMKEY' and CLASSCRC_AIMKEY='1050.10041') #(CRC_VALUE)") Zu dem AIMKEY des Parts wird der Wert des Merkmals ausgelesen. Gruß MB007 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MB007 Mitglied

 Beiträge: 46 Registriert: 02.02.2009
|
erstellt am: 04. Sep. 2011 07:37 <-- editieren / zitieren --> Unities abgeben:          Nur für Jörg2
Hallo Jörg2, die ersten vier Zeichen erhält man so: (0 Startpunkt im String und 4 Substringlänge) read()#(=substr(strprep("#(SHORT_DESC)"),0,4)) Wenn man das hier einbaut read()#(where db=CRCLIST (ELEMENT_AIMKEY='#AIMKEY' and CLASSCRC_AIMKEY='1050.10041') #(CRC_VALUE)) ergibt sich: read()#(where db=CRCLIST (ELEMENT_AIMKEY='#AIMKEY' and CLASSCRC_AIMKEY='1050.10041') #(=substr(strprep("#(CRC_VALUE)"),0,4))) Gruß MB007
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Jörg2 Mitglied
  
 Beiträge: 509 Registriert: 20.02.2007
|
erstellt am: 05. Sep. 2011 08:24 <-- editieren / zitieren --> Unities abgeben:         
Funktioniert nicht wie gewünscht. Es wird nur ein = zurück gegegebn. Es fehlt ja eigentlich auch noch die Angabe, von welchem Sachmerkmal der Wert ausgelesn werden soll. Ich will also vom Folder_Part auf den Folder_Characterristiclist schauen, und dort vom Sachmerkmal mit dem Ident "Kurznummer-0001" die ersten vier Ziffern des Value auslesen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MB007 Mitglied

 Beiträge: 46 Registriert: 02.02.2009
|
erstellt am: 05. Sep. 2011 08:43 <-- editieren / zitieren --> Unities abgeben:          Nur für Jörg2
|
MB007 Mitglied

 Beiträge: 46 Registriert: 02.02.2009
|
erstellt am: 05. Sep. 2011 08:58 <-- editieren / zitieren --> Unities abgeben:          Nur für Jörg2
|

| |
Jörg2 Mitglied
  
 Beiträge: 509 Registriert: 20.02.2007
|
erstellt am: 05. Sep. 2011 09:15 <-- editieren / zitieren --> Unities abgeben:         
|