- Dawoodi Bohras are a section of the Shiite-Ismaili-Mustaali sect, who believe in the progeny of the Prophet Mohammed (SAW), the Fatimid Imams as the highest authority in all matters. In the absence of the Imams (seclusion) the Dai-al -Mutlaq are the representative of the Imam of the time and have the authority of the Imam. Our current Dai-al-Mutlaq, the 53rd in the office is Syedna Mufaddal Saifuddin (TUS), whom we refer to as Aqa Moula.
- Dawoodi Bohras are a trading community with a large number of its members involved in business - ranging from general stores to high end industry machinery.
- We have a hierarchical governance system, where in local jamaats are established for governance of everyday affairs of the members. These jamaats are collectively under a jamiat (group of jamaats) which finally report to Syedna Mufaddal Saifuddin (TUS)'s office.
- We are a close knit community and have frequent religious gatherings in our localities, which binds all members together. Most Dawoodi Bohras are easily identified - men wearing topi and beard and women wearing ridas (similar to a burqa but multi-coloured).
- Dawoodi Bohras are a peace-loving community having a global presence. A major part of the population resides in India, but a large number of Dawoodi Bohras also reside in Africa, USA, UK and Pakistan.
- We have an annual 9-day gathering during Ashara Mubaraka, to commemorate the martyrdom of Imam Hussain (A.S.), grandson of Prophet Mohammed (SAW). Our religious head, Syedna Mufaddal Saifuddin (TUS) delivers religious sermons during this period. This event is attended by a large number of community members every year, at the location specified by Syedna Mufaddal Saifuddin (TUS). Though members can also attend sermons at their local jamaat, which are delivered by people appointed by Syedna Saheb (TUS).
Monday, May 14, 2012
The Dawoodi Bohra community
Thursday, May 10, 2012
"I cannot delete this column from my list??" - Well that must be a SharePoint 2010 Peristent column
I recently ran into a problem where one of my users added a site column called "Target Folder" to their SharePoint list and later realized that that column was not required. So the user wanted to delete the "Target Folder" column. That is the most basic SharePoint task that is there to be done and so I wondered that why is this user coming to me for something so trivial.
Alas! Everything in SharePoint is not what it seems. I went to the list settings clicked on the column and I could not find the delete button in fact I could not find any means to edit that column. What happened here? I checked some other columns (Had my farm gone crazy?) No! Every other column in that list (or for that matter in the site) seemed absolutely fine.
After a few hours of digging here and there I turned to Master Google and I was enlightened!
There are a set of site columns which are Persistent site columns and once added to a list these columns cannot be modified or deleted (through the SharePoint UI). Also, if you add these site columns to a custom site content type you will not be able to delete the site content type as well. On attempting to delete the site content type you will get an error stating - "The content type is in use and cannot be deleted" even though you have not used the content type anywhere.
Here is a list of site columns which are persistent:
- Active
- Aliases
- Article Date
- Byline
- Contact
- Contact E-Mail Address
- Contact Name
- Contact Picture
- Custom Router
- Image Caption
- Page Content
- Page Icon
- Page Image
- Priority
- Properties used in Conditions
- Property for Automatic Folder Creation
- Rollup Image
- Route To External Location
- Rule Name
- Scheduling End Date
- Scheduling Start Date
- Submission Content Type
- Summary Links
- Summary Links 2
- Target Audiences
- Target Folder
- Target Library
- Target Path
To delete these site columns from your list you will need to do so by using PowerShell commands as follows:
$web = Get-SPWeb (Your site URL)
$list = $web.Lists[(Your List Name)
- ]
$field = $list.Fields[(Your Column Name)
$field.AllowDeletion = “true”
$field.Sealed = “false”
$field.Delete()
$list.Update()
$web.Dispose()
And.. I hope the rest of your day (if left) is nice!
- Huzefa Mala
I am Back... to Blogging
Many things have changed in life since my last stint with blogging.
So, lets talk professional here : I have started with SharePoint 2010 and it's great (Wait! But that's old news. SharePoint 2010 has been here for almost 2 years now!) Yeah, I know, but I came back to blogging after a long time.
Though I have a huge number of things to explore yet I am still very happy with the improvements provided and honestly I don't know how to work without the ribbon now.
So, planning to keep a record of all my struggles with SharePoint 2010 here.
Saturday, July 10, 2010
There's a BUG! There's a BUG!! There's a BUG in the Discussion Board
Recently I was working with discussion boards in MOSS 2007. All seemed well. I had to create a simple discussion board with approval. "No big deal!", "That's non-IT stuff if you use SharePoint!"....... If this is what you feel you are in for a BIG surprise........ (just like I was :-) )
So I went ahead and created a Discussion Board, went into versioning settings, selected "Require Content Approval" and did a few test runs. Everything seemed to be working fine until I tested with different users.
Problem: User X writes a new post. This post goes for approval to User A. Until User A approves the post this post will not be visible to all the users. So the obvious thing to do is for User A to approve which he does but as soon as User A approves the post, User A's name starts appearing everywhere in the post viz-a-viz in the quoted text section, the picture of the person who started the thread. And poor User X who actally started the post is lost.
Reason: Now, when User A approves the post, he/she becomes the user to last update the post i.e. the modified by column of the post is updated to User A. And it so happens that in the flat or threaded view of a discussion the name of the user who last modified the post is displayed. But in our "content approval" case it sends a very wrong message. If you go back to the subject view to see the entire list of threads you see that the User X is still the creator of the post.
Now what: I had posted a question on MSDN forums, this is the link. I was not too satisfied with the answer. It stated to write an event receiver to update the modified by column of the post back to the created by column..
I wish there was a better way....
Tuesday, June 15, 2010
Copying Multipl User Field from one SharePoint List to another
So once again I landed up in trouble because of the Person or Group field (Multiple Selection). Refer earlier post.
Now, this time what I needed to do is I simply needed to copy a Person or Group field with multiple selection enabled to another such column in another list, through an Event Receiver.
You might think - "Why is he writing an event receiver?? Why can't he just use a simple SPD Workflow??"
But as usual.......... there is a catch!!
I have created a SharePoint site with Forms Based Authentication (FBA). My users no longer come from the Active Directory, they come from an SQL Membership API database.
And.... SPD Workflows run under the OWSTIMER.EXE service not the w3wp.exe service.
(For general information the w3wp service is created by the IIS and is used to handle web requests coming to a web server. The OWSTIMER service is created by the Windows SharePoint Timer Service and is used to execute scheduled jobs of SharePoint.)
So, since the SPD Workflows run under a different service, they cannot read the web.config placed under the IIS Service, therefore, they cannot read the Membership API database settings, therefore, SPD Workflows cannot identify FBA users.
So, I write a little bit of code to perform the task at hand i.e. copying multiple users from one column to another (using event receiver).
But again..... things are not as simple as you think. I write this line of code:
oDestinationList["MultiUser"] = oSourceList["MultiUser"];
here
- DestinationList is Destination List object
- SourceList is Source List object, and
- MultiUser is the name of the field
but this simple line of code doesnt work. It states that the source and destination objects are not of the same type and cannot copy code!!!! Why????? I have no clue!
On googling I found a long procedure for copying multiple user fields: Create a SPFieldUserValueCollection object and append user names in this object etc.etc..... thats too much work...
So, on doing a little bit of research I found that there IS a simpler way of achieving this. Here's the code:
oDestinationList["MultiUser"] = Convert.ToString(oSourceList["MultiUser"]);
and it worked!!!! Hurray!!!!
Really SharePoint is funny!! :)
Huzefa Mala.
Monday, June 14, 2010
Send E-Mails to SharePoint Multiple User Field SPD Workflow
It sounds pretty simple - I needed to send mails using the Workflow to users who were stored in a Person or Group field.
You might think - "What's the big deal in that??".... But here's the catch. The Person or Group field I am referring to allowed multiple user selection.
==Bam==
All hell broke loose. How was this possible??? The Person or Group field just doesn't show up in the Workflow lookup! What do I do? Will I need to write an event receiver? Ohh!!! I didn't want to write code here? It seemed so simple. But wait..... lets try to fool SharePoint.
OK so first I do not allow multiple user selection in my Person or Group field. (You might think what about the already existing records? Data loss! Ya I know.... you might have to do this the hard way - Create a template for your list including content, recreate your list using the template you just created and after finishing all the steps mentioned here add all the entries again..... I told you this was the hard way!)
OK continuing with fooling sharepoint...... now, on preventing multiple user entries my Person or Group field starts appearing in the Workflow lookup for sending mails.
I complete my workflow steps, go back to my list and again allow multiple user selection in my Person or Grop field.
Now lets check whether the workflow is giving any errors.....
No......... no errors! Congratulations! SharePoint has been fooled! (Now can re enter your entries as I had mentioned above)
Happy SharePointing! :)
Monday, May 24, 2010
Mohandas Karamchand Gandhi aka Mahatma Gandhi
I was thoroughly amazed! I couldn't believe that how could I have missed these points about the Mahatma's life earlier. But what I read made me feel different.
Mahatma Gandhi was not just the man who helped India attain independence. He was a man who showed the world what compassion and love is. You don't need to be an Indian to realize his efforts. You can belong to any nationality, caste, religion and I am sure you will be amazed by the sheer selflessness of Mahatma Gandhi.
Mahatma Gandhi was not talented or skilled. The only gift he had received from the Almighty was his determination and truth. And through these two seemingly ordinary talents he created a new chapter in world history.
Albert Einstein once stated about Mahatma Gandhi that - "Generations to come, it may be, will scarcely believe that such a one as this ever in flesh and blood walked upon this earth."
And this is very true! It is very difficult to beleive that such a selfless person ever existed on this planet, but I know he did and he is the father of our nation.