OnMergeRequest-hendelsen

Microsoft Office InfoPath

Inntreffer når sammenslåingsoperasjonen aktiveres fra enten Microsoft Office InfoPath 2003-brukergrensesnittet eller kommandolinjen ved hjelp av alternativet /aggregate.

Funksjon XDocument::OnMergeRequest(ByRef pEvent As MergeEvent)

pEvent    Obligatorisk MergeEvent. En referanse til MergeEvent-objektet.

Merknader

Hvis ReturnStatus-egenskapen for MergeEvent-objektet er satt til False, avbryter InfoPath sammenslåingsoperasjonen. Hvis det oppstår en feil i koden for OnMergeRequest-hendelsesbehandlingen, ignorerer InfoPath feilen og bruker ReturnStatus-egenskapen for MergeEvent-objektet. Hvis ReturnStatus-egenskapen ikke er eksplisitt angitt, brukes standardverdien False.

Når det gjelder InfoPath-skjemaer som er lagret i et Windows SharePoint Services-skjemabibliotek, inntreffer OnMergeRequest-hendelsen også når MergeDocuments2-metoden for OpenXMLDocuments-kontrollen kjøres. Hvis du vil ha mer informasjon om OpenXMLDocuments-kontrollen, ser du SharePoint Products and Technologies 2003 Software Development Kit, som er tilgjengelig på webområdet for Microsoft SharePoint Products and Technologies.

Hvis du oppretter en hendelsesbehandling for OnMergeRequest-hendelsen for en skjemamal, må du redigere skjemadefinisjonsfilen (XSF) og sette useScriptHandler-attributtet til "ja" før den kan kjøres.

Obs!  Denne objektmodellen støttes ikke når alternativet Deaktiver funksjoner fra oppdateringspakke under Avansert-kategorien i Alternativer-dialogboksen i InfoPath er valgt, eller når Microsoft Office 2003 Service Pack 1 eller senere ikke er installert. Skjemaer som implementerer dette objektmodellmedlemmet i kode, vil generere en feilmelding hvis de åpnes i InfoPath nå oppdateringspakkefunksjoner er deaktivert eller ikke er tilgjengelige.

Eksempel

I eksempelet nedenfor utfører OnMergeRequest-hendelsesbehandlingen en sammenslåingsoperasjon og angir variabler som indikerer statusen for sammenslåingsoperasjonen:

var g_fMerging = false;

function XDocument::OnMergeRequest(eventObj)
{
   // Set global property to indicate that forms are being merged.
   if (eventObj.Index == 0)
       g_fMerging = true;

   XDocument.ImportDOM(eventObj.DOM);
   eventObj.ReturnStatus = true;
   
   if (eventObj.Index + 1 == eventObj.Count)
   {
      g_fMerging = false;
      XDocument.UI.Alert("Your request to merge " + eventObj.Count +
     " files is now complete.");
   }
}