1

I have two page layouts. One is for Customers, the other is for Partners.

I have two Partner Fee fields. One is on the Customer page layout, the other is on the Partner page layout. They are both picklists.

These two layouts are connected by a lookup field, "Partner", which is on the Customer layout.

I need the value inside the Partner Fee Field on the Customer layout to match that of the Partner Fee Field on the Partner layout, but I also need it to be editable. So if I chose to make the Partner Fee 10% for a Partner (let's call this partner, "Test"), the Customer that "Test" is connected to via lookup field should then have a Partner Fee of 10%, too. But I could change it to 40%, if I wanted to.

To achieve this, I've tried a process builder with multiple field update flows and several workflow rules (as there more is than just one value inside the picklist field, Partner Fee). But it's not working; I feel like I'm missing something obvious. Can I even do this in a workflow or process builder?

My workflow rule criteria is:

ISPICKVAL( Partner__r.Partner_Fee__c, "10%")

My workflow action is a field update, that updates the Partner Fee field on the Customer layout to read "10%" too.

So my question is, can anybody see what I'm doing wrong?

  • So...you have a Customer__c object which looks up to the Partner__c object? – Adrian Larson Sep 7 '16 at 13:12
  • You may wish to simply use a formula on Customer that is TEXT(Partner__r.Partner_Fee__c). – Adrian Larson Sep 7 '16 at 13:13
  • @adrian larson, They're two separate page layouts of the same object, Account, if that makes sense. A formula would be easier, but I want to be able to edit the field too. – user34868 Sep 7 '16 at 13:18
  • Sure, I think you mean RecordType as well? Anyway, Partner__c is a lookup from Account to Account? – Adrian Larson Sep 7 '16 at 13:19
  • @adrian Larson, exactly. – user34868 Sep 7 '16 at 13:21
1

I would say you have a few options here. My first choice would be a formula. Make it Text type and then just use:

TEXT(Partner__r.Partner_Fee__c)

If you decide formulas aren't right for you and prefer to go the Workflow Rule route, that is still the formula you would need to use in a Workflow Field Update as well. In such case, your criteria there should simply be:

OR(ISNEW(), ISCHANGED(Partner__c))

You will need to implement Process Builder to sync the value back down to the child Customer__c records when Partner_Fee__c changes on the Partner__c record. There are many steps involved here, but the ones that may be tripping you up are:

  • Criteria
    • You should update the child records whenever Partner_Fee__c changes.
  • Action
    • You should Update Records and select the child relationship.
    • Select the Field you want to update and use update Type of Formula
    • The formula should simply read TEXT([Account].Partner_Fee__c)
| improve this answer | |
  • "The formula should simply read [Account].Partner_Fee__c" I'm having trouble with this: 'The formula expression is invalid: Field Account is a picklist field. Picklist fields are only supported in certain functions' :/ – user34868 Sep 7 '16 at 14:22
  • 1
    @ESil Wrap it in TEXT, then. TEXT([Account].Partner_Fee__c. – Adrian Larson Sep 7 '16 at 14:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy