+ Start a Discussion
Kim Foster 4Kim Foster 4 
I am experiencing an installation error on step#2 of the 'Install the package version in an org' section of the 'build your first unlocked package' modeule. Up to this point I have completed all steps successfully.
  1. I loged into my TP as instructed: sfdx force:auth:web:login -a MyTP
  2. then I closed the browser
  3. when I enter this command: sfdx force:package:install -i 04tf40000034hKaAAI -u MyTP -w 10 -p 10
I get the following error. Can you help me figure out why I get this error and how to fix it so I can complete this challenge?

ERROR:  Encountered errors installing the package!,Installation errors:
1) (Advertise_New_Property-2) Invalid field name Owner:User for object Property__c, Details: Advertise_New_Property-2: Invalid field name Owner:User for object Property__c
2) Permission Create Property__c depends on permission(s): Read Castle__c, Details: dreamhouse: Permission Create Property__c depends on permission(s): Read Castle__c
ERROR:  Installation errors:
1) (Advertise_New_Property-2) Invalid field name Owner:User for object Property__c, Details: Advertise_New_Property-2: Invalid field name Owner:User for object Property__c
2) Permission Create Property__c depends on permission(s): Read Castle__c, Details: dreamhouse: Permission Create Property__c depends on permission(s): Read Castle__c
 
Lucas PLISSONNIERLucas PLISSONNIER 
Hi,

I'm facing difficulties making the second part of the Quickstart Heroku Connect work.

When I create the mapping in Heroku, in the Database -> Salesforce tab, I tick the "Write database updates to Salesforce using -- None -- as the unique identifier", but no field show up in the list.

I'm working in a french company, so in the Mapped fields some of them appear in english, others in french. I need to map the field "Phone" in the tutorial, which doesn't exist or has been translated in the fields I see. I only have MobilePhone, Telephone_Perso__c, Telephone_Pro__c, but no Phone field.

So when I try to use the Phone Changer app, I get the following error --column "phone" of relation "contact" does not exist--. 

Thank you for help
Brenda BucknerBrenda Buckner 
I'm trying to complete a badge in Trailhead regarding Lightning apps, and it wants me to install the enhanced Warehouse app in my playground. However when installing--even in incognito mode in another browser and not logged into my production org at all on any browsers--it ALWAYS installs in production and NOT in playground. How can I install in my playground?
Best Answer chosen by Brenda Buckner
RakeshRakesh (Salesforce Developers) 
Hi Brenda Buckner,

Sorry for the issue you encountered.

First, you need to set the password to the playground. To set the password, please go through the below link.
https://force.desk.com/customer/en/portal/articles/2659738-find-the-username-and-password-for-your-trailhead-playground?b_id=13478
Then, install the warehouse app using the same playground credentials.

Please mark it as solved if this reply was helpful.

Thanks,
Rakesh
Heidi LynchHeidi Lynch 
Hi, I have a team member who has completed in excess of 260 trailhead badges, please can you let me know how I can get her recognised as a Trailblazer? Many thanks
Amit ShrivastavaAmit Shrivastava 
Hi

While attempting this challenge, I am not able to pass it after verifying this challenge, based on the challenge details I have to write following pice of code which is totally correct, but still, it gave me an error to check code.
 
public class AccountHandler {
    
    public static Account insertNewAccount(string acctName){
      Account acct = null;
        try {
             acct = new Account(Name=acctName);
            insert acct;
            return acct;
        }
        catch (DmlException e) {
            System.debug('A DML exception has occurred: ' +
                e.getMessage());
        }
         return acct;
    }
}
but after correcting this error, I need to write following code to pass this challenge
public class AccountHandler {
    
    public static Account insertNewAccount(string acctName){
      
        try {
             Account acct = new Account(Name=acctName);
            insert acct;
            return acct;
        }
        catch (DmlException e) {
             return null;
        }
    }
}
Can anyone let me know what wrong with the first code snippet, is it due to the System.Debug statement in the catch block? or is it completely checking the return type in a catch block? 
 
David Brenner 17David Brenner 17 
It would be great if more guidance was given in the Trailhead module for this:

Running this under OSX 10.13.4, when doing the first Module ("Get Set Up with GitHub and Travis Continuous Integration"), I was stopped at the "Install the Travis CI Client" step with the error, "You don't have write permissions for the /Library/Ruby/Gems/2.3.0 directory"

You too? See https://stackoverflow.com/questions/34071868/gem-install-git-up-no-longer-working-in-el-capitan/34071869#34071869

