Havi Archívum: Május 2011

PerformancePoint és hiba 33494

Az egyik az én ügyfelek hívott ma, és mikor a PerformancePoint-környezet (a SharePoint rendszerben 2010) lerobbant.  A farm app-kiszolgálók egyike volt kevés a lemezterület.  Miközben foglalkozik,, az ügyfél uninstalled "túl sok", és a PP cucc minden megállt működését.  Különböző kijelzők azt mutatja, "váratlan hiba történt. Hiba 33494. További részletek nem lett naplózva a rendszergazda":

image

Felnéztem a hibát, és nem talált semmit jellemző "33494 hiba", de az MSDN fórumokban kiküldetés volt segíteni kész: http://social.technet.microsoft.com/forums/en-us/sharepoint2010setup/thread/E1FE189D-7F89-455D-A98B-C1A12D8626AB

Találtam ADOMD.NET itt, mint egy összetevő a SQL Server 2008 Szolgáltatáscsomag: http://www.microsoft.com/downloads/en/details.aspx?FamilyId=228DE03F-3B5A-428A-923F-58A033D316E1&displaylang=en

image

(Kattintson a nagyításhoz)

Töltse le, és beiktatott ez és ez rögzített mindent.

Azt hiszem, ez egy szép különc fajta hiba, de ha bejön, akkor, akkor legalább van egy választás.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Lists.asmx, GetListItems és a mappák

Csinálok néhány kutatás valaki ma körül a list.asmx webszolgáltatást, SharePoint részeként 2010 (és a korábbi).  Ő volt képes-hoz kap a lista elemeit a gyökérmappában (beleértve a tengeralattjáró-tartók nevei), de nem tudott kap az elemek tengeralattjáró-tartók-ban.  Csináltam néhány látszó körül a a internets, és meglepően közös kérdés.  Még, Tudtam, hogy egy jó az egyszerű kérdésre választ, "ha tudom, hogy a mappa, Hogyan jutok a cikkeket a mappában?”  Hogy őszinte legyek, Nem próbálom minden, amit kemény óta már akartam ábra, ez egy ki a saját egy darabig Mosoly.

Ennek beállításához, Létrehoztam egy webhely "Forgatókönyvek Blogging" nevű és „egyéni lista a Sub mappák"nevű egyéni lista.  Majd hozott létre nevű mappák:

  • Év 2005
  • Év 2006
  • Év 2007

Én hozzáadott néhány elem "2006-os évre" mappába.  Ez az, amit úgy néz ki, mint:

image

A barátom nem C# kód írása, de inkább a Java használata, így a SOAP-boríték volt mire ő igazán szükség.  -Hoz kap amit, Írtam egy kicsit a jQuery, és fiddler segítségével kap a tényleges HTTP-beszélgetés.

Itt van a megfelelő jQuery (Másoltam a kód le alul ha ön akar-hoz másol/tészta):

image

Azok első kulcsa tartalmazza mind a <queryOptions> és <QueryOptions> csomópont.  A második kulcsot, hogy a <Mappa> csomópont egy URL-címet, amelyhez az ügyfél hozzáfér.

Előfordulhat, hogy más ways-hoz kap ez, de ez munkás jól értem, amikor segítségével jQuery.

Itt van részére a fenti SOAP-boríték:

<soapenv:Boríték xmlns:soapenv =’http://schemas.xmlsoap.org/SOAP/Envelope/’>                
  <soapenv:Szerv>
    <GetListItems xmlns =’
http://schemas.microsoft.com/SharePoint/SOAP/’>
      <listName>Egyéni lista Sub-mappákkal</listName>
      <viewFields>  
        <ViewFields>
          <A FieldRef neve = "cím’ />
          <A FieldRef neve ='EncodedAbsUrl’ />
        </ViewFields>
      </viewFields>
      <queryOptions>
        <QueryOptions>
          <Mappa>
http://demoserver1 és a blogírás Sub mappák/év 2006 forgatókönyvek/listák/egyéni lista</Mappa>
        </QueryOptions>
      </queryOptions>
   
</GetListItems>
  </soapenv:Szerv>
