miesięczne archiwum: Czerwca 2008

Czerwca 2008 Konferencja SUGDC — To oblewania

Uczestniczył mój pierwszy kiedykolwiek Konferencja programu SharePoint ten miniony weekend i to był wybuch.

Czwartek po południu, Pojechałem do Virginia, prowadzone przez mojego nowo zakupionego $50 GPS urządzenia wtyczka rzeczy do mojego telefonu. Urządzenie było bez skazy. Po pięć godzin jazdy, Miałem energii zrobić ładne biegać na młyn bieżnika a, jeszcze bardziej zaskakująco, miał energii, aby udać się do holu na reklamowane mówiącego koktajl godzina. N00b konferencji, że jestem, it turned out that the cocktail hour was really a ruse to get speakers to show up and help stuff papers and swag into shoulder bags for conference attendees 🙂

Z trudem spania bo mówił po pierwsze piątek AM. Nerwowość, dokuczliwy uczucie, że muszę dodać slajd do mojej prezentacji i bardzo niepokojące kota pokazać na Animal Planet trzymał mnie późno. Od tego czasu poszedłem spać późno, Naturalnie dostał na początku. Dodać slajd dość szczegółowe techniczne architektura. To było warte wysiłku, bo 25 minut q&A byłby bardzo niewygodne bez niego. Miałem szczęście dostać pierwszy slot w techniczne toru. Sahil Malik był pierwotnie zamiar mówić piątek AM i będę mówić sobota ale on potrzebne do wymiany razy. To pozwoliło mi zrobić mojej prezentacji i następnie usiąść i cieszyć się wszystko idzie do przodu piątek i sobota.

Prezentacja poszło OK. Zdecydowanie mają miejsca, aby ją poprawić. Mówił o jak mamy dostęp i korzystanie z usług sieci web z programu SharePoint Designer przepływu pracy przy użyciu akcji niestandardowej. Z biegiem czasu, Będzie tie tej informacji w mojej serii na co EUSP.com dla użytkowników końcowych, staramy się jak najlepiej korzystać z tego narzędzia. I wiał przez moje slajdy i demo w 35 minut, z przerażeniem w czasie. Na szczęście, Q&Był żywy, niewątpliwie pomógł fakt, że był wczesnym rankiem przed obiadem. Q&To moja ulubiona część każdej prezentacji.

Było wiele ciekawych tematów i mam nadzieję na blogu o nich szczegółowo w tym tygodniu (czas pozwoli, jak zawsze). Kolegów z CMS Watch pod warunkiem bardzo krytycznie jeszcze bardzo zachęcające przegląd programu SharePoint w pozycji na rynku. Różne dyskusje koncentrowały się na niedostatek zasobów programu SharePoint i trudności, że rekrutujący się znalezienie dobrych talent, który jest również "przystępne" w tym bardzo mocno rynku. Facet CMS Watch określonej puli zasobów ludzkich SharePoint jako jak "gildii." Jestem przede wszystkim zna ten termin w warunkach MMORPG i dał mi trochę emocji, to be honest 🙂

Punktem kulminacyjnym konferencji był po prostu spotkanie i dogania już "znanych ludzi" online na chwilę. Najlepszy był siedzi w barze z Becky Isserman (MossLover) dla 3 lub 4 godziny (i że, po zakończeniu picia na noc). Nie często się mówić o Ucieczka w kosmos lub Babilon 5 z Kansas City mieszkańców.

Lisa Bob był tam i jak zwykle, jest wir intra, czaty i po prostu szalony energii. Zaprosił mnie na śniadanie w sobotę z Sahil Malik i to było wspaniałe.

Sobota (dzień 2), Mike Lottera przeciągnięty sam na konferencję mówić o InfoPath i następnie dołączył do Becky na koniec dnia, aby zrobić coś w rodzaju ogólne Q&Sesja dla o 30 do 45 minut koncentruje się głównie na programie InfoPath (Mike) i AJAX (Becky). Żałuję, że Becky miał był w stanie przejść przez jej prezentacji pełnego/formalne, ale jestem pewien, że będziesz miał okazję zobaczyć, że jeden z tych dni. Mam wrażenie, ona będzie być "trafienia obwodu" posuwają się do przodu.

