Solució al problema: “FileNotFoundException” Amb el meu tret d'auricular.

Jo estava treballant en un tret de la setmana passada que vols afegir alguns auriculars d'esdeveniment a una instància de llista específica. (He blogged una mica sobre aquell receptor llista aquí).

Utilitzant la línia d'ordres, Podria instal·lar el tret amb cap error (però vegeu més avall per l'error ocult). Quan vaig intentar desplegar el tret en el lloc, MOLSA queixat d'una «FileNotFoundException" error. Aquesta entrada del blog es descriu com el resolia.

Aquest és l'error que MOSS em va mostrar en el navegador web:

Tret d ' b2cb42e3-4f0a-4380-aaba-1ef9cd526f20’ no es podria instal·lar perquè la càrrega de l'assemblat receptor d'esdeveniment "xyzzyFeatureReceiver_0" ha fallat: System.IO.FileNotFoundException: No es pot carregar arxiu o Assemblea ' xyzzyFeatureReceiver_0’ o una de les seves dependències. El sistema no pot trobar el fitxer especificat.
Nom d'arxiu: ' xyzzyFeatureReceiver_0’
a System.Reflection.Assembly.nLoad(Nom del fitxer AssemblyName, Corda codegraden, Proves assemblySecurity, Muntatge locationHint, StackCrawlMark& stackMark, ThrowOnFileNotFound booleana, ForIntrospection booleana)
a System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Proves assemblySecurity, StackCrawlMark& stackMark, ForIntrospection booleana)
a System.Reflection.Assembly.InternalLoad(Corda assemblyString, Proves assemblySecurity, StackCrawlMark& stackMark, ForIntrospection booleana)
a System.Reflection.Assembly.Load(Corda assemblyString)
a Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()
WRN: Registre de muntatge vinculant és convertida OFF.
Permetre registre de fracàs Assemblea s'uneixen, establir el valor de registres [HKLMSoftwareMicrosoftFusion!EnableLog] (DWORD) per 1.
Nota: Hi ha algun penal d'actuació associades a registre de fracàs Assemblea s'uneixen.
Per desactivar aquesta funció, treure el valor de registres [HKLMSoftwareMicrosoftFusion!EnableLog].

Detectar problemes amb Windows SharePoint Services.

Sé com provocar deliberadament aquell error: no instal·li l'Assemblea al GAC. Però, era la GAC. Jo normalment instal·la els assemblats a la GAC arrossegant-los a la c:\windowsassembly carpeta utilitzant Explorador de windows. Mai m'he sentit 100% còmode fent això perquè sempre he pensat que el gacutil existia per una raó … així provava que. Feia cap diferència.

Buscava la Internets i trobava aquest lloc: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2243677&SiteID=1

El cartell va passar a estar utilitzant el mateix bit arrel del codi (del llibre WSS dins d'aquesta llista) Així que era un signe d'esperança. No obstant això, el suggeriment de la decoració de l'Assemblea amb una [l'Assemblea: ] Directiva no tenia sentit per a mi. De tota manera ho tastava i estava bé. Feia cap diferència.

Llavors em vaig adonar que la meva definició de classe no era pública. Ho vaig fer públic i que va fer cap diferència.

Següent, Vaig anar a la molèstia d'habilitar el "muntatge s'uneixen fracàs registre" (seguint les instruccions precises i útils, sempre) i aquí és on les coses van començar a obtenir interessants. Aquest registre em mostra que el temps d'execució és buscar a tot arreu en aquest servidor meu Assemblea. Fins i tot apareix a buscar-lo a la meva farmaciola. Però … això no cercar-lo en la GAC.

Vaig posar en la meva jaqueta d'hivern i anar a buscar la Internet una altra vegada i trobar que algú ha tingut aquest problema massa. La llarga discussió en aquest anunci peters fora en res i no puc trobar una solució.

Moc la meva Assemblea en un dels llocs que el registre afirma que està buscant i vaig avançar una mica més. Jo estic recompensat amb un nou error al navegador quan I intenten activar la funció de:

