• Jennifer W. Lee
  • NEWBIE
  • 225 Points
  • Member since 2014
  • Salesforce Business Consultant
  • John Hancock


  • Chatter
    Feed
  • 3
    Best Answers
  • 1
    Likes Received
  • 2
    Likes Given
  • 10
    Questions
  • 43
    Replies
Hello,

In the Admin Advanced --> Advanced Formulas --> Using Picklists in Formulas module, the challenge requirment is as follows:

"Create a validation rule formula that does not allow a user to mark a case as escalated unless the priority is set to 'High', the case was not Closed when Created, and the case isn’t closed."

I am setting up a valid formula (did a bunch of tests on Case object so I'm sure it is valid and I'm not going to post it here to let this remain as a challenge). I am using four fields, which are IsClosed, IsClosedOnCreate, Priority and Status, as understood from the challenge description.

However, checking the challenge gives me this error. Apparently, despite the description, we gotta use IsEscalated field instead of IsClosed:
User-added image

After I change IsClosed field with IsEscalated in the formula, I get this error:
User-added image

I am reproducing this scenario in a Case record and validation rule triggers.

Did anyone manage to pass this challenge? If not, could the Trailhead Dev Team have a look at wording of this challenge please? 

Thanks in advance.



 
Working on TrailHead Challenge... (https://developer.salesforce.com/trailhead/force_com_introduction/data_security/data_security_sharing_rules)

Tasks completed:
The custom object must be named 'Project' with a resulting API name of 'Project__c'.   Done
The Name field for 'Project' must be of type Text (not Auto-Number).  Done
The custom object 'Project' must have a custom field of type picklist named 'Priority' with a resulting API name of 'Priority__c'. Done
The role label should be 'Training Coordinator' with the resulting 'Role Name' of 'Training_Coordinator'. Note that you may already have this role in your role hierarchy from a previously attempted challenge.   Done
Set the organization wide settings to public read only.    Done

Here is where I think is the problem:
The sharing rule can be named anything.  
 
Create sharing rule under "Sharing Settings" under Project Sharing Rules..  Create a criteria based project sharing rule with Priority custom field equal to High.  Shared with role "Training Coordinator" as read-only access.


What am I missing?
Stuck with this task. Tried many ways to do in Process Builder (checked if AccountId not null, checked if account street, city, country, state not null, checked if these fields were changed etc), but always have mistake:

Challenge not yet complete... here's what's wrong: 
There was an unexpected error in your org which is preventing this assessment check from completing: System.DmlException: Insert failed. First exception on row 0; first error: CANNOT_EXECUTE_FLOW_TRIGGER, The record couldn’t be saved because it failed to trigger a flow. 
A flow trigger failed to execute the flow with version ID 30124000000L3C5. 
Contact your administrator for help.: []

On mail i get:
caused by element : FlowDecision.myDecision
caused by: The flow failed to access the value for myVariable_current.Account.ShippingCountry because it hasn't been set or assigned.

Any ideas, how to pass this task?
Thanks
  • March 09, 2015
  • Like
  • 0
I am a salesforce admin, non-developer. I'm putting together a very simple request form using Site.com for our users to submit a request into our team. I'd would like to perform simple validation rules (make a text field required where the field can't be indicated as required in Salesforce) and I would have liked to be able to do dependent/controlling picklist, like we can in Salesforce. I heard that in order to achieve this, I would need to add javascript.

Can someone provide me with javascript code and teach me where to make changes? I'm more of a copy and paste code gal than one who codes from scratch. Why make from scratch when I can just modify? LOL.

Any help a developer can provide would be greatly appreciated.

Thank you,
Jen 
I am working on the Trailhead Mobile SDK trail - Getting Started with Hybrid Development. In Eclipse, the SalesforceSDK project has 15 errors and I'm not sure how to resolve them so I can run the Android to complete the challenge.

User-added image

I do not have any errors on the TrailheadHybridTest project.

I am not a developer so please be detailed in any troubleshooting steps please. 

Thank you
When I run the command cordova build, I am getting an error. I added the versions to the manifest.xml file but that didn't see to have done anything. Can someone assist?

Microsoft Windows [Version 6.3.9600] (c) 2013 Microsoft Corporation. All rights reserved.

C:\Windows\System32>CD c:\users\jenwlee\AndroidApps\TrailheadHybridTest

c:\Users\jenwlee\AndroidApps\TrailheadHybridTest>cordova prepare

c:\Users\jenwlee\AndroidApps\TrailheadHybridTest>cordova build Running command: cmd "/s /c "c:\Users\jenwlee\AndroidApps\TrailheadHybridTest\pl atforms\android\cordova\build.bat"" ANDROID_HOME=C:\Users\jenwlee\AppData\Local\Android\sdk JAVA_HOME=C:\Program Files\Java\jdk8 Running: c:\Users\jenwlee\AndroidApps\TrailheadHybridTest\platforms\android\grad lew cdvBuildDebug -b c:\Users\jenwlee\AndroidApps\TrailheadHybridTest\platforms\ android\build.gradle -Dorg.gradle.daemon=true :preBuild :compileDebugNdk UP-TO-DATE :preDebugBuild :checkDebugManifest :CordovaLib:compileLint :CordovaLib:copyDebugLint UP-TO-DATE :CordovaLib:mergeDebugProguardFiles UP-TO-DATE :CordovaLib:preBuild :CordovaLib:preDebugBuild :CordovaLib:checkDebugManifest :CordovaLib:prepareDebugDependencies :CordovaLib:compileDebugAidl UP-TO-DATE :CordovaLib:compileDebugRenderscript UP-TO-DATE :CordovaLib:generateDebugBuildConfig UP-TO-DATE :CordovaLib:generateDebugAssets UP-TO-DATE :CordovaLib:mergeDebugAssets UP-TO-DATE :CordovaLib:generateDebugResValues UP-TO-DATE :CordovaLib:generateDebugResources UP-TO-DATE :CordovaLib:packageDebugResources UP-TO-DATE :CordovaLib:processDebugManifest UP-TO-DATE :CordovaLib:processDebugResources UP-TO-DATE :CordovaLib:generateDebugSources UP-TO-DATE :CordovaLib:compileDebugJava UP-TO-DATE :CordovaLib:processDebugJavaRes UP-TO-DATE :CordovaLib:packageDebugJar UP-TO-DATE :CordovaLib:compileDebugNdk UP-TO-DATE :CordovaLib:packageDebugJniLibs UP-TO-DATE :CordovaLib:packageDebugLocalJar UP-TO-DATE :CordovaLib:packageDebugRenderscript UP-TO-DATE :CordovaLib:bundleDebug UP-TO-DATE :prepareAndroidCordovaLibUnspecifiedDebugLibrary UP-TO-DATE :prepareDebugDependencies :compileDebugAidl UP-TO-DATE :compileDebugRenderscript UP-TO-DATE :generateDebugBuildConfig UP-TO-DATE :generateDebugAssets UP-TO-DATE :mergeDebugAssets UP-TO-DATE :generateDebugResValues UP-TO-DATE :generateDebugResources UP-TO-DATE :mergeDebugResources UP-TO-DATE :processDebugManifest C:\Users\jenwlee\AndroidApps\TrailheadHybridTest\platforms\android\AndroidManife st.xml:25:9 Error: Element activity#com.plugin.gcm.PushHandlerActivity at AndroidManifest.x ml:25:9 duplicated with element declared at AndroidManifest.xml:10:9 C:\Users\jenwlee\AndroidApps\TrailheadHybridTest\platforms\android\AndroidManife st.xml:0:0 Error: Validation failed, exiting :processDebugManifest FAILED

FAILURE: Build failed with an exception.

What went wrong: Execution failed for task ':processDebugManifest'.

Manifest merger failed with multiple errors, see logs

Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 16.419 secs

c:\Users\jenwlee\AndroidApps\TrailheadHybridTest\platforms\android\cordova\node_ modules\q\q.js:126 throw e; ^ Error code 1 for command: cmd with args: /s /c "c:\Users\jenwlee\AndroidApps\Tra ilheadHybridTest\platforms\android\gradlew cdvBuildDebug -b c:\Users\jenwlee\And roidApps\TrailheadHybridTest\platforms\android\build.gradle -Dorg.gradle.daemon= true" ERROR building one of the platforms: Error: cmd: Command failed with exit code 1

You may not have the required environment or OS to build this project Error: cmd: Command failed with exit code 1 at ChildProcess.whenDone (C:\Users\jenwlee\AppData\Roaming\npm\node_modules\ cordova\node_modules\cordova-lib\src\cordova\superspawn.js:134:23) at ChildProcess.emit (events.js:110:17) at maybeClose (child_process.js:1015:16) at Process.ChildProcess._handle.onexit (child_process.js:1087:5)

c:\Users\jenwlee\AndroidApps\TrailheadHybridTest>
I followed all the instructions on the Getting Started with Hybrid Development module (https://developer.salesforce.com/trailhead/mobile_sdk_intro/mobile_sdk_hybrid/mobilesdk_hybrid_getting_started)

When I put in the command - "cordova emulate android", when it tried to run the app, I got an error "net::ERR_FILE_NOT_FOUND (file:///android_asset/www/index.html)

Any thoughts?
 
I just completed the latest Trailhead module Application Lifecycle Management and iit ssays I have 18 badges but when I go to my profile page, it only shows 17. This hasn't happened previously. Is there some known bug?Passed moduleProfile only shows 17 badges
I am having issues saving the following Lightning component as part of the Using Apex in Components:

-Given an existing Apex class that can be found here, create a component that displays the case's subject, description and status.The component must be named 'DisplayCase'.
-The component must refer to the 'DisplayCaseController' Apex class. Copy and paste that class into your Developer Edition using the Developer Console.
-The component must have an attribute named 'record' to hold the Case record.
-The component must display the Subject, Description, and Status values of the 'record' attribute.
-The client-side controller for the component must bind to the 'getCaseFromId' method of the Apex controller to fetch the value of a Case record.
-Note that while the Apex class accepts a null and returns a default case, there are various ways to hand the ID to the controller.



FIELD_INTEGRITY_EXCEPTION
Failed to save undefined: No ATTRIBUTE named label found: Source

Component:
<aura:component Controller="DisplayCaseController">
    <aura:attribute name="record" type="Case[]"/>
    <ui:button label="Get Cases" press="{!c.getCaseFromId}"/>
    <ui:outputText Label="Case Subject:" value="{!case.Subject}"/><br/>
    <ui:outputText Label="Case Description:" value="{!case.Description}"/><br/>
    <ui:outputText Label="Case Status:" value="{!case.Status}"/><br/>
</aura:component>

I'm not sure what the issue is. Help...

Controller:
({
    getCaseFromId: function(component){
        var action = component.get("c.getCases");
        action.setCallback(this, function(a){
        	component.set("v.record", a.getReturnValue());
        });
	 $A.enqueueAction(action);
    }
})

 
I'm not a developer so I'm really trying to work through this challenge and can't figure this out.

I am getting the following error: The client side controller does not have a 'calculate' method when trying to figure out the Using Javascript with Components Lightning Trailhead module.

Here is the challenge:

Your company needs an interface that shows a calculation based on three inputs. The correct value must be the addition of the first two inputs and subtraction of the third. Create a form and client side controller to calculate the total.The component must be named 'CalculateTotal'.

-The component should have three aura:inputNumber components with ID's 'inputOne', 'inputTwo', and 'inputThree'.
-The total must be displayed using a aura:outputNumber component with the ID 'totalValue'
-The client-side controller must do the calculation in a method named 'calculate'.
-The client-side controller can use the standard JavaScript function parseInt to enforce the data type.
-The component must invoke the 'calculate' method on the client-side controller to perform the calculation.

Here is my component:
<aura:component >
<form>
    <fieldset>
    Enter three values:<br/>
    <ui:inputNumber aura:Id="inputOne" value="{!v.inputOne}"/><br/>
    <ui:inputNumber aura:Id="inputTwo" value="{!v.inputTwo}"/><br/>
    <ui:inputNumber aura:Id="inputThree" value="{!v.inputThree}"/><br/>
    <ui:button label="Submit" press="{!c.calculate}"/><br/>
    <ui:outputNumber aura:id="totalValue" value="{!v.totalValue}"/><br/>
    </fieldset>
</form>
</aura:component>

Here is my controller: 
({

    calculate: function(component, item, callback) {
        component.find("inputOne").get("v.inputOne");
        component.find("inputTwo").get("v.inputTwo");
        component.find("inputThree").get("v.inputThree");
        var action = component.get("c.calculateTotal");
        var this.totalValue = InputOne + InputTwo -InputThree;
        
        InputOne = parseInt({!v.InputOne});
        InputTwo = parseInt({!v.InputTwo});
        InputThree = parseInt({!v.InputThree});

        action.setCallback(this,function(a) {
            component.set("v.totalValue",a.getReturnValue());
        });
        $A.enqueueAction(action);
    },
})
}


 
I am not a developer by any means but I want to complete these Trailhead modules by using code examples and then making modifications to them to complete the exercises. However, the Lightning module isn't really non-programmer friendly in this regard and should do more to step a non-developer through the examples by doing it in the devloper org and then having the challenge based on the examples provided, with some tweaks. But I'm struggling with finding examples of how to make a calculation in a controller and have javascript perform a data type check - the example in the module covers data validation for one field, but I don't know how to handle this for multiple or what a parseInt is. Are there examples of these things that someone can point me to so I can try to figure this out? I tried doing a google search with not much luck.
I completed 11 Trailhead modules on 12/31 and 2 more on 2/6. However, I didn't get any emails about a free Traiihead tshirt. I posted my completed badges on my Twitter account too - jenwlee. Any reason why I didn't receive an email about the free Tshirt?
Is anyone else running into an issue with the change management challenge? I answered the question regarding what can happen to a workflow that is not tested before deployed to Production and I selected the answer that it can cause an infinite loop like the module text lists. However, when I submit the challenge, it keeps highlighting that as an incorrect question. I know it's right. What gives?
I'm not a developer so I'm really trying to work through this challenge and can't figure this out.

I am getting the following error: The client side controller does not have a 'calculate' method when trying to figure out the Using Javascript with Components Lightning Trailhead module.

Here is the challenge:

Your company needs an interface that shows a calculation based on three inputs. The correct value must be the addition of the first two inputs and subtraction of the third. Create a form and client side controller to calculate the total.The component must be named 'CalculateTotal'.

-The component should have three aura:inputNumber components with ID's 'inputOne', 'inputTwo', and 'inputThree'.
-The total must be displayed using a aura:outputNumber component with the ID 'totalValue'
-The client-side controller must do the calculation in a method named 'calculate'.
-The client-side controller can use the standard JavaScript function parseInt to enforce the data type.
-The component must invoke the 'calculate' method on the client-side controller to perform the calculation.

Here is my component:
<aura:component >
<form>
    <fieldset>
    Enter three values:<br/>
    <ui:inputNumber aura:Id="inputOne" value="{!v.inputOne}"/><br/>
    <ui:inputNumber aura:Id="inputTwo" value="{!v.inputTwo}"/><br/>
    <ui:inputNumber aura:Id="inputThree" value="{!v.inputThree}"/><br/>
    <ui:button label="Submit" press="{!c.calculate}"/><br/>
    <ui:outputNumber aura:id="totalValue" value="{!v.totalValue}"/><br/>
    </fieldset>
</form>
</aura:component>

Here is my controller: 
({

    calculate: function(component, item, callback) {
        component.find("inputOne").get("v.inputOne");
        component.find("inputTwo").get("v.inputTwo");
        component.find("inputThree").get("v.inputThree");
        var action = component.get("c.calculateTotal");
        var this.totalValue = InputOne + InputTwo -InputThree;
        
        InputOne = parseInt({!v.InputOne});
        InputTwo = parseInt({!v.InputTwo});
        InputThree = parseInt({!v.InputThree});

        action.setCallback(this,function(a) {
            component.set("v.totalValue",a.getReturnValue());
        });
        $A.enqueueAction(action);
    },
})
}


 
Hi,

I got following error on step 3.

Challenge Not yet complete... here's what's wrong: 
Couldn’t find Agency records from the Account object.

Can anyone pass this step?
Thanks in advance.

Regards,
LinThaw
Hi Friends,
I'm finishing up the Apex Basics Badge (yay!) and want to follow the recommended syntax. There's another answer posted on here that passes the challenge but uses syntax that is different than what is taught in the documentation. I really want to understand where I'm going wrong as I think I'm pretty close. Thanks for your feedback!
Here's my code:

public class ContactAndLeadSearch {

    public static void List<List<sObject>> searchContactsAndLeads = [FIND 'Smith' IN NAME FIELDS RETURNING
                                                 Lead (FirstName,LastName),Contact(FirstName,LastName)];
    
    Lead[] searchLeads = (Lead[])searchList[0];
    Contact[] searchContacts = (Contact[])searchList[1];
 
    System.debug('Found the following Lead.');
    for (Lead l : searchLeads) {
        System.debug(l.FirstName);
    }
    System.debug('Found the following contacts.');
    for (Contact c : searchContacts) {
        System.debug(c.LastName + ', ' + c.FirstName);
    }
    
}

Here's the challenge:
Create an Apex class that returns both contacts and leads based on a parameter.
With SOSL you can search against different object types that may have similar data, such as contacts and leads. To pass this challenge, create an Apex class that returns both contacts and leads that have first or last name matching the incoming parameter.
  • The Apex class must be called 'ContactAndLeadSearch' and be in the public scope.
  • The Apex class must have a public static method called 'searchContactsAndLeads'.
  • Because SOSL indexes data for searching, you must create a Contact record and Lead record before checking this challenge. Both records must have the last name 'Smith'. The challenge uses these records for the SOSL search.
  • The return type for 'searchContactsAndLeads' must be 'List<List< SObject>>'
  • The 'searchContactsAndLeads' method must accept an incoming string as a parameter, find any contact or lead that matches the string as part of either the first or last name and then return those records.
My current error message is: unexpected token: 'List' in line 3.
My questions: I'm not sure how to best invoke the public static method and still have the return type 'List..' Thanks for your help!
 
Has anyone completed this trail? I am stomped on challenge number 3, regarding created the process for fulfillment. Any pointers or guidance would be appreciated.
 
I am using a record detail custom button to refer to a Visualforce page which in turn launches a Flow. That Flow then creates a new record. I would like my Finishlocation to be that newly created record. As it is now, I am only able to make the Finishlocation an already created record (such as the record I was in when I pushed the button ; or some other record which is a lookup field on that record).

I am referring to a variable which has the newly created record's ID.

Here is the Visualforce page which the custom button refers to :
 
<apex:page StandardController="Vendor_Product__c" Extensions="New_ProductReview_With_Flow_Controller2">
<flow:interview interview="{!myflow}" name="New_Product_Review" finishlocation="{!finishlocation}"> 
<apex:param name="VarVendProdRecID" value="{!Vendor_Product__c.Id}"/>
<apex:param name="VarVendProfileID" value="{!Vendor_Product__c.Vendor__r.Id}"/>
</flow:interview>
</apex:page>

Here is the controller : 
 
public class New_ProductReview_With_Flow_Controller2 {
     public Id recordId {get;set;}
    public flow.interview.New_Product_Review myflow {get;set;}

    public New_ProductReview_With_Flow_Controller2(ApexPages.StandardController stdController) {
        recordId = ApexPages.currentPage().getParameters().get('recordId');
    } 

    public String getendID() {        
        if (myflow !=null) return myflow.VarNewReviewRecID;
        else return 'home/home.jsp';
    }       

    public PageReference getFinishLocation() {        
        PageReference endlocation = new PageReference('/' + getendID());


        system.debug('VarNewReviewRecIDxxxx '+getendID()); 
        return endlocation;
    }
}

VARNewReviewRecID is a null value in the above debug for some reason, even though it is the Variable populated with the Create Record element in the Flow and I can see it is populated when I look at the debug logs. It is an input/output variable so I would think I could refer to it from Apex.

Any ideas ?
 
  • January 14, 2016
  • Like
  • 1
Environment : Windows 8.1 , Java 7  , Eclipse June , Android Studio 1.2

1. Template project compiles and installs but crashes on launch with stack trace.

E/AndroidRuntime( 6604): FATAL EXCEPTION: main
E/AndroidRuntime( 6604): Process: com.test.hybrid, PID: 6604
E/AndroidRuntime( 6604): java.lang.RuntimeException: Unable to instantiate application com.salesforce.androidsdk.smartsync.app.HybridAppWithSmartSync: java.lang.ClassNotFoundException: Didn't find cla
ss "com.salesforce.androidsdk.smartsync.app.HybridAppWithSmartSync" on path: DexPathList[[zip file "/data/app/com.test.hybrid-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
E/AndroidRuntime( 6604):        at android.app.LoadedApk.makeApplication(LoadedApk.java:563)
E/AndroidRuntime( 6604):        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4526)
E/AndroidRuntime( 6604):        at android.app.ActivityThread.access$1500(ActivityThread.java:151)
E/AndroidRuntime( 6604):        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364)
E/AndroidRuntime( 6604):        at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime( 6604):        at android.os.Looper.loop(Looper.java:135)
E/AndroidRuntime( 6604):        at android.app.ActivityThread.main(ActivityThread.java:5254)
E/AndroidRuntime( 6604):        at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime( 6604):        at java.lang.reflect.Method.invoke(Method.java:372)
E/AndroidRuntime( 6604):        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
E/AndroidRuntime( 6604):        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
E/AndroidRuntime( 6604): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.salesforce.androidsdk.smartsync.app.HybridAppWithSmartSync" on path: DexPathList[[zip file "/data/app/com.t
est.hybrid-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
E/AndroidRuntime( 6604):        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
E/AndroidRuntime( 6604):        at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
E/AndroidRuntime( 6604):        at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
E/AndroidRuntime( 6604):        at android.app.Instrumentation.newApplication(Instrumentation.java:980)
E/AndroidRuntime( 6604):        at android.app.LoadedApk.makeApplication(LoadedApk.java:558)
E/AndroidRuntime( 6604):        ... 10 more
E/AndroidRuntime( 6604):        Suppressed: java.lang.ClassNotFoundException: com.salesforce.androidsdk.smartsync.app.HybridAppWithSmartSync
E/AndroidRuntime( 6604):                at java.lang.Class.classForName(Native Method)
E/AndroidRuntime( 6604):                at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
E/AndroidRuntime( 6604):                at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
E/AndroidRuntime( 6604):                at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
E/AndroidRuntime( 6604):                ... 13 more
E/AndroidRuntime( 6604):        Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
W/ActivityManager(  746):   Force finishing activity 1 com.test.hybrid/com.salesforce.androidsdk.ui.sfhybrid.SalesforceDroidGapActivity

2. Project on imported to eclipse follwing the command after template creation:
a. The cordova project is not detected as a project/lib.
b. Created other peoject and added source from cordova and added the dependency , still doesnt work.

3. Android studio , imported the project and marked the android as main project.
No launch target detected , says not gradle backed.

Help.