• cgoss
  • NEWBIE
  • 175 Points
  • Member since 2008

  • Chatter
    Feed
  • 7
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 31
    Questions
  • 85
    Replies

If my managed package contains a trigger on a standard object, will the trigger fire if the currently-running user is not licensed to use my application?

 

If my managed package contains a workflow rule and action on a standard object, will the action fire if the currently-running user is not licensed to use my application?

 

If my managed package contains a button that, as part of configuring my application after it's installed, gets added to the page layout for a standard object, will the button be visible to users who aren't licensed to use my application?

 

In general, what components of my managed package will be visible to or callable by users who aren't licensed to usee my application?

 

Thanks!

Is there any way to find out why the class is failing to load when I go to package an app that needs it?  The class has about 800 lines of code including http callouts and about 80 variables. Could any of this be the reason it is not loading in the package?

 

Thanks!

I understand that Salesforce's runtime will automatically append necessary namespace prefixes to Apex code references to custom sobjects and fields in a managed packaged.

 

Furthermore, I understand that it will not pick up references in Javascript, Dynamic SOQL & VF Pages, or hardcoded PageReferences (so these must be manually updated). 

 

I have however discovered something I don't understand:

 

1. We have a VF page that references a custom extension of the StandardController, as such we use the following work-around to get the standard controller to query all the necessary table columns in our custom object at load time:

 

//Works in Packaging Org
<apex:outputPanel rendered="false">
{!Object__c.ObjectField__c} {!Object__c.ObjectField1__c}
</apex:outputPanel>

 ^ The above code works properly in the packaging org, with a managed package created with a namespace prefix.

However, when it's installed into another org it doesn't work unless we manually prepend the namespace prefix as follows:

//Works in destination org, but not packaging org
<apex:outputPanel rendered="false">
{!NS1__Object__c.NS1__ObjectField__c} {!NS1__Object__c.NS1__ObjectField1__c}
</apex:outputPanel>

The above works in the destination org, but not packaging org.

 

 

Shouldn't my packaging org now be capable of respecting references to NS1__Object__c? 

I'm in the final stages of developing a SalesForce plugin, but I can't figure out how the end user would get to my Apex Page if I don't wrap the page in an Apex Tab.

 

My assumption (possibly incorrect, since I can't find anything that addresses this topic) is that something magical occurs when a plugin is packaged and made available in the AppExchange -- by "magical" I mean that any user who installs my plugin will suddenly "see" a new tab (?) or something (?) after the installation, and they'll be able to click on this thing (whatever it is) to display my Apex Page.

 

Is this actually the case?  Is some sort of "here's the application / plugin you've just installed" tab (or something?), or do I need to add some Apex Tab code to my Apex Page, or do I need to do something else entirely to give the user some sort of clue about how to access the plugin they've just installed?

 

Clues and tips gratefully accepted, URL's to existing SalesForce PDF's (unless you can explicitly provide the relevant quote from said PDF in your reply) not appreciated.  I've downloaded and read dozens of SalesForce PDF's, and done all sorts of Google and other searches of the internet, and I'm not finding an answer to this question.  So any replies consisting of just the comment "read this PDF" will be ignored.

 

Thanks!

 

Jerry H.

 

  • April 26, 2010
  • Like
  • 0

How can I correctly determine the metadata endpoint URL for a given sessionId?

 

I have a program that is launched by a custom link I need to generate a metadata connection using the sessionId.

 

Currently I'm able to accomplish this by

1) guessing which pod (e.g. na1) the users on using the 'referer' header from a visualforce page that launched my app

2) manually constructing the metadata endpoint url from the pod and orgId 

 

The problem I'm running into in this approach is there are a lot of edge cases for what the referer url looks like, e.g. c.na1.visual.force.com or managedPackage.na1.visual.force.com.  Long term this strategy is less than ideal as it breaks whenever the url for visualforce pages changes.

 

Does anyone have any tips on how I can improve on this?

  • September 15, 2009
  • Like
  • 0
According to the documentation here the UserInfo (and global variable) should indicate which theme the user is currently using. This works fine, except that in mobile devices, the theme always indicates SF1 (Theme4t). Even if the user is using a mobile browser (Safari on iPad for instance) and is in the full Salesforce site in classic view. This makes it impossible to treat the SF1 app or lightning vs classic UI differently on any mobile device. I've tested this on iPad, iPhone and Android (Chrome browser).

