SharePoint 2010 Toplu güncelleştirmeleri yükleyemiyorum

Geçenlerde başıma geldi, SharePoint 2010 KB 2687353 i indirdim ve sistemime yüklemeye çalıştım. Karşıma "Bu sistemde yüklü olan bu paket tarafından etkilenen ürün yok." mesajı geldi. 

İnternette hiçbir çözüm bulamadım. !!Sorun Türkçe Dil Paketinden kaynaklanıyormuş!!

Sistemimde Türkçe dil paketi yüklüydü, riski göze alarak aşağıdaki işlemleri yaptım (bakcup almayı unutmayın):

  1. Türkçe dil paketini kaldırdım. 
  2. SharePoint  2010 Products Configuration Wizard'ı çalıştırıp next,next next ile konfigurasyan güncellemesi yapmasını sağladım
  3. Güncelleştirmeyi tekrar çalıştırdığımda sorunsuz çalıştı.
  4. Tekrar 2. adımdaki işlemi yaptım
  5. Türkçe dil paketini kurdum
  6. 2. adımı tekrarladım
sonuç olarak güncelleştirme çalıştı.
Türkçe dil paketini kaldırdığınızda Türkçe template ile kurulan siteleriniz varsa geçici olarak o sitelere giremeyeceksiniz. Tekrar Türkçe dil paketi kurunca durum düzeliyor. Endişe etmenize gerek yok :)

SharePoint Service Application Pool ların listesi ve silinmesi

SharePoint üzerinde bir Service Application yarattığımızda(ör:User Profile Service Application) sharepoint IIS üzerinde bu Service Application için bir Application Pool yaratır.

IIS üzerinden Application Pool'u görmek istediğimizde Sharepoint tarafından yaratılan Application Pool ların encrypted olarak isimlendirildiğini görürüz.

Aşağıdaki powerShell komutu ile bu application poolların listesini düzgün bir şekilde görebiliriz.

Get-SPServiceApplicationPool

Listeden bir Application Pool silmek için:

Remove-SPServiceApplicationPool -Identity ApplicationPoolAdı

SharePoint 2010 User profile Service Application Yaratmak

 

SharePoint 2010 kurduğunuzda bir User Profile Service Application da default olarak kurulmuş olarak gelir.

Ancak, bazı nedenlerden dolayı bu servis application’u silip yerine yenisini yaratmamız gerekebilir. Şimdi bu işlem nasıl yapılır onun üzerinden geçeceğiz

 

Central Administration -> Manage services on server linkine tıklıyoruz

Açılan sayfada User Profile Service’ini Stopped ise Start linkine tıklayıp Started’a dönüşene kadar bekliyoruz.(F5 ile kontrol edin)

CentralAdministration -> Manage ServiceApplications sayfasına giriyoruz.

Burada sayfanın üst tarafında New Tab’ına tıklayıp açılan menüden “User Profile Service Application” linkine tıklıyoruz.

Açılan popover üzerinde gerekli bilgileri dolduruyoruz:

Eğer bi MySite’ımız varsa adresini yazıyoruz:

bilgileri doldurduktan sonra Create buttonuna tıklayıp uygulamanın yaratılmasını bekliyoruz.

 

Tekrar Central Administration -> Manage services on server linkine tıklıyoruz

“User Profile Sync..“ servisi stopped ise start ediyoruz.

 

 http://www.recepguzel.com/post/2012/10/04/SharePoint-2010-User-Profile-Servisinin-Konfigurasyonu.aspx

SharePoint 2010 Farm Admin kullanıcısının şifresini nasıl değiştiririm.

SharePoint 2010 üzerinde Farm Admin'i olarak atadığımız kullanıcının şifresini çeşitli güvenlik gereksinimleri nedeniyle değiştirmemiz gerekirse bunu aşağıdaki gibi yapabiliriz:

