Simon Fell > Its just code
Thursday, February 25, 2010
UpdatesI updated the Quicksilver plugin for Salesforce.com to support Chatter, you can easily post status updates, URLs & Files to Chatter now from Quicksilver.
There's a minor revision to Trapdoor that adds Google Chrome to the list of available browsers.
SoqlX was updated to support the Salesforce.com v18 API, so that you can do aggregate queries etc, it also now tries much harder to preserve the field ordering in the table from the query.
Sunday, November 22, 2009
OSX / Salesforce tools updatesI updated the OSX build of the data loader to v17, so now you can access v17 specific objects (like content) and use the new bulk api. And I also updated the TextMate Plugin for apex to v17 as well.
Sunday, August 16, 2009
PocketSOAP v1.5.5I just posted PocketSOAP v1.5.5, this is updated to use the latest version of PocketHTTP, and the dateTime & time support has been updated to support milliseconds. However because the COM APIs do not expose milliseconds accessors for the dateTime type, this is likely only useful for c++ based clients that can access the underlying double directly.
Saturday, July 04, 2009
v16 Data Loader for OSXI built an up to date (api v16) OSX version of the data loader, and feel free to vote for the idea to make it official.
Saturday, April 18, 2009
App UpdatesI released an updated SoqlX a couple of weeks back, it has a number of tweaks, exposing relationship names to make building SOQL-R queries easier, and the filtering object/field list I discussed earlier. And I just posted an updated version of SFFS, the file extension information is now bundled into the filenames for those files that don't have it in the name directly (depending on how your documents got into salesforce to start with, they might have the extension separate to the name). Follow me on twitter to find out these things as they happen.
Thursday, March 12, 2009
SoqlX Filters
| Following on from the filtered object/field list discussion, seems like showing all the fields and highlighting the matching ones seems like the best bet (but filtering the list of objects based on the object name, or the object having a field matching the filter), expect to find this in the next release of SoqlX. |
Tuesday, March 10, 2009
SoqlX Filters
|
I've been thinking about adding a filter widget to the object/field list in SoqlX, right now i have so that the object list is filtered based on whether the object name or any of its fields match the filter criteria, but the actual list of fields for the object remains intact. (as shown on the left). Is that what you would find most useful? should it also filter the field list itself ? something else? (I also thought about leaving it with the full list of fields, but having it highlight the fields that match the filter). Ping me on twitter and let me know what you think. |
Thursday, March 05, 2009
SoqlX tips'n'tricks
Everything you wanted to know about SoqlX but were afraid to ask.
Login
Remember that SoqlX uses the API to connect to Salesforce, and so depending on how your admin configured it, you may need to use your api security token in addition to your password to login (just add the token to your password, so if your password is beerisnice and your security token is abv123, enter beerisniceabv123 as the password). getting a LOGIN_MUST_USE_SECURITY_TOKEN error means you most likely forgot to include your security token (search for security token in the salesforce.com online help for more info)
Let SoqlX store your login credentials on the keychain, you'll be much happier, next time you run soqlX it'll remember your username & password (and if you have multiple salesforce.com logins, tryout trapdoor)
Queries
To execute a SOQL query, type the SOQL query into the box at the top, click Query (or Query All), the results will appear in the table, or for count queries, in the bottom left hand corner.
SOQL-R is supported, so you can do both queries that access foreign key relationships (like accessing account from a contact), and also aggregate child queries (like select accounts, and the contacts for each account). Double click the magnifying glass to expand the 2nd query table at the bottom, showing the child rows for that particular parent row.
If you queried the Id column, then you can edit data inline, just double click the cell and type in your new value, when the cell looses focus, the reecord in salesforce will be updated. You can also check the deleted checkbox and hit the delete button to delete row(s). click the Delete column header to quickly toggle the checkbox on all rows.
| Using the Window menu, you can open launch the salesforce.com web application, for the user you're currently logged in as. You can also open the recent queries window, which'll show you the last 10 queries you've executed, double click a query to copy it to the SOQL query textbox. Watch the recent queries list animate the changes as you run new queries!. |
Use File -> Save Query Results to save the results of your current query as a CSV file.
Schema
Hit the schema button at the bottom right to switch to a graphical view of your schema, showing how objects are related.
Use the +/- widget inside each object to control the set of fields that appear (id + name field, all standard fields, all fields). Double click an object (or select from the list view) to make that the primary object of the view.
Right click on any object in the listview and pick 'generate schema report' to generate the schema report for that object, this contains the graphical schema view, along with a table detailing all the fields for the object, you can print or export to PDF the schema report.
Got questions, or suggestions for new features, catch me on twitter.
Wednesday, February 04, 2009
all the way to 20bah, forget 11, this baby goes all the way to 20!

