• DevAngel
  • ALL STAR
  • 5679 Points
  • Member since 2003

  • Chatter
    Feed
  • 25
    Best Answers
  • 7
    Likes Received
  • 3
    Likes Given
  • 14
    Questions
  • 3207
    Replies

My app is almost complete and I can't wait to show what I built. Can we go ahead and promote our app on Twitter/ YouTube to create some buzz?

Does anyone know how to get access to the Radian6 api for the hackathon?  I've sumbitted the get started form, but haven't heard back.

 

Thanks

Jake

  • November 12, 2013
  • Like
  • 0

Will the entries be scanned? Will there be a 75% code coverage requirement?

Where can I access documentation for the Marketing Cloud API's:

  • ExactTarget API
  • BuddyMedia API
  • Radian6 API
  • Pardot API

 

I was downloading & installing the force.com iOS SDK.

 

After getting it installed, your web site has a section called Next Steps, and a link to download the Mobile SDK Workbook from this URL:

 

https://raw.github.com/forcedotcom/SalesforceMobileSDK-Samples/master/Mobile_SDK_Workbook.pdf

 

But that URL goes to a Page Not Found error.

 

Where is that Mobile SDK Workbook? 

 

Here's the source page URL:

http://wiki.developerforce.com/page/Native,_HTML5,_or_Hybrid:_Understanding_Your_Mobile_Application_Development_Options

 

Thx.

  • November 07, 2013
  • Like
  • 0

Hello,

 

I think we will be creating a native iOS app for the Hack-a-Thon.

 

Do we need to get the judges UDIDs to add to our provisioning profile in order for them (or anyone else to test)?

 

Or do you take the source code, compile and load using your own provisioning profiles?

 

Thanks!

 

  • November 06, 2013
  • Like
  • 0

We were just wondering what platforms would be accepted as accepted platforms for the Hackathon. IE android/ IOS/ Cross platform solution such as PhoneGap?

When can we start building our app? October 25? (Hackathon Registration) OR November 18 (Dreamforce)?

 

 

  • November 01, 2013
  • Like
  • 0

Google glass runs full android, so I was wondering if a glass application can be used for the contest.

Hi there,

 

Does anyone know if there'll be a PHP toolkit for the 21.0 API available soon?

 

I'm sure it's completely fine to use 20, but ideally we'd start with the latest one.

 

Stan

  • February 11, 2011
  • Like
  • 0

Hi All,

 

Is there away to use the assignment rule Id, when creating Case through the API interface?

 

I know it is possible to set the AssignmentRuleHeader value in Client application. But I am not using client application to Create Case in salesforce.com. I am using the Salesforce.com integration appliance to access salesforce.com and create Case. 

 

The problem is that it is not possible to set the AssignmentRuleHeader value in the integration appliance.

 

It is also Not possible to set the OwnerId on the Case using the AssignmentRuleId.

 

Maybe someone out there has the same experience and found the solution.

 

Thanks.

I have a <apex:form> and two <apex:pageBlock> in a page.

 

The reason for having two <apex:pageBlock> is, each get their own <apex:pageBlockButtons> 

 

Here is what my code looks like :

 

 

<apex:form >

<apex:pageBlock title="New" mode="edit" id="newPageBlock">

<apex:pageBlockButtons location="top">

<apex:commandButton value="Save" action="{!add}" rerender="current_data"/>

<apex:commandButton value="Cancel" action="{!cancel}" />

</apex:pageBlockButtons>

<apex:pageBlockSection title="new data" columns="1">

........ </apex:pageBlockSection>

</apex:pageBlock>

 

<apex:pageBlock title="Update" mode="edit" id="current_data">

<apex:pageBlockButtons location="top">

<apex:commandButton value="Save" action="{!add}"/>

<apex:commandButton value="Cancel" action="{!cancel}" />

</apex:pageBlockButtons>

<apex:pageBlockSection title="update data" columns="1">

<apex:outputPanel>

........

</<apex:outputPanel> </apex:pageBlockSection>

</apex:pageBlock>

 

 The idea is to rerender any new data in the update data.

 

 The above code does not work.

 

 My question is can I rerender between page blocks? How would I resolve this problem?

 

 Thanks a million 

 

  • February 24, 2010
  • Like
  • 0