</soapenv:Boríték>

Sok példák és körül ez a vita vezetett, azt hinni, hogy minden szükségem volt <QueryOptions> gombra, és adja meg a mappa nevét.  Nekem, Azt kell mindkét betakar ez belsejében <queryOptions> valamint egy teljesen minősített URL-adja meg a <Mappa> csomópont.

Itt van a jQuery AJAX-telepítő:

$(dokumentum).kész(függvény() {
       var soapEnv =
           "<soapenv:Boríték xmlns:soapenv =’http://schemas.xmlsoap.org/SOAP/Envelope/’> \
               <soapenv:Szerv> \
                    <GetListItems xmlns =’http://schemas.microsoft.com/SharePoint/SOAP/’> \
                       <listName>Egyéni lista Sub-mappákkal</listName> \
                       <viewFields> \
                           <ViewFields> \
                              <A FieldRef neve = "cím’ /> \
                              <A FieldRef neve ='EncodedAbsUrl’ /> \
                          </ViewFields> \
                       </viewFields> \
                       <queryOptions> \
                         <QueryOptions> \
                           <Mappa>http://demoserver1/Blogging Sub mappák/év 2006 forgatókönyvek/listák/egyéni lista</Mappa> \
                         </QueryOptions> \
                       </queryOptions> \
                   </GetListItems> \
               </soapenv:Szerv> \
           </soapenv:Boríték>";

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Lists.asmx, GetList és a "érték nem lehet null”

Ma rájöttem, hogy a GetList() a módszer lists.asmx webszolgáltatás nagyon óvatosan elnevezése vagy elterült-hoz dob egy rejtélyes "Értéke nem lehet null" kivétel (és hogy feltételezve, tudod kap múlt a még rosszabb általános hibaüzenet, "Kivétel típusú ' Microsoft.SharePoint.SoapServer.SoapServerException’ was thrown.")  Kifejezetten, Úgy találtam, hogy bármilyen típusú előtag GetList módszer nem biztosítható.  A következő jQuery objektumdarab illusztrálja a lényeg:

image

Ha csinálsz, hogy, "Értéke nem lehet null", per ez válaszol a webes szolgáltatás Fiddler-Amennyiben a HTTP transcript:

<?XML-verzió = "1.0" kódolás = "utf-8"?>
  <szappan:Boríték
     xmlns:SOAP ="
http://schemas.xmlsoap.org/SOAP/Envelope/"    
     xmlns:xsi = "
http://www.w3.org/2001/XMLSchema-instance
     xmlns:XSD ="
http://www.w3.org/2001/XMLSchema">

  <szappan:Szerv>
    <szappan:Hibatűrés>
      <faultcode>szappan:Kiszolgáló</faultcode>
      <faultstring>
        Kivétel típusú ' Microsoft.SharePoint.SoapServer.SoapServerException’ keletkezett..
      </faultstring>
      <Részletek>
        <ErrorString xmlns ="
http://schemas.microsoft.com/SharePoint/SOAP/">
Értéke nem lehet null..
        </ErrorString>
      </Részletek>
    </szappan:Hibatűrés>
  </szappan:Szerv>
</szappan:Boríték>

természetesen, valószínűleg nem adhat a "s0" előtag a saját, egyes eszközök elterült-hoz csinál ez, de (Holdas mint).

Ez még inkább zavaró a / frusztráló, mert más módszerek elviselni előtagok.  Például, a GetListCollection a módszer nem zavarja, ha azt nem lett előzi meg, még az olyan nonszensz előtaggal, mint "xyzzy":

image

Ez "értéke nem lehet null" úgy tűnik meglehetősen közös lists.asmx, így remélhetőleg ez segít valaki ki a jövőben a.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Végtelenül beágyazása <Div> Címkék és jQuery

Ez úgy tűnik, mint a oddball téma, Nem vagyok biztos benne, tényleg megéri blogging körülbelül, de amit soha nem leállt előtt nekem, so here we go Mosoly

Dolgozom a projekt, ahol vagyok húz a keresésből néhány adat, XML-üzenetet, majd az XML csomagolás végső soron részszabványokat HTML keresztül XSLT.  Van egy csomó jQuery érintett, egy kicsit néhány bejárási funkciót valósítja meg.  Ha rákattint egy lapon (valóban, egy <Div>), jQuery meghívja .hide() és .show() a különböző div-ekre (a kezdeti oldal teher letöltések minden tartalom, így van ebben az esetben nem a visszaküldések).

Egy csomó órával ezelőtt, Váltás a logikai lap kezdett kiszámíthatatlanul viselkednek, és ez nem mutat én a fülek egyikére.  Én végül nyomon azt le arra a tényre, hogy az internet explorer (legalább) azt hitte, hogy a <Div> messze egymásba ágyazott címkék, sokkal mélyebb, mint a tervezett.A fejlesztő eszköztár volna megjelenítése:

-<Div id = "Tab1Content">
  -<Div>
    -<Div>
      -<Div id = "Tab2Content">
        -<Div>
           …………………………
                   </Div>  <— Végül mutatja azt bezárták minden módon itt!

Így, én tett egy $("# Tab1Content").elrejtése(), Azt is elrejtheti az Tab2 és lehetett soha nem mutatni Tab2 ha nem is show Tab1.  Én fénymásoló és tészta a kód-ba visual studio, és megmutatta a div vonalba minden szépen, csak szeret ők voltak feltételezett-hoz csinál, mint ez keres:

-<Div id = "Tab1Content">
  +<Div>
  +<Div>
-<Div id = "Tab2Content">
  +<Div>
  +<Div>

Üt a fejem ellen a fal egy darabig, és észrevettem, hogy a tényleges HTML kódot generáló volt sok üres <Div> Címkék, mint:

<szerv>

  <Div id = "Tab1Content">

    <Div id = "row1" />
    <Div id = "row2" />

  </Div>

  <Div id = "Tab2Content">

    <Div id = "row1" />
    <Div id = "row2" />

  </Div>

</szerv>

(A fenti túlegyszerűsített waaaaaaaaaaaay.  Az üres div címkék teljesen érvényesek. Néhány én <Div> Címkék voltak teljes tartalom, de nem volt sok több.  Azért jöttem, hogy a megvalósítás, az én-m <XSL:for each> irányelvek kibocsátó voltak a rövid alakos div címkék, amikor az xsl:for each nem ' minden adat megkereséséhez.  A kimeneti HTML-megjegyzés kénytelen azt, Amint:

image

 

Után tett amit, a div szépen oszlopszélességeket és én fülre-kapcsol kezdett el dolgozni.

Mint mindig, Remélem, ez segít valaki, egy csipet.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Quick Fix: "A tartalomtípus neve „$ Resources:ReportServerResources … nem tartalmazhat … különleges karakterek”

Már eltöltött idő takarítás megjelöl egy SharePoint 2010 webhely és a karbantartási problémák egyike vonatkozik egy sérült / helytelenül telepített SQL Server jelentés Services probléma.  A probléma merült fel, amikor a kollégáim egyik webhely mentése sablonként próbálta, majd hozzon létre egy új, sablonon alapuló webhely létrehozása.  A Mentés művelet munkás finom, de amikor megpróbált új hely létrehozása, SharePoint megjelenik a következő hibaüzenet:

Hiba

A tartalomtípus neve „$ Resources:ReportServerResources,DataSourceContentTypeName;"nem tartalmazhat: \ / : * ? “ # % < > { } | ~ & , két egymást követő időszakok (..), vagy speciális karaktereket, például tabulátorokat.

Itt van egy képernyő-sapka:

 

image

Volt egy pillantást a tartalomtípusok a hely, és alapít ez:

image

Azok a tartalomtípusok is egyértelműen egészségtelen.

Ez a probléma, úgy tűnik, gyere sok a Internets, és ott nem úgy tűnik, hogy hogyan viselkedni megfejt ez egyetlen konszenzus.  Találtam egy kéznél levő táblát, amely a rossz tartalomtípus neve leképezve jó tartalomtípus neve itt: http://social.technet.microsoft.com/Forums/en-ZA/sharepoint2010programming/thread/cb03e866-8184-4943-acfe-cafffa1b8b7a.  Kézzel frissíteni azokat úgy:

image

(BrightStarr a név van nyilvánvalóan nem kötelező, de nem fáj Mosoly )

Ez engedélyezett én-hoz egy új sablon létrehozása, és nem break bármi más webhelyeken, beleértve néhány PerformancePoint Server dolog, amit egy teljesen különböző csoportnak voltak működő-ra.  Tudtam, majd a sablon alapján új hely létrehozása.  A siker!

Nem vagyok biztos benne, ez egy 100% Megoldás, de megvan nekem, és mindenkinek, aki részt múltbeli ez bosszantó hiba.  Ha találok valami új, I post frissítés.  Én idegesség ered, az a tény, hogy ezek a nevek nem kell rossz az első helyen és rögzítésével, a megjelenítendő név, Én nem vagyok a belső név érnek. 

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Egy ok esetében a "a hiba létrehozója nem adott meg okot.”

Amit csinál sok munka SharePoint keresési mostanában, és a kifejezetten az KeywordQuery osztály, Tulajdonságok és metódusok.

Ha azt szeretné, hogy az eredményhalmazt ad vissza eredményt, a szokásos gyanúsítottak túlmutató (lásd itt), a SelectedProperties gyűjtemény hozzáadása, mint a:

myKeywordQuery.SelectProperties.Add("xyzzy");

Sok köszönet és egy tipp, hogy kalap Corey Roth és Ez rendkívül hasznos blogbejegyzést (http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2008/02/19/how-to-use-the-moss-enterprise-search-keywordquery-class.aspx)

Az én esetemben, "xyzzy" nem kezelt tulajdonsághoz ténylegesen.  Amikor azt is Hozzáadtam SelectedProperties egyébként, SharePoint dobta egyik kedvenc valaha runtime kivételek:

"A hiba létrehozója nem adott meg okot."

Én különösen, mint a tőke "R" okát.  Ez úgy hangzik, hogy nekem, mint a.NETTÓ egyenértékű"Nekem van nem száj, és azt kell scream.”

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Kéznél levő hivatkozás: Alapértelmezett KeywordQuery Keresés eredménye

Amikor elindítania a végrehajtás() a módszer egy KeywordQuery, egy ResultType.RelevantResults alapuló ResultTable hozhat létre.  Ez a kódrészlet szemlélteti, hogy mit jelent:

ResultTableCollection resultsTableCollection = myKeywordQuery.Execute();

ResultTable searchResultsTable = resultsTableCollection[ResultType.RelevantResults];

Az eredményül kapott táblát lesz a következő oszlopok információk: 

Munkaazonosító
Rank
Cím
Szerző
Mérete
Elérési út
Leírás
Írás
SiteName
CollapsingStatus
HitHighlightedSummary
HitHighlightedProperties
ContentClass
IsDocument
PictureThumbnailURL
ServerRedirectedURL

Ez a lista azt levezetni egy SharePoint 2010 környezet, Enterprise edition.  Remélhetőleg ez lesz hasznos, hogy valaki a jövőben.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin

Egyik oka: „Nem sikerült a megoldás a cab-fájl kicsomagolása”

A visual studio-kijelző közben projekt ma, Én tett egy kisebb re-org néhány fájlt a telepítési folyamat részeként a _layouts mappában kell forgalomba. Kifejezetten, I. átnevezték a .js fájl "TypeAhead származó"TypeAhead.js"(régi).js"  Terv, távolítsa el azt, amint az utódja, "TypeAhead.js" helyes bizonyul.  Úgy nézett ki, mint ez:

image

Ez azonnal a visual studio problémát okoztak, amikor megpróbáltam telepíteni a projekt:

Hiba történt a telepítési lépés megoldás hozzáadása: Nem sikerült a megoldás a cab-fájl kicsomagolása.

Kiderül, hogy Önnek kellene nem tesz egy zárójelet a fájlnevekben.  Eltávolítottam a parens, és hogy megfejt a probléma.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin