About Me

I am a Software Engineer presently working in Microsoft as vendor.The main aim of this blog is to Share my knowledge in Sharepoint,AZURE and Silverlight.

Wednesday, 20 May 2015

Built-in MDM for O365.


Microsoft has introduced built in MDM for O365 recently. MDM (Mobile device management) helps you secure and manage mobile devices like phones and tabs.

O365 MDM supports following devices:

Windows Phone 8.1
iOS 6 or later versions
Android 4 or later versions
Windows 8.1*
Windows 8.1 RT*

Currently we are using Zenprise, Very much excited to check this in our tenancy.

Here is the link to start with.

I'm sure they are many MDM's in the market. Let's see how many will leverage this built-in feature.

Tuesday, 28 April 2015

QR code generation from O365 SharePoint site.


Microsoft has released many new and exciting features in O365. One of my favorite feature is the ability to generate QR code (Quick response code).

If you have any document library in SharePoint online, then you can generate a QR code for a selected document. This QR code will help you to pull the document using QR code scanner from your phone or tablet.

To generate QR code, you have to select the ellipsis (3 dots) on the selected item as shown in the below image. Once you click on that, a small window will pop up and you will see a small phone icon next to hyperlink as marked in the screenshot. Click on the icon.



you will see a new tab or window opened with QR code.



Monday, 11 August 2014

Are you an Admin / Developer ? Are you looking for WCM concepts of SharePoint 2013 then here you go..

I've recieved this book from Publisher site(http://www.packtpub.com/application-development/sharepoint-2013-wcm-advanced-cookbook). As the book title mentioned the word WCM, This book covered pretty much what a senior sharePoint developer or admin is needed to perform their job activities as a WCM. if you are powershell guy/Admin this is the best place to compare what happens in the code side. Also, for a developer this is the one of the best book as it covers pretty much all the branding concepts using designer, Visual Studio, Infopath and out of the box features. link to the book..

Monday, 21 July 2014

Creating a Sharepoint Glossary.

one of the person in Linkedin posted a problem.."How to create a SharePoint Glossary". Here is the solution which I've given.
Here are the ways which we can solve the problem.
1) Code 2) NoCode
Code path: we can create a custom webpart with link buttons and do a CAML query to our list and bind it to a grid on click of link button.
NoCode:
a) Query String b) Standard filters
I'm giving the steps using Standard filters.
1) Need a list with glossary items.
2) create a view which sorts by glossaryValue
3) create a calculated column which will take the first letter, Call the column name as FilterAlpha (paste this in your formula =LEFT([glossaryValue], 1)
4) create a wiki page
5) select two columns with header and footer layout.
6) Insert your list webpart in footer and select the view which you created in 2nd step.
7) Insert HTML Form Webpart in header.
8) copy paste the below code in source editor of HTML Form Webpart and modify the script tag and add the tags to the input types.
scrip.. function passAlpha(num) { document.getElementById("result").value=num; javascript:_SFSUBMIT_ } ..scrip..

input type="button" value="A" onclick="passAlpha(this.value)" input type="button" value="B" onclick="passAlpha(this.value)"

9) on the html form webpart under edit webpart select edit connections -> Provider form values to -> select your list view webpart.
10) under choose connection tab select connect type as "Get Filter Values From"
11) click on configure
12) select provider field name as "T1".
13) select consumer field name as "FilterAlpha " this is the calculated field which you created in 3rd step.
14) click on save and close page.
you should see your expected result now.. :). I did a filter by clicking on "S".
If you know Jquery and CSS you can do lot of fun things..like rendering your list view as well as styling your buttons..

Tuesday, 15 April 2014

SharePoint 2013 Video Rendition..

After long time nearly 4 years, I've decided to start blogging..These many days I've played with different architectures, different layer communications,different technologies,communicating with ERP systems form SharePoint, ADFS 2.0 SAML tokens , MVC 4 applications, Mobile applications using JQuery mobile using MVC, Windows mobile 8.0, Windows 8 apps etc... I'm going to blog more and more information in the coming months keep watching.. SP 2013 is offering a new feature called Rendition. This is really a nice feature give a try.. :)

Friday, 2 July 2010

How to Send an Email from Microsoft Azure (cloud).

Hi, Sorry for not updating my blog these days. from past eight months I am working very less in sharepoint 2010.These days I am working more on new emerging technology "Microsoft Azure" .As we aware Azure is cloud computing.These days I am getting requests from other teams as well as from other colleagues about how to send an email from Azure.

So here are the ways I did it practically in our applications.

1)sending mail using exchange service
2)sending mail using SMTP Server
a)using service bus
b)using a windows service
3)you can also use public available mail services like LIVEID,Google
4)SMTP Relay or mail relay service(which I dont prefer as I faced lots of port issues.)

lets see one by one