Hi all,

 

I have a standalone Flex app, e.g. not embedded in a VF page.

 

I can log into a non-sandbox org, but I cannot seem to log into a sandbox org.

 

I have tried changing the LoginRequest.server_url property to "https://test.salesforce.com" and "http://cs2.salesforce.com" with no luck, and I also tried changing xmlns:salesforce= to both of these values as well.

 

How is this meant to be attained? 

 

Thanks!

Can someone please help me?? I'm trying to run the supposedly simple application in one of the flex tutorials only it DOES NOT WORK!!!!!! I TRIED EVERYTHING AND THE SALESFORCE DOCMENTATION IS 2247 PAGES LONG!!! HOW DO I GET STARTED WITH FLEX??? WHO DO I HAVE TO TALK TO???????? DOES ANYONE KNOW???

HERE IS THE CODE I'M TRYING TO RUN. I copied the toolkit SWC's  into my lib folder in the project in FLEX and this is the exact code that is in the tutorial that is floating around YOUTUBE??? SO WHY IN THE HELL DOES IT NOT WORK WHAT AM I MISSING????? 

 

 

 

 <?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:salesforce="http://www.salesforce.com/"
    applicationComplete="doLogin()">

    <mx:Script>
        <![CDATA[
            import com.salesforce.results.LoginResult;
            import com.salesforce.results.QueryResult;
            import com.salesforce.AsyncResponder;
            import com.salesforce.objects.LoginRequest;
            
            private function doLogin():void
            {
                var lr:LoginRequest = new LoginRequest();
                lr.username = "MY FREAKING USERNAME";
                lr.password = "MY FREAKING PASSWORD";
                lr.callback = new AsyncResponder(loginSuccess);
                force.login(lr);
            }    
            
            private function loginSuccess(result:LoginResult):void
            {
                force.query("SELECT Id, LastName FROM Contact", new AsyncResponder(querySuccess));
            }
            
            private function querySuccess(result:QueryResult):void
            {
                grid.dataProvider = result.records;
            }
        ]]>
    </mx:Script>
    
    <salesforce:Connection id="force"/>
    
    <mx:DataGrid id="grid" width="400" height="300"/>
    
</mx:Application>

Hi, I'm not sure if I'm posting this in the correct forum, so please direct me to the appropriate one if this isn't it.

 

Right off the bat, I should mention that I'm writing a standard Visualforce page that utilizes Apex code on the server, so I'm NOT using any s-controls, though I am exploring the possibility of using the AJAX toolkit.

 

I'm still pretty new to Apex/Visualforce, and I was wondering if it's possible to access my Apex methods from my Visuaforce page. Specifically, I'd like to pass a large string from my javascript to an asynchronous method in my Apex code on the server side for processing. The method will parse the string and eventually update a large number of records, the reason I chose to make it asynchronous. I figured I would accomplish this via the AJAX toolkit.

 

I understand that the AJAX toolkit allows one to perform operations, such as database query, merge, and update, but is it possible to use it to access custom methods? If not, I was wondering if someone could recommend another approach I should take to send information back to the Apex code?

 

Thank you.

  • August 10, 2009
  • Like
  • 0

I have an S-Control that is failing. Assuming that my query is this:

 

SELECT id, lastname, contact.account.name FROM contact, contact.account

 

and that I have already gotten access to the id and lastname fields using contacts = queryResult.getArray('records'); and id = contacst[i].Id, how do I access the contact.account.name field? I assumed that contacts[i].Account.Name would do it, but of course it doesn't.

 

TIA,

 

John

 

 

 

 

 

 

  • August 05, 2009
  • Like
  • 0

Dear all,

 

I'm looking to create a console-type screen for Campaign Members (combining both Leads and Contacts in one place) as it's something that my sales team have been asking for. I also think that it'll be a fun challenge for myself, and part of a larger "Outbound Prospecting" tab that I want to create for my team.

 

My main issues are that I don't know how to pass a value between iframes (i.e. if a lead in a table is clicked on, we get to see their record / details). Also, I'm trying to work out a way to get an action in the top frame to rerender the bottom frame, but can't work out the correct way to do so without causing a complete reload (which I think stops there being any chance of values being passed.

 