You'll have to install Homebrew first, if you haven't done so already: https://brew.sh/ (with thanks to https://stackoverflow.com/questions/20381128/how-to-install-homebrew-on-os-x). 
jagadeep kjagadeep k 
In Advanced Apex Specialist Challenge 2
Challenge Not yet complete... here's what's wrong: Ensure that you call the correct method from orderTrigger.
My Trigger and helper class code I am pasting it here
trigger orderTrigger on Order (after update) {
 
    if(Trigger.new != null){   
            OrderHelper.AfterUpdate(Trigger.new,Trigger.old);       
    }
}
OrderHelper class
public class OrderHelper {
        /**
         * @name AfterUpdate
         * @description
         * @param List<Order> newList
         * @param List<Order> oldList
         * @return void
        **/
        public static void AfterUpdate(List<Order> newList, List<Order> oldList){
            Set<Id> activatedOrderIds = new Set<Id>();
            //Create list of OrderIds
            for ( Integer i=0; i<newList.size(); i++ ){
                if ((newList[i].Status == Constants.ACTIVATED_ORDER_STATUS && newList[i].ActivatedDate != null)
                    && oldList[i].Status == Constants.DRAFT_ORDER_STATUS){
                    activatedOrderIds.add(newList[i].Id);
                }
            }
            RollUpOrderItems(activatedOrderIds);
        }
        /**
         * @name RollUpOrderItems
         * @description Given a set of Activated Order ids, query the child Order Items and related Products to calculate Inventory levels
         * @param Set<Id> activatedOrderIds
         * @return void
        **/
        public static void RollUpOrderItems(Set<Id> activatedOrderIds){
            //ToDo: Declare a Map named "productMap" of Ids to Product2 records
            Map<Id, Product2> productMap = new Map<Id, Product2>();
            Set<Id> productIds = new Set<Id>();
            //ToDo: Loop through a query of OrderItems related to the activatedOrderIds
            List<OrderItem> items = [SELECT Id, Product2Id, Quantity
                                    FROM OrderItem
                                    WHERE OrderId In :activatedOrderIds];
            for(OrderItem oi : items) {
                //ToDo: Populate the map with the Id of the related Product2 as the key and Product2 record as the value
                productIds.add(oi.Product2Id);
            }
            productMap = new Map<Id, Product2>([SELECT Id, Quantity_Ordered__c FROM Product2 WHERE Id IN :productIds]);
            AggregateResult[] groupedResults = [SELECT Product2Id, SUM(Quantity) activatedQuantity
                                                 FROM OrderItem
                                                 WHERE Product2Id In :productMap.keySet() GROUP BY Product2Id];
            for (AggregateResult ar : groupedResults)  {
                productMap.get((String) ar.get('Product2Id')).Quantity_Ordered__c = Integer.valueOf(ar.get('activatedQuantity'));
            }
            //ToDo: Perform an update on the records in the productMap
            if(productMap!=null && productMap.size()>0){
                update productMap.values();
            }
        }
    }
Satria Akbar NugrohoSatria Akbar Nugroho 
Hi,
I'm doing trailhead challenge, and get some error, do you know how to fix this ?
Here's the challenge
Challenge Requirements:
Create a flow:
Name: New Lead
Type: Screen Flow
In the flow, add a screen with these required screen fields.
Last Name
Company Name
In the flow, create a lead record.
Use the screen fields to set the lead’s Last Name and Company.
Store the lead’s ID in a Text variable called leadId.
In the flow, add another screen with a Lightning component screen field.
Name the field Upload_File
Choose the forceContent:fileUpload Lightning component.
Use the leadId variable to set the component's Related Record ID attribute.
Activate the New Lead flow.
Create a new Lightning page:
Type: Home page
Label: Process Automation Home
In Process Automation Home, add a Flow component that references the New Lead flow.
Activate the page and set it as the default Home page.

And i get this error :
Can't find the forceContent:fileUpload Lightning component in the 'New Lead' flow. Make sure the field’s unique name is 'Upload_File'

here's my work, i already change the name of field into "Upload_File" but it can't
User-added image

help me to fix this. thank you
Robin RandbyRobin Randby 
Hi!  I'm a newbie. Just started Trailhead training again. in Accounts and Contacts, Nothing is clickable.  Instructions say :If you don't see the Accounts tab, check the upper right-hand corner and make sure you've selected the Sales app from the app picker. I don't see the accounts tab, or the App Picker. There's no response to anything I try in this trailhead. Pls advise! Thank you, Robin