easy approach to send an email from azure is using exchange service :). I prefer this approach.If the application is having any dependency on SMTP service then next two approaches can be used.

sending mail from exchange service is 4 steps.

1)Download the dll . 32bit is fine


2)Reference this dll in your project.((but make sure copylocal property set to True)

3)set the values in the service configuration.(for easy configuration)
I am using web.config in this but better to use service configuration instead of web.configuration.

<---add key="EmailDomain" value="your Domain Name"/>
<---add key="EmailUserName" value ="provide your username "/>
<---add key="EmailPwd" value="provide password "/>
<---add key="EmailID" value="provide your email ID"/>
<---add key="ExchangeserverURI" value="provide your exchange service URI"/>

4)use the below code to send an email.
try
{

string domain = WebConfigurationManager.AppSettings["EmailDomain"];
string username=WebConfigurationManager.AppSettings["EmailUserName"];
string pwd=WebConfigurationManager.AppSettings["EmailPwd"];
string email=WebConfigurationManager.AppSettings["EmailID"];
string exchangeuri=WebConfigurationManager.AppSettings["ExchangeserverURI"];

ExchangeService service = new ExchangeService();
service.Credentials = new WebCredentials(username, pwd, domain);
service.Url = new Uri(exchangeuri);
service.AutodiscoverUrl(email);
EmailMessage message = new EmailMessage(service);
message.ToRecipients.Add(e.Message.To[0].ToString());
message.From = new EmailAddress(email);
message.Subject = e.Message.Subject;
message.Body = e.Message.Body;
// The following method sends the mail and also saves a copy in the 'Sent Items' folder
message.SendAndSaveCopy();
}


That's it now you can send an email from AZURE using exchange service. :) Give a try if you are facing problems add a comment.

2)some applications depends on SMTP server.if this SMTP server resides in our intranet or company's network it is not easy to access from cloud.as the smtp is protected using firewalls and NAT's to avoid spam's or attacks by external users.

there are two ways to achieve this.

1)using service bus.

I am not going to explain it detailedly but ill give you steps how to do. if possible ill also update the code if I get some time. :)

create a wcf service which uses SMTP server and host it in IIS or windows service which reads mail message and using service bus connect to this wcf service that's it now you are good to send an email.

2)not recommended but if application is having mails to send on timely basis like daily once or for every 6 hr's some thing like this they can use this approach.

store the mail details in SQLAzure and read from sql azure using windows service and send the mails using your SMTP server.


That's it as of now these are the possibilities we have in AZURE and I did all these practically in my Azure applications.

Monday, 11 January 2010

How to access list attachments when we model with SPMetal tool

I just wondering how to access list attachments when we model using spmetal tool.

SPLists are ADO.net Data services models. Currently attachments are exposed as properties only on the client side but I didnt find any server side for this.

and we can access attachments by implementing Icustommapping interface on the entity.
SPlist item object will be available in mapto and mapfrom methods.

Friday, 1 January 2010

Vesa and Me

I met Vesa juvonen and Jukka Ylimutka. very nice talking to them.

Vesa,Jukka are Senior consultants of microsoft from Finland.

Vesa is a MCM in sharepoint.

Good experience with greate people like Arpanshah,Vesa and Jukka.

me with Vesa.

Arpanshah and me

I got a chance to meet Arpanshah. Arpanshah is director to Sharepoint.In december 2009 I met him. awsome experience talking to him.:)


me with Arpan. :)



Arpan's blog. you can find more new things in his blog which are coming in sharepoint2010.

Wednesday, 30 December 2009

Creating Performance Point service app.

lots of people in the discussion list are asking how to create the performance point service apps.

Here are the steps to create performance point service.

GUI

1.) Open your Central Admin page
2.) Click on Manage Service Applications
3.) Look for a Service Applications with a "Type" of "Secure Store Service Application", (if you don't have one, create a new one)
4.) Click on that, the App, (not the Proxy)
5.) If it tells you that you need to generate a key before you can use it, your key isn't setup yet
6.) In the Ribbon you'll see a Create or Generate Key button
7.) Click on that
8.) Enter a Key Passphrase
9.) Now go back up to the Manage Service Applications page
10.) Find your PerformancePoint Service App, (if you don't have one, create one)
11.) Click on the link to that App now
12.) When you get there, click on the first link "PerformancePoint Service Application Settings"
13.) Your Secure Store App's name should automatically be set in the text box
14.) Now you just need to give it the Unattended Service Account name that you want it to use




These are the actual commands, (generalized here), that I use to create the SS, Generate the Key, and create the PPS Application. You run these from within your SharePoint Management Shell.

