Category Archives: Az InfoPath 2007 // Forms Server

Gyors Hit: Olvasó InfoPath XML, közvetlenül a SharePoint SPListItem

Én már dolgozik egy projekten, ahol kell, hogy kivonat mellékletek egy InfoPath-űrlap. Van néhány jó források az InfoPath-űrlapok elemzés (csak XML-fájlok, amelyek, tehát-a ' valójában nagyon egyszerű).

Míg volt kiépítése, a projekt, Elkezdtem egy InfoPath-űrlap letöltése, és mentse a helyi merevlemezre. A c# kód közvetlenül a példányában olvastam. Azonban, az InfoPath-űrlapok igazán él inside SharePoint űrlaptárba. Volt egy kis fél szívvel keres, hogy megtudja, hogyan kell olvasni közvetlenül a könyvtárból, és majdnem feladta, Ebben az esetben szerettem volna menti az űrlapot egy helyi temp könyvtárba, és onnan olvasni. Azonban, nem kell keresztülmenni azok karika, amennyit csak tudsz olvasni közvetlenül a könyvtárból. Ez a kis részlet azt mutatja, hogyan:

/// Osztály meghatározás megtöm itt, beleértve a:
privát SPFile fájl mySharePointFile; /* Az SPList része */
// Több kód megy itt, és belül egy módszert az osztály van:
XmlTextReader textReader;
textReader = új XmlTextReader(mySharePointFile.OpenBinaryStream());

textReader.WhitespaceHandling = WhitespaceHandling.Egyik sem;

textReader.Read();

// Ha a csomópont érték

közben (textReader.Read())
{

... és így tovább és így tovább...

Ők kulcs a darab fent, hogy az InfoPath közvetlenül a OpenBinaryStream keresztül tudjuk olvasni() a kivitelező a XmlTextReader paraméterként az SPFile-nak hívja módszer. Ez szerkezet nagy.

</vége>

Subscribe to my blog.

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

Technorati Tags:

Programozott kitermelése mellékleteket az InfoPath-űrlapok (Beleértve a nevük!)

Nekem van egy költség tételt megoldás egy ügyfél, amely kihasználja az InfoPath és munkafolyamatai. Egy ponton a jóváhagyási folyamat alatt, Szükségem van-hoz létrehoz egy e-mailt, amely minden jó InfoPath adatokat, valamint a mellékletek, maguk, hogy (sóhaj) valaki veszi az adatokat, és manuálisan újra kulcs ez levegőbe egy Oracle adatbázis-alkalmazás.

Nincs nagyon nehezen kap, vagy értelmezni az InfoPath-űrlap. Nem tudom, hogyan kell kezelni a mellékletek, azonban. Miután egy óra vagy két dugta körül a Internets (az örökkévalóság!) Találtam ezt a cikket: http://support.microsoft.com/kb/892730

Ez ad néhány hasznos kód-hoz kivonat a melléklet formájában csomópont. (Akkor is megtalálja a csomópont, és minden, ami, de ez csak XML-feldolgozási).

Tudom, hogy a fájlmelléklet base64 kódolású és eredetileg lement az út csak kitermelése a base64 adatok, dekódolást, és mentés. Azonban, Hamar rájöttem, hogy nem tudtam, hogyan viselkedni kap a fájl nevét is, amíg találtam egyet a fent említett cikk.

Már valóban találtam egyet amit elég korán, de volt halasztódik a tudathasadás. Egyrészt, a cikk * szerint * jó InfoPath 2007. Még, a kód és az utasítások szólnak Visual Studio 2003 az InfoPath hivatkozások 2003.

Alsó sorban, a kód, ez a cikk, feltéve van működő, jól értem (eddig). Én tud kap az én-m InfoPath-űrlap, Tud elemez, ez, Én talál és megfejt a egybefűzés, és tudom, hogy a neve. Mi többet lehet kérni az ember életében?

</vége>

Subscribe to my blog.

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

Technorati Tags: ,,

Ha aggódsz, hogy a SharePoint környezetben lehet egy srác egészségtelen, enged én segít ön erősít, hogy az állapotfelmérés.

Az InfoPath FBA környezetben jóváhagyás-csoportok kezelése

Nekem van egy költség jóváhagyási eljárás, amely segítségével az InfoPath, az űrlap alapú hitelesítés végrehajtásához kell (FBA) környezetvédelmi szolgáltatások űrlapok használatával (Web alapú InfoPath).

Két jóváhagyási csoportokat, és a folyamat a következőképpen működik:

  • Felhasználó Költségjelentés kitölti, és elküldi a jóváhagyási.
  • Amit ravaszok egy e-mailt első szintű jóváhagyó csoport.
  • Első szintű jóváhagyó vélemények és jóváhagyja vagy megtagadja a jelentés.
  • Ha az első szint, aki jóváhagyja azt, rendszer értesíti a második szintű jóváhagyó.

Az InfoPath oldala a dolgoknak a, Nekem van a különböző szakaszok, hogy hide/úgy tűnik, aszerint, hogy a felhasználó egy e jóváhagyás csoport tagja.

FBA környezetben a username() mindig függvény üres, Sajnos. Mit tettem be van állítva egy szokás oldalra dől hívott "Jóváhagyási csoportokat".

Nem adhat olyan további oszlopokat a listához.

Amikor az űrlap megnyílik, van egy szabály, mint ez:

image

Itt van a "beállíthatja egy mező értékét":

image

Ez alapvetően mondás: Lekérdezés a jóváhagyási egyéni csoportlista és szűrő lekérdező megnézi, hogy akármi sor ahol cím értéke = "Északi".

Ha olyan értéket ad vissza, hogy, akkor az aktuális felhasználó az adott csoport tagja.. Tudom, hogy ez az érték benne, mert a karakterlánc hossza nagyobb, mint nulla.

Zárd be a kört azáltal, hogy biztosítja az egyes elemeket a jóváhagyási csoportos listát. Futási időben, Ha az aktuális felhasználó nem rendelkezik megfelelő biztonsági hozzáférés az elemhez, akkor a lekérdezés nem fog visszatérni, karakterlánc-hosszúság nulla lesz, most már tudod, hogy az aktuális felhasználó nem része a csoport. Használhatja ezt a tényt a formában szükség szerint.

Ez a szuper rövid írás-up. Én vagyok sürgeti az idő, vagy adna részletesebben.

Nem tudom, mennyire fontos az, hogy én vagyok, FBA-környezetben. Ez valószínűleg működik, valamint nem FBA környezetben, de lehet képzelni esetekben, ahol ez hasznos lenne.

</vége>

Subscribe to my blog.

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

Technorati Tags: ,

Az InfoPath // "Nem kezelt kivétel forma System.Xml.XmlException renderelés, amikor az egyik magyarázata: Váratlan fájlvége elemzésekor név történt. “

Dolgoztam egy InfPath formában ma, és futott ki egy régi barát, "Nem kezelt kivétel, ha a leképezési űrlap System.Xml.XmlException: Váratlan fájlvége elemzésekor név történt."

Ez történt velem, egy hosszú ideje, és nem tudom, mi pontosan én tett megoldani, hogy. Őszintén szólva, Azt hiszem, hogy volt átmeneti-hoz egy új projekt, és soha nem látta, hogy ez az egyik azzal az elhatározással (a csere volt foglalkozni, hogy a fejfájás). Emlékszem, volt egy ördög, a probléma. Én költött több sikertelen nap foglalkozik vele. Azóta, Láttam már legalább egyszer át az elmúlt évben az MSDN fórumok jön, és nem igazán láttam a választ, hogy.

Én megüt ez ma, és szerencsére ezúttal , Csak már történt változás az űrlap. Én támogatta, hogy a változás, és a probléma ment el. Kiderül, hogy-a ' lehetséges-hoz teremt egy a sablont InfoPath tervező segítségével oly módon, hogy generál egy elemzési hiba a forms szerver oldalon a kerítés.

Az én esetemben, a probléma volt okozott mellett ezeket a lépéseket:

  1. Új elem hozzáadása adatforráshoz, egy a szövegmező.
  2. Csepp az űrlapra.
  3. Cserél ez bemutatás-ba egy legördülő lista.
  4. Mondd el a legördülő listából húzza a saját értékek egyéni SharePoint-listából.

Nem tudom, ha ezek a lépések okoz problémát, vagy talán, valahogy az adatokat, a listán, maga a probléma. Én megyek egy kicsit kísérlet, és lásd, ha én köröm kiegészítő szolgáltatásként irodahasználatot biztosít ő paramétereket a részletesebb.

</vége>

Subscribe to my blog.

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

Technorati Tags:

Megjegyzések fejlesztőknek az InfoPath-űrlapok belsejében beágyazása

Még mindig élek, az InfoPath-űrlapok a világban, és szükség van, hogy egy "kis" változtatásokat az űrlapra,, Sajnos, szünetek egy elnevezési konvenciót, elfogadott, hogy két héttel ezelőtt. Gondoltam magamban, "valaki fogja nézni ezt a dolgot egy év most és azt mondják, "Mi gondol Pál? Istenemre, a névadási nincs értelme!”

Rájöttem, hogy lehet létrehozni az űrlap nézet Ez majd, mégegyszer, rájöttem, hogy én is csináltam ilyet végig. "Megjegyzések fejlesztőknek" nézet hozzá ilyen az InfoPath-űrlap:

image

Beállítottam az űrlapot, így, hogy a felhasználók nem tudnak eljutni a nézet, és ezért, a csak az InfoPath ügyfél Tervező nézetben látható. Most úgy érzem, egy kicsit beoltott ellen néhány jövőbeni ismeretlen fejlesztő látszó-on az én-m képernyő és a gondolkodás rossz gondolatokat rólam. Puff!

</vége>

Subscribe to my blog.

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

Technorati Tags:

Az InfoPath nézetek kezelése

Úgy tűnik, hogy az InfoPath szakaszok ahol, a kék, Én vagyok gyárts egy csomó formák. Az én-m ujjak megtanulják, hogyan kell használni az eszközt is, és aztán megy keresztül kilenc hónapos aszály, és meg kell tanulni az egészet újra.

Én vagyok a közepén egy InfoPath fázis, és vagyok létrehozása az InfoPath-űrlapok-egy csomó views. Egy dolog, amit talán észre, hogy az InfoPath 2007 ügyfél azokat a nézeteket mutatja, ABC-sorrendben. Ez az igazi kellemetlen néhány alkalommal. Az én-m legjobb technika ezekben a napokban, hogy csomagjai egy számot a nézet nevét úgy, hogy azok mindig a kívánt sorrendbe rendezni, mint leír itt:

image

Bárcsak már csinál ez végig.

</vége>

Subscribe to my blog.

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

Technorati Tags:

InfoPath-űrlap szolgáltatások, Űrlap alapú hitelesítés (FBA) és egyedi fájlnevek

Voltam működő-ra néhány InfoPath-űrlapok ezen a héten a MOSS FBA környezetben és tanult, amikor mentem telepíteni a formák, hogy egy termelési környezetben egy FBA zóna, hogy a felhasználói név() függvény nem működik. Voltam használ ez egyedülálló file nevek létrehozásához.

Jól, Ez a funkció nem működik, FBA-környezetben (legalább, nem a dobozból). És, mérlegelés alapján, használ felhasználónevet volt a tervezett módon nem garantálták egyedi fájlnevet minden esetben.

Az én-m oldat volt-hoz használ a most() függvény, és egy szabályt, amely a tüzek az űrlap betöltése. Én hozzá a fájl neve adatelem üres:

image

image

E megközelítés előnye, hogy a fájl neve csak egyszer van-e állítva. (Ne jelenjen meg a képernyő szemcsésedik-ban, de a feltétel a szabály, hogy csak tüzet, amikor üres a "myFilename"). Én hozzászokott készlet a fájl nevét a forrás szinten. Általában, Kíván valamit (rossz) tetszik:

image

A probléma, hogy az, hogy ha a felhasználó megnyitja az űrlapot, hétfőn, és B felhasználó módosítja a kedd, akkor a végén két különböző formában, mivel két különböző felhasználók megtakarított ez-val más felhasználó nevek.

Így, olyan idegesítő, mint FBA lehet általában és az InfoPath különösen, Ez jutott eszembe újra egy kicsi, de nagyon fontos technikai részleteket és megközelítés, amit nem tettem egyébként!

</vége>

Subscribe to my blog.

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

Technorati Tags:

Gyors és egyszerű: Egy InfoPath-űrlap írásvédett, hogy (Az InfoPath Forms Services in MOSS)

Van egy közös üzleti forgatókönyv, mint ez:

  • Egy InfoPath-űrlap kitöltése.
  • Űrlap elküldése.
  • Megindult a hosszú ideig futó munkafolyamatok.
  • A munkafolyamat futása közben, nem akarjuk, bárki, aki az űrlap tartalmának módosítása.

Ebben a példában office.microsoft.com leírja, hogyan hozható létre külön "" és az egész nézet csak olvasásra. Ez egy működőképes megközelítés, de a hátránya, hogy hatékonyan létrehozott két teljes változata ugyanazon az űrlapon, és kell most szinkronban tartsa őket manuálisan. Ha egy mezőt a szerkeszthető nézetet, Ezután hozzá kell azt a nem szerkeszthető nézetet is. Idővel, a különböző fejlesztők, nem lehet némi eltérés.

Ez az alternatíva erő dolgozik jobb-egyes esetekben:

  • Új mező hozzáadása az űrlaphoz, az úgynevezett "IsEditable".
  • Az alapértelmezett értékét állítsa true.
  • Promote Moss közzétételekor.
  • A munkafolyamat, IsEditble értéke false.
  • Menj vissza az űrlap.
  • Szabály hogy "nyitott a képernyő", tiltsa le a Mentés gombra, amikor a IsEditable a hamis.

A hátránya, hogy ez a megközelítés az, hogy a mezők továbbra is szerkeszthető, a képernyőn. A felhasználó tud kap a hamis benyomást kelti, hogy ők valójában módosíthatja a tartalmat. Kiküszöbölheti, hogy azáltal, hogy egy szöveget, amit az űrlapon van meghibásodott, esetleg nagy piros betűkkel az oldal tetején.

Az egyik projekt, Én teremtett a "munkafolyamat-állapot megjelenítéséhez" nézet. A munkafolyamat előrehaladtával, Ez akar korszerűsíteni már előléptették az űrlapról külön állapotmezőt. Amikor a felhasználó megnyitotta a képernyőn, a "nyílt formában" a szabály automatikusan kapcsol-hoz hogy megtekintése, és a felhasználó volt egy szép kis összefoglaló állapota.

</vége>

Subscribe to my blog.

Felhasználó-azonosító egy InfoPath-űrlap alapján kapcsoló nézet

Mi volt a fejlett egy InfoPath-űrlap több nézetet támogatja egy új bérlet / beszállás a folyamat. Mikor a társaság bérel egy új személy, az informatikai részleg és más csoportok lépéseket kell tenni (Bérstatisztika beállítása, engedélyezi a megfelelő alkalmazásokhoz való hozzáférés, Keresse meg a pult, stb). Mi használjuk a formában, de más szempontból nézve a képernyőn az egyes ellátásáért.

Ennél a cégnél, az üzleti folyamat részt vevő személyek többsége IT-hozzáértés, így, amikor az űrlap, az alapértelmezett nézet a menü"" Nézd meg közvetlenül őket, hogy az adott funkció gombok. Azonban, Mi szükség van, az új bérlet közvetlen kezelő egyszerűsítése érdekében a dolgok. Ez a személy nem látni minden it kapcsolatos dolgok. valójában, ő csak egy megtekintéséhez a képernyő, és nem is volna egy választás-hoz lát a más nézetek.

A mi esetünkben, hogy közvetlen fiókja közvetlenül kötődnek az űrlap jóvoltából egy lépjen kapcsolatba a választó (ami vagyok mindig akarnak hívni "személyválasztójának" részére némely ok).

A lép van ahogy következik:

1. Tervező módban, megy Szerszámok-> Képernyő-beállítások-> Megnyitása és mentése.

2. Válassza ki a "szabályok".

3. Hozzon létre egy új szabályt, amelynek hatása a "kapcsol-hoz Nézd" és akiknek állapota emelőerők a userName() függvény.

userName() az "egyszerű függvény" felhasználói nevet a tartomány nélkül. Ha belépek a SharePoint jogosultságokkal "domainpagalvin", userName() visszatér a "pagalvin".

A contact selector biztosít az elérhetőségi adatokat három bit. A "AccountID" része a leghasznosabb ez a forgatókönyv. Az egyetlen dolog, amit ideiglenes tákolmány ez még egy kicsit kihívás, hogy a kapcsolattartó választó (a környezetemben egyébként) visszatér a tartomány- és Felhasználóazonosítója, mint a "domainpagalvin". Ez megakadályoz bennünket abban, hogy csinál egy egyenes-továbbít egyenlőség állapot óta AccountID ("domainpagalvin") soha nem egyenlő lesz a userName() ("pagalvin").

Mi tud kap körül ez használ a "tartalmaz" üzemeltető: AccountID tartalmaz felhasználónevet().

Veszünk tovább és pre-függő előtt a userName kódolt tartomány() függvény-hoz kap az egyenlőség ellenőrzés és kiküszöböl a veszélye egy hamis pozitív-ra az üzemeltető tartalmaz.

Mi volna igazán szeret váltani automatikusan nézetben a többieknek, hogy AD biztonsági csoporttagság alapján. Például, Ha az "Ez Analytics tagja" Csoport hozzáfér az űrlap, automatikusan átkapcsol a IT Analytics nézet. Nem volt ideje, hogy végre azt, de az első gondolatom, hogy hozzon létre egy webes szolgáltatás, hogy van egy módszer, mint a "IsMemberOfActiveDirectorySecurityGroup", adja át a felhasználónevet() és térjen vissza igaz vagy hamis. Csinál akárki volna akármi más, több okos gondolat? Van-e bármilyen SharePoint funkció tudjuk a tőkeáttétel az InfoPath, hogy ezt?

</vége>

Technorati Tags: