Find your content:

Search form

You are here

Printable ERD from Salesforce that you can Edit

 
Share

I built a solution for a customer and I want to pull the ERD from the Salesforce instance and have the ability to edit it.

I know there are a few tools and the Schema builder in Salesforce but none of them give you good export functionality that then allows you to edit afterwards in Visio, OMNI or online tool.

Does anyone know a good tool to extract the ERD that then allows you to edit it afterwards?


Attribution to: Kris Moyse

Possible Suggestion/Solution #1

Safyr is a tool from Silwood Technology that pulls metadata out of any Force based environment and allow data models to be built in a range of data modelling tools like ERwin and ER/Studio. It also has its own built-in ERD capability.


Attribution to: Sue Edwards

Possible Suggestion/Solution #2

I built http://stevebuik.github.io/GraphVizForce for this although you will need to learn the Graphviz syntax if you want to edit it after it has been generated.


Attribution to: Steve Buikhuizen

Possible Suggestion/Solution #3

Got to thinking, everything in salesforce is web based. So looking at the calls to salesforce

https://cs9.salesforce.com/_ui/platform/schema/ui/schemabuilder/SchemaBuilderServlet?timeStamp=1345444993377&sblid=0GHK00000008PC8&action=LoadInitial&_CONFIRMATIONTOKEN=chxemqyV1L_hA2vmW90h89AfhduejVo7EEdyfLmsfucsYrPrN4gT5bYwyaAC6xMxxbCUIVeZcs4orflB2UJiD5rOekDHR5hBviT8Y4uvjX.j77zVxdWBE4EeH6mKRvzUox3KRoom4oU00VHw6k50_yid9trktz70M4xaXlua8qBKu98qPwELjmYMwEQZK14jM58IlQ==&retURL=/_ui/platform/schema/ui/schemabuilder/SchemaBuilderUi