I know that this is a big topic, generally, but if anybody knows of any good resources/other threads on this board that are relevant, I would be very grateful.

 

With thanks,

Andy

In a VF page I have two  <apex:component> A and B. This components are not related with each other each having their own controllers. How can I pass data between these two components? The same way I need to pass data from these components to the main page.which is again having a different controller. 

  

  I have seen the example of dependency Injection mechanism. But it helps in passing values from page to

components or from parent to child components. But I need to pass values between two components with no relation.

 

Any help would be appreciated

Joseph

Hi,

 

I have custom object with field of date type (not datetime/timestamp) and I need to query from my Flex/AS3 code for date range  (WHERE date => myDtObject)

 

What should be the format I need to pass my date object to salesforce in order to perform date comparison???

 

This is my code:

 

private function getTimesheetRecordsByWeek(dtStart:String, dtEnd:String, userName:String):void{
                               
                var strQuery:String = "SELECT t.Activity__c, t.ActivityType__c, t.Billable__c, t.Client__r.Name, t.WeekStartDate__c, t.WeekEndDate__c, " +
                                      "t.MondayHrs__c, t.TuesdayHrs__c, t.WednesdayHrs__c, t.ThursdayHrs__c, t.FridayHrs__c, t.SaturdayHrs__c, t.SundayHrs__c, t.WeeklyHrs__c " + 
                                      "FROM Timesheet__c t " +
                                      "WHERE t.WeekStartDate__c => " + "2009-05-25" + " and t.WeekEndDate__c =< " + "2009-05-28" + " and t.Owner.Name = '" + userName + "'";
                                      //"WHERE t.WeekStartDate__c >= " + DateUtil.dateToIso(new Date(dtStart)) + " and t.WeekEndDate__c <= " + DateUtil.dateToIso(new Date(dtEnd)) + " and t.Owner.Name = '" + userName + "'";
               
                apex.queryAll(strQuery, new AsyncResponder(onTimesheetsResult, onQueryFault));

            }

 

 

Thank you very much in advance.

 

 

I have some Radian 6 API keys. Please respond if you need one for your app.

 

Cheers

Go through **bleep** you!

This is a sample scontrol that takes the query results and renders in a grid widget. This sample uses a grid widget from TurboWidgets. The widget is essentially a dojo widget. With a little more effort, the grid could be editable as the grid supports this.

Cheers and good luck!

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>TurboWidgets, presented by TurboAjax Group</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<script type="text/javascript" src="https://www.salesforce.com/services/lib/ajax/beta3.3/sforceclient.js—browser=true"></script>
<!--<script language="JavaScript" type="text/javascript" src="../turbowidgets_beta_1.0.9/turbo/turbo.js"></script>-->
<script language="JavaScript" type="text/javascript" src="http://turboajax.com/turbo/turbo.js"></script>
<link href="style.css" rel="stylesheet" type="text/css" />
<style>
 pre, code {
  margin: 8px 0 12px 0;
  padding: 6px 0 6px 0;
  background-color: #F6F6F6;
 }
 pre {
  font-family: "Courier New", Courier, mono;
  font-size: 11px;
  border-top: 1px solid blue;
  border-bottom: 1px solid blue;
 }
 code {
  display: block;
  white-space: nowrap;
  border-top: 1px solid green;
  border-bottom: 1px solid green;
 }
 .module-body {
  font-size: 12px;
  padding-left: 16px;
  padding-right: 16px;
 }
 .panel
 {
  background-color: #EEE;
  border: 1px dotted silver;
  padding: 2px;
 }
 .panel .turbo-splitter-h {
  border-left: 1px solid #CCC;
  border-right: 1px solid #CCC;
 }
 .panel .turbo-splitter-v {
  border-top: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
 }
 #highlightbox ul {
  margin-bottom: 6px;
  margin-left: 0px;
  padding-left: 26px;
  margin-top: 6px;
  font-size: 11px;
 }
</style>
<script>
 turbo.debug('-- starting TurboWidgets example viewer ---');