Öncelikle PowerShell'i Açıyoruz:

  • Şimdi aşağıdaki komutu yazıyoruz
  • > $p  =  Read-host    -AsSecureString
  • Enter’a basıldıktan sonra ekrandan şifrenin girilmesi gerekiyor (sadece yıldızlar görünecek). Şifre girilip enter’a basıldıktan sonra şu komut verilmeli
  • > set-SpManagedAccount -Identity domain\sproot -NewPassword  $p
  • Eğer şifreyi daha önce windowstan değiştirdiysek "-NewPassword" yerine "-ExistingPassword" yazmamız gerekiyor.

Kaynak : http://blogs.technet.com/b/seanearp/archive/2011/01/25/updating-passwords-on-sharepoint-2010.aspx 

 

SharePoint 2010 User Profile Servisinin Konfigurasyonu

SharePoint üzerinde active directory deki kullanıcıların bilgilerine erişmek ve Kişilerde arama özelliğini aktifleştirmek için User Profile Synchronization Servisini yapılandırmamız gerekiyor.

Bunun için:

  • Öncelikle Central Administration üzerinden “Manage service applications” linkine tıklıyoruz.

 

  • Servis uygulamaları listesinden “User Profile Service” servisini bulup, durumunun started olduğunu gördükten sonra servis üzerine tıklıyoruz.

  • Açılan ekranda Configure Synchronization bağlantısına tıklıyoruz

     

  • Create New Connection a tıklayıp Bilgileri aşağıdaki gibi dolduruyoruz

     

  • Popoulate Containers’a tıkladığımızda Active Directory içeriğini görüyoruz. Burada Select All butonuna tıklayıp OK ile işlemi kaydediyoruz.

    **Burada örnek olarak verdiğim "sproot" adlı kullanıcı benim sharePoint farm administrator account'ımdır. 

    Önemli Not: Farm Administrator kullanıcınızın (sproot) Active Directory üzerinde "Replicate Directory Changes" hakkı olmalıdır. Bu hakkı veremediyseniz sistem yöneticinizden Farm Administrator (sproot) kullanıcısı için geçici olarak "Domain Administrators" grubuna alınmasını sağlayınız. Aksi taktirde active directory ile senkronizasyon bağlantısı kuramayacaksınız. (Populate Container'a tıkladığınızda Active Directory gruplarının/kullanıcılarının listelenmesi yeterli hakkınız olduğu anlamına gelmez. Normal bir domain user'ı da bu bilgiler görebilir.)

    Önemli Not2: Konfigurasyon işlemlerinde hata alıyorsanız sisteminize en güncel SharePoint 2010 toplu güncellemelerini yüklemenizi öneririm http://technet.microsoft.com/en-us/sharepoint/ff800847.aspx

SharePoint 2010 ile Farklı SiteCollection üzerindeki listeyi görüntülemek

Bildiğiniz gibi SharePoint üzerinde faklı "Site Collection" lar kullandığımız zaman yarattığımız içeriği diğer bir "Site Collection" altında göremiyoruz (kod yazmadan).

Bu işlemi yapmak için yeni bir webPart yazmamız gerekiyor. Bu webPart içinde ListViewByQuery isimli bir control kullanarak adresini, view'ini ve ismini verdiğimiz bir liste öğelerini listeleyebiliriz.

 

Daha kolay anlayabilmeniz için önce basit bir versiyonunu yazacağız:
 
        protected ListViewByQuery viewByQuery = null ;
        protected EncodedLiteral encodedLiteral = null;
        protected override void CreateChildControls()
        {
            SPSite site = null ;
            SPWeb web = null ;
            this .siteUrl = "Http://intranet" ;
            this .sourceList = "Grup Duyuruları" ;
            site = new SPSite ( this.SiteUrl);
            web = site.OpenWeb();
            SPList sourceList = web.Lists[this .SourceList];
            viewByQuery = new ListViewByQuery ();
            SPQuery query = null ;
            viewByQuery.List = sourceList;
            query = new SPQuery (viewByQuery.List.DefaultView);
            viewByQuery.Query = query;
            this .Controls.Add(viewByQuery);
        }

