Interessant aplicació d'iPhone

image L'equip mòbil aquí a Slalom ha desenvolupat una aplicació de IPADE realment fresc que combina l'augment de realitat virtual w / capacitat fora de línia per proporcionar el que pot ser el millor detector de metro de Nova York i d'encaminament app disponible avui.

Aquí és el lloc que descriu més detalladament l'aplicació: http://www.nycstationfinder.com/.

No tinc cap producte de Poma així prova de xamfrà jo mateix, però sembla força fresc. Estic esperant que port això sobre a Android aviat.

</final>

Subscriure's al meu blog.

Follow me on Twitter http://www.twitter.com/pagalvin

MVP una altra vegada

Microsoft re-concedit m amb SharePoint MVP 1 de juliol aquest any i és menys emocionant del que era la primera vegada fa quatre anys.

La comunitat de SharePoint és només un lloc increïble.  Recordo quan em va ser introduït al SharePoint per meu empresari vell, Conchango.  Jo no era feliç sobre això somriure.  Havia estat vivint en un món de BizTalk durant un any o dos previs a la meva feina allà i abans que, va treballar en un altre món insular de persones i empreses que es guanyava la vida fora de Programari de progrés.  Dic "insular" perquè el món SharePoint és tot el contrari!

Sóc contínuament contenta i emocionada de ser part d'aquesta estranya comunitat en línia de gent que se sent estranyament obligat al bloc sense parar, renunciar a la seva dissabtes de franc conferències, perseguir els fòrums en línia, construir tot tipus de productes gratuïts colpejat fora d'aguantar en CodePlex i una miríada d'altres esforços de la comunitat de totes formes i mides. 

No sé què es tracta aquest producte que inspira aquest voluntariat i immersió, però espero mai els canvis.

</final>

Subscriure's al meu blog.

Follow me on Twitter http://www.twitter.com/pagalvin

Deixar que brilla exemples Lead the Way a creixent adopció de SharePoint

La meva primera entrada de blog de BrightStarr "pur" va ser publicat avui.  Heus aquí un teaser:

Hi ha hagut molta conversa sobre la Internets de tarda sobre el tema de l'adopció del SharePoint i especialment la manca d'ella. Ningú vol anar a tots els problemes del disseny d'una infraestructura agrícola i seguretat, participant en els tallers, armant un aspecte elegant, treballant en una arquitectura d'informació sòlida de roca que pot suportar les vicissituds de la companyia re-orgs i finalment, un rollout plenes de fanfàrria que descobreixin lloc tres mesos anar viure que menys de 50% de l'empresa empleats estan utilitzant SharePoint i majoria d'ells estan utilitzant it per substituir els vell servidors d'arxiu de xarxa ("la S:\ empenta").

Cap bala de plata (o correu de blog individual) es va a resoldre aquest problema. No obstant això, hi ha moltes coses que vostè pot fer per reduir el risc d'una anèmia SharePoint portal. Una tal tècnica és el patró"brillant exemple."

M'encantaria conèixer altres estratègies de l'adopció del SharePoint que li importa a compartir.  Si compartiu, Si us plau deixar com un comentari al bloc BrightStarr.

Llegeixi la cosa sencera aquí: http://www.brightstarr.com/US/Pages/blog-view.aspx?BlogID=52

</final>

Subscriure's al meu blog.

Follow me on Twitter http://www.twitter.com/pagalvin

"Accés denegat” per Default.aspx en un SharePoint 2010 Lloc de sub

Un dels meus clients va viure amb el seu SharePoint 2010 avui l'entorn.  Hem descobert que un determinat grup d'usuaris no podria accedir a la pàgina d'inici per defecte.  SharePoint va respondre amb la habitual "inicia la sessió com un altre usuari" i "Accés denegat" o "sol·licitar accés" resposta. 

Quan utilitzem la funció de "Accés comprovar" formidable es confirmà que usuaris finals realment tenia accés.  No obstant això, no podria arribar a la pàgina.

