If you have your data on the external table, why not just reverse engineer it’s schema into xpdo, and then continue to use it.
I actually did do that. I already had it in xpdo and was querying it... but some of the fields in the modUserProfile (name, gender, phone, dob, etc.) I didn’t initially put in the external table, because I thought it was bad form to have it in both places. So I was looking to do a join of the modUserProfile table and my external table to be able to query all the pertinent fields.
Having the external data in the ’extended’ field of modUserProfile wasn’t sufficient for my needs - I need to do some greater/less-than comparisons, and didn’t want to get in to php filtering.
I suppose I could have pursued doing a join between the modx user profile table and my external profile table - the external table has an ’account_id’ field that matches the modx user id.
Instead I ended up pulling most of the data I needed from the modx user profile into the external table (adding the fields), and redid the schema. I’m relying less on the modx user profile as a repository of searchable data; just collecting a minimal amount of information when the user registers (name, email, password, and birthdate to meet age requirement). After they register they can log on and create a profile (populating my external table).