Yukarıdaki örnekte aşağıdaki öğelerin değerlerini el ile verdik:

siteURL : Listemizin bulunduğu SiteCollection'un adresi
sourceList :Liste adı
query  : Liste filtresi (örnekte DefaultView kullandık) 

 

Eğer Parametreleri webPart üzerinden değiştirebilmek ve Webpartı özelleştirilebilir yapmak istiyorsak Kod bütünü aşağıdaki gibi olmalıdır:

#region using statements

using System;
using System.ComponentModel;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Runtime.InteropServices;
using System.Xml.Serialization;
using System.Text;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
using Microsoft.SharePoint.WebPartPages;
#endregion

namespace gosterici2.VisualWebPart1
{
    [ToolboxItemAttribute(false)]
    public class VisualWebPart1 : System.Web.UI.WebControls.WebParts.WebPart
    {
        // Visual Studio might automatically update this path when you change the Visual Web Part project item.
        private const string _ascxPath = @"~/_CONTROLTEMPLATES/gosterici2/gosterici2/gostericiII.ascx";

        #region protected child control variable definitions
        protected ListViewByQuery viewByQuery = null;
        protected EncodedLiteral encodedLiteral = null;
        #endregion

        #region webpart properties
        /// <summary>
        /// 
        /// </summary>
        private string viewNameField = string.Empty;
        [Personalizable(), WebPartStorage(Storage.Shared), WebBrowsable(),
         WebDisplayName("View Name"), WebDescription("View Name")]
        public string ViewName
        {
            get
            {
                return this.viewNameField;
            }
            set
            {
                this.viewNameField = value;
            }
        }
        
        /**********************************************************/
        /*Bir webparta property tanımlamak için gerekli kod*******/
        private string recepField = string.Empty;
        [Personalizable(), WebPartStorage(Storage.Shared), WebBrowsable(),
         WebDisplayName("İsminiz"), WebDescription("Adınızı yazınız")]
        public string RecepField
        {
            get
            {
                return this.recepField;
            }
            set
            {
                this.recepField = value;
            }
        }
        /**********************************************************/


        private string siteUrlField = string.Empty;
        [Personalizable(), WebPartStorage(Storage.Shared), WebBrowsable(),
         WebDisplayName("Site Url"), WebDescription("Site Url")]
        public string SiteUrl
        {
            get
            {
                return this.siteUrlField;
            }
            set
            {
                this.siteUrlField = value;
            }
        }
        /// <summary>
        /// 
        /// </summary>
        private string sourceListField = string.Empty;
        [Personalizable(), WebPartStorage(Storage.Shared), WebBrowsable(),
         WebDisplayName("Source List"), WebDescription("Source list to query")]
        public string SourceList
        {
            get
            {
                return this.sourceListField;
            }
            set
            {
                this.sourceListField = value;
            }
        }
        private Boolean disableFilterField = false;
        [Personalizable(), WebPartStorage(Storage.Shared), WebBrowsable(),
         WebDisplayName("Disable Filter"), WebDescription("Disable List Filtering")]
        public Boolean DisableFilter
        {
            get
            {
                return disableFilterField;
            }
            set
            {
                disableFilterField = value;
            }
        }
        private Boolean disableSortField = false;
        [Personalizable(), WebPartStorage(Storage.Shared), WebBrowsable(),
         WebDisplayName("Disable Sort"), WebDescription("Disable list sorting")]
        public Boolean DisableSort
        {
            get
            {
                return disableSortField;
            }
            set
            {
                this.disableSortField = value;
            }
        }
        #endregion