He seguit un munt de carreteres a diversos culs fins que em vaig decidir a comparar els elements web a la pàgina trencat contra una pàgina de treball similar.  Que feia posant la pàgina en mode de manteniment afegint"?contingut = 1 "a la pàgina. Així, s'assemblava "http://Server/subsite/subsite/default.aspx?contingut = 1 ". 

Això em va mostrar dos web peces anomenat "Error" amb una descripció com "Error" en la pàgina trencat.  No crec que prendre un gorra de pantalla en el moment.

Treia ells i el que resol el problema.

He vist una qüestió com aquesta vénen cap amunt en els fòrums en el passat i jo era molt escèptic sobre insistència del cartell que tenia seguretat configurat correctament.  Jo * saber * tenia seguretat configurar de dret somriure  La propera vegada, Vaig a ser més oberts i menys escèptic.

</final>

Subscriure's al meu blog.

Follow me on Twitter http://www.twitter.com/pagalvin

Mostres de XSLT i jQuery

He estat fent un munt de XSLT, jQuery i thought que i share uns quants fragments que altres el poden trobar útils en el futur.

Exemple 1: Emeten simple JavaScript / jQuery a XSLT:

<XSL:Partit de plantilla = "alguna cosa" XML:espai = "preservar">

  <!– Fora el camp ocult de filtres amistós de consulta en blanc –>
  <tipus d'escriptura = "text/javascript">
    $(document).preparat(funció(){
      $("#QueryFriendlyFilters").val("buit");
    });
  </script>

</XSL:plantilla>

Aquella mica emet una mica de JavaScript que espera per a la pàgina per acabar de carregar (a causa de la $(document).preparat(…)) i llavors conjunts el valor d'un camp ocult anomenat QueryFriendlyFilters al valor literal "buida".

Exemple 2: Ús <XSL:Si> per comprovar "superior",  "menys de", etc.

<XSL:Partit de plantilla = "alguna cosa" XML:espai = "preservar">

  <Div id = "fdcAllFilters">
 
    <XSL:Si test="@Count>0">
      <span class = "fdcFilterLabel">Filtres actuals:</span>
    </XSL:Si>

    <!– més coses passa aquí. –>

</XSL:plantilla>

El fragment damunt comprovacions per veure si hi ha un atribut anomenat "Comptar" de l'element "alguna cosa" més gran que zero.  L'XML darrere d'això seria una cosa així com:”

<alguna cosa Count = "5" />

Exemple 3: ITER a través de tots els elements, intercalant trucades de jQuery.

<!– ITER a través de tots els filtres i mostrar la correcta  enllaços. –>
<XSL:per a cada select = "UserFilter">

  <una classe = "FilterHref" href = "javascript:mySubmitPage('RemoveUserFilter','{@ ID}’)">[X]</un>

  <span class = "fdcFilterLabel"><XSL:valor de select="@FilterValue"/></span>

  <tipus d'escriptura = "text/javascript">

    $(document).preparat(funció(){
        <XSL:text><![CDATA[$("#QueryFriendlyFilters").val( ($("#QueryFriendlyFilters").val() + " ]]></XSL:text>\"<XSL:valor de select="@FilterValue"/>\"<XSL:text><![CDATA["));]]></XSL:text>
    });

  </script>

</XSL:per a cada>

El fragment de dalt és el més complex i hi pot haver més fàcils maneres de fer-ho.

L'XML darrere d'això s'assembla més o menys com aquest:

<UserFilter ID = FilterValue "123" = "xyzzy" />

Aquest fragment és itereu a través de <UserFilter> Nodes. 

En primer lloc que emet un àncora d'etiquetes que quan fet clic invoca una funció de JavaScript que és ja a la pàgina, "mySubmitPage" i de passa el valor d'un atribut la <UserFilter> node anomenat "ID". 

Llavors emet alguns jQuery que espera per a la pàgina carregar.  Aquell jQuery actualitzacions d'un camp d'amagat anomenat "QueryFriendlyFilters" per afegir el valor de l'atribut FilterValue.  Tingueu en compte tot el boig <XSL:text> i <![CDATA[ … ]]> matèria.

Això és tot, esperança que ajudi!

</final>

Subscriure's al meu blog.

