Konfigurera en formulärmall så att formulärets anslutningsstatus kan upptäckas

Viktigt!: Den här artikeln är maskinöversatt, se ansvarsfriskrivningen. Den engelska versionen av den här artikeln finns här för din referens.

Om du utformar en formulärmall vars formulär bygger på en nätverksanslutning för att bearbeta eller returnera data, och du kan skriva skript, kan du skriva ett skript som identifierar nätverk anslutningsstatus kan upptäckas formulär som baseras på din formulärmall. Du kan använda den här skript ska ha Microsoft Office InfoPath kontrollera om ett nytt formulär är ansluten till ett nätverk och om formuläret kan ansluta till en extern datakälla innan formuläret skickar en fråga till den externa datakällan. Denna artikel ger Microsoft JScript och Visual Basic Scripting Edition (VBScript) exempel för att avgöra om formulär som baseras på formulärmallen är ansluten till nätverket och om formulären kan ansluta till en extern datakälla.

I den här artikeln

Översikt

JScript-exempel

VBScript-exempel

Använda ett skriptexempel i en formulärmall

Översikt

Om du vill ta reda på anslutningsstatusen för ett formulär som baseras på din formulärmall använder du egenskapen MachineOnlineState i objektet Program. Därefter använder du metoden IsDestinationReachable i samma Program-objekt för att ta reda på om formuläret hittar den externa datakällan. Egenskapen MachineOnlineState innehåller ett av följande värden som visar formulärets anslutningsstatus:

Värde

Beskrivning

0

Datorn är inte ansluten till något nätverk. Det här värdet visas om datorn inte är ansluten till ett nätverk eller om datorns nätverkskort har inaktiverats.

1

Datorn är ansluten till ett nätverk. Om datorn är ansluten via en kabel betyder värdet att datorn har kontakt med nätverket. Om datorn är försedd med ett nätverkskort för trådlös anslutning betyder det att nätverkskortet fungerar. Det kan dock hända att datorn inte är ansluten till det trådlösa nätverket.

2

Datorn är ansluten till ett nätverk men Windows Internet Explorer har konfigurerats för användning offline, vilket kan innebära att dataanslutningen till en databas eller en webbtjänst inte fungerar som den ska.

När du har fastställt att datorn är ansluten till ett nätverk, kan du använda metoden IsDestinationReachable för att avgöra om formuläret kan kommunicera med den externa datakällan. Den här metoden tar webbadress (URL) eller Uniform Resource Name (URN) av den externa datakällan som en parameter och returnerar ett av följande booleska värden:

Sant    Formuläret har hittat den externa datakällan i nätverket.

Falskt    Formuläret kan inte hitta den externa datakällan. Datakällan kan vara offline eller går inte att nå i nätverket.

Med hjälp av skriptexemplen i den här artikeln kan du endast ta reda på om formuläret är anslutet till nätverket, och skripten aktiveras när användaren öppnar formuläret. Du kan dock använda skriptet när som helst om du vill kontrollera nätverksanslutningen innan du vidtar en åtgärd. Du kan exempelvis använda det när en användare klickar på en särskild knapp i formuläret för att kontrollera att det finns en nätverksanslutning till den externa datakällan. Oavsett när du väljer att använda skriptet kan du alltid lägga till skript som utför en viss åtgärd med utgångspunkt i om formuläret är anslutet till nätverket eller inte. Om datorn exempelvis är offline eller inte kan ansluta till den externa datakällan kan du låta InfoPath visa ett varningsmeddelande för användaren som anger att den externa datakällan inte är tillgänglig. Du kan anpassa varningsmeddelandet och informera användarna om vad de ska göra när den externa datakällan inte är tillgänglig, t.ex. fylla i formuläret vid ett senare tillfälle eller kontakta kundtjänst.

Överst på sidan

JScript-exempel

var machineState = Application.MachineOnlineState;
var displayMessage = machineState;
switch(machineState)
{
case 0:
{
displayMessage = "The computer is not connected to a network.";
break;
}
case 1:
{
if (!Application.IsDestinationReachable("http://example"))
{
displayMessage = "The computer is connected to a network, "
+ "but the external data source is not "
+ "available. Contact the data source "
+ "administrator for more information.";
}
else
{
displayMessage = "The computer is connected to a network.";
}
break;
}
case 2:
{
displayMessage = "The computer is connected to a network, but "
+ "Internet Explorer is in offline mode. Some "
+ "data connections may not work until you "
+ "set Internet Explorer to online mode. To "
+ "switch to online mode, on the File menu in "
+ "Internet Explorer, click Work Offline.";
break;
}
default:
{
displayMessage = "An unknown error occurred: Error: "
+ machineState;
}
}
XDocument.UI.Alert(displayMessage);