        #region overrides
        protected override void CreateChildControls()
        {
            base.CreateChildControls();
            SPSite site = null;
            SPWeb web = null;
            Boolean disposeSPSite = false;
            try
            {
                if (this.SourceList != string.Empty)
                {
                    viewByQuery = new ListViewByQuery();
                    if (this.SiteUrl != null && this.SiteUrl != string.Empty)
                    {
                        site = new SPSite(this.SiteUrl);
                        disposeSPSite = true;
                    }
                    else
                    {
                        site = SPContext.Current.Site;
                    }
                    web = site.OpenWeb();
                    SPList sourceList = web.Lists[this.SourceList];
                    viewByQuery.List = sourceList;
                    SPQuery query = null;
                    if (CheckIfViewExists(viewByQuery.List))
                    {
                        //use the view specified in webpart property
                        query = new SPQuery(viewByQuery.List.Views[this.ViewName]);
                    }
                    else
                    {
                        //use default view to initialized
                        query = new SPQuery(viewByQuery.List.DefaultView);
                    }
                    viewByQuery.Query = query;
                    viewByQuery.DisableFilter = this.DisableFilter;
                    viewByQuery.DisableSort = this.DisableSort;
                    
                    this.Controls.Add(viewByQuery);
                }
                else
                {
                    encodedLiteral = new EncodedLiteral();
                    encodedLiteral.Text = "This webpart is not configured.";
                    this.Controls.Add(encodedLiteral);
                }
            }
            finally
            {
                if (disposeSPSite)
                {
                    ((IDisposable)site).Dispose();
                    ((IDisposable)web).Dispose();
                }
            }
        }
        protected override void RenderContents(HtmlTextWriter writer)
        {
            EnsureChildControls();
            RenderChildren(writer);
        }
        #endregion

        #region helper methods
        private Boolean CheckIfViewExists(SPList list)
        {
            Boolean ret = false;
            foreach (SPView view in list.Views)
            {
                if (view.Title.ToLower() == this.ViewName.ToLower())
                {
                    ret = true;
                }
            }
            return ret;
        }
        #endregion
    }
}
 
Kaynak:http://blogs.msdn.com/b/ramg/archive/2009/04/22/implementing-a-simple-cross-site-collection-list-view-webpart.aspx

JQuery ile tablodan satır silmek

JQuery ile html tablodan satır silmenin en basit metodu:

  Aşağıdaki gibi bir tablonuz olduğunu varsayalım.

Ad Soyad  
Recep Güzel Remove
Ali Veli Remove


Tabloyu cshtml üzerinde yaratırken Modelden gelen bir listeyi kullanalım:
 
<table id="MusteriListe" border="1">
    <thead>
        <tr>
            <th>
                Ad
            </th>
            <th>
                SoyAd
            </th>
           
            <th>
            </th>
        </tr>
    </thead>
    <tbody>
            <tr>
                <td>
                    @item.Ad
                </td>
                <td>
                    @item.Soyad
                </td>
                <td>
                    <img id="imgDelete" alt="Remove" src="/Content/images/remove.png" onclick="deleteRecord(this);" />
                </td>
            </tr>
        
    </tbody>
</table>
 
imajımızın onClick eventine  deleteRecord(this) diyerek deleteRecord fonksiyonuna img nesnesini gönderiyoruz.
 
deleteRecord Fonksiyonunu da aşağıdaki gibi yaratıyoruz:
 
function deleteRecord(x) 
{
   $(x).parent().parent().remove();   
  //delete nesnesinin(<img>) parenti TD, onun da parent i TR dir. soldaki kod ilgili satırı(TR) siler.
}
 
ve satırımızı başarıyla silmiş bulunuyoruz :) 
 

337. Kısa Dönem

Merhaba,

Yakında vatani görevimi yapmakta olacağım için Mayıs 2011 e kadar sitede bir güncelle yapamayacağım.

Benimle beraber askere gidecekler için donanımhaber forumundan aldığım bazı bilgileri burada da paylaşmak istiyorum.

Detaylı bilgiler için forumu takip edebilirsiniz:
http://forum.donanimhaber.com/m_38937704/tm.htm 