******************************
** Create the Secure Store App and Key **
******************************
1.) New-SPServiceApplicationPool -Name -Account
2.) New-SPSecureStoreServiceApplication -ApplicationPool -AuditingEnabled -Name
3.) New-SPSecureStoreServiceApplicationProxy -DefaultProxyGroup:$True -Name -ServiceApplication (Get-SPServiceApplication | select DisplayName,ID | where-object { $_.DisplayName -eq }).ID.GUID
4.) Update-SPSecureStoreMasterKey -ServiceApplicationProxy ((Get-SPServiceApplicationProxy | select DisplayName,ID | where-object { $_.DisplayName -eq }).ID.GUID) -Passphrase
5.) Update-SPSecureStoreApplicationServerKey -ServiceApplicationProxy ((Get-SPServiceApplicationProxy | select DisplayName,ID | where-object { $_.DisplayName -eq }).ID.GUID) -Passphrase

***********************
** Create the PPS Application **
***********************
6.) New-SPServiceApplicationPool -Name -Account
7.) New-SPPerformancePointServiceApplication -Name -ApplicationPool
8.) New-SPPerformancePointServiceApplicationProxy -Name -ServiceApplication -Default
9.) Set-SPPerformancePointSecureDataValues -ServiceApplication (Get-SPServiceApplication | select DisplayName,ID | where-object { $_.DisplayName -eq }).ID.GUID -DataSourceUnattendedServiceAccount (New-Object System.Management.Automation.PSCredential , (ConvertTo-SecureString -AsPlainText -Force))

Opening HTML Files in Sharepoint 2010

I recently faced an issue where the customer was attempting to open HTML documents from a document library. He only had an option to download the document. He wanted the ability to open the HTML document directly within the browser.

By default, Sharepoint 2010 is blocking the ability to open HTML documents directly from a document library.

However this can be changed by adjusting the browser file handling option. The option is located here:


1. Central Admin\Application Management\Manage Web Applications.
2. Select General Settings for the specified web application
3. For Browser file handling, select permissive. The default is strict​

Wednesday, 25 November 2009

Azure Design patterns.

Design patterns for azure.

http://azuredesignpatterns.cloudapp.net/AppPatterns.aspx#hostedwebserviceworker

Sharepoint 2010 BETA is availiable now.

good news sharepoint guyssss here is the link to download sharepoint 2010.

http://msdn.microsoft.com/en-us/sharepoint/default.aspx

Download the SDK and start working :)

Thursday, 19 November 2009

DB Availability with Failover Database server.

Some times Sharepoint site will be down because of database server.

think if it is a production and u left for the day suddenly database server is down the next day you hav to come and fix the issue. :(

fortunately in sharepoint 2010 we can fix this issue with out doing anything. There is a new thing called Failover Database server.

We have to set this property. Sharepoint automatically picks the other database server automatically if the first or primary server is not available.

The other database which we are talking is a mirror of SQL database.

To set this property we have to do as below:

Central Admin-> Application management-> Manage content Databases-> DB->enter the sqlmirror DB value in "FailOver Database Server".

really a cool feature for Admin guys. :)

Content Recovery from Unattached Databases

Sharepoint 2010 is providing new feature to recover data from a sharepoint backup DB. without attaching the db to site.

Here you go for example I have a document deleted and it is not there in recycle bin as well so to recover that we have to get backup db attach to site and do some extra steps.

Now in sharepoint2010 they are providing an UI where we can attach a backupDB and can dig in to the sitecollections->sites->lists->items.

Here is the steps to do:

Central Admin->Backup and restore->specify the name in unattached content database data recovery-> DBname-> site->list->select export site or list ->specify location in harddrive.



So we can export that content or document to harddrive and can import in to the site.

this is a cool feature. :)

Restarting timer jobs using powershell in sharepoint 2010

This is the single line of powershell script which restarts the timerservice jobs in sharepoint 2010


Get -SPTimerjob | where {$_.name -match "hourly"} | start -sptimerjob.


this line says to get all the sptimerjobs where name mathces hourly and run that job.


still stsadm command works but powershell is rocking :) admin people must learn this powershell.

SSP in 2007 turnedout to Service Applications in sharepoint 2010

SSP(Shared service provider) in sharepont 2007 is turnedout to Service Applications in new sharepoint 2010.

SSP contains all the services in 2007. now each individual service is a stand alone Service application.

Ex: Search service application , People Service application, Metadata Service application...

each of these service applications has its own content DB's.

one application can have many instances of these services.

for example we can create 2 metadata services 1 for enterprise and 1 for bankingdomain

and we can link this service applications to more than one webapplication.

we can configure this service application when we creating the webapplication or we can configure this later by going..

Central Admin-> Manage Service applications -> Select the application (or)Create new -> enter the values for properties or edit the properties.

making services to run independently gives u more performance and more reusability.

Wednesday, 18 November 2009

Document Sets in Sharepoint2010.

Sharepoint 2010 is introducing new concept called DocumentSets.

Using this documentsets we can run workflows on set of documents,manage permissions,manage security..