Hi All,
Here i came up again with something interesting stuffs. I found recently one cool JQuery Sticky Notes plugin here Tutorialzine [http://tutorialzine.com/2010/01/sticky-notes-ajax-php-jquery/]. Then i came up with an idea to integration this cool feature with Salesforce Tasks.
Sorry, this time i can't share a Force.com sites link to show you a demo because this project inloves with Tasks and Users objects, that has Public Site access limitation, thats why, Here is a simple Screencast demo i created, check it out.
Click and View:
Sticky_notes_salesforce
Sticky Dashboard:
I created this complete stuff in couple of hours so it may have many flaws. I am thinking to improve this on following points:
1) Need to push more fields (Status, Priority etc on Add note and dashboard screen for Sticky Tasks Page)
2) Reassign a task to other
3) Also, thinking to integrate this with my previous stuff (VFTalkie), which is voice enabled.
4) Thinking to integrate this with Twilio voice system also, so you no need to write your task, just call and your task will be created on Sticky home :) (Isn't it cool).
5) And many more....
If you need the code just mail me, and As always, provide me your valuable suggestions.
Thanks
Aslam Bari
JQuery 'Sticky Notes' integration with 'Salesforce Tasks'
Saturday, December 4, 2010
by Aslam - The Alexendra
Posted in |
17 Comments »
Easy SF Portlets With jQuery (Project)
Tuesday, October 12, 2010
by Aslam - The Alexendra
Hi All,
With my previous experience with many projects it seems "one special" kind of requirement comes always and that always needs me and my team to build every time from scratch and takes time to complete. Yes, this is "Portlets Home" page for clients with a drag and drop boxes on a single page, each box contains different information section bla bla. Yes, requirements for different clients always differ from each other, but the BASIC building blocks are same for all. All needed a Home page with 3 or 4 column boxes with title and information. All boxes must be draggable etc. These building blocks every time needs attest 30-50 hours to complete. Some people uses ExtJs to build it, some uses jQuery and other JS Framework.
So, here i have come up with a "SF Portlets" project. The beauty of this project is , it is configurable , easy to install/setup, and you don't need to think about BASIC BUILDING BLOCKS, all is created and ready to use for you, you just need to concentrate on client extra requirement From that point where this project Ends.
I have shared this project on Code Share here:-
http://developer.force.com/codeshare/project/sf-portlets
You can also directly install the App from the below link:-
https://login.salesforce.com/?startURL=%2Fpackaging%2FinstallPackage.apexp%3Fp0%3D04t90000000Pl0v
Portlet Configuration Screen:-
You need to create at least one Portlet Config record with all given flags and fields. Also create your portlets and one Attachment for your portlet logo as shown below in this screen.
You can choose multiple themes from the Portlet Config picklist as below:
Default Theme
Redmond Theme
Black-Tie Theme
Create Different Types of Portlets as per your need
HTML
Will render whatever html you provided here as it is.
Text
Will show your text simply on screen.
URL
Will load the external data from given url (It must be Public accessible url). If you give WAP url then it must be good because that is perfect for a small porlet screen.
Query
Will run your SOQL query and show your data in tabular format (Please provide optimized and limit in your query for better load data). Query example:-
SELECT Name, Email, Phone FROM Contact ORDER BY LastModifiedDate DESC LIMIT 10
Activate/Deactivate Portlets
You can also set Activate or De-Activate any portlet which is you want or not to show on the Portlet Home using "Active" field flag(checkbox)
Here is the working demo for your view, it is hosted on Salesforce Public Sites.
http://labsprojects-developer-edition.ap1.force.com/
Future of the Project
Save Portlets State
Right now I am not storing user's drag and drop of the portlet on particular position. Right now all portlets comes as per last modified date desc order. I am planning to store their states also.
More Portlet Types
In my view, it must be very useful for basic portlets implementation with given options. I am thinking to extend it in terms of many aspects like support for more Portlet Types like:
Report
Will accept Report link and will show report details in portlet
Chart
Will accept Report link and will show its chart in portlet
Dashboard
Will accept Dashboard name and its component, and it will show that component in Portlet
Image
Will accept one Resource, Document name or link and will show that image
Attachment
Will accept one link of the attachment and will show in Portlet
Detail
Will accept a Id of the Record (Account, contact or opportunity), and will show that detail in this area
YouTube
Will accept a YouTube url and show that video in this portlet.
Feeds
Will accept any RSS Feed and show the details here.
And Much Much More…
View/Download complete documentation here:-
SF Portlets
So, give it a try, install and test it. Let me know for any feedback so that i can enhance it.
Thanks
Aslam Bari
With my previous experience with many projects it seems "one special" kind of requirement comes always and that always needs me and my team to build every time from scratch and takes time to complete. Yes, this is "Portlets Home" page for clients with a drag and drop boxes on a single page, each box contains different information section bla bla. Yes, requirements for different clients always differ from each other, but the BASIC building blocks are same for all. All needed a Home page with 3 or 4 column boxes with title and information. All boxes must be draggable etc. These building blocks every time needs attest 30-50 hours to complete. Some people uses ExtJs to build it, some uses jQuery and other JS Framework.
So, here i have come up with a "SF Portlets" project. The beauty of this project is , it is configurable , easy to install/setup, and you don't need to think about BASIC BUILDING BLOCKS, all is created and ready to use for you, you just need to concentrate on client extra requirement From that point where this project Ends.
I have shared this project on Code Share here:-
http://developer.force.com/codeshare/project/sf-portlets
You can also directly install the App from the below link:-
https://login.salesforce.com/?startURL=%2Fpackaging%2FinstallPackage.apexp%3Fp0%3D04t90000000Pl0v
Portlet Configuration Screen:-
You need to create at least one Portlet Config record with all given flags and fields. Also create your portlets and one Attachment for your portlet logo as shown below in this screen.
You can choose multiple themes from the Portlet Config picklist as below:
Default Theme
Redmond Theme
Black-Tie Theme
Create Different Types of Portlets as per your need
HTML
Will render whatever html you provided here as it is.
Text
Will show your text simply on screen.
URL
Will load the external data from given url (It must be Public accessible url). If you give WAP url then it must be good because that is perfect for a small porlet screen.
Query
Will run your SOQL query and show your data in tabular format (Please provide optimized and limit in your query for better load data). Query example:-
SELECT Name, Email, Phone FROM Contact ORDER BY LastModifiedDate DESC LIMIT 10
Activate/Deactivate Portlets
You can also set Activate or De-Activate any portlet which is you want or not to show on the Portlet Home using "Active" field flag(checkbox)
Here is the working demo for your view, it is hosted on Salesforce Public Sites.
http://labsprojects-developer-edition.ap1.force.com/
Future of the Project
Save Portlets State
Right now I am not storing user's drag and drop of the portlet on particular position. Right now all portlets comes as per last modified date desc order. I am planning to store their states also.
More Portlet Types
In my view, it must be very useful for basic portlets implementation with given options. I am thinking to extend it in terms of many aspects like support for more Portlet Types like:
Report
Will accept Report link and will show report details in portlet
Chart
Will accept Report link and will show its chart in portlet
Dashboard
Will accept Dashboard name and its component, and it will show that component in Portlet
Image
Will accept one Resource, Document name or link and will show that image
Attachment
Will accept one link of the attachment and will show in Portlet
Detail
Will accept a Id of the Record (Account, contact or opportunity), and will show that detail in this area
YouTube
Will accept a YouTube url and show that video in this portlet.
Feeds
Will accept any RSS Feed and show the details here.
And Much Much More…
View/Download complete documentation here:-
SF Portlets
So, give it a try, install and test it. Let me know for any feedback so that i can enhance it.
Thanks
Aslam Bari
Posted in |
19 Comments »
Cool Dock Menu for your Salesforce Site
Monday, August 16, 2010
by Aslam - The Alexendra
Hi All,
Yesterday i was exploring some jQuery menus and found some cool jqDock top menu which can be used in your Salesforce Site.
Here is the link for jqDock Menu.
Here is the link for working demo which uses this jqDock menu.
jqDockDemo link
Mail me if you need its code :)
Thanks
Aslam Bari
Yesterday i was exploring some jQuery menus and found some cool jqDock top menu which can be used in your Salesforce Site.
Here is the link for jqDock Menu.
Here is the link for working demo which uses this jqDock menu.
jqDockDemo link
Mail me if you need its code :)
Thanks
Aslam Bari
VFTalkie : Enable your Visual Force pages to speak !!!
Monday, August 2, 2010
by Aslam - The Alexendra
Hi All,
Yesterday i was searching for some jQuery related plugins and found two very useful web services / plugins on net. Then i decided to integrate both of this services to Salesforce to get something useful.
jTalk :- Speech-enable your website!. It provides you much useful API to convert your text to speech on the fly. Go for more info here http://www.jtalkplugin.com/.
Dewplayer :- Dewplayer lecteur mp3 en flash! It provides a very cool flash mp3 player . Go for more info here http://www.alsacreations.fr/dewplayer.html.
The idea is simple. Whatever output data you have on your vf screen (Output Fields). Convert that into MP3 on run time using jTalk API and Pass it to a supporting player like Dewplayer.
Isn't it cool :)
Here is the simple demo for this integration:-
VF Talkie Account Detail
Here is the more interactive demo for this integration:-
VF Talkie Contact List
For integrating this into your VF page you just need to add VFTalkie component on your page with text as below:-
<c:vftalkie val="{!accRecord.Description}">
For getting complete project code click here.
So, make sure your speaker is on then give it a try :)
If any questions, mail me at aslam.bari@gmail.com
Hope you enjoyed.
Thanks
Aslam Bari
Yesterday i was searching for some jQuery related plugins and found two very useful web services / plugins on net. Then i decided to integrate both of this services to Salesforce to get something useful.
jTalk :- Speech-enable your website!. It provides you much useful API to convert your text to speech on the fly. Go for more info here http://www.jtalkplugin.com/.
Dewplayer :- Dewplayer lecteur mp3 en flash! It provides a very cool flash mp3 player . Go for more info here http://www.alsacreations.fr/dewplayer.html.
The idea is simple. Whatever output data you have on your vf screen (Output Fields). Convert that into MP3 on run time using jTalk API and Pass it to a supporting player like Dewplayer.
Isn't it cool :)
Here is the simple demo for this integration:-
VF Talkie Account Detail
Here is the more interactive demo for this integration:-
VF Talkie Contact List
For integrating this into your VF page you just need to add VFTalkie component on your page with text as below:-
<c:vftalkie val="{!accRecord.Description}">
For getting complete project code click here.
So, make sure your speaker is on then give it a try :)
If any questions, mail me at aslam.bari@gmail.com
Hope you enjoyed.
Thanks
Aslam Bari
Posted in
Labels:
Aslam Bari,
Dewplayer,
jTalk,
Salesforce,
text to speech,
Visual Force
|
10 Comments »
Salesforce Solutions Browsing in Interactive JQuery Way
Wednesday, July 28, 2010
by Aslam - The Alexendra
Hi All,
Hope you all aware of Saleforce Solutions Feature. Each solution is associated with one or more Categories which is called 'Solution Category'. Salesforce provide some basic solution browsing feature. I was thinking to implement something more Interactive UI perspective.
Then i found one jQuery solution for this here by filamentgroup.
I found it is very useful for Hierarchical Data representation. It actually an iPod style browsing categories. So i used this idea and implemented Solutions Browsing in Salesforce using this jQuery menu way But i think this can be used to implement any object records hierarchical data like Account and parent accounts, Users and their managers etc.
Here is the working demo for this:-
http://labsprojects-developer-edition.ap1.force.com/solutions_menu_demo
Try to browse AllCategory->Entertainment->Movies OR
All Category -> Breaking News -> Politics
You will see on demand filter results. For rest of the menu items i just provided all records for demo purpose.
If you need the complete code for this demo then mail me at: aslam.bari@gmail.com
Thanks
Aslam Bari
Hope you all aware of Saleforce Solutions Feature. Each solution is associated with one or more Categories which is called 'Solution Category'. Salesforce provide some basic solution browsing feature. I was thinking to implement something more Interactive UI perspective.
Then i found one jQuery solution for this here by filamentgroup.
I found it is very useful for Hierarchical Data representation. It actually an iPod style browsing categories. So i used this idea and implemented Solutions Browsing in Salesforce using this jQuery menu way But i think this can be used to implement any object records hierarchical data like Account and parent accounts, Users and their managers etc.
Here is the working demo for this:-
http://labsprojects-developer-edition.ap1.force.com/solutions_menu_demo
Try to browse AllCategory->Entertainment->Movies OR
All Category -> Breaking News -> Politics
You will see on demand filter results. For rest of the menu items i just provided all records for demo purpose.
If you need the complete code for this demo then mail me at: aslam.bari@gmail.com
Thanks
Aslam Bari
Posted in |
2 Comments »
Simple Search Highlighter
Thursday, May 20, 2010
by Aslam - The Alexendra
Hi All,
Recently i faced one issue where i need to use a simple search on some table and fetch the results on screen. But the main problem i faced that how to highlight the search word in the screen in some color format. So here is the solution for that. (It is inspired from one PHP Code blog: http://www.phpro.org/articles/Highlight-Search-Words.html).
For SFDC work around, here is the solution with code:
1) Apex Class:- I used the contact for my searching example. Here is the code:-
2) VisualForce page and code for Search and highlight
3) And finally here is the link to check it right now online. Just try to search something like "park", or "usa', or "and"
http://labsprojects-developer-edition.ap1.force.com/ContactSearchHighlight
Is it nice!!!
Thanks
Aslam Bari
Recently i faced one issue where i need to use a simple search on some table and fetch the results on screen. But the main problem i faced that how to highlight the search word in the screen in some color format. So here is the solution for that. (It is inspired from one PHP Code blog: http://www.phpro.org/articles/Highlight-Search-Words.html).
For SFDC work around, here is the solution with code:
1) Apex Class:- I used the contact for my searching example. Here is the code:-
public class ContactSearchHighlight{
public string srchArg{get;set;}
public List<Contact> lstcontact {get;set;}
public ContactSearchHighlight(){
lstContact = [select id, name, details__c from contact where details__c != null];
}
public PageReference search(){
string srchPhrase = '%' + srchArg + '%';
lstContact = [select id, name, details__c from contact where details__c like :srchPhrase];
for(Contact cnt: lstContact){
cnt.details__c = highlightPhrase(cnt.details__c, srchArg);
}
return null;
}
public string highlightPhrase(string mainString, string phrase){
mainString = mainString.toLowerCase().replaceAll(phrase.toLowerCase(), '<span class="highlight_word">' + phrase + '</span>');
return mainString;
}
}
2) VisualForce page and code for Search and highlight
<apex:page controller="ContactSearchHighlight" showHeader="false" sidebar="false">
<apex:sectionHeader title="Search Contacts" subtitle="Highlighter"/>
<style type="text/css">
h1{
font-size:16px;
}
.highlight_word{
background-color: PaleGreen;
font-weight:bold;
font-style:italic;
}
.searchbox{
border:1px solid #ccc;
font-family:verdana;
padding:10px;
}
.searchbox p{
text-transform: capitialize;
}
.hrstyle{
color: #f00;
background-color: #f00;
height: 1px;
}
</style>
<apex:form>
<apex:inputtext value="{!srchArg}"/>
<apex:commandButton value="Search" action="{!search}"/>
</apex:form><br/>
<div class="searchbox">
<apex:repeat value="{!lstContact}" var="cnt">
<h1>{!cnt.Name}</h1>
<p><apex:outputText value="{!cnt.details__c}" escape="false" />
<div style="text-align:center;color:#ccc;">
-----------------------------------------------
</div>
</p>
</apex:repeat>
</div>
</apex:page>
3) And finally here is the link to check it right now online. Just try to search something like "park", or "usa', or "and"
http://labsprojects-developer-edition.ap1.force.com/ContactSearchHighlight
Is it nice!!!
Thanks
Aslam Bari
Best way to notify your parents
Wednesday, May 5, 2010
by Aslam - The Alexendra
Hi,
Today I want to discuss you about one scenario which I came across recently and how I find the best way to do it. Here is the scenario:-
Scenario:
Suppose you have Case object which have two parent records, One is Contact Lookup and another is "MyCustomObject" object lookup. All three objects have one 'Email' field each. There is one another Custom Object called 'ChildObject' which is the child of Case object. The object structure is as below.
What we want to do is. On Insert of a new 'ChildObject' record we need to Notify Parent 'Case' Record using 'Workflow'. But the email should go to as logic below:-
If Contact.Email is filled then send email to that, otherwise if MyCustomObject.Email__c is filled then send email to that, Otherwise send email to Case.Email__c field.
Suggested Solutions and Problems:
1) Sending mail using Trigger on 'ChildObject'. Either do bunch of SOQL on all parent records and use final email to send mail within 'Trigger' OR you can use one custom email field on ChildObject it self to set email from parent in trigger and use workflow to use that email field to send emails but you can't avoid SOQLs.
2) One Before insert/update trigger on Parent Case Object. Which will set one extra Email field based on our conditions but for that you need again bunch of SOQL and logics. You can do same thing for ChildObject also.
3) Formula field on either ChildObject or Parent Case object which will filled our Email according to our logic. It is good way, it will avoid all SOQL and Logics. BUT main problem with this is that Formula Field CAN NOT be used in workflows.
My Solution (Somehow Better).
1) Create one Formula Field 'Formula_Email__c' on 'ChildObject which have following condition for fill this field
If(Case__r.Contact.Email != null, Case__r.Contact.Email, if(Case__r.MyCustomObject__r.Email__c != null, Case__r.MyCustomObject__r.Email__c, Case__r.Email__c));
2) Create one Email type field 'Case_Email__c' on 'ChildObject which will have the value from above formula field as below:
trigger on ChildObject (before insert, before update){
for(Case c: Trigger.NEW){
c.Case_Email__c = c.Formula_Field__c;
}
}
3) Thats it. See you saved so many SOQL and complex logic. Now used this final 'Case Email' field on 'ChildObject' workflow to send emails.
Is it good!!!
Thanks
Aslam Bari
Today I want to discuss you about one scenario which I came across recently and how I find the best way to do it. Here is the scenario:-
Scenario:
Suppose you have Case object which have two parent records, One is Contact Lookup and another is "MyCustomObject" object lookup. All three objects have one 'Email' field each. There is one another Custom Object called 'ChildObject' which is the child of Case object. The object structure is as below.
What we want to do is. On Insert of a new 'ChildObject' record we need to Notify Parent 'Case' Record using 'Workflow'. But the email should go to as logic below:-
If Contact.Email is filled then send email to that, otherwise if MyCustomObject.Email__c is filled then send email to that, Otherwise send email to Case.Email__c field.
Suggested Solutions and Problems:
1) Sending mail using Trigger on 'ChildObject'. Either do bunch of SOQL on all parent records and use final email to send mail within 'Trigger' OR you can use one custom email field on ChildObject it self to set email from parent in trigger and use workflow to use that email field to send emails but you can't avoid SOQLs.
2) One Before insert/update trigger on Parent Case Object. Which will set one extra Email field based on our conditions but for that you need again bunch of SOQL and logics. You can do same thing for ChildObject also.
3) Formula field on either ChildObject or Parent Case object which will filled our Email according to our logic. It is good way, it will avoid all SOQL and Logics. BUT main problem with this is that Formula Field CAN NOT be used in workflows.
My Solution (Somehow Better).
1) Create one Formula Field 'Formula_Email__c' on 'ChildObject which have following condition for fill this field
If(Case__r.Contact.Email != null, Case__r.Contact.Email, if(Case__r.MyCustomObject__r.Email__c != null, Case__r.MyCustomObject__r.Email__c, Case__r.Email__c));
2) Create one Email type field 'Case_Email__c' on 'ChildObject which will have the value from above formula field as below:
trigger on ChildObject (before insert, before update){
for(Case c: Trigger.NEW){
c.Case_Email__c = c.Formula_Field__c;
}
}
3) Thats it. See you saved so many SOQL and complex logic. Now used this final 'Case Email' field on 'ChildObject' workflow to send emails.
Is it good!!!
Thanks
Aslam Bari
Posted in |
0 Comments »
Subscribe to:
Posts (Atom)

