But seriously, memory is dirt cheap right now, why short change yourself
Saturday, January 03, 2009
Ritual Coffee now at Whole FoodsYou can now get fresh (with roast dates) Ritual Coffee Roasters coffee at Whole Foods, (at least at the Whole Foods on California St in SF), this is a big deal most supermarket coffee is both gross and stale, having no roast date marked, and no idea how long its been sat on the shelf. I just picked up some LifeSaver espresso that was roasted Dec 30. Nice work by the Ritual crew. I also believe you can get the excellent Barefoot Coffee at Whole Foods in the south bay.
Sunday, December 07, 2008
Maildrop 2.0I just posted the final Maildrop 2.0 build. You can download it from the project download page, or if you're already running Maildrop, just restart it, or pick check for updates to have it autoupdate.
Major new features include support for email attachments, the new buttonbar UI to replace the scripts menu, and the configurable search column for the 'What' search.
Maildrop 2.0 runs on Tiger and Leopard, I have some ideas for the next version, which may mean its Leopard only, why are you still on Tiger anyway?
Thanks to everyone who tried out the beta builds and provided feedback.
Wednesday, December 03, 2008
Maildrop 2 beta 4I did further battle with the AppleScript ninja's and won, the new beta version of Maildrop includes support for attachments, for create case, all the attachments on the email are automatically added to the case (there's a pref to turn this off). For add Email, the attachments are listed with size and name, and you can choose which to upload, and which record they should be associated with. Download beta 4 and give it whirl. Feedback welcome.
Saturday, November 22, 2008
Maildrop 2.0 betaI've been working on a 2.0 version of Maildrop, one of the pain points of the current version, especially for users new to Mac is the use of the scripts menu to trigger the maildrop actions. rather than interacting with the Maildrop application directly, so I've been working on an alternative approach. I came up with this, its a small button bar window that will hover above Mail or Entourage.
In order for it to not get in the way, when neither Mail or Entourage are the active app it will go to the back of the window list (like a panel window, except its in a different application). In addition the button bar shows which set mail client is active for maildrop, and will automatically switch between Mail and Entourage based on the active app (for people unluckly enough to have to use both).
There's also some additions to the Add Email dialog, now there's an additional column in the "related to what" results, this by default will show the case subject field for case records, you can edit this mapping, and add a additional field for each object type by right clicking on the search results table and selecting configure search columns
The config sheet for this will appear, for each object type, you can select a field from the drop down list.
There are a number of other fixes and tweaks (closing the add email dialog with the window chrome doesn't leave the app in the modal state anymore), login errors are shown better, etc. One feature I'd like to get in before the final 2.0 release is to support attachments.
Finally, a few tips for Maildrop, these apply to the current 1.5 release as well,
- on either of the search boxes pressing enter will perform the search, no need to switch to the mouse to click the search button.
- the "related to who" search is done automatically when the add email dialog opens, that's why the "related to what" search field has the first focus.
- If you create a new lead or contact in the related to who section, it should be automatically selected for you.
- If the "Type" field on Task is available to the user, Maildrop will automatically populate it with the value Email (check the fields FLS settings for this)
Download the current Maildrop 2.0 beta and give it a whirl.
Sunday, November 02, 2008
Dreamforce 08#Dreamforce08 Is already in full swing, I'll be there most of the time, in the dev lounge, or in some of the API sessions, and of course, I'll be at both the monday night Hackathon and the meet the developers session on wednesday morning. Feel free to stop me and ask your burning API, Apex, OSX, iPhone or other force.com questions, If you can't find me in the lounge, you can track me down on twitter (@superfell). And finally, the great thing about being at Moscone, the BlueBottle cafe is only a couple of blocks away for some of the best coffee on the west coast.
Twitter API from ApexCodeI've been trying out the Twitter API from Apex code, turns out to be reasonably straight forward, i was able to put together a little client class that can get your friends timeline, and to post new updates (the rest of the api is basically a matter of typing at this point). Using this means you can post twitter updates with just 2 lines of apex code
TwitterForce t = new TwitterForce('someUsername', 'somePassword');
t.postUpdate('@arrowpointe working on it (this from apexcode)', '985929063');
The last parameter to postUpdate is the statusId of an existing status you're replying to, or null for something that's not a reply, postUpdate returns you a TwitterForce.Status object that contains all the information about the new post. You can also fetch your current timeline, with
TwitterForce t = new TwitterForce('someUsername', 'somePassword');
List<TwiterForce.Status> statuses = t.friendsTimeline();
Using this i was able to throw together a custom visualforce controller that lets me set my twitter login info, then see my timeline, and post update.


Rebuilding the twitter UI in VF is not that interesting, but being able to programatically interact with Twitter from apex code is. Here's the code, it includes the TwitterForce client class, some tests, the demo VF controller, and demo VF page. remember you'll need to add http://twitter.com/ to your org's remote sites for the API calls to work. Enjoy, and see you at #dreamforce. apex Twitter API.zip