</script>
<script>
    var gridController;
    var dataStore;
    
    function initPage() {
        sforceClient.useCookies = true;
        sforceClient.init("{!API_Session_ID}", "{!API_Partner_Server_URL_70}", true);
    }
    function setup() {
        var soql = document.getElementById("txtSOQL").value;
        sforceClient.query(soql, loadData);
    }
    function loadData(qr){
        data = new Array();
        for (var i=0;i<qr.records.length;i++) {
            data.push(qr.records[i].getData());
        }
        fields = new Array();
        fields = qr.records[0].getFields(); 

        columns = qr.records[0].getColumns(); 
        dataStore = new turbo.data.store();
        dataStore.setData(data, fields);
     gridController = new turbo.grid.controller("grid", dataStore, columns);
    }

    Sforce.Dynabean.prototype.getData = function() { 
     this.data = new Array();
     this.fields = new Array();
     this.columns = new Array();
     for (key in this.getKeys()) { 
      var prop = this.getItem(key); 
      if (prop && prop.className != undefined && prop.className == "Property") { 
       var fldDef = this.definition.fieldMap.getItem(prop.name.toLowerCase());
       if (fldDef != null) { 
           var fieldName = fldDef.name;
           var fieldLabel = fldDef.label;
           var value = this.get(fieldName.toLowerCase());
           
           
           var c = typeToColumnType(fldDef)
           
           this.columns.push(c);
           this.fields.push({name: fieldName});
           this.data.push(value);
           
       } 
      } 
     }
     
     return this.data; 
     
     function typeToColumnType(fldDef) {
         var c = {};
         switch (fldDef.type) {
       case "boolean": 
        c = [ turbo.grid.columns.bool, {name: fldDef.label, width: 58, align: 'center' } ];
        break;
       case "int":
        c = [ turbo.grid.columns.integer, {name: fldDef.label } ];
        break;
       case "currency":
                    c = [ turbo.grid.columns.money, { name: fldDef.label, width: 60, digits: 3} ];
           break;
       case "double":
       case "percent":
        c = [ turbo.grid.columns.decimal, { name: fldDef.label }];
        break;
       case "date":
       case "datetime":
        var ret = [ turbo.grid.columns.date ];
        ret[1] = {};
        ret[1].name = fldDef.label;
        ret[1].width = 150;
        c = ret;
        break;
       case "picklist":
       case "multiselectpicklist":
       case "combobox":
        var plv = fldDef.picklistValues;
        var optionsArray = new Array();
        var valuesArray = new Array();
                 for (var i=0;i<plv.length;i++) {
                  if (plv[i].label != null && plv[i].label != "") {
                   optionsArray.push(plv[i].label);
                   valuesArray.push(plv[i].value);
                  } else {
                   optionsArray.push(plv[i].value);
                   valuesArray.push(plv[i].value);
                  }
                 }
           var ret = [ turbo.grid.columns.enumerated ];
           ret[1] = {};
           ret[1].width = 80;
           ret[1].options = optionsArray;
           ret[1].values = valuesArray; //, { width: 80, options: optionsArray, values: valuesArray } ],
           c = ret;
           break;
       default:
           var ret = [ turbo.grid.columns.basic ];
           ret[1] = {};
        ret[1].name = fldDef.label;
        ret[1].width = 78; // = { name: fldDef.label, width: 78 }, 
        c = ret;
        c = ret;
        break;
      }
      return c;
     }
    };
    Sforce.Dynabean.prototype.getFields = function() { 
        return this.fields;
    }
    Sforce.Dynabean.prototype.getColumns = function() { 
        return this.columns;
    }


    var data;
    var fields;
    var columns;

 selectTheme = function() {
  grid.setTheme(turbo.$("themeselect").value);
 }
function btnRun_onclick() {
    setup();
}

</script>
</head>
<body>