No ha pogut crear l'objecte receptor de tret de "xyzzyFeatureReceiver_0" de l'Assemblea, tipus "Conchango.xyzzyFeatureReceiver" per b2cb42e3-4f0a-4380-aaba-1ef9cd526f20 tret: System.ArgumentNullException: Valor no poden ser nul·les.
Nom del paràmetre: tipus
a System.Activator.CreateInstance(Tipus tipus, Booleans no públics)
a System.Activator.CreateInstance(Tipus tipus)
a Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()

Detectar problemes amb Windows SharePoint Services.

Temps per a un últim viatge de l'Internets!

Aquesta vegada vaig esbrinar, previsiblement prou, Aquesta molsa emet aquest error perquè l'Assemblea no és al GAC.

Vull aconseguir alguna cosa positiva d'aquesta i intentar sentir una mica orgullós que he creat la Fugitiu d'assemblees MSIL, però no està funcionant. Simplement suplements. Em trobo murmurant "o la gallina" sota el meu alè.

Finalment decideix punt. Crear un projecte totalment nou i copiar i enganxar el codi del projecte incredible-cloaked-from-the-GAC-assembly inhàbils per a aquest nou projecte. (Vaig buscar una bandera de complexió anomenar quelcom així com "Amagatall d'Assemblea vinculant si s'instal·la al GAC" però no puc trobar una).

Puc instal lar el tret i activar-lo i … funciona! Així, després de tot allò, Havia bàsicament d ' arrencar’ meu projecte. Això és una altra raó per què odio ordinadors.

Vaig aprendre alguna cosa útil d'aquest. Havia estat instal·lant trets utilitzant la línia d'ordres de stsadm tot el dia i l'estat utilitzant els "-força" opció per hàbit. Per alguna raó, Jo no ús-opció força quan I instal·lava el nou projecte. Aquesta vegada, Feia realment, realment us oblideu copiar Assemblea d'aquest nou projecte a la GAC. Com a resultat, He rebut aquest «FielNotFoundException" error. Aquesta vegada, Em portava de stsadm, no quan intentava activar la funció mitjançant el navegador web. Així, -força de fet juga dos papers. Li permet tornar a instal lar un element existent. També permet instal·lar un tret de vagonetes que no pot treballar a temps d'execució per a la supressió de l'error. Probablement diu tant en l'ajuda d'algun lloc, però mai es va adonar.

</final>

