Posts

Showing posts from February, 2013

Tablets, PC's and Sales

I was reading an interesting article on Time’s magazine. I concur with the conclusion of the article. It reads - “Where we go from here is the multi-screen world. In the age of the PC, it was all about one primary computing screen. Now it’s about many. Consumers will have two or three or four screens in their lives and they will want to use all of them as a part of their computing solution. The future is not about one screen; it is about many ….”  Read more:  1.  http://techland.time.com/2013/02/04/how-the-tablet-came-to-disrupt-the-pc-industry/#ixzz2KmKPd7EK 2.  http://www.youtube.com/watch?v=N_cTeuHRWRo  In fact, we are getting into a multi – screen world. People are using multiple devices for various functions. Of course, tablets are eating into PC’s lunch. However, in the present market tablet is not considered a complete solution to PC.  You may prefer to do certain things on a PC, not on a tablet and vice-versa. I think it is important to understand what functions o

VSTO : Creating and retrieving Custom XML part in Excel

Image
Custom XML allows one to store XML in the desired format inside an Office document. For example, if we open Excel Workbook using 7-zip the custom XML folder is right at the root level.  Default Folder Structure string xmlString1 =           "<?xml version=\"1.0\" encoding=\"utf-8\" ?>" +           "<employees xmlns=\"http://schemas.microsoft.com/vsto/samplestest\">" +               "<employee>" +                   "<name>Surender G</name>" +                   "<hireDate>1999-04-01</hireDate>" +                   "<title>Manager</title>" +               "</employee>" +           "</employees>"; Office.CustomXMLPart employeeXMLPart = Globals.ThisAddIn.Application.ActiveWorkbook.CustomXMLParts.Add(xmlString1, missing); After executing the above code two files (item4.xml, itemProps4.xml)

Worksheet Activate event is not firing

On a fine day, I found that custom task pane is not appearing on activating a worksheet. I could find no error messages in our log4net log and windows logs. I tried to troubleshoot for a while but nothing worked.  Finally, I went back my stable project and started comparing the code. It's found that the following line was commented out.                   Globals.Factory.GetVstoObject(projectPlanSheet); As soon as I have removed the comments and task pane showed up again.  I found that GetVstoObject() generates an extended object which gives access to application level events. Also, check out HasVstoObject().   A short description about extended object Add managed controls to any open document or worksheet Convert an existing list object on an Excel worksheet to an extended  ListObject  that exposes events and can be bound to data by using the Windows Forms data binding model Access application-level events that are exposed by Word and Excel for specific documents, wo

Salesforce.com migration tool - Deploying Weblink and migrating files with special characters

Image
Recently, I noticed the followed issues in SFDC Ant deployment. Issue 1: Typo in XML <name> metadata data for Web Link Just to reiterate, all the buttons and links created under "Buttons and Links" section of the Object are treated as Web Links . Screenshot from Force.com Migration Tool Guide It should be WebLink, not Weblink. Otherwise, the following error occurs while extracting the package :  package.xml - Entity type: 'Weblink' is unknown. Correct XML is:  <types> <members>Opportunity.Cancel_CheckOut</members> <members>Opportunity.Generate_Deal_Sheet</members> <name>WebLink</name> </types> Issue 2: Unable to deploy entities with special characters Example: <types> <members> User w/Export  </members> <name>Profile</name> </types> I tried to deploy Profile entities with special characters like '-' and '/

Export Data To CSV

public class exportCSVController { public List > myList {get;set;} public exportCSVController() { myList = new List >(); List temp = new List (); for(Integer i = 0; i < 2500; i++){ if(temp.size() < 1000){ myClass m = new myClass(); m.val1 = 'val1 ' + i; m.val2 = 'val2 ' + i; temp.add(m); } else{ myList.add(temp); temp = new List (); myClass m = new myClass(); m.val1 = 'val1 ' + i; m.val2 = 'val2 ' + i; temp.add(m); } } myList.add(temp); } public class myClass{ public string val1 {get;set;} public string val2 {get;set;} } } <apex:page controller="exportCSVController" cache="true" contentType=&quo

Steps to format an Excel table suitable to paste in Word

Create a table style #region CREATE_TABLE_STYLE                     //Creating table Sytle. Unprotect all the sheets. If anyone sheet is protected it will return a COM Exception hresult 0x800a03ec                     foreach (Excel. Worksheet ws in activeWorksheets)                     {                         if (ws.ProtectionMode || ws.ProtectContents)                         {                             ws.Visible = Excel. XlSheetVisibility .xlSheetVeryHidden;                            SalesforceWrapper .sheet_UnProtect(ws);                             protectedSheets.Add(ws);                         }                    }                                          try                     {                         Globals .ThisAddIn.Application.ActiveWorkbook.TableStyles[ "MyProposalStyleName" ].Delete();                     }                     catch ( Exception excep)