To All, I’ve never been a great lover of UML packages but recently I’ve been taking a look at them to document our system which is now rather large with over 1000 tables in the main database. I’ve taken a look at both Enterprise Architect and the latest Version 8 of XCase which caters specifically for VFP and I’m trying to get my head around how to represent the following:
Customer File PK Int – Primary_Key ID C(10) – Customer Identifier Name C(20) Indexes: PK – Primary_Key ID - Id Transaction File PK Int – Primary_Key PK_Customer Int – Primary Customer Key Date D – Date of transaction Type C(3) – Type of transaction Indexes: PK – Primary_Key P_Cust – Str(PK_Cust)+dtos(Date)+Type In the VFP data environment I would simply drag the PK field from the Customer file and link it to the P_Cust index in the transaction file and simply change the Key definition from PK to str(PK) which would give me the transactions in date/Type sequence to display in a set of Master/Child grids. So far no problem - in VFP that is. Now, my question. Using standard UML how do you represent this relationship? As far as I can determine in UML, they state that the Foreign Key in a child table needs to be EXACTLY equal in size to the key in the master table and in this case that is obviously not true as the Master key would be length 10 (i.e str(PK)) and the child key length 10+8+3. Yes I know VFP is a special case because you can look at data in real time as opposed to using an SQL Select but the question is really bugging me. What I want to do is display/link what I call the foreign key of the child (the full index description) to the smaller PK field in the Customer file but shown diagrammatically which doesn’t seem possible without shoring the link fields as plain descriptive text. It seems that VFP takes UML a step too far in that live links where the child is automatically sorted into FK sequence order fall outside the UML spec. Questions: 1. Is the ability to link tables in this way only catered for in UML by linking the PK of the Customer and the PK_Customer fields and then doing a sort in the SQL Select statement as in client/server? 2. How do others in the group document their database table relationships? Hope this made sense. Dave Crozier -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.5.446 / Virus Database: 268.18.12/724 - Release Date: 16/03/2007 12:12 _______________________________________________ Post Messages to: [email protected] Subscription Maintenance: http://leafe.com/mailman/listinfo/profox OT-free version of this list: http://leafe.com/mailman/listinfo/profoxtech ** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.