Diumenge Funny: Part superior 10 Maneres de molestar a la seva muller

  1. Comprar bròquil quan saps que ja hi ha més que suficient a la nevera.
  2. Sortir a córrer. Refresqueu-vos. Trec la funda de coixí net i reemplaçar amb samarreta. Cobrir amb funda de coixí net.
  3. Quan conduint, preguntar si hem de seguir el camí equivocat per un carrer de sentit únic.
  4. Per a 15 anys, cada diumenge suggereix que vostè dona anar a un Museu, expressar sorpresa que els museus estan oberts de diumenge.
  5. Per a 15 anys, ocasionalment aconsellem anar a la botiga local el diumenge. Expressar sorpresa que no estan obertes del diumenge (Gràcies alot Lleis de blau!).
  6. Ús 20 punts per fer un 3 torn de punt.
  7. En una tarda de tardor freda, a peu a l'habitació i enceneu l/c. Es queixen que fa fred. Quan diu dona, "llavors per què engega que, ximple" i s'aixeca apagar-lo, agafar el lloc càlid que tenia al sofà. Punts de bonificació si ella no adonar-se que ho fins molt més tard.
  8. Obrir una llauna de tonyina Albacora blanc deliciós i menjar-se directament de la llauna, al llit, a la nit.
  9. Entrar a la cuina, mentre que la dona està sopant, obrir el calaix de coberts i empènyer estris als voltants fins dona crits, "el que busques!"
  10. Rebuda de noves targetes de visita, situar-los en secret tot al voltant de la casa: Sota el llit, en casos de coixí, dins les tasses de cafè, a la bossa, a les butxaques de jaqueta, cotxe guanteres, el rebost — a qualsevol lloc que vostè pot pensar en.
  11. Escriure les entrades del bloc sobre la seva dona.
  12. Despertar-se.
  13. En caminar pels carrers de Nova York, estar alerta contra "cruixent" objectes a terra. Tenint en compte especial temors de la seva dona, arribar avall com si per triar cap amunt amunt i preguntar, "els hmm, Em pregunto què això és?" (Estar preparat per muller al cos de slam com si ella és un agent del servei secret protegint el President d'un franctirador, o vostè trobarà imposició sobre la seva esquena a la vorera).
  14. Unitat dues vegades al voltant d'un aparcament buscant espai. Vostè sap que realment copejat rodó quan crida el seu fill al seient del darrere, "Oh no! Que està fent una altra vegada!"
  15. Escriure "top 10" llistes que no tenen 10 elements.

===

Acudit de bonificació dona:

Dos co-treballadors anar a dinar. Un d'ells diu que l'altre, "Vaig deixar perdre una relliscada freudiana vergonyós l'altra nit."

"Una relliscada freudians? Què és això?"

"Bé, Quan vam acabar de menjar, la cambrera es va acostar i li va preguntar com ens ha agradat els nostres menjars. Volia dir, "Em va encantar el pit de pollastre’ però en canvi em va dir "Estimava els seus pits". Jo estava tan avergonyit."

"Ah," seu company de treball va respondre. "Tenia la mateixa cosa passar-me aquest cap setmana amb la meva dona. Estàvem menjant esmorzar que volia demanar-li a passar la mantega, però en canvi em va cridar al seu, "La meva vida en ruïnes!’"

</final>

Etiquetas de Technorati:

ID de succés 1023: “Windows no pot carregar extensible comptador DLL MSSCNTRS”

ACTUALITZACIÓ (04/08/08): Em sembla que ha de resoldre aquest problema. Línia d'ordres, Corria "c:\windowssystem32lodctr /R" segons una entrada parlant d'InstallShield problemes i que sembla que hagi resolt per a mi.

He notat que últimament, el meu ventilador de taula de treball/servidor mai s'apaga. Sé que solia girar-se. Vaig prendre un moment per revisar-lo adonar que la un procés VMware estava corrent un coherent 20% utilització en un de la CPU. Comprovava el registre de successos i veure aquests errors en el registre de l'aplicació passant desenes de vegades per minut:

Windows no pot carregar extensible comptador DLL UGatherer, la primera DWORD de la secció de dades és el codi d'error de Windows.

Windows no pot carregar extensible comptador DLL UGTHRSVC, la primera DWORD de la secció de dades és el codi d'error de Windows.

Windows no pot carregar extensible comptador DLL MSSCNTRS, la primera DWORD de la secció de dades és el codi d'error de Windows.

Si jo perforar els detalls d'un dels missatges, Vaig aconseguir que això:

Font: Perflib

Tipus: Error

Categoria: Cap

ID de succés 1023

Vaig fer algunes investigacions i hi va haver algun indici que podria ser un problema de permís en termes d'accés a la dll en qüestió. Va jugar amb aquestes coses, però no podria afectar les coses de manera positiva, així em rendia en allò.

VMware havia estat em molesta sobre realitzant una actualització durant força temps, Així vaig anotar la versió havia instal·lat (aparentment "1.0.1 construir 29996") i feia l'actualització. Això em millorat a v 1.04. Tristament, no fixava l'assumpte.

Puc deixar el boig nombre de missatges que va al meu registre aplicació si vaig tancar un servei anomenat "Servei d'autorització de VMware". Això m'impedeix utilitzar el programari de VMware, Així … no una opció tan gran.

El sistema operatiu d'amfitrió és Windows XP 64 mica.

No crec que això ha passat sempre, però no recordo cap esdeveniment en particular que podria haver provocat a la mateixa.

És per això que odio ordinadors.

</final>

Etiquetas de Technorati:

Ràpida & Fàcil: Rebategi l'arxiu carregat mitjançant el Model d'objectes de SharePoint mitjançant un auricular d'esdeveniment

ACTUALITZACIÓ: Això treballa però existeixen importants limitacions que es descriuen en els comentaris. Això encara pot ser útil en alguns cirumstances.

ACTUALITZACIÓ 2: En el meu projecte actual, els usuaris sempre carregar documents. Com a resultat, No corro a un problema on MS Word està funcionant i pensa que l'arxiu fou rebatejada en això. Corria a un problema, "l'arxiu va ser modificat per una altra persona" i això resolia mitjançant una bandera de tipus simple semàfor. Els usuaris necessiten canviar un camp de dades meta del seu valor per defecte a una altra cosa. La itemupdated() receptor busca un valor vàlid allà abans d'efectuar en realitat el canvi de nom i des d'aleshores, No he tingut cap problema. El seu quilometratge pot variar.

Tinc un requeriment del client a canviar el nom dels arxius pujats a una biblioteca de documents específics per ajustar-se amb una convenció de nomenclatura particular. L'API no proporciona un "canvi de nom()" mètode. En canvi, utilitzem "MoveTo(…)". Heus aquí una mica de codi per aconseguir això mínima:

 públic invalidació buit ItemAdded(SPItemEventProperties Propietats)
        {
            SPFile f = propietats.ListItem.File;

            f.MoveTo(propietats.ListItem.ParentList.RootFolder.Url + "/xyzzy.doc");
            f.Update();

        }

La mica complicat només és les propietats". ListItem.ParentList.RootFolder.Url". La MoveTo() mètode requereix una adreça URL. Que amassat amunt punts corda m a la carpeta arrel de la meva biblioteca de document actual. Això permet em d'evitar qualsevol codificació dura al meu auricular d'esdeveniment.

Aquesta és una versió més útil que fa el mateix, però assigna el nom del fitxer "Títol":

 públic invalidació buit ItemAdded(SPItemEventProperties Propietats)
        {
            DisableEventFiring();

            // Assignar el títol d'aquest element al nom d'arxiu propi.
 // NOTA: Aquesta tasca ha de tenir lloc abans que podem modificar l'arxiu mateix.
 // Anomenant actualització() en l'SPFile sembla invalidar les propietats de
 // una mica de sentit.  Actualitzacions al títol"" fracassat fins que canvieu (i actualització de() convocatòria)
 // s'han desplaçat davant el canvi de nom del fitxer.
            propietats.Element de llista[Títol""] = propietats.ListItem.File.Name;

            propietats.ListItem.Update();

            SPFile f = propietats.ListItem.File;

            // Aconseguir l'extensió del fitxer.  Necessitem que més tard.
 corda spfileExt = nou FileInfo(f.Name).Extensió;

            // Rebategi l'arxiu a ID de l'element llista i utilitzeu l'extensió per mantenir
 // aquesta part del que intacta.
            f.MoveTo(propietats.ListItem.ParentList.RootFolder.Url +
                "/" + propietats.Element de llista["ID"] + spfileExt);

            // Cometre el moviment.
            f.Update();

            EnableEventFiring();
        }

Fòrum de discussió: De fer complir millors pràctiques en MOSS no Trivial entorn

Becari, "Marca", ha posat en marxa una discussió potencialment interessant discussió centrant-se en "establint governança SharePoint excel·lent des del principi" per a un 35,000 ambient d'usuari.

La discussió és aquí: http://groups.google.com/group/microsoft.public.sharepoint.portalserver/browse_thread/thread/6d9a738d981af772/1c390b15c5407db6?#1c390b15c5407db6

Pop a sobre i contribuir!

</final>

Acció personalitzada URL no mostrarà per novetat

Estic encara en l'hàbit d'elaboració els meus arxius XML tret a mà ja que és bastant nou per a mi. No vull confiar en una eina frontal que fa coses que no entenc (deia com ell va escriure una entrada de bloc utilitzant una eina que no entén).

Avui, Jo estava tractant d'afegir una acció personalitzada a la configuració del lloc, però això només no demostració cap amunt. Podia instal·lar el tret i veure en els trets de lloc, però quan vaig activar-lo (sense error) Això simplement no apareixen en el menú desplegable.

Finalment em vaig adonar que jo mallletrejat "del SharePoint" a l'atribut d'ubicació de la <CustomAction> Node. Aquest és el fitxer de mal elements.xml:

<?XML versió="1.0" codificació="UTF-8" ?>
<Elements xmlns="http://schemas.Microsoft.com/SharePoint/">
  <CustomAction
 Identificador="SiteActionsToolbar"
 GroupId="SiteActions"
 Localització="Microsoft.Sharepoint.StandardMenu"
 Seqüència="100"
 Títol="Hola!"
 Descripció="Acció de menú de costum afegir via un tret."
 ImageUrl="_layouts/images/menuprofile.gif">

    <UrlAction URL="http://www.xyzzy.com"/>

  </CustomAction>
</Elements>

Bona:

<?XML versió="1.0" codificació="UTF-8" ?>
<Elements xmlns="http://schemas.Microsoft.com/SharePoint/">
  <CustomAction
 Identificador="SiteActionsToolBar"
 GroupId="SiteActions"
 Localització="Microsoft.SharePoint.StandardMenu"
 Seqüència="100"
 Títol="Hola!"
 Descripció="Acció de menú de costum afegir via un tret."
    >
    <UrlAction URL="http://www.xyzzy.com"/>
  </CustomAction>
</Elements>

That one took me a good two hours to figure out 🙂

Prenc consol en el fet que algun dia en el futur, Seré capaç de dir amb convicció, «tornada en el dia, Que havia de caminar tres quilòmetres turó a la neu (descalç!) per tal d'implementar un tret personalitzat a la molsa. Que els nens, no saps com fàcil ho tenen! Baixar el meu jardí!"

No puc esperar.

</final>

Etiquetas de Technorati: ,

Estadístiques del bloc

Vaig pensar que algunes persones podria estar interessat en les estadístiques del meu bloc. Mina pot utilitzar com a referent per comparar el seu propi.

Estic corrent el meu blog en windows vius espais. Van recollir estadístiques per a mi i no sé alguna manera de controlar que. És bo en la mesura va, però és bastant limitada en que no puc fer molta anàlisi real amb ell. M'encantaria, per exemple, per ser capaç de generar una llista de la meva majoria freqüentment llocs èxits però capgira fer allò sense un procés manual prohibitiu. Si algú sap millor, Si us plau digui'm.

Viure espais estatus Digues: Visites totals per al dia, Visites totals per a la setmana i total visites des del dia zero. També em diu que què feia la gent per aconseguir al meu blog (e. g. Google, Enllaç de fòrum MSDN, etc).

En certa manera, un cop"" és obvi. Si vostè està llegint aquesta frase ara mateix, segurament us hàgiu registrat com un sol èxit.

RSS és una mica confús. D'una banda, Veig colpeix RSS individual tot el dia. Però, També veig RSS "escombra". Un escombrat és quan veig 20 o 30 Èxits RSS a una finestra del segon un o dos. Suposo que aquestes són coses automatitzades com google check-in al meu lloc, Potser navegadors d'altres persones … no estic segur. Són sens dubte alguna mena de procés automatitzat. No li puc dir, No obstant això, com molts dels meus visites totals són automatitzats i quants tenen un humà real d'altra banda. M'imagino com a mínim 100 visites per dia són automatitzats.

En els números!

Vaig escriure la meva primera entrada del blog el 27 de juliol, 2007.

He escrit aproximadament 60 entrades del bloc des d'aleshores, més de 50 que estiguin directament relacionades amb SharePoint.

Vaig començar a fer un seguiment dels meus èxits en un full de càlcul sobre una base diària a finals de setembre.

Comença mensual:

Primera setmana de: Visites totals
Octubre 1,234
Novembre 2,162
Desembre 3,071
Gener 2008 4,253

Total per mesos

Mes Visites totals
Octubre 6,620
Novembre 11,110
Desembre 13,138

Marques d'aigua alt

Tipus Visites totals
Millor dia 958
Setmana millor 4,253
Totals visites ja que dia Zero 42,438

Estic interessat en altres’ Estadístiques. Si esteu interessats en compartir els teus en els comentaris, Si us plau!

</final>

Etiquetas de Technorati:

Diumenge matí divertit: “Sí, Sí, Sí. Bla, bla, bla, bla, bla, bla.”

Fa uns sis anys, el meu fill de quatre anys i jo estàvem veient al pis de dalt una Canal de descoberta "atacs de taurons" especial (possiblement aquest un). Va ser molt jove en el moment i sempre estava preocupat de què va veure un espectacle com aquest i com ell podria agafar-lo. No vull per desenvolupar, per exemple, qualsevol pors especials de l'aigua o BLAB de parlar alguna cosa inadequat als seus amics i possiblement provocar el seu nadó amic la xarxa ensorrat els.

Descobriment maneja aquest tipus de temes molt bé. No es tracta de crear un por d'alguna cosa, sinó més aviat per mostrar com inusual que és per als taurons atacar als éssers humans.

Així, que estàs veient-lo i no hi ha aquest atac especialment por una participació d'una nena petita. Com descobriment està construint el drama de l'atac, el meu fill (que sempre ha estat extremadament nerviós de totes maneres), s'està molt emocionat. Faig alguns sorolls com inusual és per als taurons que ataquen les persones, i el mal la pobra nena ha de sentir. Estic tractant d'explicar que la gent recuperar aquests esdeveniments i s'enforteix per a això. No obstant això, Jo havia mal interpretat el seu entusiasme. Ell no estava preocupat sobre la noia en tot. En canvi, mentre palmes de les mans, ell em diu que, "Els taurons encantar! És terrible. És meravellós. Seu un somni fet realitat!"

Vaig pensar que això era hilarant, però també molt preocupant. D'una banda, Em vaig alegrar — fins i tot una mica orgullós — que podria tenir forts sentiments empàtica, Creu-espècies que poden ser. Com a éssers humans, hem de desenvolupar la nostra musculatura"empàtica" Així que parlar o acabarà fins els agrada Aquest xicot 🙂 On the other hand, se sentia creu-espècies empatia cap a una espècie que exposava comportament contraris a les seves. Realment estava lluitant amb això, quan el narrador s'utilitza la paraula "paradigma". El meu fill va recollir en que i em va preguntar què que significava.

Això no és una paraula tan fàcil per descriure a un nen de quatre anys, però em donava això un provar. Quan penso en la paraula "paradigma", Thomas Kuhn mai no és lluny els meus pensaments. Llegeixo L'estructura de les revolucions científiques de tornada a Lafayette i per bé o per mal, la paraula "paradigma" està embarassada amb significat addicional per a mi. (Com el tipus de la paraula "contacte" després d'escoltar una veu de pel lícula telèfon Digues on vaig poder veure Aquesta pel. lícula [Vaig pensar que era millor el llibre]; Jo sempre dic a mi mateix, «CONTACTE!" Quan sigui que jo vegi o escolti algú dir "contacte").

De tota manera, Estic intentant explicar-li una definició Kuhnian, que és "un moviment històric de pensament" i que és una "manera de pensar amb una sèrie de supòsits predefinits que són difícils d'escapar per a persones que viuen en aquell moment." Clar, vostè no pot parlar com a una quatre - anys d'edat, Així que estic tractant de definir-lo successivament a peces més petites i sentiment bastant orgull de mi mateix com ho faig. (Només sabia que algú fora del col·legi importaria que jo havia llegit Kuhn!).

Jo sóc només l'escalfament a la tasca quan ell m'interromp. Agitant la mà en la meva direcció general i mai prendre els seus ulls d'un altre atac de tauró brutal, només diu, "Sí, Sí, Sí. Bla, bla, bla, bla, bla.".

So much for that 🙂

En aquell moment, Em vaig decidir a fugir, retòricament parlant, seure, i gaudir veient taurons ataquen els humans amb el meu fill.

</final>

Etiquetas de Technorati:

Canviar la visualització de vista basada en l'ID d'usuari en un formulari InfoPath

Vam tenir un desenvolupat un formulari InfoPath amb múltiples vistes per donar suport a un nou de lloguer / incloure el procés. Quan l'empresa contracta una persona nova, el Departament d'informàtica i altres grups cal prendre mesures (configurar la nòmina, permetre l'accés a les aplicacions adequades, Localitzi una recepció, etc). Utilitzem en forma però una visió diferent de la forma per a cadascuna de les funcions.

En aquesta empresa, la majoria de les persones implicades en el procés de negoci són coneixedors d'IT, Així que quan van accedir al mòdul de, seva vista d'omissió és un menú de"" veure amb botons que dirigir-los a la seva funció específica. No obstant això, que necessitàvem simplificar les coses per cap directe del lloguer nou. Aquesta persona no ha de veure algun dels seus relacionats amb la matèria. De fet, ella hauria de veure una vista de la forma i ni tan sols té una opció per veure els altre punts de vista.

En el nostre cas, que dirigir compte del gestor és directament lligat a la forma de cortesia de un selector de contacte (que sempre estic amb ganes de trucar a un selector de persones"" per alguna raó).

Els passos són els següents:

1. En mode de disseny, Aneu a eines-> Opcions de forma-> Obrir i desar.

2. Seleccioneu "regles".

3. Crear una norma nova, l'acció és "passar per veure" i l'estat aprofita el nom d'usuari() funció.

nom d'usuari() Retorna el simple"" nom d'usuari sense el domini. Si registro en SharePoint amb credencials "domainpagalvin", nom d'usuari() torna "pagalvin".

El selector de contacte proporciona tres bits d'informació per a un contacte. El "Account" part és més útil per a aquest escenari. L'única cosa que fa que això fins i tot una mica de repte és que el selector de contacte (en el meu entorn de tota manera) Retorna l'identificador de domini i l'usuari, com en "domainpagalvin". Això ens impedeix fer una condició senzilla igualtat des Account ("domainpagalvin") mai serà igual a nom d'usuari() ("pagalvin").

Podem aconseguir tot això utilitzant el "conté" operador: Account conté el nom d'usuari().

Puguem fer-lo més i pre-pend un domini codificats directament davant l'usuari() funció per aconseguir els nostre comprovació d'igualtat i eliminar el risc d'un fals positiu en el conté operador.

Tindríem realment com canviar automàticament la vista per a altres usuaris basaven sobre la seva pertinença a un grup AD seguretat. Per exemple, Quan un membre de la "que Analytics" grup accedeix a la forma, Canvia automàticament a la visualització d'IT Analítica. No tenim temps per implantar-lo, però el meu primer pensament és crear un servei web que tindria un mètode com "IsMemberOfActiveDirectorySecurityGroup", donar-lo el nom d'usuari() i tornar altra vegada vertader o fals. Ningú té qualsevol altre, més brillant idea? És allà qualsevol funció de SharePoint que ens poden aprofitar de l'InfoPath per fer aquesta determinació?

</final>

Etiquetas de Technorati:

Accidentalment afegint codi a un formulari InfoPath; Deliberadament traient-lo

Quan es treballa amb botons en un formulari, sovint podem afegir regles. Accedir a l'editor de regles de les propietats del botó.

Quan fent clic al voltant de pressa, és fàcil de accidentalment fer clic a "Edita forma codi" en comptes de "regles …".

La primera vegada que ho vaig fer, Anul·lava fora de l'editor de codi. No obstant això, Quan he intentat publicar la forma una mica mentre més tard, és necessari que vaig publicar com una plantilla de formulari aprovada per l'administrador" (avançat)". Intento no fer qualsevol programació i absolutament no volia passar per un procés d'aprovació innecessaris. Jo estava una mica de pànic en el moment degut a les limitacions de temps. Per passar-lo, Simplement restaurar una còpia de seguretat anterior i va continuar. Jo havia vist recentment alguns correus de blog sobre gent entrant a XML del formulari per modificar les coses i tenia por que hauria de fer una cosa semblant.

Avui, Ho feia una altra vegada. Aquesta vegada, Vaig tenir una mica més temps a les meves mans i va trobar que fàcilment pot desfer aquesta.

Anar a:

Eines-> Opcions de forma-> Programació: "Treure codi"

No rep molt més fàcil que.

</final>

Etiquetas de Technorati: ,