<div class="banner"></div>
<div class="page">
<div class="text bigText outline">If you need a high-level grid with tons of features, here it is. &nbsp; Enter an
    arbitray, but syntactically correct SOQL<br />
    statement, then click Run Query.&nbsp; Try a SOQL that returns a picklist field.&nbsp;
    Although the grid is editable, the<br />
    code for persisting edits back to salesforce.com has not been implemented (any changes
    to the values won't<br />
    permanently change your data).<br />
    <br />
    <textarea id="txtSOQL" style="width: 587px; height: 56px">Select Id, FirstName, LastName From Contact</textarea>&nbsp;
    <input id="btnRun" style="width: 86px" type="button" value="Run Query" onclick="return btnRun_onclick()" /><br />
 <!-- Grid must have a dimensioned container for IE6 -->
 <div style="width: 702px; height: 323px; overflow: hidden; border: 1px solid silver;">
  <div id="grid" autosize="true" dojoType="TurboGrid" oninit="initPage"></div>
 </div>
</div>

</body>

</html>
 
 
Cheers and good luck!
 

Message Edited by DevAngel on 03-24-2006 05:07 PM

If you ever had any question regarding how to build S-Controls check out this blog post

http://blog.sforce.com/sforce/2005/07/ajax_toolkit.html

Message Edited by DevAngel on 07-30-2005 09:41 AM

If you ever had any question regarding how to build S-Controls check out this blog post

http://blog.sforce.com/sforce/2005/07/ajax_toolkit.html

Message Edited by DevAngel on 07-30-2005 09:42 AM

If you ever had any question regarding how to build S-Controls check out this blog post

http://blog.sforce.com/sforce/2005/07/ajax_toolkit.html

Use this thread to shamelessly promote you personal blog site.

Message Edited by DevAngel on 04-22-2005 03:31 PM

Please note:


There is a known issue with Sun's JDK, and its implementation of SSL, specificially with regard to its use Verisign's certs, that is currently preventing that platform from creating SSL connections. This issue is preventing Java clients from accessing secure Web services, including the one provided by salesforce.com.


For more information, please see:



Following the instructions at the link above will provide a resolution.


The resolution provides 2 options. One is to import new certificates from verisign to your jre, the other is to install a patched version of the java SDK and/or JRE.


To download the latest java SDK Standard Edition, visit http://java.sun.com/j2se/1.4.2/download.html

To download the latest java SDK Enterprise Edition, visit http://java.sun.com/j2ee/download.html


These downloads have the required certificates.

Message Edited by benjasik on 05-17-2005 09:28 PM

Due to a bug in the wsdl.exe tool shipping with Visual Studio, you will need to modify the generated SOAP proxy client after adding a web reference to the Enterprise Version of the WSDL.

sforce exposes 2 objects that have the same name as 2 reserved words in Visual Basic .Net, Event and Case.  When adding a web reference, Visual Studio properly creates classes named [Case] and [Event].  Unfortunately, when creating the SObject class's Serialization attributes, it does not properly use [Event] and [Case] when creating the GetType() call parameter.

You will need to modify your code to look like the code below.

System.Xml.Serialization.XmlIncludeAttribute(GetType([Event])), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Document)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Contact)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(CaseSolution)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(CaseHistory)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(CaseComment)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType([Case])), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(CampaignMember)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Campaign)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(BusinessProcess)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Attachment)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(AccountShareDefault)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(AccountShare)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Account))> _

Public MustInherit Class sObject

Dave
Developer Program Manager

Due to a bug in the wsdl.exe tool shipping with Visual Studio, you will need to modify the generated SOAP proxy client after adding a web reference to the Enterprise Version of the WSDL.

sforce exposes 2 objects that have the same name as 2 reserved words in Visual Basic .Net, Event and Case.  When adding a web reference, Visual Studio properly creates classes named [Case] and [Event].  Unfortunately, when creating the SObject class's Serialization attributes, it does not properly use [Event] and [Case] when creating the GetType() call parameter.

You will need to modify your code to look like the code below.

System.Xml.Serialization.XmlIncludeAttribute(GetType([Event])), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Document)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Contact)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(CaseSolution)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(CaseHistory)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(CaseComment)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType([Case])), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(CampaignMember)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Campaign)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(BusinessProcess)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Attachment)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(AccountShareDefault)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(AccountShare)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Account))> _

Public MustInherit Class sObject

Message Edited by mike kreaden on 04-10-2004 01:20 PM