Follow me on Twitter http://www.twitter.com/pagalvin

PerformancePoint i Error 33494

Un dels meus clients anomenats avui quan l'entorn de PerformancePoint (en SharePoint 2010) es va trencar.  Un dels servidors app a la finca estava funcionant baix en espai de disc.  Mentre que d'adreçament, el client ininstal·lava "massa" i la matèria PP tot parat de funcionar.  Diversos elements web mostraria "un error inesperat acudit. Error 33494. Detalls addicionals han estat registrat per l'administrador":

image

Vaig mirar cap amunt de l'error i no van trobar res específic a "Error 33494" però aquest fòrums MSDN publicar era útil: http://social.technet.microsoft.com/forums/en-us/sharepoint2010setup/thread/E1FE189D-7F89-455D-A98B-C1A12D8626AB

He trobat ADOMD.net des d'aquí com un component en l'SQL Server 2008 Grup de tret: http://www.microsoft.com/downloads/en/details.aspx?FamilyId=228DE03F-3B5A-428A-923F-58A033D316E1&displaylang=en

image

(feu clic per ampliar)

Puc descarregar i instal lat que i arreglava tot.

Jo crec que això és una mena de oddball bonica d'error, però si es colpeja, almenys teniu una opció.

</final>

Subscriure's al meu blog.

Follow me on Twitter http://www.twitter.com/pagalvin

Lists.asmx, GetListItems i carpetes

Jo estava fent una investigació per algú avui al voltant de la list.asmx web servei proporcionat com part del SharePoint 2010 (i anteriors).  Ella va ser capaç d'obtenir els elements de la llista a la carpeta d'arrel (incloent-hi els noms de sub-carpetes), però no podria aconseguir elements en subcarpetes.  Vaig fer algunes mirant al voltant de la internets i és una pregunta sorprenentment comú.  No obstant això, No podria aconseguir una bona resposta a la pregunta simple, "si jo sé la carpeta, com puc obtenir els elements a la carpeta?”  Per ser honest, No intento dur tot el que ja he volgut aquest un terme figura en el meu propi una estona somriure.

Per configurar-ho, He creat un lloc anomenat "Blogging escenaris" i una llista personalitzada anomenat "Costum llista amb subcarpetes".  Llavors vaig crear carpetes anomenades:

  • L'any 2005
  • L'any 2006
  • L'any 2007

He afegit uns elements a la carpeta de "Any 2006".  Això és el que sembla:

image

El meu amic no és l'escriptura de codi de c# però més aviat utilitzant Java, Així, els sobres de sabó, va ser el que realment necessitava.  Per aconseguir que, Vaig escriure una mica de jQuery i llavors utilitzava el violinista a la conversa d'HTTP present.

Heus aquí la jQuery rellevant (He copiat el codi avall per sota si vol copiar/enganxar):

image

És de primera clau per incloure a banda un <queryOptions> i <QueryOptions> node.  La segona clau és que el <Carpeta> node és un URL al qual el client té accés.

Pot haver-hi altres maneres d'aconseguir això, però això funcionava bé per a mi quan utilitzant jQuery.

Aquí hi ha les sobres de sabó per a l'anterior:

<soapenv:Sobres xmlns:soapenv =’http://Schemas.xmlsoap.org/SOAP/envelope/’>                
  <soapenv:Cos>
    <GetListItems xmlns =’
http://Schemas.Microsoft.com/SharePoint/SOAP/’>
      <NOMBRELISTA>Llista personalitzada amb subcarpetes</NOMBRELISTA>
      <viewFields>  
        <ViewFields>
          <FieldRef nom =' títol’ />
          <Nom de FieldRef ='EncodedAbsUrl’ />
        </ViewFields>
      </viewFields>
      <queryOptions>
        <QueryOptions>
          <Carpeta>
http://demoserver1/blocs Llista d'escenaris/llistes/personalitzada amb Sub les carpetes a l'any 2006</Carpeta>
        </QueryOptions>
      </queryOptions>
   
</GetListItems>
  </soapenv:Cos>
</soapenv:Sobres>