Mogłem iść i na. Dwa ostatnie punkty — finansowego Celem konferencji było zebrać pieniądze dla dzieci Miracle Network i on podniesiony $5,000. To było niesamowite. Wreszcie, Chcę publicznie podziękować Gary Blatt, Gary Vaughn i Bob Fox dla ostrzegania mnie i pozwolił mi mówić na konferencji. Oczywiście, dwa Gary miał zespół ludzi, wspieranie i organizowanie i was wszystkich były niesamowite. Miał wysokie oczekiwania, zanim poszedłem i było lepiej niż miałem nadzieję na.

Zachować w pogotowiu na następnej konferencji zaplanowano na 7 listopada i 8.. Oprócz niektórzy wielki zawartość, to jest świetny do spotkania się z wszystkich tych osobowości online, które poznałeś przez Blogi, Twitter, Forum, itp.

</koniec>

Subskrybowanie mój blog.

Technorati znaczniki:

Paryżu w rodzinie Żydowskiej i programu SQL Server: Love Story

Mój kolega pracuje na część sieci web w środowisku FBA. Wśród innych rzeczy, składnik web part ściąga jakieś dane z programu SQL server. Wielki plan dla tego projektu dyktuje, że DBA konfiguruje poziom bezpieczeństwa danych w SQL (w przeciwieństwie do osadzania identyfikator użytkownika w kwerendzie SQL lub inne podejścia).

Problemem jest to, że SQL server nie wie nic o nasze środowisko FBA, więc to nie można nam zaufać. Rozwiązaliśmy ten problem przez, powodu braku lepszego programu word, ręcznie personifikacji użytkownika reklamy tak, że możemy podłączyć do SQL takie, że danych SQL poziom zabezpieczeń działa.

Mimo że Paryżu w rodzinie Żydowskiej jest funkcją programu ASP.NET, we people SharePoint Nation nauczyli wyszukiwania różnych silników, że jeśli kwerendą w Paryżu w rodzinie Żydowskiej, to znaczy, że chcesz wiedzieć, jak skonfigurować FBA w SharePoint. Nie udało mi się znaleźć znaleźć wszelkie informacje na temat włączania FBA zorientowanych aplikacji ASP.NET do komunikowania się z SQL w sposób potrzebowaliśmy.

W trakcie badań to, możemy czytać ponownie książkę niniejszego artykułu: Personifikacja w programie ASP.NET

Więcej badań doprowadziło nas do tego artykułu codproject: http://www.codeproject.com/KB/cs/cpimpersonation1.aspx

Który pomógł nam napisać naszego kodu, który podaję poniżej. Nie jest to najbardziej eleganckie rzeczy, ale to działało. Mam nadzieję, że okaże się pomocne.

Oto kod, który pracował dla nas:

chronione void btnSearchCarrier_Click(obiekt nadawcy, E elementu EventArgs)
 {
 Spróbuj
 {
 ImpersonateUser iU = Nowy ImpersonateUser();
 // TODO: Zastąpić iU.Impersonate poświadczenia("NazwaDomeny", "Nazwa użytkownika", "Hasło");

//
 KOD
//

 iU.Undo();
 }
 połów (Wyjątek ex)
 {

 }
 }

// Przy użyciu personifikacji klasy określone poniżej.