This is a sample scontrol that takes the query results and renders in a grid widget. This sample uses a grid widget from TurboWidgets. The widget is essentially a dojo widget. With a little more effort, the grid could be editable as the grid supports this.

Cheers and good luck!

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>TurboWidgets, presented by TurboAjax Group</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<script type="text/javascript" src="https://www.salesforce.com/services/lib/ajax/beta3.3/sforceclient.js—browser=true"></script>
<!--<script language="JavaScript" type="text/javascript" src="../turbowidgets_beta_1.0.9/turbo/turbo.js"></script>-->
<script language="JavaScript" type="text/javascript" src="http://turboajax.com/turbo/turbo.js"></script>
<link href="style.css" rel="stylesheet" type="text/css" />
<style>
 pre, code {
  margin: 8px 0 12px 0;
  padding: 6px 0 6px 0;
  background-color: #F6F6F6;
 }
 pre {
  font-family: "Courier New", Courier, mono;
  font-size: 11px;
  border-top: 1px solid blue;
  border-bottom: 1px solid blue;
 }
 code {
  display: block;
  white-space: nowrap;
  border-top: 1px solid green;
  border-bottom: 1px solid green;
 }
 .module-body {
  font-size: 12px;
  padding-left: 16px;
  padding-right: 16px;
 }
 .panel
 {
  background-color: #EEE;
  border: 1px dotted silver;
  padding: 2px;
 }
 .panel .turbo-splitter-h {
  border-left: 1px solid #CCC;
  border-right: 1px solid #CCC;
 }
 .panel .turbo-splitter-v {
  border-top: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
 }
 #highlightbox ul {
  margin-bottom: 6px;
  margin-left: 0px;
  padding-left: 26px;
  margin-top: 6px;
  font-size: 11px;
 }
</style>
<script>
 turbo.debug('-- starting TurboWidgets example viewer ---');
</script>
<script>
    var gridController;
    var dataStore;
    
    function initPage() {
        sforceClient.useCookies = true;
        sforceClient.init("{!API_Session_ID}", "{!API_Partner_Server_URL_70}", true);
    }
    function setup() {
        var soql = document.getElementById("txtSOQL").value;
        sforceClient.query(soql, loadData);
    }
    function loadData(qr){
        data = new Array();
        for (var i=0;i<qr.records.length;i++) {
            data.push(qr.records[i].getData());
        }
        fields = new Array();
        fields = qr.records[0].getFields(); 

        columns = qr.records[0].getColumns(); 
        dataStore = new turbo.data.store();
        dataStore.setData(data, fields);
     gridController = new turbo.grid.controller("grid", dataStore, columns);
    }

    Sforce.Dynabean.prototype.getData = function() { 
     this.data = new Array();
     this.fields = new Array();
     this.columns = new Array();
     for (key in this.getKeys()) { 
      var prop = this.getItem(key); 
      if (prop && prop.className != undefined && prop.className == "Property") { 
       var fldDef = this.definition.fieldMap.getItem(prop.name.toLowerCase());
       if (fldDef != null) { 
           var fieldName = fldDef.name;
           var fieldLabel = fldDef.label;
           var value = this.get(fieldName.toLowerCase());
           
           
           var c = typeToColumnType(fldDef)
           
           this.columns.push(c);
           this.fields.push({name: fieldName});
           this.data.push(value);
           
       } 
      } 
     }
     
     return this.data; 
     
     function typeToColumnType(fldDef) {
         var c = {};
         switch (fldDef.type) {
       case "boolean": 
        c = [ turbo.grid.columns.bool, {name: fldDef.label, width: 58, align: 'center' } ];
        break;
       case "int":
        c = [ turbo.grid.columns.integer, {name: fldDef.label } ];
        break;
       case "currency":
                    c = [ turbo.grid.columns.money, { name: fldDef.label, width: 60, digits: 3} ];
           break;
       case "double":
       case "percent":
        c = [ turbo.grid.columns.decimal, { name: fldDef.label }];
        break;
       case "date":
       case "datetime":
        var ret = [ turbo.grid.columns.date ];
        ret[1] = {};
        ret[1].name = fldDef.label;
        ret[1].width = 150;
        c = ret;
        break;
       case "picklist":
       case "multiselectpicklist":
       case "combobox":
        var plv = fldDef.picklistValues;
        var optionsArray = new Array();
        var valuesArray = new Array();
                 for (var i=0;i<plv.length;i++) {
                  if (plv[i].label != null && plv[i].label != "") {
                   optionsArray.push(plv[i].label);
                   valuesArray.push(plv[i].value);
                  } else {
                   optionsArray.push(plv[i].value);
                   valuesArray.push(plv[i].value);
                  }
                 }
           var ret = [ turbo.grid.columns.enumerated ];
           ret[1] = {};
           ret[1].width = 80;
           ret[1].options = optionsArray;
           ret[1].values = valuesArray; //, { width: 80, options: optionsArray, values: valuesArray } ],
           c = ret;
           break;
       default:
           var ret = [ turbo.grid.columns.basic ];
           ret[1] = {};
        ret[1].name = fldDef.label;
        ret[1].width = 78; // = { name: fldDef.label, width: 78 }, 
        c = ret;
        c = ret;
        break;
      }
      return c;
     }
    };
    Sforce.Dynabean.prototype.getFields = function() { 
        return this.fields;
    }
    Sforce.Dynabean.prototype.getColumns = function() { 
        return this.columns;
    }


    var data;
    var fields;
    var columns;

 selectTheme = function() {
  grid.setTheme(turbo.$("themeselect").value);
 }
