• Edgar Moran
  • NEWBIE
  • 25 Points
  • Member since 2015
  • Sr. Force.com Developer
  • Cloud Mobile


  • Chatter
    Feed
  • 0
    Best Answers
  • 4
    Likes Received
  • 0
    Likes Given
  • 5
    Questions
  • 15
    Replies
Hi all,

We are working in our sandbox and creating a new custom Button type URL to redirect to a visualforce page I'm getting this error:
User-added image

Here's my button code:
 
window.location = '/apex/FinancialRequest_New'

Even I'm setting the button to use it as  URL '/apex/FinancialRequest_New' , the message is the page no longer exist, so still the same issue.

Thanks in advance.
Hi I just followed all instruction from the Salesforce documentation about how to setup OpenID to login Salesforce with google apps. it seems all is good until I clic on the "Allow" button in the Authorization page. after that I'm getting this screen:

User-added image

Important to mention is I also have my registration handler in my Auth
 
global class GoogleOpenIdRegistrationHandler implements Auth.RegistrationHandler {
    global User createUser(Id portalId, Auth.UserData data){

        System.debug('Auth Data: '+data);
        // If the email scope has been set we will receive the users email address      
        String email = data.email;
        if (email == null) return null;

        // Make sure the email matches our domain
        // TODO: Uncomment and update as necessary
        // if (!email.contains('@yourdomain.com')) return null;


        // Attempt to find a user with the same email address
        User u;
        try {
            u = [Select Id, FirstName, LastName, Email, Username from User Where Username = :email];
        } 
        catch (Exception e){
            return null;
        }

        return u;
    }

    global void updateUser(Id userId, Id portalId, Auth.UserData data){
        // DO Nothing in the update Scenario
    }
}

and the callback URL has been taken after I saved the Auth Provider configuration then updated in google api console.
Do I missing something?
I'm inventing some time looking for the best solution to implement continuos integration with managed packages. I saw some post and videos from Dreamforce with a feature called "Branch Orgs" that was on pilot. I would like to know if there's a way to use this feature, do I need to open a case? anybody knows?
Hi,

I created a managed package in a Developer Org, some code is already there and I would like to know what is the best way to achieve continous integration. For now there's no a sandbox environment we can use for development or a new developer org with the same code as I think will be issues handling the namespace.

Anyone has implemented CI for an ISV package?, what would be the best practice to implement it?

Thanks!
Hi guys, I'm almost finished with the test to get tge Apex Specialist SuperBadge, I attempt to validate the "Test automation logic" but I can't really see what is my error or why is not passing. This is the message I get:

"Challenge Not yet complete... here's what's wrong: 
The 'MaintenanceRequest' trigger does not appear to be handling bulk operations correctly. For the positive use case of inserting and updating more than 200 records, it did not produce the expected outcome."

and here is my code:

Trigger:
 
trigger MaintenanceRequest on Case (after update) {
	
	//List<Case> casesToEvaluate = new List<Case>();
	Map<Id, Case> casesToEvaluate = new Map<Id, Case>();

	if(Trigger.isAfter && Trigger.isUpdate){
		for(Case maintenance:Trigger.new){
			if((maintenance.Type.contains('Repair') || maintenance.Type.contains('Routine Maintenance')) && maintenance.Status == 'Closed'){
				casesToEvaluate.put(maintenance.Id,maintenance);
			}
		}		
	}
	MaintenanceRequestHelper.updateWorkOrders(casesToEvaluate);
}

Here's the class:
 
public class MaintenanceRequestHelper {