publiczne Klasa ImpersonateUser
 {
 [DllImport("advapi32.dll", SetLastError = PRAWDA)]
 publiczne statyczne zewnętrzny bool LogonUser(
 Ciąg lpszUsername,
 Ciąg lpszDomain,
 Ciąg lpszPassword,
 int dwLogonType,
 int dwLogonProvider,
 ref IntPtr phToken);

 [DllImport("kernel32.dll", CharSet = CharSet.Auto)]
 prywatne zewnętrzny statyczne bool CloseHandle(IntPtr uchwyt);

 prywatne statyczne IntPtr tokenHandle = Nowy IntPtr(0);
 prywatne statyczne WindowsImpersonationContext impersonatedUser;

 // Jeśli możesz włączyć ten kod do biblioteki DLL, Upewnij się, że żądanie to
 // działa z FullTrust.
 [PermissionSetAttribute(SecurityAction.Demand, Nazwa = "FullTrust")]
 publiczne Personifikuj nieważne(ciąg NazwaDomeny, ciąg nazwy użytkownika, ciąg hasła)
 {
 Spróbuj
 {

 // Użyj funkcji LogonUser niezarządzanych aby uzyskać tokenu dla użytkownika
 // określony użytkownik, domena, i hasło.
 const int LOGON32_PROVIDER_DEFAULT = 0;

 // Przekazując ten parametr powoduje LogonUser utworzyć token podstawowy.
 const int LOGON32_LOGON_INTERACTIVE = 2;
 tokenHandle = Argumentu IntPtr.Zero;

 // Krok -1 Zadzwonić wykonywanie funkcji LogonUser Aby uzyskać dojście do tokenu dostępu.
 bool returnValue = wykonywanie funkcji LogonUser(
 Nazwa użytkownika,
 nazwa_domeny,
 hasło,
 LOGON32_LOGON_INTERACTIVE,
 LOGON32_PROVIDER_DEFAULT,
 REF tokenHandle); // tokenHandle - nowego tokenu zabezpieczeń

 Jeśli (FAŁSZ == returnValue)
 {
 int ret = Marshal.GetLastWin32Error();
 Console.WriteLine("Wykonywanie funkcji LogonUser wywołanie nie powiodło się zwracając kod błędu : " +
 RET);
 rzut nowe System.ComponentModel.Win32Exception(RET);
 }

 // Krok - 2
 WindowsIdentity newId = Nowy WindowsIdentity(tokenHandle);
 // Krok -3
 impersonatedUser = newId.Impersonate();

 }
 połów (Wyjątek ex)
 {
 Console.WriteLine("Wystąpił wyjątek. " + ex.Komunikat);
 }
 }


 /// <Podsumowanie>
 /// Zatrzymuje personifikacji
 /// </Podsumowanie>
 publiczne Cofnij nieważne()
 {
 impersonatedUser.Undo();
 // Wolne tokenów.
 Jeśli (tokenHandle != Argumentu IntPtr.Zero)
 Funkcji CloseHandle:(tokenHandle);
 }
 }

</koniec>

Subskrybowanie mój blog.

Technorati znaczniki:

Dodawanie do Lore: SSRS w słowach “rsAccessDenied”, Ale … Naprawdę mam dostęp

Kilka tygodni temu, Byłem w pracy z moim kolegą, autora projektu z udziałem SQL Server Reporting Services dodatek dla MOSS. Był rozwój składnika web part, który zapewnia fantazyjnych typu front-end do odpowiedniego raportu (główną cechą jest sprytny wyszukiwania na parametr z kilku tysięcy można wyszukiwać wartości za to).

To działa świetnie w środowisku programistycznym, ale w testach akceptacji użytkownika (UAT) środowisko, to nie byłby pracy. Rozpalanie debugera, chcemy zobaczyć szczegółów wyjątku takiego:

Uprawnienia przyznane użytkownikowi, że "UAT_domainmosssvc" są niewystarczające dla tej operacji.(rsAccessDenied).

Jeśli nie żyć zrewidować na powyższy błąd, uważasz, że to jest dość powszechne. Przerażająco typowe. Najgorszego rodzaju wspólnego, ponieważ ma wiele różnych głównych potencjalnych powoduje i czuje się"każdy proponowane rozwiązanie" prawo. Jesteśmy prawdopodobnie próbował je wszystkie.

W naszym przypadku, problemem było to, że została wykonana kopia zapasowa/przywracanie dev do UAT. Gdzieś w danych, coś było jeszcze odnosząc się do "DEV_domain" (zamiast zaktualizowane "UAT_Domain"). Stworzyliśmy nową witrynę, dodał, że składnika web part i że rozwiązać nasz problem.

Mam nadzieję, że to uratuje ktoś godzinę lub dwa w dół.

</koniec>

Subskrybowanie mój blog.

Technorati znaczniki:

Quick Fix: Dostęp do witryny programu SharePoint zgłasza [HttpException (0x 80004005): Upłynął limit czasu żądania.]