Acemi birliğinde size verilecek eşyalar: 
Askeri kıyafetler,Yüz,El ve ayak havlusu.İnce Mavi Eşofman,Çorap,İçlik,İç çamaşırı,Diş macunu ve Diş fırçası,Eşyaları koymak için meşhur Mavi çanta ve Haki renkli Askeri çanta,Eldiven verecekler. Aşağıda almanız gereken önemli şeyleri belirtiyorum.Önemli olmayanları zaten yanında belirttim. 

Şimdiden HAYIRLI TESKERELER... 


Kısa Dönemler Acemi Birliğinde Neler Yapacak? 

Gittiğinizin 2. günü yukarıda belirttiğim şeyler verilir.Ertesi günü (birlikten birliğe değişliklik gösterebilir) selam verme,sağa dön,sola dön,sıraçıl,dirsek temas arası hizaya gel,hizaya gel vb. askeri ibareler öğretilmeye başlanır.İlk 14 gün içinde marş eşliğinde yürümeyi öğrenmiş yemin törenine hazır olmuş olursunuz.Yemin töreninden sonraki 14 günde atış eğitimi alırsınız. Bu 14 gün içinde kullanacağınız silahın özelliklerini,tutuş vb. tüm özelliklerini öğreneceksiniz.Atış yaptıktan sonra görev yapacağınız birliklere gönderilirsiniz. 

