Update Parent field based on child record

  • 1
  • Question
  • Updated 1 year ago
  • Answered
Hoping someone can help me with this,  I have the Accounts as a table with the related Contacts as Drawer under Accounts.   I am looking for a way to update a field on the Account (parent) record when a field on the Contact record field equals "test".  doesn't matter how many Contact records have this value.  

In other words if "any of the child Contact records field1 = test, then update the Parent Account field to "Contacts Test"

Thanks, Ann
Photo of Ann Kukich

Ann Kukich

  • 1,316 Points 1k badge 2x thumb

Posted 1 year ago

  • 1
Photo of Stephen Sells

Stephen Sells, Official Rep

  • 16,856 Points 10k badge 2x thumb
Interesting request. It sounds like you need Branch actions. On the below page, You'd want to apply whatever If-Then Logic in the formula of the Brach shown in the picture within the global action. I have it set up to where it'll be updated every time you press the Special Save global action. 




<skuidpage unsavedchangeswarning="yes" personalizationmode="server" showsidebar="false" useviewportmeta="true" showheader="false">    <models>
        <model id="Account" limit="20" query="true" createrowifnonefound="false" datasource="salesforce" type="" sobject="Account">
            <fields>
                <field id="Id"/>
                <field id="Name"/>
                <field id="ReceivesTestFromBranch" uionly="true" displaytype="TEXT" label="ReceivesTestFromBranch"/>
                <field id="ReceivesTestFromNoBranchEverytime" uionly="true" displaytype="TEXT" label="ReceivesTestFromNoBranchEverytime"/>
            </fields>
            <conditions/>
            <actions/>
        </model>
        <model id="Contacts" limit="20" query="true" createrowifnonefound="false" datasource="salesforce" type="" sobject="Contact">
            <fields>
                <field id="AccountId"/>
                <field id="Account.Name"/>
                <field id="Name"/>
                <field id="Test" uionly="true" displaytype="TEXT" label="Test" defaultvaluetype="fieldvalue"/>
                <field id="LastName"/>
            </fields>
            <conditions/>
            <actions/>
        </model>
    </models>
    <components>
        <skootable showconditions="true" showsavecancel="true" showerrorsinline="true" searchmethod="server" searchbox="true" showexportbuttons="false" pagesize="10" alwaysresetpagination="false" createrecords="true" buttonposition="" mode="read" allowcolumnreordering="true" responsive="true" uniqueid="sk-_orWS-83" model="Account">
            <fields>
                <field id="Name" hideable="true" uniqueid="fi-_pyLC-173"/>
                <field id="ReceivesTestFromBranch" hideable="true" uniqueid="fi-_t6BS-508" valuehalign="" type="">
                    <label>
Receives Test From Branch</label>
                </field>
                <field id="ReceivesTestFromNoBranchEverytime" hideable="true" uniqueid="fi-_t6BT-509" valuehalign="" type="">
                    <label>
Receives Test From No Branch Everytime</label>
                </field>
            </fields>
            <rowactions>
                <action type="edit"/>
                <action type="delete"/>
                <action type="drawer" label="Contact Drawer" icon="sk-icon-activities">
                    <drawer title="Drawer Area" width="90%" closehandle="true">
                        <components>
                            <skootable showconditions="true" showsavecancel="true" showerrorsinline="true" searchmethod="server" searchbox="true" showexportbuttons="false" pagesize="10" alwaysresetpagination="false" createrecords="true" model="Contacts" buttonposition="" mode="read" allowcolumnreordering="true" responsive="true" uniqueid="sk-_q4kR-209">
                                <fields>
                                    <field id="LastName" hideable="true" uniqueid="fi-_qqhL-301" valuehalign="" type=""/>
                                    <field id="Test" hideable="true" uniqueid="fi-_q9Ki-233" valuehalign="" type=""/>
                                </fields>
                                <rowactions>
                                    <action type="edit"/>
                                    <action type="delete"/>
                                </rowactions>
                                <massactions usefirstitemasdefault="true"/>
                                <views>
                                    <view type="standard"/>
                                </views>
                                <conditions>
                                    <condition type="contextrow" field="AccountId" mergefield="Id" operator="=" fieldtargetobjects="Account"/>
                                </conditions>
                                <actions defaultlabel="Global Actions" defaulticon="sk-icon-magic" usefirstitemasdefault="true">
                                    <action type="multi" label="Special Save" icon="sk-icon-magic">
                                        <actions>
                                            <action type="branch">
                                                <iftrueactions>
                                                    <action type="updateRow" fieldmodel="Account" affectedrows="context" field="ReceivesTestFromBranch" enclosevalueinquotes="true" value="Updated with Branch Logic"/>
                                                </iftrueactions>
                                            </action>
                                            <action type="updateRow" fieldmodel="Account" affectedrows="context" field="ReceivesTestFromNoBranchEverytime" enclosevalueinquotes="true" value="Updated without Branch 222"/>
                                            <action type="save">
                                                <models>
                                                    <model>Account</model>
                                                    <model>Contacts</model>
                                                </models>
                                            </action>
                                        </actions>
                                        <hotkeys/>
                                    </action>
                                </actions>
                                <searchfields/>
                                <renderconditions logictype="and"/>
                            </skootable>
                        </components>
                        <beforeload/>
                    </drawer>
                </action>
            </rowactions>
            <massactions usefirstitemasdefault="true">
                <action type="massupdate"/>
                <action type="massdelete"/>
            </massactions>
            <views>
                <view type="standard"/>
            </views>
        </skootable>
    </components>
    <resources>
        <labels/>
        <javascript/>
        <css/>
    </resources>
    <styles>
        <styleitem type="background" bgtype="none"/>
    </styles>
</skuidpage>
Photo of Ann Kukich

Ann Kukich

  • 1,316 Points 1k badge 2x thumb
This works great.  Thanks Stephen