Jeden z moich kolegów programistów pracuje nad projektem w tym tygodniu i wpadłem na problem limit czasu podczas pracy na budowie niektórych szalone składnika web part. Jego składników web part została dobrze, ale "nagle" niepowiązanych witryny stał się bardzo slow i często limit z ten błąd:

[HttpException (0x 80004005): Upłynął limit czasu żądania.]

Zalogowałem się i zobaczył, że kilka innych witryn były dobrze. Podejrzewałem, że istnieją pewne ukryte składników web Part na stronie i za pomocą trusty ?zawartość = 1 techniki debugowania, W rzeczywistości znaleźć 11 składniki Web Part na stronie, tylko dwa z nich były widoczne. Jeszcze lepiej (z perspektywy let's-hope-I-find-something-ugly-here-that-I-can-fix), trzy z tych części zamkniętej sieci web miał nazwę "Błąd".

Po usunięciu tych składników web Part (która sama miała zaskakująco dużo czasu) i to rozwiązać problem. Na dziś 🙂

</koniec>

Subskrybowanie mój blog.

Technorati znaczniki:

W klasie FAST szkolenia jest Excellent

Zaczynam dzień 4 szybko jest partnerem szkolenia kierowany przez Larry Kaye tutaj w Needham, MA.

Ta sesja 5-dzień dzieli się na klasy (3 i 2 dni odpowiednio) zatytułowany "szybko ESP: Rozwój aplikacji wyszukiwania niestandardowego dla Sojuszu I partnerzy" i "szybko ESP: Rozwój aplikacji wyszukiwania niestandardowego dla partnerów Sojuszu II".

To jest prawdziwy boot camp typu klasy. Materiał jest głęboko (bardzo, bardzo głębokie). Instruktor (Larry) oczywiście zna się na rzeczy. Bardzo polecam ten trening, jeśli ty biorąc pod uwagę to.

</koniec>

SharePoint i szybko — Reese's Peanut Butter Cups aplikacji Enterprise?

Ive skończył się dzień 2 SZYBKIE szkolenie w słoneczny Needham, MA, i jestem pęknięcie z pomysłów (który wszystkich klas dobry trening nie do mnie). Jeden szczególny aspekt szybko ma mnie myślenie i chciałem to napisać, chociaż ono był wciąż świeże i normalne codzienne "rzeczy" pchnął go z mojej głowy.

Mamy SharePoint WSS 3.0 / Mech realizatorów twarz często trudny problem z projektu programu SharePoint rozs¹dnie sklejony: Jak zrobić, aby wszystkie dane nieoznakowane ładowane do programu SharePoint, tak, że pasuje w naszej architektury doskonale zaprojektowane informacje?

Dość często, to nie jest taki trudny problem bo mamy zakres sobie kłopotów: "Nie dbam o coś więcej niż 3 miesiąca życia." "My załatwię wszystko, co stare rzeczy z wyszukiwania słów kluczowych i będzie do przodu zrobimy to we właściwy sposób…" Itp.

Ale, co się stanie, jeśli nie mamy zakres sobie kłopotów i patrzymy na 10 tysięcy lub 100 tysięcy (lub nawet milionów) z dokumentów — ładowanie i znakowanie jest nasze pobożne życzenie?

SZYBKO może być odpowiedź.

FAST proces wyszukiwania zawiera wiele ruchomych części, ale to jest jeden widok uproszczony:

  • Proces robota wygląda na zawartość.
  • Znajdzie treści i rękach procesowi brokera, który zarządza puli procesorów dokumentu.
  • Proces ręce to jeden z procesorów dokumentu.
  • Procesor dokument analizuje dokument i poprzez proces rurociągu, analizuje bejeezus z dokumentu i rękach proces typu konstruktora indeksu.

Na statek szybki, Mamy dużo kontroli nad tym dokumentem przetwarzanie rurociąg. Możemy mieszać i łączyć o 100 składniki potoku i, najbardziej ciekawe, możemy pisać własne składniki. Jak mówię, SZYBKI jest analiza dokumentów, co w jaki sposób ale niedziela i kompiluje wiele przydatnych informacji na temat tych dokumentów. Te szalone szybko ludzie są wyraźnie szalony i obsesyjne o analizy dokumentu, ponieważ mają narzędzi i/lub strategii naprawdę klasyfikowania dokumentów.

Tak … za pomocą szybko w połączeniu z własnego niestandardowego składnika potoku, możemy pobrać wszystkie te informacje kontekstu z szybko i karmić go powrotem do MOSS. Może go coś takiego:

  • Dokument jest podawany na szybko z MOSS.
  • Normalny dokument szybko crazy obsesyjne analizy i kategoryzacji dzieje.
  • Własnego niestandardowego składnika potoku spada niektóre z tych informacji kontekstu się do bazy danych.
  • Proces naszego projektu odczytuje informacje kontekstu, sprawia, że niektóre decyzje dotyczące tego dokumentu MOSS w naszym IA i oznacza przy użyciu usługi sieci web i model obiektów.

Oczywiście, nie ma takiego zautomatyzowany proces może być doskonały, ale dzięki obsesyjne (i ewentualnie insane-but-in-a-good-way szybko ludzie), może mamy prawdziwe walki strzał w proces naprawdę skuteczne masy ładunku, to więcej niż tylko wypełnić bazy danych SQL z kilka ledwo można wyszukiwać dokumenty.

</koniec>

Subskrybowanie mój blog.

Nauka o użytkowników końcowych w www.EndUserSharePoint.com

Mark Miller na w http://www.endusersharepoint.com zbudował, z mojego doświadczenia, Najlepsza dla użytkowników końcowych skupia witryny programu SharePoint w ' Kula. W ostatnim miesiącu, został on zarejestrowany niektórych blogerów premier użytkownika końcowego skupia około przyczynianie się do "pierwszej stronie" na bieżąco, włączając ale nie ograniczając się do Paul Culmsee, Chris Quick, i Dessie Lunsford. On ma inne kolejce i gotowa przyczyniać się jako ich harmonogramy pozwolić.

I skoczył na okazję uczestniczyć i mój inauguracyjny post jest tutaj. Jestem pisania serii na jak korzystać z programu SharePoint Designer do tworzenia najwyższej klasy biznesowej rozwiązania przepływu pracy. Zgodnie z EUSP.com ostrości, tych artykułów będzie zawsze z przodu użytkownika końcowego i centrum.

Osobiście staram się na świecie programu SharePoint należy podzielić na trzy grupy: Konsultanci programu SharePoint, SharePoint pełnoetatowych pracowników twórców i użytkowników końcowych. Kiedy piszę, Często zadaję, które z tych grup może być zainteresowany w temacie? Najczęściej, W końcu Pisanie dla dwóch pierwszych (techniczne) grupy, głównie dlatego, że jestem konsultantem sobie; zawsze to łatwiej i bardziej autentyczne pisać o tych rzeczach, z którymi jesteś najbardziej znane na poziomie osobistym.

Jak już wspomniano przed, społeczność użytkowników końcowych jest znacznie, znacznie większe niż techniczne Wspólnoty. EUSP.com jest na najwyższym poziomie i serdecznie polecam go do wszystkich trzech grup. Strony laser focus jest oczywiście cenne dla użytkowników końcowych. Jednakże, programistów i konsultantów tylko może być lepiej w naszym zawodzie jeśli możemy zrozumieć i skutecznie reagować na potrzeby użytkowników końcowych, które obsługujemy. I know I need all the help I can get 🙂 Wypróbuj.

</koniec>

Subskrybowanie mój blog.

Wywoływania usługi sieci Web usługi SSRS z WSS / Mech w formularzach środowiska

Musieliśmy wywołać "CreateSubscription" Metoda na SSRS usługa sieci web, która jest obsługiwana w FBA zarządzanym środowisku, mech z niestandardowego składnika web part. Mamy trzymany dostawanie odmiany:

  • 401: Nie dozwolone
  • Obiekt przeniósł się

"Obiekt przeniósł się" wiadomość została najbardziej interesujące, bo mówił, że "obiekt" (Nasze usługi SSRS) przeniósł"" na login.aspx. Oznaczało to wyraźnie, że miał jakiś problem uwierzytelnianie.

W końcu sobie sprawę, że Zakładka wpis w blogu przez Robert Garret, która określała sposób wywoływania usługa sieci web WSS/mech ogólnego życia wewnątrz środowiska FBA. Należy zauważyć, że nie można połączyć bezpośrednio do artykułu (jak z 06/09/08) bo chce do uwierzytelnienia. Mogę podać link prowadzi do "wszystkie posty" widok i można zlokalizować określonego artykuł wyszukując "Uzyskiwanie dostępu do usług sieci Web mech przy użyciu uwierzytelniania opartego na formularzach".

Oto kod, który pracował dla nas:

ReportingService2006 r = pusty; 
// Uwierzytelnienia Auth uwierzytelnianie = Nowy Uwierzytelnianie(); 
źrURL = "http://URL/_vti_bin/Authentication.asmx";
źrCookieContainer =
Nowy CookieContainer();
LoginResult wynik = auth.Zgłoś się do systemu("nazwa użytkownika", "hasło");
Jeśli (wynik.Kod błędu == LoginErrorCode.NoError) 
{
// Błąd nie, tak dostać ciasteczka.
Ciasteczka CookieCollection = auth.CookieContainer.GetCookies(Nowy URI(źrAdres URL));
Cookie authCookie = pliki cookie[wynik.Nazwę CookieName];
r =
Nowy ReportingService2006();
RS.URL =
"http://Server/_vti_bin/reportserver/ReportService2006.asmx";
RS.CookieContainer =
Nowy CookieContainer();
RS.CookieContainer.Add(authCookie);
}
Spróbuj
{
  RS.CreateSubscription(Raport, extSettings, desc, eventType, matchData, parameters1);
}
połów (Wyjątek ex)
{
  Console.WriteLine(ex.Message.ToString());
}

Tłumaczę rzeczy do pracy jak to:

  • Naszej strony sieci web musi dial-up usługę uwierzytelniania i powiedzieć, "Hej, Tony, to mnie!".
  • Usługa uwierzytelniania odpowiedzi, mówiąc:, "Hej, Wiem, że. Jak są dzieci? Tutaj jest token."
  • Nazywamy się usługa SSRS i powiedzieć, "Tony wysłał mi, Tutaj jest tokenem."

</koniec>

Subskrybowanie mój blog.

Wykonano analizy miesięczne wyszukiwania?

Dobrą praktyką jest, chyba nawet najlepszym rozwiązaniem, opisz swoje sprawozdania z poszukiwań, raz w miesiącu i szukać możliwości, aby dodać najlepsze zakłady, dostroić swój tezaurusa i może nawet odkryć kilka analiz biznesowych, które kryje się inaczej do zarządzania.

To już 3 miesiąc. Czas na awastin’ 🙂

</koniec>

Subskrybowanie mój blog.

Technorati znaczniki:

Nawigacja fasetowa ogrodzenia opiekunka nie więcej

Miałem dziś powód do gry o z witrynie CodePlex fasetowa dziś projekt.

To już za chwilę, ale wahałem się pobrać i używać go z przyczyn zwykle (przede wszystkim brak czasu), Plus wręcz strach 🙂

Jeśli szukasz do poprawy poszukiwania i odkrywania nowych możliwości, go pobrać i zainstalować go, gdy masz godzinę lub tak wolnego czasu. I po instrukcje obsługi instalacji i zajęło mi niecałe 20 minut, aby mieć go zainstalowanego i pracy. Zapewnia on jazdy wartość zero.

To wygląda dość trudne do rozszerzenia. Autorzy dostarczają szczegółowe bramek dla scenariusza BDC złożonych. Może brakuje to, ale szkoda, że dostarczą one również prostsze scenariusz obejmujące jedną z właściwości istniejącego lub może być dodanie jednego nową właściwość zarządzaną. Powinien spróbować i napisać, że się sobie w następnym okresie czasu.

Motto — w kilka minut, można zainstalować, go skonfigurować, używać go i dodać trochę dość chłodne funkcjonalność waniliowym poszukiwaniu mchu i być bohaterem 🙂

</koniec>

Subskrybowanie mój blog.

Technorati znaczniki: