I wrote rakstu par SharePointBriefing.com un viņi laiž to uz augšu dzīvot šodien.
Šeit ir teaser:
</beigās>
Sekot mani uz čivināt pie http://www.twitter.com/pagalvin
I wrote rakstu par SharePointBriefing.com un viņi laiž to uz augšu dzīvot šodien.
Šeit ir teaser:
</beigās>
Sekot mani uz čivināt pie http://www.twitter.com/pagalvin
Esmu jau strādā pie projekta, kur man ir nepieciešams, lai iegūtu pielikumus no InfoPath veidlapu. Tur ir dažas labas resursu parsēšanai InfoPath veidlapas (kas ir tikai XML failus, tāpēc ir samērā viegli).
Kamēr bija ēkas projektu, Es sāku, lejupielādējot programmas InfoPath veidlapu un saglabājot to manā lokālajā cietajā diskā. Tieši no šī gadījuma lasīju mans c# kodu. Tomēr, InfoPath veidlapas ir patiešām dzīvo iekšā veidlapas SharePoint bibliotēkā. Es tā nedaudz pusi hearted meklēšana, lai uzzinātu, kā to izlasīt tieši no bibliotēkas un gandrīz pametusi, tādā gadījumā es būtu saglabāti veidlapas vietējo temp direktorijā un izlasiet to no turienes. Tomēr, nav nepieciešams iet cauri tām stīpām, kā jūs varat izlasīt tieši no bibliotēkas. Šī maz fragments parāda cik:
/// Klases definīcijā stuff šeit, tajā skaitā:
privāts SPFile mySharePointFile; /* Daļu, SPList */ // Šeit ir vairāk kodu un iekšpusē klases metode mums: textReader = jaunā XmlTextReader(mySharePointFile.OpenBinaryStream()); textReader.WhitespaceHandling = WhitespaceHandling.Neviens; textReader.Read(); // Ja mezglam ir vērtība vienlaikus (textReader.Read()) { |
Tās galvenie bit iepriekš ir, ka mēs varam lasīt tieši caur OpenBinaryStream InfoPath() metode, kas aicina SPFile kā konstruktors, XmlTextReader parametrs. Tas lieliski darbojas.
</beigās>
Sekot mani uz čivināt pie http://www.twitter.com/pagalvin
Man ir izdevumu ierakstu risinājumu klientam, kas piesaista InfoPath un darbplūsmas. Vienā punktā laikā apstiprināšanas procesu, Ir nepieciešams, lai radītu e-pasta ziņojums, kas ir visas labas InfoPath dati, kā arī paši pielikumi, lai (nopūta) kāds, kas varētu veikt šos datus un manuāli re-key Oracle datu bāzes lietojumprogrammā.
Tas nav ļoti grūti iegūt vai parsēt InfoPath veidlapas. Nezināju, kā rīkoties ar pielikumiem, Tomēr. Pēc stundas vai divām papētījis Internets (veselu mūžību!) Es atklāju šo rakstu: http://support.microsoft.com/kb/892730
Tas sniegt dažas ērts kodu, lai izgūtu pielikumu no mezgla formā. (Jums vajadzēs atrast mezglu un visu, kas, bet tas ir tikai XML parsēšana).
Es zinu, ka pielikums ir izveidota base64 kodētā un es sākotnēji devās lejā pa taku tikai ieguves base64 datus, tas dekodēšana un saglabājot to. Tomēr, Ātri saprata, ka nezināju, kā iegūt faila nosaukums pats par sevi, līdz brīdim, kad es atklāju iepriekšminēto rakstu.
Bija patiešām konstatēja, diezgan agri, bet bija atlikt, split personība. No vienas puses, rakstu * saka * tas ir labi, InfoPath 2007. Vēl, kodu un instrukcijas ir saistāms ar Visual Studio 2003 un atsauces uz InfoPath 2003.
Grunts līnija, panta nosacījumu kodu darba arī par mani (līdz šim). Varat saņemt InfoPath veidlapu, Var izanalizēt to, Es varu atrast un atšifrēt šo pielikumu, un es zinu, tā nosaukumu. Ko vēl var vienu lūgt par savu dzīvi?
</beigās>
Sekot mani uz čivināt pie http://www.twitter.com/pagalvin
Ja jūs esat noraizējies SharePoint vidi var būt neveselīgs tad, Ļaujiet man palīdzēt noteikt, ka ar veselības pārbaude.
Man ir izdevumu apstiprināšanas process, kas man ir nepieciešams, lai īstenotu, izmantojot InfoPath veidlapas, izmantojot autentifikāciju (FBA) vidē, izmantojot veidlapu pakalpojumi (tīmekļa InfoPath).
Ir divas apstiprinājumu grupas un process darbojas šādi:
InfoPath pusē lietām, Man ir dažādās sadaļās, parādītos paslēpt /, pamatojoties uz to, vai lietotājs ir loceklis, viens no tiem apstiprinājumu grupas.
FBA vidē lietotājvārdu() funkcija vienmēr atgriež tukšu, Diemžēl. Tas, ko es esmu darījusi ir iestatīt pielāgotu sarakstu, ko sauc par "Apstiprinājumu grupas".
Nav pievienotu papildu kolonnu sarakstam.
Atverot formu, tā kā šis noteikums:
"Iestatīt lauka vērtību" ir šeit:
Tas ir būtībā sakot: Vaicājumu, meklējot kādu apstiprinājumu grupas pielāgotā saraksta vaicājumu un filtru rindas, kur virsraksta vērtība = "NORDIC".
Ja kāda vērtība, kas atgriež, pašreizējam lietotājam, tad ir šīs grupas dalībniekam. Es zinu, ka tā satur šo vērtību, jo virknes garums ir lielāks par nulli.
Aizvērt cilpas, nodrošinot individuālu apstiprinājumu grupu saraksta elementus. Izpildes laikā, Ja pašreizējam lietotājam nav atbilstošu drošības piekļuve šim krājumam pēc tam vaicājums netiks atgriezties, virknes garums būs nulle, un tagad jūs zināt, ka pašreizējais lietotājs nav daļa no šīs grupas. Šo faktu var izmantot veidlapu nepieciešamības.
Tas ir super īss write-up. Esmu uzstāja uz laiku, vai būtu jāsniedz sīkāka informācija.
Es nezinu, cik atbilstīga ir esmu FBA vidē. Tas droši vien varētu strādāt arī ārpus FBA vidē, bet varu iedomāties gadījumu, kur tas būtu noderīgi.
</beigās>
Sekot mani uz čivināt pie http://www.twitter.com/pagalvin
Es strādāju par InfPath formā šodien un skrēja augšup pret vecu draugu, "Neapstrādāts izņēmums renderēšanas form System.Xml.XmlException: Radusies neparedzētas faila beigas parsējot nosaukumu."
Tas notika ar mani jau sen, un es nezinu, ko tieši es darīju, lai to atrisinātu. Godīgi, Es domāju, ka bija pārejot uz jaunu projektu, un nekad neredzēja šo vienu atrisināt (manas protēzes bija jānodarbojas ar šo galvassāpes). Atceros, tas bija velns problēma. Es pavadīju vairākus neveiksmīga dienas nodarbojas ar to. Kopš tā laika, Esmu redzējis šo nākt klajā MSDN forumos ne retāk kā vienu reizi vairāk nekā pagājušajā gadā un nekad īsti redzēja atbildi par to.
I hit to šodien un par laimi šajā laikā , Bija tikko veikts izmaiņas veidlapā. Es atbalstīja, ka pārmaiņas un problēma aizgāja. Izrādās, ka ir iespējams izveidot veidni, izmantojot InfoPath Designer tādā veidā, ka tas rada parsēšanas kļūda veidlapas servera pusē žogs.
Manā gadījumā, problēma, ko izraisījuši šie soļi:
Es nezinu, ja šīs darbības rada problēmas vai varbūt, kaut kā datus sarakstā, pats par sevi ir problēma. Gribu nedaudz eksperimentēt un redzēt, ja man var pienaglot downt viņš parametrus šīs ar jebkādu sīkāk.
</beigās>
Sekot mani uz čivināt pie http://www.twitter.com/pagalvin
Esmu joprojām dzīvo InfoPath formas pasaulē un nepieciešams, lai viens no šiem "mazie" izmaiņas veidlapas, kas, Diemžēl, nosaukumdošanas konvenciju, es pirms divām nedēļām pieņemta ar to pārtraukumi. Es nodomāju, "kāds būs paskatīties uz šo lietu gadā no tagad un teikt, "Ko domāja Paul? Lietotājs Jove, viņa nosaukumdošanas konvencija nav jēgas!”
Sapratu, ka varētu izveidot skatu formā šo un pēc tam, vēlreiz, sapratu, ka es varētu būt darot kaut kas līdzīgs šim visu laiku. Es pievieno "Developer Piezīmes" skats InfoPath veidlapas:
Esat konfigurējis veidā, tāpēc, ka lietotāji nevar iegūt šo viedokli un tādēļ, tas ir tikai redzams ar InfoPath klientu noformējuma skatā. Tagad es jūtos mazliet uzsētajā pret kādu nākotnes nezināms attīstītājs meklē formu, un domāt sliktas domas par mani. Fū!
</beigās>
Sekot mani uz čivināt pie http://www.twitter.com/pagalvin
Šķiet, iet caur fāzēm, InfoPath kur, no zila, Esmu crafting ķekars veidlapas. Mani pirksti Uzzini, kā izmantot rīku labi, un tad es iet caur deviņu mēnešu sausuma un mācīties visā vēlreiz.
Es esmu vidū InfoPath fāzes un esmu izveidot InfoPath veidlapas ar lielu viedokli. Viena lieta, jūs, iespējams, ievērosiet, ka ir InfoPath 2007 klienta parāda skatu alfabētiskā secībā. Tas ir reālas neērtības dažas reizes. Mans labākais paņēmiens šajās dienās ir pieraksti, pirms augšupielādējamā vārda skaitli ar skata nosaukumu tā, lai tie vienmēr rādīt vēlamajā secībā, kā tas uzzīmēts šeit:
Es vēlos man bija dara to visu kopā.
</beigās>
Sekot mani uz čivināt pie http://www.twitter.com/pagalvin
Es esmu strādā pie dažas InfoPath veidlapas šonedēļ MOSS FBA vidē un uzzināja, kad es gāju, lai izvietotu veidlapas ražošanas vidē ar FBA zonai, kas norādīta lietotājvārdā() funkcijas funkcija nedarbojas. Es lietoju, lai radītu unikālu faila nosaukumu.
Nu, Šī funkcija nedarbojas FBA vidē (vismaz, ne no box). Un, pēc pārdomu, tā, kā bija plānots, izmantojot lietotājvārdu nebūtu jāgarantē unikālu faila nosaukumu jebkurā gadījumā.
Mans risinājums bija izmantot tagad() funkciju un noteikums, ka ugunsgrēki uz iekraušanas formas. Es piešķirtu faila nosaukumu datu elementu, kad tā ir tukša:
Šīs pieejas priekšrocība ir tā faila nosaukums ir iestatīts tikai vienreiz. (Nav parādīt to screen shot, bet laist nosacījums noteikums tikai uguns, kad "myFilename" ir tukšs). Izmanto, lai iestatītu faila nosaukumu datu avota līmenī. Parasti, Varētu kaut ko darīt (slikts) šādi:
Problēma ar to, ka, ja lietotājs A atver formu pirmdien un lietotāja B izmaiņas tā otrdien, jūs galu galā ar divām dažādām formām, jo diviem dažādiem lietotājiem saglabātas to ar dažādiem lietotājvārdiem.
Tik, kā kaitinošas, jo FBA var vispār un ar InfoPath īpaši, tas lika man pārdomāt, neliela, bet ļoti svarīgi tehniskās detaļas un pieeja, kas nebūtu jādara citādi!
</beigās>
Sekot mani uz čivināt pie http://www.twitter.com/pagalvin
Nav kopīgu biznesa scenāriju, kā šis:
Šajā piemērā office.microsoft.com apraksta, kā veidojams atsevišķs skats"" un atzīmēt visu kā tikai lasāmu skatu. Tas ir praktiski pieeju, bet ir trūkums, ka jūs faktiski esam izveidojuši divas visu to pašu veidlapu versijas un ir tagad sinhronizēt tos manuāli. Ja pievienojat lauku labot skats, to pēc tam jāpievieno nerediģējams skatīt arī. Laika gaitā, ar citu izstrādātāju, var būt dažas atšķirības.
Šī alternatīvā varianta varētu strādāt labāk, dažos gadījumos:
Atmaksas šāda pieeja ir visās jomās joprojām būs rediģējams ekrānā. Lietotājs var iegūt nepareizu iespaidu, ka viņi faktiski mainīt saturu. Tas var mazināt, ieviešot dažas teksta formā ir atspējota, iespējams, liela sarkaniem burtiem lapas augšdaļā.
Vienā projektā, Es radīju "darbplūsmas statusu" skats. Turpinoties darbplūsmas, tas varētu atjaunināt īpašo statusu laukos, kas bija paaugstināts no formas. Lietotājam atverot veidlapu, "atvērtā formā" kārtula automātiski pārslēdzies uz skatu un lietotāju bija jauka maz kopsavilkuma statusu.
</beigās>
Mums bija attīstīta InfoPath veidlapas, izmantojot vairākus skatus, lai atbalstītu jaunu nomas / par iekāpšanas procesu. Kad uzņēmums izīrē jaunu personu, IT nodaļu un citām grupām ir jārīkojas (Iestatiet algu, iespējot piekļuvi attiecīgu lietojumprogrammu, Atrodiet rakstāmgalds, uc). Mēs izmantojam forma, bet ir atšķirīgs viedoklis par veidlapu par katru no šīm funkcijām.
Šajā uzņēmumā, Lielākā daļa cilvēku, kas darba procesā ir IT savvy, tad, kad viņi piekļūs veidlapai, savu noklusējuma skats ir "izvēlne" ar pogām, kas tieši viņiem viņu īpašajām funkcijām skatiet. Tomēr, mums vajadzīga, lai vienkāršotu lietas, par jaunu nomas tiešo vadītāju. Šai personai nevajadzētu redzēt jebkurš IT saistītas stuff. patiesībā, viņa būtu redzēt tikai vienu veidlapas skatu un pat ir iespēja satikt citus skatus.
Mūsu gadījumā, kas tieši menedžera kontu ir tiešā veidā saistīti ar veidā, pateicoties kontaktpersonu atlasītājs (ko es esmu vienmēr vēlas, lai izsauktu "cilvēku atlasītāju" kāda iemesla dēļ).
Soļi ir šādi:
1. Noformēšanas režīmā, iet uz Tools-> Veidlapas opcijas-> Atvērt un saglabāt.
2. Izvēlieties "noteikumi".
3. Izveidotu jaunu kārtulu, kuras rīcība ir "pārslēgties uz skatu" un kuru stāvoklis piesaista lietotājvārdu() funkcija.
Lietotājvārds() atgriež "vienkāršo" lietotāja vārdu, bez domēna. Ja es ieiet SharePoint ar akreditācijas datiem, "domainpagalvin", Lietotājvārds() atgriež "pagalvin".
Kontaktpersonu atlasītājs piedāvā trīs biti informācija, kontaktpersonas. "AccountID" daļa ir vispiemērotākā šim scenārijam. Vienīgā lieta, kas padara šo pat mazliet problēma ir tā, ka kontaktpersonu atlasītājs (mana vide tomēr) atgriež domēna un lietotāja ID, tāpat kā "domainpagalvin". Tas novērš mūs no darot taisni-uz priekšu vienlīdzības stāvoklis kopš AccountID ("domainpagalvin") nekad būs vienāda userName() ("pagalvin").
Mēs varam iegūt ap šo, izmantojot "satur" operators: AccountID norādīts lietotājvārds().
Mēs varam pieņemt to tālāk un pre-pend iekodētu domēna priekšā lietotājvārds() funkciju, lai saņemtu mūsu vienlīdzības pārbaude un novērš risku viltus pozitīvi par satur operatoru.
Mums būtu tiešām kā automātiski pārslēgtu skatīt citi lietotāji, pamatojoties uz to reklāmas piederību drošības grupai. Piemēram, kad dalībnieks "to Analytics" grupa piekļūst veidlapas, automātiski pārslēgtos uz skatu IT Analytics. Mums nav laika, lai to īstenotu, bet mana pirmā doma ir, lai izveidotu tīmekļa servisu, kas būtu metodi kā "IsMemberOfActiveDirectorySecurityGroup", nododiet to lietotājvārdu() un atgriezt atpakaļ true vai false. Vai kāds ir jebkurš cits, vairāk gudra doma? Tur ir visas SharePoint funkcijas, mēs varētu sviras no InfoPath to konstatē?
</beigās>