Un munt d'exemples i discussió al voltant d'això em va portar a crec que tot el que necessito és la <QueryOptions> i especifiqueu un nom de carpeta.  Per a mi, Jo necessitar als dos embolicar dins <queryOptions> així com d'especificar una URL plenament qualificat per a la <Carpeta> Node.

Aquesta és la configuració d'AJAX jQuery:

$(document).preparat(funció() {
       var soapEnv =
           "<soapenv:Sobres xmlns:soapenv =’http://Schemas.xmlsoap.org/SOAP/envelope/’> \
               <soapenv:Cos> \
                    <GetListItems xmlns =’http://Schemas.Microsoft.com/SharePoint/SOAP/’> \
                       <NOMBRELISTA>Llista personalitzada amb subcarpetes</NOMBRELISTA> \
                       <viewFields> \
                           <ViewFields> \
                              <FieldRef nom =' títol’ /> \
                              <Nom de FieldRef ='EncodedAbsUrl’ /> \
                          </ViewFields> \
                       </viewFields> \
                       <queryOptions> \
                         <QueryOptions> \
                           <Carpeta>http://demoserver1/Blogging Llista d'escenaris/llistes/personalitzada amb Sub les carpetes a l'any 2006</Carpeta> \
                         </QueryOptions> \
                       </queryOptions> \
                   </GetListItems> \
               </soapenv:Cos> \
           </soapenv:Sobres>";

</final>

Subscriure's al meu blog.

Follow me on Twitter http://www.twitter.com/pagalvin

Patrons de flux de treball de el SPD, Consells i trucs

Em va donar la meva presentació avui al SharePoint Fest a Denver. Heus aquí la presentació del PowerPoint: http://www.mstechblogs.com/paul/wp-content/uploads/2011/05/SharePointFest.pptx

Subscriure's al meu blog.

Follow me on Twitter http://www.twitter.com/pagalvin

Lists.asmx, GetList i "valor no pot ser nul”

Avui he descobert que la GetList() mètode en lists.asmx servei web ha de ser anomenat amb molta cura, o és propens a llançar un misteriós "Valor no pot ser nul·la" excepció (i que està suposant que pot aconseguir per davant del missatge d'error genèric fins i tot pitjor, "Una excepció del tipus ' Microsoft.SharePoint.SoapServer.SoapServerException’ s'ha llançat.")  Específicament, He trobat que vostè no pot facilitar cap tipus de prefix en el mètode GetList.  El següent fragment de jQuery il·lustra el punt:

image

Si fas això, el servei web respon amb "Valor no pot ser nul" segons aquest Fiddler-proporcionat expedient HTTP:

<?versió XML = "1.0" codificació = "utf-8"?>
  <sabó:Sobres
     xmlns:sabó ="
http://Schemas.xmlsoap.org/SOAP/envelope/"    
     xmlns:XSi = "
http://www.w3.org/2001/XMLSchema
     xmlns:XSD ="
http://www.w3.org/ 2001/XMLSchema">

  <sabó:Cos>
    <sabó:Culpa>
      <faultcode>sabó:Servidor</faultcode>
      <faultstring>
        Excepció del tipus ' Microsoft.SharePoint.SoapServer.SoapServerException’ va ser llançat.
      </faultstring>
      <detall>
        <errorstring xmlns ="
http://Schemas.Microsoft.com/SharePoint/SOAP/">
Valor no poden ser nul·les.
        </errorstring>
      </detall>
    </sabó:Culpa>
  </sabó:Cos>
</sabó:Sobres>

Clar, vostè probablement no afegir aquest prefix "s0" en el seu propi, però algunes eines són propensos a fer-ho (com eclipsi).

Això és el més confús / frustrant perquè altres mètodes tolerar prefixos.  Per exemple, el GetListCollection mètode no li importa si això és estat prefixat, fins i tot amb prefixos tonteries com "xyzzy":

image

Aquest "valor no pot ser nul·la" sembla bastant comú amb lists.asmx així que espero que això ajudarà algú fora en el futur.

</final>

Subscriure's al meu blog.

Follow me on Twitter http://www.twitter.com/pagalvin