1. Şahsi temizlik malzemeleriniz. (Sakal ve koltuk altı tıraş makineleri, yüz ve banyo havlusu, özel bir marka kullanıyorsanız yüz ve banyo sabunu ya da duş jeli, cilt kremi, şampuan, diş fırçası ve macunu) Askerde veriyorlar ama yanınızda yinede götürmenizi tavsiye ederim. 
2. Mevsime uygun birkaç çift siyah çorap, birkaç takım iç çamaşırı, pijama veya eşofman, bir çift dayanıklı terlik, bir de tırnak makası. İç çamaşırı haki renk tercih edilmelidir. Askerî malzeme satılan yerlerden tedarik edebilirsiniz. (önemli
3. Kullanıyorsanız; nemlendirici el-yüz kremi 
4. Postal giyeceğinizden, ayak vurmalarına karşı pudra ve yara bandı (bol miktarda), ayak mantarına karşı da krem alabilirsiniz. (önemli) 
5. Toplu yerlerde uyuma probleminiz varsa göz bağı ve/veya kulak tıkacı. 
6. Telefon kontör kartı. (acemi birliğinizde çok sıkıntısını yaşarsınız o yüzden gitmeden önce almak en iyisi.) 
7. Siyah pilot kalem, orta boy ebatlı not defteri. (askeriyede de alabilirsiniz) 
8. Mektup yazmayı şimdiden düşünüyorsanız Zarf vb. şeyler. 
9. Varsa, sağlık raporları ile kullanmak zorunda olduğunuz ilaçlara ait sağlık raporlarınızı yanınıza alınız. (önemli
10. botun içine koymak üzere asgari iki adet vatka ya da tabanlık. (bot vurmasın diye) 
11. bot kilidi, boyundan askılı cüzdan, tuvalet kâğıdı. (çok önemli
12. Koltuk altı jeli. (Önemli değil.) 
13. Dikiş seti ve düğme. (önemli
14. Yatağı toplarken kenarlarını tutturmak için çengelli iğne. (Çok işe yarıyor. Her gün yatak düzeltme derdinden kurtuluyorsunuz.benCE ÖNEMLİ
15. Elbise askısı. (Önemli ama oradanda temin edebilirsiniz.Yanınızda götürmenize GEREK YOK
16. Bot için yedek bağcık. (Önemli değil) 
17. Banyo için mayo. (Önemli Değil) 
18. Kirli ve temiz çamaşır torbası. (Önemli herkesin dolabında olmak zorunda AMA Oradan Temin edebilirsiniz.) 
19. Ayakkabı boyası. (Önemli ancak birlikten ucuza temin edebilirsiniz.Yanınızda yük etmeyin.) 
20. Casio SAAT (Çok çok önemli.Ucuz. Çarşıdan mutlaka alınız.işinize çok yarayacak.) 
http://forum.donanimhaber.com/m_38937704/tm.htm
� * Yer Değiştirmek: Askerde çalınma var. Ancak Yer değiştirmeye sıkça rastlanır. Yer değiştirmek, bir eşyanın yerine kötüsünün koyulup, nispeten daha iyisinin alınmasıdır. 


SEVK İŞLEMLERİ 

Erken Sevk için başvuru (Normal gidilmesi gereken tarihten önce gitmek isteyen kişiler): son gün 31 ekim 2010 dir 

Normal sevklilerin başvurusu:1 kasım-30 kasım 

TEST VE MÜLKAT TARİHLERİ : 01, 02, 03 ARALIK 

4 diploma fotokopisi , 4 kimlik fotokopisi ve aslı, 2 tane de fotoğraf alın.Diplomanın aslı mutlaka yanınızda olsun rütbelilerin çoğu orjinalini istiyor ve o olmadan onaylamıyorlar. 

 Bir aksilik çıkmazsa 17 MAYIS 2011'de dönüyoruz!!

how to get default IUSR / IWAM password / IUSR ve IWAM şifresini nasıl görürüm

If you need to get IUSR or  IWAM password you can use "Scriptomatic 2.0" which built by Microsoft.
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=09dfc342-648b-4119-b7eb-783b0f7d1178&displaylang=en

You should follow the steps below:

 

  1. select "root\MicrosoftIISv2" from the WMI Namespace
  2. pick the "IISWebServerSetting" from the WMI Class
  3. select "VBScript" for Language
  4. select "Plain text" for Output Format
  5. you can see the generated text
  6. look for the "AnonymousUserName" and "AnonymousUserPassword"
  7. and use it where you want
Türkçe:
Eğer bir şekilde IUSR ve IWAM userlarının şifrelerine ihitiyacınız olursa Microsoft tarafından yazılan "Scriptomatic 2.0" işinizi görecektir.

 

 User bilgilerini almanız için aşağıdaki adımları izlemeniz gerekiyor:

 

  1. WMI Namespace alanından "root/MıcrosoftIISv2" yi seçiyoruz
  2. WMI Class dropdownundan "IISWebServerSetting" i  seçiyoruz
  3. Language için VBScript i seçiyoruz
  4. Output Format Plain Text olabilir
  5. Şimdi karşınıza istediğiniz bilgileri içeren bir editör açılacak
  6. burada AnonymousUserName ve  AnonymousUserPassword alanlarını bulun
  7. Bulduüunuz şifreyi nerede lazımsa kullanın :=)

 

 


 

Getdate() with LINQ or Entity / LINQ veya Entity ile Getdate() nasil cekilir?

EN:
Sometimes we need to use getdate() function instead of DateTime.Now. Because with getdate() we can get current date with correct format.

To be able to use Getdate() function from LINQ query you should create a view in SQL server.

Just Copy the query in the View and save as "GetDBdate".

SELECT     GETDATE() AS DBDate

Now you should update your Entity or DBML (add the view).
and write a LINQ query like below:

Convert.ToDateTime(db.GetDbDate.First().DBDate) 

TR:
Eğer LINQ/Entity sorgularında getdate() fonksiyonunu kullanmamız gerekiyorsa db de yeni bir view yaratmanız yeterli olacaktır :
Yeni bir view yaratın, Aşağıdakı query'i kopyalayın ve "GetDBDate"
 ismiyle kaydedin

 SELECT     GETDATE() AS DBDate

Şimdi Entity veya DBML inizi güncelleyin, yeni view i  de ekleyin

ve aşağıdaki gibi bir LINQ sorgusu yazın:

Convert.ToDateTime(db.GetDbDate.First().DBDate)