	public static void updateWorkOrders(Map<Id, Case>  cases){
		List<Case> maintenance_routineList = new List<Case>();

		List<Product2> listProduct = [select Id, Maintenance_Cycle__c from Product2];  
		Map<Id,decimal> mapProduct = new Map<Id, decimal>();
		
		for (Product2 p : listProduct) {
			if (p != null) {
				if(p.Maintenance_Cycle__c != null){
					mapProduct.put(p.Id, p.Maintenance_Cycle__c);
				}				
			}
		}

		System.debug('### product: '+mapProduct);

		for(Case maintenance:cases.values()){
			Case maintenanceNew = new Case();
			maintenanceNew.Subject = 'Routine Maintenance';
			System.debug('### Second: '+mapProduct.get(maintenance.Equipment__c));
			if (mapProduct.get(maintenance.Equipment__c) != null) {
				
				 maintenanceNew.Date_Due__c = Date.today().addDays(Integer.valueOf(mapProduct.get(maintenance.Equipment__c)));
				     
            }
			maintenanceNew.Vehicle__c = maintenance.Vehicle__c;
			maintenanceNew.Product__c = maintenance.Product__c;
			maintenanceNew.ContactId  = maintenance.ContactId;
			maintenanceNew.AccountId  = maintenance.AccountId;
			maintenanceNew.AssetId    = maintenance.AssetId;
			maintenanceNew.Type 	  = 'Routine Maintenance';
			maintenanceNew.Status 	  = 'New';
			maintenanceNew.Equipment__c = maintenance.Equipment__c;
			maintenanceNew.Date_Reported__c = Date.today();


			maintenance_routineList.add(maintenanceNew);
		}

		insert maintenance_routineList;
	}
}

And my testmethod:
 
@isTest
private class MaintenanceRequestHelperTest {
	
	@isTest static void test_method_one() {

		List<Case> caseList = new List<Case>();
		List<Case> secondList = new List<Case>();

		Account acc = new Account();
		acc.Name = 'test';
		insert acc;

		Contact contact = new Contact();
		contact.FirstName = 'test';
		contact.LastName = 'last';
		contact.Email = 'test@test.com';
		contact.AccountId = acc.Id;
		insert contact;

		Vehicle__c vehicle = new Vehicle__c();
		vehicle.Name = 'car';
		insert vehicle;

		Product2 product = new Product2();
		product.Name = 'test';
		product.isActive = true;
		product.Maintenance_Cycle__c = 2;
		product.Replacement_Part__c = true;
		insert product;

		for(Integer i=1;i<=1000;i++){
			Case maintenanceNew             = new Case();
			maintenanceNew.Subject          = 'Other';
			maintenanceNew.Vehicle__c       = vehicle.Id;
			maintenanceNew.Product__c       = product.Id;
			maintenanceNew.ContactId        = contact.Id;
			maintenanceNew.AccountId        = acc.Id;
			maintenanceNew.Type             = 'Other';
			maintenanceNew.Status           = 'New';
			maintenanceNew.Equipment__c     = product.Id;
			maintenanceNew.Date_Reported__c = Date.today();
			maintenanceNew.Date_Due__c      = Date.today();

			caseList.add(maintenanceNew);	
		}

		insert caseList;
		System.assertEquals(1000,caseList.size());

		for(Case cas:caseList){
			//update information
			cas.Type = 'Repair';
			cas.Status = 'Closed';
			secondList.add(cas);
		}

		update secondList;
		List<Case> createdCases = [Select Id from Case where Type = 'Routine Maintenance'];
		System.assertEquals(1000,createdCases.size());
	
	}	
}

Can someone help me to undestand what I'm missing?.  Thanks in advance.

Edgar,
 
Hi all,

We are working in our sandbox and creating a new custom Button type URL to redirect to a visualforce page I'm getting this error:
User-added image

Here's my button code:
 
window.location = '/apex/FinancialRequest_New'

Even I'm setting the button to use it as  URL '/apex/FinancialRequest_New' , the message is the page no longer exist, so still the same issue.

Thanks in advance.
Hi guys, I'm almost finished with the test to get tge Apex Specialist SuperBadge, I attempt to validate the "Test automation logic" but I can't really see what is my error or why is not passing. This is the message I get:

"Challenge Not yet complete... here's what's wrong: 
The 'MaintenanceRequest' trigger does not appear to be handling bulk operations correctly. For the positive use case of inserting and updating more than 200 records, it did not produce the expected outcome."

and here is my code:

Trigger:
 
trigger MaintenanceRequest on Case (after update) {
	
	//List<Case> casesToEvaluate = new List<Case>();
	Map<Id, Case> casesToEvaluate = new Map<Id, Case>();

	if(Trigger.isAfter && Trigger.isUpdate){
		for(Case maintenance:Trigger.new){
			if((maintenance.Type.contains('Repair') || maintenance.Type.contains('Routine Maintenance')) && maintenance.Status == 'Closed'){
				casesToEvaluate.put(maintenance.Id,maintenance);
			}
		}		
	}
	MaintenanceRequestHelper.updateWorkOrders(casesToEvaluate);
}

Here's the class:
 