sure enough, the above call gets you the data in return. Conceivably you could create a parser that would render this information into something useful.

    objs: {User:{flds:{AboutMe:{dt:X, id:AboutMe, d:[],…}, IsActive:{dt:B, id:IsActive, d:[],…},…},…},…}
    01IK00000000UwX: {flds:{Name:{dt:V, id:Name, d:[],…}, CreatedBy:{dt:Y, id:CreatedBy, d:[User],…},…}, to:9987,…}
    01Id0000000eA7o: {flds:{,…}, to:13991, sblitemid:0GIK00000008ewN,…}
    01Id0000000eA7p: {flds:{,…}, to:13488, sblitemid:0GIK00000008ewO, rflds:{,…}, n:FCMS__CMSProfile__c, l:CMSProfile,…}
    01Id0000000eA7q: {flds:{CreatedBy:{dt:Y, id:CreatedBy, d:[User],…}, Name:{dt:V, id:Name, d:[],…},…}, to:9987,…}
    01Id0000000eA7s: {flds:{,…}, to:9987, sblitemid:0GIK00000008ewQ,…}
    01Id0000000eA7t: {flds:{,…}, to:14696, sblitemid:0GIK00000008ewR, rflds:{,…}, n:FCMS__Menu__c, l:Menu, afl:true,…}
    01Id0000000eA7u: {flds:{,…}, to:14197, sblitemid:0GIK00000008ewS,…}
    01Id0000000eA7v: {flds:{,…}, to:13734, sblitemid:0GIK00000008ewT, rflds:{,…}, n:FCMS__Permission__c, l:Permission,…}
    01Id0000000eA7w: {flds:{CreatedBy:{dt:Y, id:CreatedBy, d:[User],…},…}, to:13319, sblitemid:0GIK00000008ewU,…}
    01Id0000000eEb3: {flds:{,…}, to:15490, sblitemid:0GIK00000008ewW,…}
    01Id0000000eEb4: {flds:{,…}, to:16304, sblitemid:0GIK00000008ewX,…}
    01Id0000000eEb5: {flds:{,…}, to:14477, sblitemid:0GIK00000008ewY,…}
    01Id0000000eEb6: {flds:{,…}, to:16080, sblitemid:0GIK00000008ewZ, rflds:{,…}, n:Project_Group__c, l:Project Group,…}
    01Id0000000eEb7: {flds:{,…}, to:14451, sblitemid:0GIK00000008ewa, rflds:{,…}, n:Project_Owner__c, l:Project Assignment,…}
    01Id0000000eEb8: {flds:{,…}, to:15336, sblitemid:0GIK00000008ewb, rflds:{,…}, n:Project__c, l:Project, afl:true,…}
    01Id0000000eEb9: {flds:{,…}, to:14918, sblitemid:0GIK00000008ewc,…}
    01Id0000000eEbA: {flds:{,…}, to:14451, sblitemid:0GIK00000008ewd, rflds:{,…}, n:Timesheet_Period__c, l:Timesheet Period,…}
    01Id0000000eEbB: {flds:{,…}, to:14755, sblitemid:0GIK00000008ewe, rflds:{,…}, n:Timesheet_User__c, l:Timesheet User,…}
    01Id0000000ey1P: {flds:{,…}, to:13891, sblitemid:0GIK00000008ewV, rflds:{,…}, n:Schedule_Availability__c,…}
    01Id0000000f0aI: {flds:{,…}, to:13570, sblitemid:0GIK00000008ewf, rflds:{,…}, n:Stakeholder__c, l:Stakeholder,…}
    01Id0000000fBlF: {flds:{,…}, to:9987, sblitemid:0GIK00000008ewg,…}
    01Id0000000fWs2: {flds:{CreatedBy:{dt:Y, id:CreatedBy, d:[User],…},…}, to:11484, sblitemid:0GIK00000008ewh,…}
    01Id0000000fWzT: {flds:{CreatedBy:{dt:Y, id:CreatedBy, d:[User],…}, Name:{dt:S, id:Name, d:[],…},…}, to:12432,…}
    01Id0000000foeg: {flds:{CreatedBy:{dt:Y, id:CreatedBy, d:[User],…}, Name:{dt:S, id:Name, d:[],…},…}, to:12073,…}
    01Id0000000fwbB: {flds:{CreatedBy:{dt:Y, id:CreatedBy, d:[User],…},…}, to:13024, sblitemid:0GIK00000008ewk,…}
    01Id0000000fzeA: {flds:{Name:{dt:S, id:Name, d:[],…}, CreatedBy:{dt:Y, id:CreatedBy, d:[User],…},…}, to:12081,…}
    01Id00000011jId: {flds:{,…}, to:9987, sblitemid:0GIK00000008ewL,…}
    01Id00000011jIe: {,…}
    01Id00000011jIf: {flds:{Name:{dt:V, id:Name, d:[],…}, CreatedBy:{dt:Y, id:CreatedBy, d:[User],…},…}, to:9987,…}
    01Id00000011jIg: {flds:{,…}, to:13482, sblitemid:0GIK00000008ewA, rflds:{,…}, n:AVTRRT__ETCObject__c, l:ETCObject,…}
    01Id00000011jIh: {,…}
    01Id00000011jIi: {flds:{,…}, to:13342, sblitemid:0GIK00000008ewC, rflds:{,…}, n:AVTRRT__Employment_History__c,…}
    01Id00000011jIj: {flds:{,…}, to:12037, sblitemid:0GIK00000008ewD, rflds:{,…}, n:AVTRRT__Expense__c, l:Expense, afl:true,…}
    01Id00000011jIk: {flds:{,…}, to:12268, sblitemid:0GIK00000008ewE, rflds:{,…}, n:AVTRRT__Interview__c, l:Interview,…}
    01Id00000011jIl: {flds:{,…}, to:11471, sblitemid:0GIK00000008ewF, rflds:{,…}, n:AVTRRT__Job_Applicant__c,…}
    01Id00000011jIm: {flds:{CreatedBy:{dt:Y, id:CreatedBy, d:[User],…},…}, to:9987, sblitemid:0GIK00000008ewG,…}
    01Id00000011jIn: {flds:{,…}, to:11135, sblitemid:0GIK00000008ewH, rflds:{,…}, n:AVTRRT__Job__c, l:Job, afl:false,…}
    01Id00000011jIo: {flds:{,…}, to:11830, sblitemid:0GIK00000008ewI, rflds:{,…}, n:AVTRRT__Placement__c, l:Placement,…}
    01Id00000011jIp: {flds:{,…}, to:13681, sblitemid:0GIK00000008ewJ, rflds:{,…}, n:AVTRRT__References__c, l:Reference,…}
    01Id00000011jIq: {flds:{,…}, to:10488, sblitemid:0GIK00000008ewK,…}
    01Id00000011jIs: {flds:{,…}, to:11400, sblitemid:0GIK00000008ew2,…}
    01Id00000011jIt: {flds:{CreatedBy:{dt:Y, id:CreatedBy, d:[User],…},…}, to:10815, sblitemid:0GIK00000008ew3,…}
    01Id00000011jIu: {flds:{CreatedBy:{dt:Y, id:CreatedBy, d:[User],…}, Name:{dt:S, id:Name, d:[],…},…}, to:10635,…}
    01Id00000011jIv: {,…}
    01Id00000011jIw: {,…}
    01Id00000011jIx: {,…}
    01Id00000019OOD: {flds:{,…}, to:11995, sblitemid:0GIK00000008ewm,…}
    01Id00000019P8C: {flds:{Name:{dt:S, id:Name, d:[],…},…}, to:12592, sblitemid:0GIK00000008ewn,…}
    Account: {flds:{Name:{dt:m, id:Name, d:[],…}, AccountNumber:{dt:S, id:AccountNumber, d:[],…},…}, to:12769,…}
    Activity: {flds:{,…}, sblitemid:0GIK00000008ewo, rflds:{}, n:Activity, l:Activity, afl:true, h:true, id:Activity,…}
    Asset: {flds:{Account:{dt:Y, id:Account, d:[Account],…}, Name:{dt:S, id:Name, d:[],…},…}, to:13175,…}
    Campaign: {flds:{IsActive:{dt:B, id:IsActive, d:[],…}, ActualCost:{dt:C, id:ActualCost, d:[],…},…}, to:11982,…}
    CampaignMember: {flds:{Campaign:{dt:Y, id:Campaign, d:[Campaign],…}, City:{dt:S, id:City, d:[],…},…}, to:12699,…}
    Case: {flds:{Account:{dt:Y, id:Account, d:[Account],…}, Asset:{dt:Y, id:Asset, d:[Asset],…},…}, to:13151,…}
    Contact: {flds:{,…}, to:13129, sblitemid:0GIK00000008evp, rflds:{Account:{dt:Y, id:Account, d:[Account],…},…},…}
    Contract: {flds:{Account:{dt:Y, id:Account, d:[Account],…}, ActivatedBy:{dt:Y, id:ActivatedBy, d:[User],…},…},…}
    Event: {,…}
    Idea: {flds:{Categories:{dt:Q, id:Categories, d:[],…}, Body:{dt:z, id:Body, d:[],…},…}, to:9987,…}
    Lead: {flds:{Address:{dt:A, id:Address, d:[],…}, AnnualRevenue:{dt:C, id:AnnualRevenue, d:[],…},…}, to:11722,…}
    Opportunity: {flds:{Account:{dt:Y, id:Account, d:[Account],…}, Amount:{dt:C, id:Amount, d:[],…},…}, to:11155,…}
    OpportunityLineItem: {flds:{CreatedBy:{dt:Y, id:CreatedBy, d:[User],…}, ServiceDate:{dt:D, id:ServiceDate, d:[],…},…},…}
    Product2: {flds:{IsActive:{dt:B, id:IsActive, d:[],…}, CreatedBy:{dt:Y, id:CreatedBy, d:[User],…},…}, to:11852,…}
    Quote: {,…}
    QuoteLineItem: {flds:{CreatedBy:{dt:Y, id:CreatedBy, d:[User],…}, ServiceDate:{dt:D, id:ServiceDate, d:[],…},…},…}
    Solution: {,…}
    Task: {flds:{Owner:{dt:Y, id:Owner, d:[User, Calendar],…},…}, sblitemid:0GIK00000008evy,…}
    User: {flds:{AboutMe:{dt:X, id:AboutMe, d:[],…}, IsActive:{dt:B, id:IsActive, d:[],…},…},…}

Attribution to: ebt

Possible Suggestion/Solution #4

Schema Spy: http://schemaspy.sourceforge.net/

Can be used on salesforce: http://blog.jeffdouglas.com/2010/05/12/running-the-force-metadata-jdbc-driver-for-schemaspy/

With the option of generating both HTML pages and Graphvis images along with an XML representation of the schema.


Attribution to: Baxter

Possible Suggestion/Solution #5

There is an app on the appexchange called ERD force, you may want to try that. https://sites.secure.force.com/appexchange/listingDetail?listingId=a0N3000000174P9EAI

Also, you may want to refer the below http://code.google.com/p/force-metadata-jdbc-driver/


Attribution to: Roshan

Possible Suggestion/Solution #6

You can use products like DBAmp or Informatica Replicator which will create a SQL Database based on your Salesforce schema. Then you can use Visio to read the SQL Server database schema. I know that DBAmp, might now be called ForceAmp, used to have documentation to do just this sort of thing.


Attribution to: caleb
This content is remixed from stackoverflow or stackexchange. Please visit https://salesforce.stackexchange.com/questions/430

My Block Status

My Block Content