SalesForce: Звязванне дадзеных карыстацкага поля і ўлік дзейнасці

Я павольна атрымліваю павесіць аддзел продажаў, і я спрабую атрымаць некаторыя поля ўвязкі паміж рахункамі і магчымасцямі і многімі іншымі.

Мой бягучы пытанне з падрабязнай інфармацыяй аб актыўнасці акаўнта. У мяне ёсць набор рахункаў, якія паказваюць дадзеныя і дэталі, звязаныя з ўліковага запісу, такія як:

уладальнік рахункі Імя ўліковага запісу тып вэб-сайт Нумар тэлефона і больш...

У гэтым рахунку мы маем Праўнік дзейнасці, якія даюць інфармацыю аб тэлефонных званках, сустрэчах або лістах, якія спасылаюцца на рахунак. Кожная падзея ў дзейнасці рахункі мае Тып поля, якое альбо: Сустрэча, тэлефон ці электронную пошту.

Тое, што я спрабую зрабіць, гэта стварыць наладжвальныя поле ў межах асноўнага рахунку, які глядзіць на рахунак дзейнасці, і адлюстроўвае дату апошняй сустрэчы, таму з пункту гледжання SUDO кода, было б нешта накшталт:

SELECT DueDate WHERE type=Meeting and DueDate <= TODAY()

Ці нешта ўздоўж гэтых ліній (я ведаю, Thats ў асноўным SQL).

Калі хто-то можа дапамагчы, што б быць бліскучым, асабліва на 5-й вечара, як мой бос сказаў, што ён купіў мне пінту, калі я разабраўся!

Дзякуй усім.

---------- EDIT ---------

Я нешта накшталт гэтага паспрабаваць:

ПРЫКЛАД (ТЭКСТ (Activity.Type), Сустрэча, СЁННЯ - LastActivityDate)

пры стварэнні Custome поля формулы, таму ім спрабуе патрапіць у поле Event пад назвай Type, выканаўшы:

Activity.Type

Гэта не працуе, але гэта здагадка, якое было ўзята з LastActivityDate. Я магу ісці пра гэта ўсе няправільна, так што нічога дапаможа. ура!

---------- EDIT ---------

Гэта выява поля, што я спрабую атрымаць доступ, я не магу знайсці які-небудзь спосаб доступу гэта Тып поле

1
Я не думаю, што ёсць спосаб зрабіць гэта з дапамогай толькі аднаго карыстацкага поля формулы. Вам спатрэбіцца код, у прыватнасці трыгер на аб'екце Event, які запісвае наладжвальнае поле на рахунку (Last_Event_Type__c, напрыклад) кожны раз, калі падзея ўстаўляюцца або абнаўляюцца. З дапамогай гэтага карыстацкага поля, вы маглі б зрабіць формулу параўнання, як вы спрабуеце. Нешта накшталт: CASE (TEXT (Last_Event_Type__c), Канферэнц-зала, СЁННЯ - LastActivityDate)
дададзена аўтар Matt K, крыніца
Last_Event_Type__c павінен быць наладжвальнае поле (тэкст), вам трэба будзе стварыць яго.
дададзена аўтар Matt K, крыніца
Дзякуй за гэта @MatthewKeefe, таму дзе б я паставіў такі код, ці будзе ісці ў наладжвальнае поле формулы ў рахунку або ў выпадку?
дададзена аўтар lukehillonline, крыніца
@MatthewKeefe Я толькі паспрабаваў ваш код і ён не распазнае Last_Event_Type__c або Last_Event_Type сапраўдным. любыя іншыя ідэі?
дададзена аўтар lukehillonline, крыніца
ды падчас маёй гульні да сённяшняга дня я спрабаваў, што і да гэтага часу не шанцавала, я спрабую ўсе віды ў дадзены момант, а пры адсутнасці на ўсё! ха
дададзена аўтар lukehillonline, крыніца

1 адказы

Вы не можаце зрабіць гэта з дапамогай формулы, і вы не можаце рэальна выкарыстоўваць LastActivityDate поле, таму што ён адсочвае ўсе тыпы падзей, а не толькі «Сустрэча».

Адным са спосабаў дасягнення гэтай мэты з'яўляецца стварэнне трыгера пасля ўстаўкі/пасля-абнаўленняў на аб'екце Event, які будзе абнаўляць полі «Last_Meeting_Date__c» на рахунку (вам трэба будзе стварыць гэта поле).

Вось код:

trigger EventUpdateAccountMeetingDate on Event (after insert, after update) {
        Map acctToDate = new Map();
    for(Event e : Trigger.new){
        if(e.Type=='Meeting' && e.AccountId!=null && (!acctToDate.containsKey(e.AccountId) || acctToDate.get(e.AccountId) < e.activityDate)){
                acctToDate.put(e.accountId, e.activityDate);
        }
    } 
    if(acctToDate.size()>0){
        List accts = [select id, Last_Meeting_Date__c from Account where id in :acctToDate.keyset()];
        List acctsToUpdate = new List();
        for(Account a : accts){
            if(a.Last_Meeting_Date__c==null || a.Last_Meeting_Date__c0){
            update acctsToUpdate;
        }
    }
}

Я не спрабаваў разгарнуць яго, так што не ўпэўнены, калі ён будзе прасіць вас, каб павялічыць ахоп кода для гэтага трыгера. Вы, магчыма, прыйдзецца стварыць тэставы клас для яго.

0
дададзена