public class MaintenanceRequestHelper {

	public static void updateWorkOrders(Map<Id, Case>  cases){
		List<Case> maintenance_routineList = new List<Case>();

		List<Product2> listProduct = [select Id, Maintenance_Cycle__c from Product2];  
		Map<Id,decimal> mapProduct = new Map<Id, decimal>();
		
		for (Product2 p : listProduct) {
			if (p != null) {
				if(p.Maintenance_Cycle__c != null){
					mapProduct.put(p.Id, p.Maintenance_Cycle__c);
				}				
			}
		}

		System.debug('### product: '+mapProduct);

		for(Case maintenance:cases.values()){
			Case maintenanceNew = new Case();
			maintenanceNew.Subject = 'Routine Maintenance';
			System.debug('### Second: '+mapProduct.get(maintenance.Equipment__c));
			if (mapProduct.get(maintenance.Equipment__c) != null) {
				
				 maintenanceNew.Date_Due__c = Date.today().addDays(Integer.valueOf(mapProduct.get(maintenance.Equipment__c)));
				     
            }
			maintenanceNew.Vehicle__c = maintenance.Vehicle__c;
			maintenanceNew.Product__c = maintenance.Product__c;
			maintenanceNew.ContactId  = maintenance.ContactId;
			maintenanceNew.AccountId  = maintenance.AccountId;
			maintenanceNew.AssetId    = maintenance.AssetId;
			maintenanceNew.Type 	  = 'Routine Maintenance';
			maintenanceNew.Status 	  = 'New';
			maintenanceNew.Equipment__c = maintenance.Equipment__c;
			maintenanceNew.Date_Reported__c = Date.today();


			maintenance_routineList.add(maintenanceNew);
		}

		insert maintenance_routineList;
	}
}

And my testmethod:
 
@isTest
private class MaintenanceRequestHelperTest {
	
	@isTest static void test_method_one() {

		List<Case> caseList = new List<Case>();
		List<Case> secondList = new List<Case>();

		Account acc = new Account();
		acc.Name = 'test';
		insert acc;

		Contact contact = new Contact();
		contact.FirstName = 'test';
		contact.LastName = 'last';
		contact.Email = 'test@test.com';
		contact.AccountId = acc.Id;
		insert contact;

		Vehicle__c vehicle = new Vehicle__c();
		vehicle.Name = 'car';
		insert vehicle;

		Product2 product = new Product2();
		product.Name = 'test';
		product.isActive = true;
		product.Maintenance_Cycle__c = 2;
		product.Replacement_Part__c = true;
		insert product;

		for(Integer i=1;i<=1000;i++){
			Case maintenanceNew             = new Case();
			maintenanceNew.Subject          = 'Other';
			maintenanceNew.Vehicle__c       = vehicle.Id;
			maintenanceNew.Product__c       = product.Id;
			maintenanceNew.ContactId        = contact.Id;
			maintenanceNew.AccountId        = acc.Id;
			maintenanceNew.Type             = 'Other';
			maintenanceNew.Status           = 'New';
			maintenanceNew.Equipment__c     = product.Id;
			maintenanceNew.Date_Reported__c = Date.today();
			maintenanceNew.Date_Due__c      = Date.today();

			caseList.add(maintenanceNew);	
		}

		insert caseList;
		System.assertEquals(1000,caseList.size());

		for(Case cas:caseList){
			//update information
			cas.Type = 'Repair';
			cas.Status = 'Closed';
			secondList.add(cas);
		}

		update secondList;
		List<Case> createdCases = [Select Id from Case where Type = 'Routine Maintenance'];
		System.assertEquals(1000,createdCases.size());
	
	}	
}

Can someone help me to undestand what I'm missing?.  Thanks in advance.

Edgar,
 
I'm inventing some time looking for the best solution to implement continuos integration with managed packages. I saw some post and videos from Dreamforce with a feature called "Branch Orgs" that was on pilot. I would like to know if there's a way to use this feature, do I need to open a case? anybody knows?
Hi all! 
I am creating a custom field that will be auto filled based on a formula from another fields pick list value.  I seem to be having issues with my formula and would love to get some help if possible. 

New field name is Est. Downloads Per Episode  wihich will be give he number or a blank value depening ont he pick list value. 

