Friday, May 20, 2011

Basic STSADM commands


Add the solution 

stsadm -o addsolution -filename {WSPFILENAME}

Deploy the solution 

stsadm -o deploysolution -name {WSPFILENAME} -url {SITEURL}

Install the feature 

stsadm -o installfeature -filename {FeatureFolder}\feature.xml

Activate the feature 

stsadm -o activatefeature -id {FEATUREID} -url {SITEURL} -force

Deactivate the feature 

Stsadm.exe -o deactivatefeature -filename

Wednesday, May 11, 2011

Auto-Generate number based on location code from another list


public void GenerateInwardNumber(SPItemEventProperties properties)
       {
           try
           {
               int autoid = 101;
               SPWeb oWeb = properties.Web;
               oWeb.AllowUnsafeUpdates = true;
               SPList oList = properties.List;
               SPListItem oItem = properties.ListItem;
               string[] s = Convert.ToString(oItem["Location"]).Split('#');
               string location = s[s.Length - 1];
               SPQuery qry = new SPQuery();
               qry.Query = "<Where><Eq><FieldRef Name='Location1' /><Value Type='Lookup'>" + location + "</Value></Eq></Where><OrderBy><FieldRef Name='Document_x0020_Inward_x0020_Number' Ascending='False' /></OrderBy>";
               SPListItemCollection oItemColl = oList.GetItems(qry);
               string locCode = GetLocationCode(location, properties.Web);
               string oldDIN = Convert.ToString(oItemColl[0]["Document_x0020_Inward_x0020_Number"]);
               string[] str = oldDIN.Split('-');
               if (!string.IsNullOrEmpty(oldDIN))
                   autoid = Convert.ToInt16(str[str.Length - 1]) + 1;
               else
                   autoid = 101;
               SPListItem oCurrItem = properties.ListItem;
               oCurrItem["Document_x0020_Inward_x0020_Number"] = locCode + "-" + autoid;
               this.EventFiringEnabled = false;
               oCurrItem.SystemUpdate(false);
               this.EventFiringEnabled = true;
               oWeb.AllowUnsafeUpdates = false;
           }
           catch (Exception ex)
           {
               properties.ErrorMessage = ex.Message;
           }
       }

       public string GetLocationCode(string location,SPWeb cWeb)
       {
           string locCode="";
           try
           {
               SPQuery locqry = new SPQuery();
               locqry.Query = "<Where><Eq><FieldRef Name='Title' /><Value Type='Text'>" + location + "</Value></Eq></Where>";
               SPList locList = cWeb.Lists["Locations"];
               SPListItemCollection oItemColl = locList.GetItems(locqry);
               locCode = Convert.ToString(oItemColl[0]["Location_x0020_Code"]);
           }
           catch (Exception ex)
           {
           }
           return locCode;
       }

Thursday, May 5, 2011

Formatting Date Time in C#



DateTime time = DateTime.Now;
string format = "MMM ddd d HH:mm yyyy";
Console.WriteLine(time.ToString(format));

Tuesday, May 3, 2011

Programmatically getting the metadata information



                SPSite site = new SPSite("http://myserver");
                TaxonomySession txSesssion = new TaxonomySession(site);
                foreach (TermStore store in txSesssion.TermStores)
                {
                    foreach (Group g in store.Groups)
                    {
                        if (g.Name == "GROUP1")
                        {
                            foreach (TermSet tSet in g.TermSets)
                            {
                                if (tSet.Name == "termset1")
                                {
                                    Console.WriteLine("......TermSET : " + tSet.Name);
                                    foreach (Term t in tSet.Terms)
                                    {
                                        Console.WriteLine("TERM :" + t.Name);
                                    }
                                }
                            }
                        }
                    }
                }