Is this by design? If so, this should be noted in the documentation.
  • June 21, 2016
  • Like
  • 0

We ran into issues in testing our post install script class that I wanted to share. 

 

My class kicks off a couple batch jobs to do some data migration. These classes have the "with sharing" bit in the class signature, as is the default. It seems that the special "package install user" that runs the install script doesn't have access to packaged fields or objects, as we got errors like this:

caused by: System.QueryException: sObject type 'cx__Relationship_Type__c' is not supported

 This problem seemed to be resolved by removing "with sharing" from the install class, as well as any classes called by the install script, but it's not documented anywhere that you need to do that.

 

Cheers,

Chuck

  • August 08, 2012
  • Like
  • 0

I'm trying to create an automated aggregate data summary tool by using a scheduled apex class in conjunction with a @Reaonly annotated method to get around the governor limit on number of rows queried. There are very specific limits to what can happen within a @Readonly method (no email, no DML, no @Future calls, etc) and there are also additional limitations put on Schedulable execute methods (can't return data, no callouts) so my question is, what good are scheduled @Readonly methods? There's no way to do anything with the data that's returned from the queries. Am I missing something?

 

I get the use of @Readonly in a visualforce context, but I don't see why special consideration wasn't made for schedulable readonly methods.

  • August 01, 2012
  • Like
  • 0

I'd like to add a link to a custom report that's included in our managed package to a visualforce page (also packaged) but I'm hesitant to do so because it just uses a hard-coded ID link. I've seem to recall reading something way back when that report IDs were automatically swapped out upon package installation for object links, but I'm doubtful that will be the case for visualforce pages.


It would be ideal if this idea were delivered:

https://sites.secure.force.com/success/ideaView?id=08730000000bRreAAE

 

Does anyone have any experience linking to packaged reports?

 

Thanks,

Chuck

  • February 16, 2012
  • Like
  • 0

From the API, you can do a getUserInfo() request, and the result contains a property for orgDefaultCurrencyIsoCode. This is the value of the currency for the organization in a single-currency org.

 

Any idea how I can get this value from Apex? The UserInfo system method does not have the same method, and UserInfo.getDefaultCurrency() returns null in a single-currency org.

  • August 04, 2011
  • Like
  • 0

I'm developing some apex code that's dependant on an installed managed package (with namespace "cx"). I'm trying to call a global static method in the package, but am getting an odd error.

 

Here's a simple example:

 

Boolean retval = cx.ContactUtils.wsTest();

 

 

The managed code is this:

 

global with sharing class ContactUtils {
...
    webservice static Boolean wsTest(){
    	return true;
    }
...
}
	

Whenever this compiles, I get this exception:


Save error: Initial term of field expression must be a concrete SObject: String

Any ideas on this? I've tried several different methods from two separate packages, with different method signatures, and all return the same error. I am able to instanciate inner classes from that same class also, so it's not a permissions or access problem.

 

  • November 02, 2010
  • Like
  • 0

We haven't been getting new licenses created in our LMO org since 6/21. We can't seem to find anything that has changed on our end. Has anything been done to cause the LMA to break this week?

 

We're on v2.0.3 of the LMA package.

  • June 23, 2010
  • Like
  • 0

We have a package on the AppExchange that does not support/depend on multi-currency being enabled on the subscriber org. We have a customer who enabled multi-currency in their instance after installing our package. We are now not able to upgrade their installation.

 

I understand that if your package depends on multi-currency fields, the subscriber must have it enabled. Is the reverse also true, that if you do not package the dependancy, you cannot install into orgs with multi-currency enabled? If we enabled it for our dev org, but did not reference the multi-currency fields, would it work in both cases then?

  • June 10, 2010
  • Like
  • 0

We're experiencing an issue that I don't see a good solution to. We have a managed package installed, and only some users have a license to the package. We've overriden the New button for the Campaign object with a VisualForce page from the aforementioned package. This override works grea for users with a license.


The problem is that if an unlicensed user tries to create a new campaign, they get a "License Required" page, and cannot create campaigns.

 

Ideally, the system would just redirect the unlicensed users to the standard create page, equivilant to adding nooverride=1 to the URL.

 

Any ideas?

  • March 16, 2010
  • Like
  • 0

I'm trying to retrieve the button overrides for the Campaign object using the Metadata API (v18), but I'm not getting any override info in the Campaign.object file.

 

This could be a package.xml problem, but I can't find any reference in the MetadataAPI docs or anywhere else that suggests ActionOverrides need to be explicitly named in the retrieve package.xml.

 