If Flight_Type_Basis__c  is "Episode" or "Episode Maual"  the new field will fill in the number from the field Avg_Downloads_per_Episode__c
but if the pick list value from Flight_Type_Basis__c is "Impression" or "Impression Manual"  the result for the field will be Blank. 

Any help would be greatly appreciated... I have been working on this most of the day. 
I have created a visualforce page to display google satellite view in leads page layout for certain profiles. However, user receives an error that she/he has insufficient privileges - in that spot, where the map should be. Me as the admin, I am able to see the new layout addition once I create a lead via certain profile. Could you please advise me, what could be the issue. Thank you 
  • January 05, 2017
  • Like
  • 0
Yesterday, I was attempting to delete some unneeded objects, and finding that I needed to delete Apex Classes and other things that were using them. I stopped work, planning to pick it up the next day.

Overnight, our environment changed: it became a production environment. Something went live and suddenly I found myself unable to delete Apex Classes.

The problem is that now the environment is broken. We can't even add a new account. The partial deletions I did yesterday are messing us up. Here is the error I get when I try to add a new Account:
Error: Invalid Data. 
Review all error messages below to correct your data.
Apex trigger RollupServiceTest3Trigger caused an unexpected exception, contact your administrator: RollupServiceTest3Trigger: execution of BeforeInsert caused by: line 13, column 45: trigger body is invalid and failed recompilation: Dependent class is invalid and needs recompilation: rollupservice: line 87, column 37: Dependent class is invalid and needs recompilation: rollupsummariesselector: line 62, column 55: Dependent class is invalid and needs recompilation: RollupSummaries: line 30, column 38: Invalid type: fflib_SObjectDomain


This is related to a package called Declarative Lookup Rollup Summary Tool (DLRS), created by AndyInTheCloud and available on github. I have emailed him but I have little hope of a response.

Background information: what I originally did was install the DLRS source code. Then I realized that wasn't the package I needed, and I figured out how to install it and did so. Then I noticed that the source code and actual package installation led to duplicate objects. So I thought I would clean it up by removing the source code objects. And that is what I did yesterday.

At first I thought that what I needed to do was to finish up my job of deleting the unused objects. And so I searched the web and it seemed that using the Force.com IDE in Eclipse was the solution. I don't have access to Eclipse. So I thought I would ask here how to delete Apex Classes from production without Eclipse.

But now I wonder if I shouldn't try to undo yesterday's deletions.

Has anyone had similar experiences? I have completely broken production and I need to fix it.

Thanks.
Hi,

I'm trying to deploy a trigger and a test class, but I got an error:
 
trigger CriarEventoOp_visita_agendada on Opportunity (after insert, after update) {

    
    
List<Event> EventRe = new List<Event>();
        for (Opportunity op : Trigger.new){
        if (op.StageName == 'Visita Agendada' || op.StageName == 'Visita reagendada'){
                EventRe.add (new Event(
                         EndDateTime = op.data_da_visita__c,
                         OwnerId = op.OwnerId,
                         Respons_lvel__c = op.Respons_lvel__c,
                         StartDateTime = op.data_da_visita__c,
                         Subject = 'Visita',
                         Whatid = op.id
                         ));
            }

            }
    insert EventRe;
}
 
@IsTest(SeeAllData=true)
public class CriarEventoOp_visita_agendada_test {
	static testmethod void MyUnitTest(){
        
    Opportunity op = new Opportunity();
        op.Name = 'teste';
        op.StageName = 'Visita Agendada';
        op.CloseDate = date.today();
        
    insert op;

        
        op.OwnerId = 'op.OwnerId';
        op.Respons_lvel__c = 'op.Respons_lvel__c';
    update op;
        
    Event ev = new Event();
        ev.DurationInMinutes = 1;
        
        ev.EndDateTime = op.data_da_visita__c;
        ev.OwnerId = op.OwnerId;
        ev.Respons_lvel__c = op.Respons_lvel__c;
        ev.StartDateTime = op.data_da_visita__c;
        ev.Subject = 'Visita';
        ev.Whatid = op.id;
    insert ev;

    }
}

Error:
System.DmlException: Insert failed. First exception on row 0; first error: CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY, CriarEventoOp_visita_agendada: execution of AfterInsert caused by: System.DmlException: Insert failed. First exception on row 0; first error: REQUIRED_FIELD_MISSING, Campos obrigatórios ausentes: [DurationInMinutes]: [DurationInMinutes] Trigger.CriarEventoOp_visita_agendada: line 19, column 1: [] 
Stack Trace: Class.CriarEventoOp_visita_agendada_test.MyUnitTest: line 10, column 1