function btnRun_onclick() {
    setup();
}

</script>
</head>
<body>

<div class="banner"></div>
<div class="page">
<div class="text bigText outline">If you need a high-level grid with tons of features, here it is. &nbsp; Enter an
    arbitray, but syntactically correct SOQL<br />
    statement, then click Run Query.&nbsp; Try a SOQL that returns a picklist field.&nbsp;
    Although the grid is editable, the<br />
    code for persisting edits back to salesforce.com has not been implemented (any changes
    to the values won't<br />
    permanently change your data).<br />
    <br />
    <textarea id="txtSOQL" style="width: 587px; height: 56px">Select Id, FirstName, LastName From Contact</textarea>&nbsp;
    <input id="btnRun" style="width: 86px" type="button" value="Run Query" onclick="return btnRun_onclick()" /><br />
 <!-- Grid must have a dimensioned container for IE6 -->
 <div style="width: 702px; height: 323px; overflow: hidden; border: 1px solid silver;">
  <div id="grid" autosize="true" dojoType="TurboGrid" oninit="initPage"></div>
 </div>
</div>

</body>

</html>
 
 
Cheers and good luck!
 

Message Edited by DevAngel on 03-24-2006 05:07 PM

If you ever had any question regarding how to build S-Controls check out this blog post

http://blog.sforce.com/sforce/2005/07/ajax_toolkit.html

Message Edited by DevAngel on 07-30-2005 09:41 AM

If you ever had any question regarding how to build S-Controls check out this blog post

http://blog.sforce.com/sforce/2005/07/ajax_toolkit.html

Message Edited by DevAngel on 07-30-2005 09:42 AM

Please note:


There is a known issue with Sun's JDK, and its implementation of SSL, specificially with regard to its use Verisign's certs, that is currently preventing that platform from creating SSL connections. This issue is preventing Java clients from accessing secure Web services, including the one provided by salesforce.com.


For more information, please see:



Following the instructions at the link above will provide a resolution.


The resolution provides 2 options. One is to import new certificates from verisign to your jre, the other is to install a patched version of the java SDK and/or JRE.


To download the latest java SDK Standard Edition, visit http://java.sun.com/j2se/1.4.2/download.html

To download the latest java SDK Enterprise Edition, visit http://java.sun.com/j2ee/download.html


These downloads have the required certificates.

Message Edited by benjasik on 05-17-2005 09:28 PM

Due to a bug in the wsdl.exe tool shipping with Visual Studio, you will need to modify the generated SOAP proxy client after adding a web reference to the Enterprise Version of the WSDL.

sforce exposes 2 objects that have the same name as 2 reserved words in Visual Basic .Net, Event and Case.  When adding a web reference, Visual Studio properly creates classes named [Case] and [Event].  Unfortunately, when creating the SObject class's Serialization attributes, it does not properly use [Event] and [Case] when creating the GetType() call parameter.