If I retrieve a custom packaged object in the same way, I do see all possible override actions. Why is this not working? Is there something I have to do differently with standard objects?

  • March 01, 2010
  • Like
  • 0

I'm trying to make a webservice callout when a new license gets created. I'm calling a @future method (with callouts enabled) from an afterInsert trigger on the sfLma__License__c object.

 

I'm getting an exception saying:

 

Callout loop not allowed

 I can't find any reference to this error in any documentation, and the only discussion board reference is http://community.salesforce.com/sforce/board/message?board.id=apex&thread.id=22563 which is also related to LMA objects (which is why I posted here).

 

Any help would be appreciated!

 

Chuck

 

 

  • January 21, 2010
  • Like
  • 0

Was there a SF patch deployed last night? An s-control that we have embedded in a VF page can no longer seem to call out to "/servlet/servlet.ReportList" as of this morning. The code worked yesterday.

 

The really interesting thing is that if I change the tag from apex:scontrol to apex:iframe, it works perfectly. What's different about these two tags?

 

We're having to create a patch for our customers to fix this issue, so it's very frustrating that this would break out of release cycles.

  • November 13, 2009
  • Like
  • 0

I just pulled a new developer instance (happened to be a Partner Dev org) and was stunned to find out that there's even more example classes in here than before! Apparently, sites is enabled by default, and there are a bunch of Facebook classes (51 classes to be exact). We have our own code to put on here, and want to get rid of these classes, pages, components, etc. Is there an easy way of doing this?

 

I've tried deleting the pages, components, classes, etc through Eclipse, but because of dependencies, I haven't been able to get rid of anything except the s-control.

 

I can see giving this stuff to new regular developer instances, but partners tend to write their own code, and don't need all this extra example crap.

 

Please help!

  • October 27, 2009
  • Like
  • 0

We're thinking seriously about using Hudson (http://hudson-ci.org/) to automatically run our APEX unit tests on a nightly basis and distribute the results if tests failed or coverage drops below a certain percentage.

 

Is there any interest in participating in this project if we make it open source? Since Hudson is open, we'd be inclined to contribute back to the community.

 

Is anyone else doing something like this on some other CI tool like CruiseControl? We currently have a cron-based java solution for it running on a dev box, but we'd really like to take advantage of the trending and build-status tools that hudson provides.

  • October 19, 2009
  • Like
  • 0
I'm trying to create and update some sales processes with the metadata API. Is this possible? I haven't found any references to this functionality in either the WS API or Metadata API.
  • May 27, 2009
  • Like
  • 0

In our managed package, we have several s-controls that are called from buttons to prefill form data on page layouts (both custom and standard fields). During upgrade testing, we recently found out that this was broken as of the Winter09 release, when SF redesigned their packaging structure and eliminated the need for identical IDs on packaged items.

 

We knew that prefilling forms in this way (using the field ID in the URL) was an unsupported/undocumented feature, and that it could break some day, but we were none-the-less surprised. Turns out that it only affects packages (not simple customers) and only shows up on upgrades in our case because the DOT/trialForce process fixes the IDs automagically.

 

We did find a solution, however, that works in all instances, and doesn't require any manual setup or configuration.

 

We wrote a snippet that will, given a URL prefix (/003 for contacts, /006 for acct, etc) fetch the edit page for that type of object and parse through the request, pulling out the label tags. Each field has a <label for="fieldId">Some Field</label> tag which cross-refs the field label to its ID. We then build a map of Label/Ids, which is used to replace the label token place-holders in the custom URLs we are building.

 

The ajax request is only at most 1/2 sec, so there's not much performance impact to doing it in this way.

 

It's true that SF could change their page layout schema in the future, but I'm betting there will always be some mechanism for prefilling forms, as this has been done since the early days of the internet. We can easily tweak our parser to compensate for any changes here.

 

This was the cleanest solution that we came up with, taking into consideration the packaging constraints and wanting to limit API call usage. We wanted to share with the community here, because in talking with some SF folks, a few other partners had similar issues, but didn't find very good (in our opinion) solutions. Feedback is welcome!

  • February 06, 2009
  • Like
  • 0

I have a packaged (managed) visualforce page with references to custom objects and s-controls. The odd thing I'm seeing all of a sudden is that the namespace is hidden in eclipse, but visible in the SF UI.

 

For instance, a link to a custom tab in the web editor for the page looks like:

 

