Месечне архиве: Мај 2011

ПерформанцеПоинт и Грешка 33494

Један од мојих клијената позвао је данас када је њихово окружење ПерформанцеПоинт (у СхареПоинт 2010) покварио.  Једна од апликација сервера на фарми је понестаје простора на диску.  Обраћајући да, клијент деинсталира "превише" и на ПП све ствари престао да функционише.  Разни веб партс ће показати "неочекиване грешке. Грешка 33494. Additional details have been logged for your administrator”:

image

I looked up the error and didn’t find anything specific to “Error 33494” but this MSDN forums posting was helpful: http://social.technet.microsoft.com/forums/en-us/sharepoint2010setup/thread/E1FE189D-7F89-455D-A98B-C1A12D8626AB

I found ADOMD.NET here as a component in the SQL Server 2008 Feature Pack: http://www.microsoft.com/downloads/en/details.aspx?FamilyId=228DE03F-3B5A-428A-923F-58A033D316E1&displaylang=en

image

(click to enlarge)

I download and installed that and it fixed everything.

I think this is a pretty oddball kind of error, but if you hit it, you at least you have an option.

</крај>

Претплатите се на мој блог.

Следите ме на Туиттер на http://www.twitter.com/pagalvin

Листс.асмк, ГетЛистИтемс и фасцикле

Ја сам истраживао за некога данас око лист.асмк веб услугу као део СхареПоинт 2010 (и раније).  Она је била у стању да ставке листе на основној фасцикли (укључујући и имена субименике), али није могао да ставке у под-директоријумима.  Мало сам гледала около на интернетс и то је изненађујуће често питање.  Још, Нисам могао добити добар одговор на једноставно питање, "Ако ја знам фасциклу, како могу добити ставке у фасцикли?"  Да будем искрен, Нисам пробао све то тешко, јер сам хтео да схватимо ово сама за неко време Осмех.

Да бисте подесили ово, Направио сам сајт под називом "Сценарији блоггинг" и прилагођене листе по имену "Цустом Списак са под фасциклама".  Тада сам створио фолдере именоване:

  • Година 2005
  • Година 2006
  • Година 2007

Додао сам неколико ставки у фасцикли "Година 2006".  То је оно што изгледа:

image

Мој пријатељ не пише Ц # кода, већ користите Јава, па САПУН коверта је оно што је заиста потребно.  Да би се то, Написао сам мало јКуери а затим користи Фиддлер да бисте добили Стварни ХТТП разговор.

Ево релевантно јКуери (Копирао сам код доле испод ако желите да копирате / пасте):

image

Прво су кључ је да се укључе и <куериОптионс> и <КуериОптионс> чвор.  Други кључ је у томе <Фасцикла> чвор је УРЛ адреса на коју клијент има приступ.

Постоје и други начини да се ово, али ово је добро радио за мене када се користи јКуери.

Овде је САПУН коверта за горе:

<соапенв:Коверте КСМЛнс:соапенв =’хттп://сцхемас.кмлсоап.орг / сапун / коверти /’>                
  <соапенв:Тело>
    <ГетЛистИтемс КСМЛнс =’
хттп://сцхемас.мицрософт.цом / СхареПоинт / сапун /’>
      <листнаме>Прилагођену листу са под фасциклама</листнаме>
      <виевФиелдс>  
        <ВиевФиелдс>
          <ФиелдРеф Име = 'Наслов’ />
          <ФиелдРеф Име = 'ЕнцодедАбсУрл’ />
        </ВиевФиелдс>
      </виевФиелдс>
      <куериОптионс>
        <КуериОптионс>
          <Фасцикла>
хттп://демосервер1/Блоггинг Сценарији / спискови / прилагођене листе са под фасциклама / 2006 годину</Фасцикла>
        </КуериОптионс>
      </куериОптионс>
   
</ГетЛистИтемс>
  </соапенв:Тело>
</соапенв:Коверат>

Много примера и дискусија око овог ме је навело да верујем да све што ми треба је <КуериОптионс> и наведите име фасцикле.  За мене, Морам да га замотати у оба <куериОптионс> као и навести потпуно квалификовано УРЛ <Фасцикла> чвор.