Överst på sidan

VBScript-exempel

Dim machineState, displayMessage, returnValue
machineState = Application.MachineOnlineState
displayMessage = machineState
returnValue = False
Select Case machineState
Case 0
displayMessage = "The computer is not connected to a network."
Case 1
returnValue = Application.IsDestinationReachable("http://example")
If returnValue = False Then
displayMessage = "The computer is connected to a network, but "
displayMessage = displayMessage + "the external data source is "
displayMessage = displayMessage + "not available. Contact the "
displayMessage = displayMessage + "data source administrator "
displayMessage = displayMessage + "for more information."
Else
displayMessage = "The computer is connected to a network."
End If
Case 2
displayMessage = "The computer is connected to a network, but "
displayMessage = displayMessage + "Internet Explorer is in "
displayMessage = displayMessage + "offline mode. Some data "
displayMessage = displayMessage + "connections may not work "
displayMessage = displayMessage + "until you set Internet "
displayMessage = displayMessage + "Explorer to online mode. "
displayMessage = displayMessage + "To switch to online mode, "
displayMessage = displayMessage + "on the File menu in "
displayMessage = displayMessage + "Internet Explorer, click "
displayMessage = displayMessage + "Work Offline."
Case Else
displayMessage = "An unknown error occurred: Error: "
displayMessage = displayMessage + machineState + "."
End Select
XDocument.UI.Alert(displayMessage)

Överst på sidan

Använda ett skriptexempel i en formulärmall

Om du vill testa ett skriptexempel innan du använder det i en av dina egna formulärmallar kan du skapa en tom formulärmall och sedan kopiera ett av skriptexemplen från den här artikeln till händelsen OnLoad. Skriptet i OnLoad körs när ett nytt formulär, baserat på formulärmallen, skapas. Du kan sedan förhandsgranska formulärmallen och testa skriptexemplet när datorn är ansluten till ett nätverk, när den inte är ansluten och när den är ansluten med Internet Explorer i offlineläge.

  1. Kopiera ett av skriptexemplen ovan och klistra in det i en textredigerare, t.ex. Anteckningar.

    Obs!: Kopierat exemplet skript i en textredigerare innan du har lagt till din formulärmall förhindrar Hypertext Markup Language (HTML) formateringsmarkeringarna inte visas i skriptet.

  2. Klicka på Designa en formulärmallArkiv-menyn i InfoPath.

  3. Klicka på Formulärmall under Designa en ny i dialogrutan Designa en formulärmall, klicka sedan på Tom och därefter på OK.

  4. Som standard används JScript som skriptspråk i nya formulärmallar. Om du vill använda VBScript måste du ändra formulärmallens skriptspråk.

    Hur gör jag?

    1. Klicka på FormuläralternativVerktyg-menyn.

    2. Klicka på Versionshantering i listan Kategori.

    3. Klicka på VBScript i listan Formulärmallskodspråk under Programmeringsspråk och sedan på OK.

  5. Peka på ProgrammeringVerktyg-menyn och klicka sedan på Händelsen Vid start. Då startas Microsoft Skripthanteraren med markören på händelsen OnLoad.

  6. I Microsoft Skripthanteraren byter du ut texten // Write your code here (JScript) eller ' Write your code here (VBScript) i händelsen OnLoad mot skriptexemplet som du kopierade till textredigeraren.

  7. Ändra skriptexemplet så att det passar den aktuella miljön. Du kan exempelvis ändra meddelandet och ändra http://exempel till den externa datakällans URL eller URN.

  8. Klicka sedan på SparaArkiv-menyn i Microsoft Skripthanteraren.

  9. Om du vill testa dina ändringar klickar du på Förhandsgranska i verktygsfältet Standard eller trycker på CTRL+SKIFT+B.

Överst på sidan

Obs!: Ansvarsfriskrivning för maskinöversättning: Den här artikeln har översatts av ett datorsystem utan mänsklig inblandning. Microsoft erbjuder dessa maskinöversättningar för att hjälpa icke engelskspråkiga användare att ta del av information om Microsofts produkter, tjänster och tekniker. Eftersom artikeln är maskinöversatt kan den innehålla fel i ordval, syntax och grammatik.

Utöka dina kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Office Insiders

Hade du nytta av den här informationen?

Tack för din feedback!

Tack för din feedback! Det låter som att det kan vara bra att koppla dig till en av våra Office-supportrepresentanter.

×