<a href="{!URLFOR($Action.ns__CustomObj__c.Tab, $ObjectType.ns__CustomObj__c)}" id="someId">View CustomObj Tab</a>

But when that same page is edited in Eclipse, it appears like this:

 

<a href="{!URLFOR($Action.CustomObj__c.Tab, $ObjectType.CustomObj__c)}" id="someId">View CustomObj Tab</a>

 

This is kind of surprizing, and causing problems with SVN showing changes where there aren't any.

 

Any suggestions on why this is?

 

 

 

  • February 05, 2009
  • Like
  • 0
Has anyone had success in calling Salesforce metadata API functions from Apex code? We tried just simply importing the metadata WSDL using the auto-import functionality, but there was a namespace conflict.

Is this possible? Any suggestions would be most apprecaited. Right now, we're looking at putting java code on a separate webserver to programatically update the metadata of a number of orgs. We'd really like to package some code up that would update it from within the app.

Thanks!
  • January 15, 2009
  • Like
  • 0
When adding a new tab to an existing application through either the IDE (w09 version) or the metadata API, the new tab does not get placed in the correct position. It seems to always be two positions to the left.

Also, re-ordering the tabs in the app through either of these mechanisms does not affect the order of the tabs in the UI. Using the IDE, after saving the app, the call returns and changes the app definition in the editor back to what it was previously.
  • January 14, 2009
  • Like
  • 0
I am working on a tool that will automatically update some page layouts. Some of the layouts are on standard objects and others are installed from a managed package. I can make the changes just fine and re-deploy for the standard layouts, however, I'm seeing something very strange when trying to update managed object layouts. Here's what I'm doing (from Java, if that makes any difference).

1. Retrieve the managed package meta-data by name (in files)
2. Retrieve the unpackaged page layouts only (also in files)
3. Parse through the layouts, making changes to the ones I need to (adding fields, moving fields, etc)
4. Copy the changed files to a new directory to be zipped and deployed
5. Create a new package.xml with just the changed items listed
6. Deploy the changed set

The only way I could get SF to accept the change to the packaged layout is by adding the package namespace to all the components:

1. Layout file name goes from "CustObject__c-Custom Layout.layout" to "ns__CustObject__c-cv__Custom Layout.layout"
2. Prepend each custom field and button name in the layout with namespace
3. Update package.xml to reflect new member name (same as above, without the .layout suffix)

When all this is done and the changeset is deployed, the layout is in fact updated with the changes. HOWEVER, the name of the layout (which is not editable through the UI) is changed to have the namespace prefix. See screenshot below...

This seems like a major bug. I'm sure this would cause a problem when upgrading the package, and it also violates SF's restriction on double underscores in the name of anything.

Anyone have any ideas on how to correctly deploy changes to managed-installed layouts?





Message Edited by cgoss on 01-15-2009 11:19 AM
  • January 14, 2009
  • Like
  • 0

Hello,

I am working on a Salesforce App which I am hoping will meet Aloha requirements, so it can run in Group and Professional edition.

My app integrates with an external website which means it will have to work with the Salesforce API. From what I understand, if it passes the security review, I can get a Client ID which will be used for the external site to call the Salesforce API.

My question is, does this Client ID need to be protected from customers? The reason I ask is the external sites code will be installed by the customer and is written in PHP meaning the source code will be visible. Since the Client ID would have to be in the code, it would be visible by the customer. Is this a security issue, or does it even matter since the Client ID is specific to my app?

 

Thanks for any help.

-Jeff

  • September 10, 2012
  • Like
  • 0

If my managed package contains a trigger on a standard object, will the trigger fire if the currently-running user is not licensed to use my application?

 

If my managed package contains a workflow rule and action on a standard object, will the action fire if the currently-running user is not licensed to use my application?

 

If my managed package contains a button that, as part of configuring my application after it's installed, gets added to the page layout for a standard object, will the button be visible to users who aren't licensed to use my application?

 

In general, what components of my managed package will be visible to or callable by users who aren't licensed to usee my application?

 

Thanks!

We ran into issues in testing our post install script class that I wanted to share. 

 

My class kicks off a couple batch jobs to do some data migration. These classes have the "with sharing" bit in the class signature, as is the default. It seems that the special "package install user" that runs the install script doesn't have access to packaged fields or objects, as we got errors like this:

caused by: System.QueryException: sObject type 'cx__Relationship_Type__c' is not supported

 This problem seemed to be resolved by removing "with sharing" from the install class, as well as any classes called by the install script, but it's not documented anywhere that you need to do that.

 