"DurationInMinutes" it is not a Opportunity field.
But it is a field in Event.
Why I got this?
HI, 
I asked for Salesforce to enable the enviroments hub for our account, they did. When I look at my profile (system admin), I see the hub settings, enabled my.domain, but it still does not show up in the drop down. We just want to create a gold org so we can submit our package. I am certain I am missing something but I have checked the documents several times and no luck. 

Paul 
I want to know how many standard, custom and vf pages are used im my system
Hi,

We have an app developed on iOS, and our customers will login to that app. the app is integrated with Salesforce. Now I want to send a push notification based on the real time changes to customer records in salesforce.

Steps I followed:
Integrated the mobile app with Salesforce.
Created a connected app, and enabled push notifications.
Saved the devike token in salesforce for each mobile user (non- Salesforce).

Tested the configuration with "Send test notification" option on connected app by providing the device token as recipient, it worked fine.
User-added image


I tried creating a trigged to send notification, here is the sample code:

Messaging.PushNotification msg =new Messaging.PushNotification();
        Map<String, Object> payload =Messaging.PushNotificationPayload.apple('data has been changed', ' ', 0 );
        msg.setPayload(payload);     
        set<string> receipient=new set<string>();
        receipient.add('005g00000057P5v');
        msg.send('appname', receipient);

In the msg.send method we have to provide connected app name and list of user(salesforce).
But, i want to send the push notification to non salesforce users based on their device token which is generated by APNC and its stored in Salesforce.

Is there any other method to send the push notification based on their device token. Please let me know if my question is not clear.

Please provide some ideas or sample code to handle this situation.

Thanks in advance.
Hello,

I have requirement where I would like to call an apex class method which makes a HTTP callout to an external service. What is the best way to achieve this?
The HTTP service would return some data that I would like to update on the record from which the VF page button is clicked, and display alerts like initiated/completed/error.
Also, shall this method be made asynchronous or is it fine to make a synchronous request in such scenarios considering the the callback doesn't take much time.

Please help.
Thanks in advance.
Hi 

I have a requirement . in this i have to insert and update account records . 
If account filed failed to insert then status field value will be IF .
If account field failed to update then status field value will be UF .

After batch apex execute there are records which will be failed to insert and failed to update .
I want to send mail to the owner that these records are failed due to duplicate value .
How to send this mail to owner in the finish method of batch apex .

 

Hi All,

I am working on a requirement where the cases are displayed in table in the following format

Casenumber, created date, last modified date,status, last modified by on a vf page.
I need to display the date according to the timezone of the user/agent who works on it. Currently the dates are displayed in GMT and i need to convert it to EST. 
How can i achieve this?

Thanks ,
Bharath

Hi all,

I have developed a trigger (before insert, before update) on Lead object that calls a method inside a class for sending a list of emails. The trigger is fired when a batch filter and process a big amount of records uploaded through Data Loader. Depending on the number of records inserted on Lead object, email limit is reached (System.LimitException: Too many Email Invocations: 11). 