Ево јКуери АЈАКС подешавање:

$(документ).спреман(функција() {
       био соапЕнв =
           "<соапенв:Коверте КСМЛнс:соапенв =’хттп://сцхемас.кмлсоап.орг / сапун / коверти /’> \
               <соапенв:Тело> \
                    <ГетЛистИтемс КСМЛнс =’хттп://сцхемас.мицрософт.цом / СхареПоинт / сапун /’> \
                       <листнаме>Прилагођену листу са под фасциклама</листнаме> \
                       <виевФиелдс> \
                           <ВиевФиелдс> \
                              <ФиелдРеф Име = 'Наслов’ /> \
                              <ФиелдРеф Име = 'ЕнцодедАбсУрл’ /> \
                          </ВиевФиелдс> \
                       </виевФиелдс> \
                       <куериОптионс> \
                         <КуериОптионс> \
                           <Фасцикла>http://demoserver1/Blogging Сценарији / спискови / прилагођене листе са под фасциклама / 2006 годину</Фасцикла> \
                         </КуериОптионс> \
                       </куериОптионс> \
                   </ГетЛистИтемс> \
               </соапенв:Тело> \
           </соапенв:Коверат>";

</крај>

Претплатите се на мој блог.

Следите ме на Туиттер на http://www.twitter.com/pagalvin

СПД Воркфлов Обрасци, Савети и трикови

I gave my presentation today at SharePoint Fest in Denver. Here’s the PowerPoint presentation itself: http://www.mstechblogs.com/paul/wp-content/uploads/2011/05/SharePointFest.pptx

Претплатите се на мој блог.

Следите ме на Туиттер на http://www.twitter.com/pagalvin

Листс.асмк, ГетЛист и "Вредност не сме бити нулл”

Открио сам да је данас ГетЛист() метода у листс.асмк веб сервиса мора да се зове веома пажљиво и да је склона да се баци мистериозни "вредност не може бити нулл" изузетак (и под претпоставком да је можете добити прошлости још горе генеричке поруке о грешци, “Exception of type ‘Microsoft.SharePoint.SoapServer.SoapServerException’ бачен. ")  Посебно, Нашао сам да не може да пружи било какав префикс на ГетЛист метода.  Следећи јКуери код илуструје тачку:

image

Ако то урадите, Веб услуга одговара са "Вредност не може бити нула" по ово виолиниста-условом ХТТП транскрипт:

<?xml version="1.0" encoding="utf-8"?>
  <сапун:Коверат
     КСМЛнс:сапун ="
хттп://сцхемас.кмлсоап.орг / сапун / коверти /"    
     КСМЛнс:кси = "
хттп://ввв.в3.орг/2001/КСМЛСцхема-инстанце"
     КСМЛнс:ксд ="
хттп://ввв.в3.орг/2001/КСМЛСцхема">

  <сапун:Тело>
    <сапун:Грешка>
      <фаултцоде>сапун:Сервер</фаултцоде>
      <фаултстринг>
        Exception of type ‘Microsoft.SharePoint.SoapServer.SoapServerException’ је бачена.
      </фаултстринг>
      <детаљ>
        <еррорстринг КСМЛнс ="
хттп://сцхемас.мицрософт.цом / СхареПоинт / сапун /">
Вредност не може бити нула.
        </еррорстринг>
      </детаљ>
    </сапун:Грешка>
  </сапун:Тело>
</сапун:Коверат>

Наравно, вероватно не би додао да "С0" префикс на сопствене, али неки алати су склони да то уради (као Ецлипсе).

То је све више збуњујуће / фрустрирајуће, јер друге методе толерише префикса.  На пример, the ГетЛистЦоллецтион метод не смета ако је прошло префикс, чак и са бесмисленим префиксима попут "киззи":

image

Ова "вредност не може бити нула" изгледа прилично уобичајено са листс.асмк па се надам да ће то помоћи некоме у будућности.

</крај>

Претплатите се на мој блог.

Следите ме на Туиттер на http://www.twitter.com/pagalvin

Бескрајно Гнезде <див> Ознаке и јКуери

Ово изгледа као такав био чудна тему, Нисам сигуран да је то заиста вреди блоговањем о, али то ми никада није престао пре, Дакле, идемо Осмех

Радим на пројекту се где сам вуче неке податке од претраге, паковање га у КСМЛ поруке и да КСМЛ се на крају претвара у ХТМЛ путем КССЛТ.  Има много јКуери укључен, један бит који имплементира неке таббинг функционалност.  Када кликнете на картицу (заиста, a <див>), јКуери позива сакрити.() и шоу.() на разним ДИВС (почетна страница оптерећење преузима сав садржај, па нема постбацкс у овом случају).

Гомила сати, табова логика почео чудно да се понаша, а он не приказује једну од мојих картица.  И на крају га пратио на чињеницу да Интернет Екплорер (најмање) мислили да <див> ознаке угнездио далеко, далеко дубље од интендед.Тхе програмера палети ће показати:

-<див ид = "Таб1Цонтент">
  -<див>
    -<див>
      -<див ид = "Таб2Цонтент">
        -<див>
           ..............................
                   </див>  <-Коначно показује да је затворен скроз доле!

Тако, ако јесам $("# Таб1Цонтент").сакрити(), Такође бих сакрити Таб2 и ја никада не бих могао показати Таб2 ако нисам такође показују Таб1.  Копира и лепи код горе у Висуал Студио и то показује сву облагање див је лепо горе, баш као што је требало да раде, изгледа овако:

-<див ид = "Таб1Цонтент">
  +<див>
  +<див>
-<див ид = "Таб2Цонтент">
  +<див>
  +<див>

Победио сам главом о зид за неко време и приметио да у стварном ХТМЛ код је генерисање много празна <див> ознаке, као:

<тело>

  <див ид = "Таб1Цонтент">

    <див ид = "ров1" />
    <див ид = "ров2" />

  </див>

  <див ид = "Таб2Цонтент">

    <див ид = "ров1" />
    <див ид = "ров2" />

  </див>

</тело>

(Изнад је вааааааааааааи поједностављена.  Празне див ознаке су потпуно важећи. Неки од мојих <див> ознаке су биле пуне садржаја, али многи још нису били.  Дошао сам до закључка да је мој <клс:-за сваки> директиве су се емитује на кратак форма див тагове када клс:за-сваки нису "пронашли никакве податке.  Сам приморан ХТМЛ коментар на излазу, као што је приказано:

image

 

Након што сам то учинио, све див је постројио и лепо ми је пребацивање картица почела да ради.

Као и увек, Надам се да ово помаже некоме у невољи.

</крај>

Претплатите се на мој блог.

Следите ме на Туиттер на http://www.twitter.com/pagalvin

Куицк Фик: "Садржај унесите име" $ ресурси:РепортСерверРесоурцес … не могу да садрже … специјалне карактере”

Ја сам провео неко време чишћења СхареПоинт 2010 место и једно од питања се односи на прочишћавање корумпиране / неисправно инсталиран СКЛ Сервер Услуге Извештај питање.  Проблем је настао када је један од мојих колега покушао да сачувате локацију као предложак, а затим направите креирате нову локацију на основу тог предлошка.  Саве операција радила добро, али када је покушао да створи нови сајт, СхареПоинт приказује следећу поруку о грешци:

Грешка

Тип садржаја Име '$ ресурси:РепортСерверРесоурцес,ДатаСоурцеЦонтентТипеНаме;"Не могу да садрже: \ / : * ? " # % < > { } | ~ & , два узастопна периода (..), или специјалне карактере као што су картице.

Ево екран капа:

 

image

Имао сам поглед на типове садржаја на сајт и нашао ово:

image

Ови типови садржаја су јасно нездрава.

Ово питање изгледа да дођу до много о интернетс и не изгледа да буде један консензус о томе како да га реши.  Нашао сам згодан табелу која мапирали лоше типу садржаја имена добрих имена тип садржаја овде: http://social.technet.microsoft.com/Forums/en-ZA/sharepoint2010programming/thread/cb03e866-8184-4943-acfe-cafffa1b8b7a.  Ја их ручно ажурирање тхусли:

image

(БригхтСтарр у име очигледно опционо, али не може да шкоди Осмех )

Ово је омогућило да креирате нови шаблон и није оставио ништа на другим сајтовима, укључујући и неке ствари које ПерформанцеПоинт Сервер потпуно другачија група људи радили.  Тада сам био у стању да створи нови сајт на предлошку.  Успех!

Нисам сигуран да је ово 100% решење, али мене и сви који су укључени поред ове досадне грешке.  Ако нађем нешто ново, Ја ћу писати исправку.  Моја нервоза произилази из чињенице да су ова имена не би требало да буде у реду на првом месту и тако поправио име за приказ, Ја не додирују унутрашње име. 

</крај>

Претплатите се на мој блог.

Следите ме на Туиттер на http://www.twitter.com/pagalvin

Један Узрок "творац овог квара није прецизирао разлог.”

Радила сам много посла са СхареПоинт претрагу у последње време, а посебно КеивордКуери класа, својства и методе.

Ако желите да поставите резултат да се врати резултате изнад и изван уобичајених осумњичених (погледајте овде), да га додате у колекцију СелецтедПропертиес, као у:

миКеивордКуери.СелецтПропертиес.Адд("xyzzy");

Много хвала и врха шешира за Кори Рот и овај изузетно корисно блогу (http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2008/02/19/how-to-use-the-moss-enterprise-search-keywordquery-class.aspx)

У мом случају, "Ксиззи" није заправо управља имовине.  Када сам је додао да у сваком случају СелецтедПропертиес, СхареПоинт је бацио један од мојих омиљених икада рунтиме изузеци:

"Творац овог квара није навео разлог."

Посебно ми се свиђа главни град "р" у разума.  Ово звучи ми као НЕТ еквивалент ".Немам уста, и морам да вриштим."

</крај>

Претплатите се на мој блог.

Следите ме на Туиттер на http://www.twitter.com/pagalvin

Ханди Референца: Дефаулт Резултати КеивордКуери Сеарцх

Када позовете Екецуте() Начин на КеивордКуери, можете да креирате РесултТабле основу РесултТипе.РелевантРесултс.  Овај фрагмент кода илуструје шта мислим:

РесултТаблеЦоллецтион ресултсТаблеЦоллецтион = миКеивордКуери.Екецуте();

РесултТабле сеарцхРесултсТабле = ресултсТаблеЦоллецтион[РесултТипе.РелевантРесултс];

Резултат табела ће имати следеће колоне информација: 

ВоркИд
Бр
Наслов
Аутор
Величина
Путања
Опис
Написати
Ситенаме
ЦоллапсингСтатус
ХитХигхлигхтедСуммари
ХитХигхлигхтедПропертиес
Цонтентцласс
IsDocument
ПицтуреТхумбнаилУРЛ
СерверРедирецтедУРЛ

Извео сам ову листу са СхареПоинт 2010 околина, Ентерприсе Едитион.  Надам се да ће бити згодно да некоме у будућности.

</крај>

Претплатите се на мој блог.

Следите ме на Туиттер на http://www.twitter.com/pagalvin

Један од разлога за: "Није да издвојите датотеке кабине у решењу”

Док је радио на Висуал Студио пројекат вебпарта данас, Ја сам малу поновно орг неких фајлова да се стави у фолдер _лаиоутс као део процеса распоређивања. Посебно, Сам преименовао у јс. Датотеку из "ТипеАхеад.јс" на "ТипеАхеад(стар).јс "  Планирам да га уклоне чим његов наследник "ТипеАхеад.јс" доказује тачно.  То је изгледало овако:

image

То је одмах изазвало проблем са Висуал Студио, када сам покушао да се распореди пројекат:

Error occurred in deployment step ‘Add Solution’: Није успело да издвојите датотеку кабини у раствору.

Испоставило се да не треба ставити у заграду именима датотека.  Уклонио сам паренс и да је решила проблем.

</крај>

Претплатите се на мој блог.

Следите ме на Туиттер на http://www.twitter.com/pagalvin