Cheers,

Chuck

  • August 08, 2012
  • Like
  • 0

i have an application with 4 tabs, is it possible to check on load if the user has right previlages from an external webservice.

If the user doesnot have any previlages the application should not load (it should show an Error page)like if the login for salesforce is treated as vilidation.

If it is not there in an external database application should not be loaded. Else all the application needs to be loaded

Regards

Punnoose

I created an application in that i  created a tab"ADMIN" in which i had page called admin,using an external webservice i checked wether that login  has an admin privilages and based on that i diverrt to two diffrent pages "NormalAdmin" and "USer"Pages which i have created in salesforce. But when i load the page The contents are the contents of the "NormalAdmin" and "USer" 

But the the current application which is given in the drop down changes and the tabs changes to the new Application.

Please do help me. Should i insert the three pages when create the tab "ADMIN".Please do help me

Regards

Punnoose

 

Hello Board,

 

Has anyone experience of using Trialforce for distribution of App?


Which are the activities are need to be consider while distributing app to Trialforce?

 

How much work associated with Trialforce Registration page, which prospect is going to fill out.

 

Thanks,

Devendra

Is there any way to find out why the class is failing to load when I go to package an app that needs it?  The class has about 800 lines of code including http callouts and about 80 variables. Could any of this be the reason it is not loading in the package?

 

Thanks!

Hi folks.   I've run into an issue which looks to be associated with the Spring '12 platform as we have not run into this prior.  I have submitted a case with support regarding this but they have not been able to help and have since closed the case.

 

Here's the scenario:

Within my package I have a custom layout on the Opportunity object.  As a pre-install step, only certain profiles are given access to the package contents (custom profiles based on the standard profile).  As a post-install step, this layout is assigned to one (or more) Opportunity Record Types. Pretty standard stuff.

 

Previously,  to uninstall the package all I would have to do is reassign the layout on these record types to a standard Opportunity layout.  Once done, the package would install without issue.   But recent attempts to execute this process have been unsuccessful due to the following errors:

 

This installed component is referenced by a locally created component. Standard Platform User

This installed component is referenced by a locally created component. System Administrator

 

The System Administrator link above will bring me to the 'Force.com - Free User' profile.

 

Not sure what's going on with this, if it's a 'bug' or I missed something in the release notes pertaining to this.

 

Any ideas?

  • February 20, 2012
  • Like
  • 1

I'd like to add a link to a custom report that's included in our managed package to a visualforce page (also packaged) but I'm hesitant to do so because it just uses a hard-coded ID link. I've seem to recall reading something way back when that report IDs were automatically swapped out upon package installation for object links, but I'm doubtful that will be the case for visualforce pages.


It would be ideal if this idea were delivered:

https://sites.secure.force.com/success/ideaView?id=08730000000bRreAAE

 

Does anyone have any experience linking to packaged reports?

 

Thanks,

Chuck

  • February 16, 2012
  • Like
  • 0

I understand that Salesforce's runtime will automatically append necessary namespace prefixes to Apex code references to custom sobjects and fields in a managed packaged.

 

Furthermore, I understand that it will not pick up references in Javascript, Dynamic SOQL & VF Pages, or hardcoded PageReferences (so these must be manually updated). 

 

I have however discovered something I don't understand:

 

1. We have a VF page that references a custom extension of the StandardController, as such we use the following work-around to get the standard controller to query all the necessary table columns in our custom object at load time:

 

//Works in Packaging Org
<apex:outputPanel rendered="false">
{!Object__c.ObjectField__c} {!Object__c.ObjectField1__c}
</apex:outputPanel>

 ^ The above code works properly in the packaging org, with a managed package created with a namespace prefix.

However, when it's installed into another org it doesn't work unless we manually prepend the namespace prefix as follows:

//Works in destination org, but not packaging org
<apex:outputPanel rendered="false">
{!NS1__Object__c.NS1__ObjectField__c} {!NS1__Object__c.NS1__ObjectField1__c}
</apex:outputPanel>

The above works in the destination org, but not packaging org.

 

 

Shouldn't my packaging org now be capable of respecting references to NS1__Object__c? 

From the API, you can do a getUserInfo() request, and the result contains a property for orgDefaultCurrencyIsoCode. This is the value of the currency for the organization in a single-currency org.

 