I have seen in the debug log that the trigger is fired too many times, but it has been written following best practices advices to avoid this kind of issue. It seems to be records are been processed in packages of 200. In fact, when I try to insert more than 400 records the exception is shown (I'm using also some workflow rules that cause the trigger is executed one more time). I have read about it in other forum discussions, but the new API theoretically solved this problem for Bulk triggers. 

Could you give me any advice to solve this problem?

Thanks in advance.
Hi guys, I'm almost finished with the test to get tge Apex Specialist SuperBadge, I attempt to validate the "Test automation logic" but I can't really see what is my error or why is not passing. This is the message I get:

"Challenge Not yet complete... here's what's wrong: 
The 'MaintenanceRequest' trigger does not appear to be handling bulk operations correctly. For the positive use case of inserting and updating more than 200 records, it did not produce the expected outcome."

and here is my code:

Trigger:
 
trigger MaintenanceRequest on Case (after update) {
	
	//List<Case> casesToEvaluate = new List<Case>();
	Map<Id, Case> casesToEvaluate = new Map<Id, Case>();

	if(Trigger.isAfter && Trigger.isUpdate){
		for(Case maintenance:Trigger.new){
			if((maintenance.Type.contains('Repair') || maintenance.Type.contains('Routine Maintenance')) && maintenance.Status == 'Closed'){
				casesToEvaluate.put(maintenance.Id,maintenance);
			}
		}		
	}
	MaintenanceRequestHelper.updateWorkOrders(casesToEvaluate);
}

Here's the class:
 
public class MaintenanceRequestHelper {

	public static void updateWorkOrders(Map<Id, Case>  cases){
		List<Case> maintenance_routineList = new List<Case>();

		List<Product2> listProduct = [select Id, Maintenance_Cycle__c from Product2];  
		Map<Id,decimal> mapProduct = new Map<Id, decimal>();
		
		for (Product2 p : listProduct) {
			if (p != null) {
				if(p.Maintenance_Cycle__c != null){
					mapProduct.put(p.Id, p.Maintenance_Cycle__c);
				}				
			}
		}

		System.debug('### product: '+mapProduct);

		for(Case maintenance:cases.values()){
			Case maintenanceNew = new Case();
			maintenanceNew.Subject = 'Routine Maintenance';
			System.debug('### Second: '+mapProduct.get(maintenance.Equipment__c));
			if (mapProduct.get(maintenance.Equipment__c) != null) {
				
				 maintenanceNew.Date_Due__c = Date.today().addDays(Integer.valueOf(mapProduct.get(maintenance.Equipment__c)));
				     
            }
			maintenanceNew.Vehicle__c = maintenance.Vehicle__c;
			maintenanceNew.Product__c = maintenance.Product__c;
			maintenanceNew.ContactId  = maintenance.ContactId;
			maintenanceNew.AccountId  = maintenance.AccountId;
			maintenanceNew.AssetId    = maintenance.AssetId;
			maintenanceNew.Type 	  = 'Routine Maintenance';
			maintenanceNew.Status 	  = 'New';
			maintenanceNew.Equipment__c = maintenance.Equipment__c;
			maintenanceNew.Date_Reported__c = Date.today();


			maintenance_routineList.add(maintenanceNew);
		}

		insert maintenance_routineList;
	}
}

And my testmethod:
 
@isTest
private class MaintenanceRequestHelperTest {
	
	@isTest static void test_method_one() {

		List<Case> caseList = new List<Case>();
		List<Case> secondList = new List<Case>();

		Account acc = new Account();
		acc.Name = 'test';
		insert acc;

		Contact contact = new Contact();
		contact.FirstName = 'test';
		contact.LastName = 'last';
		contact.Email = 'test@test.com';
		contact.AccountId = acc.Id;
		insert contact;

		Vehicle__c vehicle = new Vehicle__c();
		vehicle.Name = 'car';
		insert vehicle;

		Product2 product = new Product2();
		product.Name = 'test';
		product.isActive = true;
		product.Maintenance_Cycle__c = 2;
		product.Replacement_Part__c = true;
		insert product;

		for(Integer i=1;i<=1000;i++){
			Case maintenanceNew             = new Case();
			maintenanceNew.Subject          = 'Other';
			maintenanceNew.Vehicle__c       = vehicle.Id;
			maintenanceNew.Product__c       = product.Id;
			maintenanceNew.ContactId        = contact.Id;
			maintenanceNew.AccountId        = acc.Id;
			maintenanceNew.Type             = 'Other';
			maintenanceNew.Status           = 'New';
			maintenanceNew.Equipment__c     = product.Id;
			maintenanceNew.Date_Reported__c = Date.today();
			maintenanceNew.Date_Due__c      = Date.today();

			caseList.add(maintenanceNew);	
		}

		insert caseList;
		System.assertEquals(1000,caseList.size());

		for(Case cas:caseList){
			//update information
			cas.Type = 'Repair';
			cas.Status = 'Closed';
			secondList.add(cas);
		}

		update secondList;
		List<Case> createdCases = [Select Id from Case where Type = 'Routine Maintenance'];
		System.assertEquals(1000,createdCases.size());
	
	}	
}

Can someone help me to undestand what I'm missing?.  Thanks in advance.

Edgar,
 

Hii, 

 

I am a newbie. I am looking to do integration between GP and SalesForce. 

 

Can somebody provide me starting inputs on how to go about it.

Any kind of documentation would help.

 

thanks,

Mamta