You will need to modify your code to look like the code below.

System.Xml.Serialization.XmlIncludeAttribute(GetType([Event])), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Document)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Contact)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(CaseSolution)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(CaseHistory)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(CaseComment)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType([Case])), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(CampaignMember)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Campaign)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(BusinessProcess)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Attachment)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(AccountShareDefault)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(AccountShare)), _

System.Xml.Serialization.XmlIncludeAttribute(GetType(Account))> _

Public MustInherit Class sObject

Message Edited by mike kreaden on 04-10-2004 01:20 PM

I have some Radian 6 API keys. Please respond if you need one for your app.

 

Cheers

My app is almost complete and I can't wait to show what I built. Can we go ahead and promote our app on Twitter/ YouTube to create some buzz?

Hello, What type of support would be available at the hackathon over the next 3 days. Do we have to setup a time with the salesforce.com team?

First Let me thank you guys for the hard work to get us some dev ogs. On the other hand, I need some help enabling two bussines rules on those accounts, 

 

1) Landing pages

 

2) Salesforce bussines rules, so I can use the appexchange product. If tracking is working with v2 I will preffer to use v2 vs v3'

 

 

Thanks

Is there a way to call a SOAP API method (convertLead in particular) using the iOS SDK?

Hi there,


I'm a cerified Salesforce developer looking to join a team. 

 

Please contact me if you want me to join.

 

Thanks,

Leanne

  • November 14, 2013
  • Like
  • 0

Hi. 

Can't find anything in the APIs about sending geo-specific notifcations using ExactTarget's API. Ie: user has app installed and walks into a fenced location and my app send him/her a notification. Anything like that exist? 

 

I'm looking for something similar to what Urban Airship has: 

http://urbanairship.com/products/audience-segmentation#location-targeting

 

 

  • November 13, 2013
  • Like
  • 0

We are considering entering the hackathon, but the below criteria provides for some interesting grey areas: 

 

The application you or your team submits must...
...have been developed solely as part of this Hackathon 

 

For example:

  • Can we re-use code we have written for another related product?
  • I know we can use open-source libraries and APIs, but what about an API to our own pre-existing product?
  • What if we were want to modify an existing project to be an entrant into this Salesforce contest?
  • Lastly, what if someone had the idea or started tinkering with it a year ago, but now wants to finish it in the hackathon?

Sorry for the baragge of questions...the word "solely" is just so absolute. Most people who are entering this have probably done some work on their idea apart fro this hackathon.  My question is how much "prior work" or "non-hackathon" work is acceptable?

 

ps – This is a continuation of a comment thread here – I thought it warranted its own thread after considering it further.

 

Does anyone know how to get access to the Radian6 api for the hackathon?  I've sumbitted the get started form, but haven't heard back.

 

Thanks

Jake

  • November 12, 2013
  • Like
  • 0

Will the entries be scanned? Will there be a 75% code coverage requirement?

Where can I access documentation for the Marketing Cloud API's:

  • ExactTarget API
  • BuddyMedia API
  • Radian6 API
  • Pardot API

 

We were just wondering what platforms would be accepted as accepted platforms for the Hackathon. IE android/ IOS/ Cross platform solution such as PhoneGap?

Can hackathon submissions utilize 3rd party APIs?

Winners will receive American Express gift cards payable in US Dollars.

Salesforce.com loves developers. And it’s amazing to see how quickly our developer community builds next-generation apps on the Salesforce Platform. So we thought we’d cook up a little surprise. OK, a huge surprise. How about the world’s first hackathon with a single $1 million prize?

It’s on. Come to Dreamforce. Build a next-generation mobile app, and change the world. And win a million bucks. Really. What better way to say thank you to our developers than to put on the biggest on-site hackathon in history. Today, we are thrilled to launch the Salesforce $1 Million Hackathon!

 

Read the full announcement at: http://blogs.developerforce.com/developer-relations/2013/10/salesforce-one-million-dollar-hackathon.html

 

Get the full details at: www.dreamforce.com/hackathon

 

Use this board to form teams, ask questions, and connect with your fellow developers!