Any idea how I can get this value from Apex? The UserInfo system method does not have the same method, and UserInfo.getDefaultCurrency() returns null in a single-currency org.

  • August 04, 2011
  • Like
  • 0

Org1:

    System Administrator:

     1. Few tabs were with "Default On" and

          Few tabs were with "Tab Hidden" 

      2. Included all the tabs in the package and uploaded the package.

 

Installed the package in Org2.

 While installing the package the System Administrator profile of Org2 is mapped with System Administrator of Org1

 

In Org2:

   When opened the System Administrator profile I can see all the tabs has the "Default On" option selected, which should not be the case and should inherit the permissions from the profiles of the Org1.

 

Please let me know why this is happening.

Any help would be appreciated.

 

Regards,

Joseph

I am looking to understand an issue I am facing with team development and sharing of custom objects. I have an SVN repository setup which contains all the elements of our managed package. When checking out the code through the IDE (subclipse) and saving the src to another development org, some of the meta data changes without any modifications from the developers.

 

For instance, in our *.object (metadata files representing our Custom Object) the main org has tags for <depricated>false</depricated>, but the new dev org removes all those tags once you "Save to Server". The net result is a lot of SVN diffs that the developer did not introduce.

 

This makes committing changes back to SVN difficult, since the developer has to work around the diffs injected by pushing the checkout to another dev org.

 

How do we avoid the injection of these changes from dev org to dev org.

I'm developing some apex code that's dependant on an installed managed package (with namespace "cx"). I'm trying to call a global static method in the package, but am getting an odd error.

 

Here's a simple example:

 

Boolean retval = cx.ContactUtils.wsTest();

 

 

The managed code is this:

 

global with sharing class ContactUtils {
...
    webservice static Boolean wsTest(){
    	return true;
    }
...
}
	

Whenever this compiles, I get this exception:


Save error: Initial term of field expression must be a concrete SObject: String

Any ideas on this? I've tried several different methods from two separate packages, with different method signatures, and all return the same error. I am able to instanciate inner classes from that same class also, so it's not a permissions or access problem.

 

  • November 02, 2010
  • Like
  • 0

The initial version of our package was updating the LMA (creating a license etc) when a Trialforce install was done but a newer version of the package is not updating the LMA. As far as I can see the newer version is correctly associated with our LMA org (AKA the LMO).

 

Any suggestions on what could be wrong?

 

Thanks,

Keith

How do I retrieve all custom fields on a standard object using the Migration Toolkit Metadata API?

 

The migration tool guide provides this markup for retrieving standard objects (SO), but indicates that custom fields on SOs must be retrieved individually.

 

 

<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
    <types>
        <members>Account</members>
        <name>CustomObject</name>
    </types>
    <version>19.0</version>
</Package>

I'm looking for more of a wildcard approach to retrieve all fields. My goal is to run an Ant script daily to retrieve and backup all metadata. Is this possible?

 

Can someone confirm if this is expected behavior...?

 

I have a batch apex class that calculates a Contact's opportunity total and updates the contact record. It works fine, except I am seeing an odd error. This is an example of the SOQL I use, where ctotal is the instance of the Batch Apex Class.

 

 

ctotal.query = 'Select Id, total__c,(Select OpportunityId, Opportunity.StageName, Opportunity.Date_Received__c, Opportunity.Amount from OpportunityContactRoles where Opportunity.StageName = \'Collected\' Order by Opportunity.CloseDate ASC) From Contact WHERE Id = \'0034000000U842kAAB\'';

 

 

The contact I am filtering for has one Opportunity that matches the SOQL criteria, and if I submit this SOQL via the system log, it correctly returns on record.

 

But when I execute this in the Batch Context, it is returning two rows. Looking into it further, I discovered the second record is a deleted record, which only appears if I use the ALL ROWS parameter in the system log.

 

Do I need to filter my batch apex to disregard deleted rows, or should I be setting some other paramter, or is this a bug?

 

Thanks

 

We're thinking seriously about using Hudson (http://hudson-ci.org/) to automatically run our APEX unit tests on a nightly basis and distribute the results if tests failed or coverage drops below a certain percentage.

 

Is there any interest in participating in this project if we make it open source? Since Hudson is open, we'd be inclined to contribute back to the community.

 

Is anyone else doing something like this on some other CI tool like CruiseControl? We currently have a cron-based java solution for it running on a dev box, but we'd really like to take advantage of the trending and build-status tools that hudson provides.

  • October 19, 2009
  • Like
  • 0