SchemaPuker v0.2 Released!

Try the new version right now at 

I have been getting a lot of feedback about SchemaPuker since its launch, and many, many people have tried it out
The response has been far more than I expected, with many tweets and even a couple of blog posts about the tool;

Lucidchart + SchemaPuker: The Winning Combination for a Salesforce Consultant
Phil’s Salesforce Tip of the Week #220

I am so glad people are finding the tool useful, I’ve had a few feature requests and bug reports, which is why I have now released a new version, with the following changes;

  • You can now select if you want all fields displayed, or only relationship fields
  • Much better error handling!
    • Before, if something went wrong, you’d either get an ugly error page, or nothing at all, now you will get some (hopefully) useful details if something goes wrong
  • Huge speed increase, up to 5.9x faster in my super scientific benchmark*
  • All relationships should now be visible, some users were reporting that the lines connecting them didn’t show in lucidchart
    • I threw my entire dev org at it, and was able to see all the relationship lines automatically, if you are still experiencing this issue please let me know!
  • Minor text fixes

I have had suggestions for more new features, which I do plan to include in future releases, so please keep them coming!

If you have any suggestions, comments, bugs or need help you can send me a tweet, leave a comment, or send me a message!

* Super scientifc benchmark method: timing the old and new method several times and working out the average difference

4 thoughts on “SchemaPuker v0.2 Released!”

  1. Renamed standard object Account to Client (Account)….

    Export creates the correct details for the Client object
    postgresql;ELSA;Salesforce;”Client (Account)”;”Client ID (Id)”;1;”ID”;18;”PRIMARY KEY”;

    But any objects with a lookup field to Client pulls in Account (Account) as the object name
    postgresql;ELSA;Salesforce;”Case (Case)”;”Client Name (AccountId)”;3;”REFERENCE”;18;”FOREIGN KEY”;”Salesforce”;”Account (Account)”;”Account ID (Id)”;

    This causes LucidChart to fail to draw the relationship between these objects.

    1. It seems that for object definitions t.table_name is:
      ObjectLabel + “(” + APIName + “)”

      Then for k2.table_name for reference fields in other objects is:
      APIName + “(” + APIName + “)”

      Therefore k2.table_name is always x (x)

      Because LucidChart looks to match k2.table_name with t.table_name in order to automatically draw a relationship, it will not find a match for any object with a Label different from the API Name.
      This will include any custom objects, since the API name includes __c

      1. Hi Mike, wordpress is rubbish at telling me I have new comments, so I’m sorry its taken me so long to see this.

        You’re right about custom or renamed objects not mapping properly. I’ve made some enhancements to this now and they should always map.

        If you find any issues, please let me know 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *