أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

كيفية تحميل بيانات في نموذج InfoPath بشكل حيوي

انتهاء دعم Office 2003

لقد أنهت شركة Microsoft دعم Office 2003 في 8 أبريل، 2014. وقد أثر هذا التغيير على تحديثات البرامج لديك وخيارات الأمان الخاصة بك. تعرف على ما يعنيه ذلك فيما يتعلق بك وكيفية الحفاظ على حمايتك.

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

اضغط هنا لرابط المقالة باللغة الانجليزية896451
الموجز
توضح هذه المقالة ثلاث طرق لتحميل البيانات في نموذج Microsoft Office InfoPath بشكل حيوي. يمكنك استخدام الحدث OnLoad أتمتة كائن InfoPath ExternalApplication أو إنشاء إحدى صفحات ASP. يتم توفير نماذج التعليمات البرمجية.
مقدمة حول
توضح هذه المقالة كيفية تحميل بيانات في نموذج InfoPath Office بشكل حيوي.
معلومات أخرى
نموذج InfoPath ملف XML. يحتوي الملف على البيانات من النموذج وXML معالجة الإرشادات التي تخبر مستكشف Microsoft Windows أو Microsoft Internet Explorer التي ينتمي إليها التطبيق بيانات XML.

يمكنك بشكل حيوي تحميل البيانات إلى InfoPath باستخدام إحدى الطرق الثلاثة التالية:
  • استخدام الحدث OnLoad.

    في الحدث OnLoad يمكنك الاتصال إلى صفحة ASP أو مصدر بيانات خارجي آخر لاسترداد البيانات و نسخ إلى النموذج.
  • أتمتة كائن InfoPath ExternalApplication.

    هذا الأسلوب بإنشاء نموذج جديد يستند إلى البيانات من مصدر خارجي.
    ملاحظة يجب تعيين الإعداد تهيئة و عناصر التحكم ActiveX التي لم يتم وضع علامة آمن لها وبرمجتها في Internet Explorer إلى مطالبة أو تمكين لهذا الأسلوب للعمل.
    يجب أن يكون البيانات من مصدر خارجي XML InfoPath صحيح.
  • إنشاء إحدى صفحات ASP.

    إرجاع صفحة ASP بيانات XML في التنسيق الصحيح لـ InfoPath لفتح كملف نموذج. تحتوي بيانات XML على مرجع إلى قالب نموذج InfoPath حيث يجب عرض البيانات. يمكن لـ InfoPath عرض البيانات دون وجود مشكلة.

إنشاء دليل ظاهري جديد

  1. تشغيل خدمات معلومات الإنترنت Microsoft إدارة.
  2. قم بتوسيع الدليل مواقع ويب في طريقة العرض الشجري.
  3. انقر بزر الماوس الأيمن فوق موقع ويب حيث تريد إنشاء دليل ظاهري جديد ، أشر إلى جديد ثم انقر فوق الدليل الظاهري.
  4. اتبع الخطوات الموجودة "إنشاء الدليل الظاهري" معالج إنشاء دليل ظاهري جديد.

    ملاحظة يجب منح إذن الكتابة إلى الدليل الظاهري.

تصميم نموذج InfoPath

InfoPath 2007

  1. بدء تشغيل Infopath. في الجزء الأيمن، انقر فوق تصميم "قالب نموذج".
  2. ضمن تصميم جديد ، انقر لتحديد الخيار قالب نموذج انقر فوق تحديد خيار فارغ ثم انقر فوق موافق.
  3. ضمن مهام التصميم ، انقر فوق عناصر التحكم.
  4. انقر فوق مربع نص مرتين لإضافة نص جهازي التحكم مربع إلى النموذج.
  5. قم بحفظ النموذج.
  6. من القائمة ملف، انقر فوق نشر.
  7. في "معالج النشر" ، انقر فوق التالي. انقر فوق إلى موقع على شبكة اتصال ثم انقر فوق التالي.
  8. في اسم الملف والمسار قالب النموذج المربع اكتب URL للدليل الظاهري التي قمت بإنشائها.
  9. في المربع اسم قالب النموذج اكتب twofield.xsn.

    ملاحظة تأكد من أن URL لما يلي:
    http:// myServer / /twofield.xsn myVirtualDirectory
  10. انقر فوق التالي ، انقر فوق نشر ثم انقر فوق إغلاق.
  11. إنهاء InfoPath.

InfoPath 2003

  1. بدء تشغيل Infopath. في الجزء الأيمن، انقر فوق تصميم نموذج.
  2. تحت تصميم نموذج انقر فوق نموذج فارغ جديد.
  3. ضمن مهام التصميم ، انقر فوق عناصر التحكم.
  4. انقر فوق مربع نص مرتين لإضافة نص جهازي التحكم مربع إلى النموذج.
  5. من القائمة ملف، انقر فوق نشر.
  6. في "معالج النشر" ، انقر فوق التالي انقر فوق الملقم "إلى ويب" ثم انقر فوق التالي.
  7. في المربع URL ويب واسم الملف ، اكتب URL الدليل الظاهري التي قمت بإنشائها.
  8. في المربع اسم النموذج اكتب twofield.xsn.

    ملاحظة تأكد من أن URL لما يلي:
    http:// myServer / /twofield.xsn myVirtualDirectory
  9. انقر فوق التالي ، انقر فوق إنهاء ثم انقر فوق إغلاق.
  10. إنهاء InfoPath.

إنشاء صفحة Default.asp

  1. انقر فوق ابدأ ثم انقر فوق تشغيل واكتب المفكرة ثم انقر فوق موافق.
  2. قم بلصق التعليمة البرمجية التالية في لغة Notepad.
    <%@ Language=VBScript %><%  dim serverName, hrefPath, fileNamePos, serverPath  serverName = Request.ServerVariables("SERVER_NAME")  hrefPath = Request.ServerVariables("PATH_INFO")  fileNamePos = InStr( 1, hrefPath, "/Default.asp", 1 )  hrefPath = Left(hrefPath, fileNamePos )  serverPath = "http://" + serverName + hrefPath%><HTML><head><SCRIPT LANGUAGE=VBScript>Sub ButtonClick() Dim oInfoPathApp set oInfoPathApp = CreateObject("InfoPath.ExternalApplication") oInfoPathApp.New "<%=serverPath%>GetData.asp?dataRequest=2" set oInfoPathApp = Nothing window.closeEnd Sub</SCRIPT></HEAD><BODY onload="ButtonClick"></BODY></HTML>
  3. قم بحفظ الملف كملف Default.asp. حفظ الملف في الدليل الظاهري الذي قمت بإنشائه في قسم "إنشاء دليل ظاهري جديد".

إنشاء صفحة ASP لإنشاء نموذج بشكل حيوي

  1. حدد موقع ومن ثم انقر نقراً مزدوجاً فوق النموذج Twofield.xsn الذي قمت بنشره؟.
    ملاحظة يتم فتح نموذج فارغ جديد بتعبئة.
  2. انقر فوق ملف ثم انقر فوق حفظ باسم.
  3. قم بحفظ الملف كملف Form1.xml.
  4. انقر فوق ابدأ ثم انقر فوق تشغيل واكتب المفكرة ثم انقر فوق موافق.
  5. Paste the following code in Notepad.
    <%@ Language=VBScript %><%  ' Define the XML namespace for the form.  Dim strNamespace  strNamespace = "http://schemas.microsoft.com/office/infopath/2003/myXSD/2003-04-21T15:25:26"   'Calculate the path of this server directory.  dim serverName, hrefPath, fileNamePos, serverPath  serverName = Request.ServerVariables("SERVER_NAME")  hrefPath = Request.ServerVariables("PATH_INFO")  fileNamePos = InStr( 1, hrefPath, "/GetData.asp", 1 )  hrefPath = Left(hrefPath, fileNamePos )  serverPath = "http://" + serverName + hrefPath   ' Set our return content type.  Response.ContentType = "text/xml"  'Create an XML document to return.  Dim oXML  Set oXML = Server.CreateObject("MSXML.DOMDocument")   'Create the XML header that all XML documents must have.  dim myPI1  set myPI1 = oXML.createProcessingInstruction("xml", "version=""1.0"" encoding=""UTF-8""")  oXML.insertBefore myPI1, oXML.childNodes.item(0)   'Create the mso-infopathSolution processing instruction that binds the XML from this page to the   'TwoField.xsn InfoPath form template.  dim myPI2  set myPI2 = oXML.createProcessingInstruction("mso-infoPathSolution", "solutionVersion=""1.0.0.1"" productVersion=""11.0.5531"" PIVersion=""1.0.0.0"" href=""" + serverPath + "TwoField.xsn""")  oXML.insertBefore myPI2, oXML.childNodes.item(1)   'Create the mso-application processing instruction that marks the XML from this page as an InfoPath form.  dim myPI3  set myPI3 = oXML.createProcessingInstruction("mso-application", "progid=""InfoPath.Document""")  oXML.insertBefore myPI3, oXML.childNodes.item(2)   'Generate the XML for the form.  dim myFields  set myFields = oXML.createNode( 1, "myFields", strNamespace )  oXML.appendChild myFields   dim field1  set field1 = oXML.createNode( 1, "field1", strNamespace )   dim field2  set field2 = oXML.createNode( 1, "field2", strNamespace )   dim requestedData  requestedData = Request("dataRequest")  Select Case requestedData     Case "1"        field1.text = "test field 1"        field2.text = "test field 2"     Case "2"        field1.text = "test field 3"        field2.text = "test field 4"     Case "3"        field1.text = "test field 5"        field2.text = "test field 6"     Case Else        field1.text = "test field 7"        field2.text = "test field 8"  end Select   myFields.appendChild field1  myFields.appendChild field2   'Return the XML to the client.  Response.Write oXML.XML%>
  6. من القائمة ملف، انقر فوق حفظ باسم اكتب GetData.asp في المربع اسم الملف فيه ثم انقر فوق حفظ.
  7. بدء تشغيل مثيل ثاني من المفكرة.
  8. من القائمة ملف، انقر فوق فتح انقر فوق Form1.xml ثم انقر فوق فتح.
  9. حدد موقع xmlns: مساحة الاسم الخاص بي تعريف في Form1.xml ، ثم قم بنسخ القيمة الخاصة به.

    ملاحظة القيمة لما يلي:
    http://schemas.microsoft.com/office/infopath/2003/myXSD/2003-04-21T15:25:26
  10. في ملف GetData.asp حدد موقع السطر التالي:
    strNamespace = "http://schemas.microsoft.com/office/infopath/2003/myXSD/2003-04-21T15:25:26"
  11. استبدال قيمة متغير strNamespace القيمة التي قمت بنسخها في الخطوة رقم 9.
  12. انقر فوق حفظ ثم قم بإنهاء "المفكرة".
  13. نسخ ملف GetData.asp إلى نفس الدليل الظاهري حيث يقع فيه قالب النموذج Twofield.xsn.

إضافة رمز إلى نموذج InfoPath تلقائياً تحميل البيانات من صفحة ASP

  1. بدء تشغيل InfoPath.
  2. في InfoPath 2007، انقر فوق تصميم نموذج قالب في الجزء الأيمن. في InfoPath 2003، انقر فوق تصميم نموذج في الجزء الأيمن.
  3. في InfoPath 2007، انقر فوق على جهاز الكمبيوتر ضمن فتح قالب نموذج. في InfoPath 2003، انقر فوق على جهاز الكمبيوتر ضمن فتح نموذج في وضع التصميم في جزء المهام تصميم نموذج.
  4. اكتب URL قالب النموذج الذي قمت بالنشر.

    ملاحظة URL لما يلي:
    http://myServer/myVirtualDirectory/twofield.xsn
  5. من القائمة أدوات، انقر فوق البرمجة ثم انقر فوق الحدث OnLoad.
  6. استبدال رمز الحدث OnLoad الافتراضي التعليمة البرمجية التالية. دالة
    function XDocument::OnLoad(eventObj){   //Only load data if the fields are empty.   if (XDocument.DOM.selectSingleNode("/my:myFields/my:field1").text == "" )   {      //Work out the location of the data file based on the current install directory.    searchExpression = new RegExp( "TwoField.xsn", "ig" );    searchResults = XDocument.Solution.URI.match( searchExpression );    if (searchResults.length == 0)     return;         //Clear the "TwoField.xsn" part of the string.    var targetDirectory = XDocument.Solution.URI.slice(0, searchResults.index );       //Load the example data into and XML document.      var objExternalData = new ActiveXObject("MSXML2.DomDocument.5.0");      objExternalData.async = false;      objExternalData.validateOnParse = false;      objExternalData.load( targetDirectory + "getData.asp?dataRequest=3" );       //Set the SelectionNamespaces property so that we can search the example data.      var strSelectionNamespaces = XDocument.DOM.getProperty("SelectionNamespaces");      objExternalData.setProperty("SelectionNamespaces", strSelectionNamespaces );       //Find the root node in the example data and import it into the InfoPath document.      var objExternalXML = objExternalData.selectSingleNode("my:myFields");      var objReplacementXML = XDocument.DOM.importNode( objExternalXML, true );            //Find the original data in the form and replace it with the example data.      var objOriginalXML = XDocument.DOM.selectSingleNode("my:myFields");     XDocument.DOM.replaceChild( objReplacementXML, objOriginalXML ); }}
  7. من القائمة ملف، انقر فوق حفظ وإغلاق نموذج InfoPath.

اختبار نموذج InfoPath

تحميل بيانات باستخدام الحدث OnLoad

الحدث OnLoad النموذج TwoField.xsn تحميل البيانات من صفحة GetData.asp إذا كانت لم بيانات أخرى في النموذج. لتحميل البيانات اتبع الخطوات التالية:
  1. انقر فوق ابدأ ثم انقر فوق تشغيل واكتب مسار النموذج ثم انقر فوق موافق. المسار الذي تكتبه لما يلي:
    http:// myServer / /TwoField.xsn IPDynamicData
  2. إذا كنت مطالب انقر فوق فتح.
إشعار يبدأ InfoPath ونموذج TwoField.xsn "فتح". يحتوي Field1 "اختبار الحقل 5" ، ويحتوي Field2 "اختبار الحقل 6". هذه هي القيم التي ترجع GetData.asp عند تعيين المعلمة dataRequest الخاص به إلى "3".

تحميل نموذج افتراضي باستخدام ExternalApplication.New

برنامج نصي من جانب العميل لأتمتة الكائن ExternalApplication لبدء InfoPath يقوم بإنشاء صفحة Default.asp ثم إنشاء نموذج جديد. نموذج جديد يستند إلى بيانات XML التي تم إرجاعها بواسطة GetData.asp. لإنشاء نموذج جديد انقر فوق ابدأ ثم انقر فوق تشغيل ، واكتب المسار الصفحة Default.asp ثم ثم انقر فوق موافق. المسار الذي تكتبه لما يلي:
http:// myServer / IPDynamicData / .asp default
ملاحظة لاستخدام هذا الأسلوب، يجب عليك النقر فوق مطالبة أو تمكين الإعداد تهيئة و عناصر التحكم ActiveX التي لم يتم وضع علامة آمن لها وبرمجتها في Internet Explorer.

إشعار يبدأ InfoPath ونموذج TwoField.xsn "فتح". يحتوي Field1 "اختبار الحقل 3" و Field2 يحتوي على"اختبار الحقل 4". هذه هي القيم التي ترجع GetData.asp عند تعيين المعلمة dataRequest الخاص به إلى "2".

تحميل نموذج موجود من إحدى صفحات ASP

إرجاع صفحة GetData.asp XML في التنسيق الصحيح لـ InfoPath فتحه كملف نموذج. للقيام بذلك، انقر فوق ابدأ ثم انقر فوق تشغيل ، واكتب المسار الصفحة GetData.asp ثم ثم انقر فوق موافق. المسار الذي تكتبه لما يلي:
http:// myServer / /getData.asp?dataRequest=1 IPDynamicData
إشعار يبدأ InfoPath ونموذج GetData.asp "فتح". يتضمن Field1 "اختبار الحقل 1" ويتضمن Field2 "اختبار الحقل 2". هذه هي القيم التي ترجع GetData.asp عند تعيين المعلمة dataRequest الخاص به إلى "1".

تقدم Microsoft الأمثلة البرمجية فقط دون أي ضمان التعبير عن أو ضمنية. هذا يتضمن ولكن لم يقتصر على الضمانات الضمنية الخاصة بالتجارة أو الملاءمة لغرض معين. تفترض هذه المقالة تكون مألوفة مع لغة البرمجة التي يتم شرحها مع الأدوات التي يتم استخدامها لإنشاء لتصحيح الإجراءات. يمكن لمهندسي الدعم لدى Microsoft شرح وظيفة إجراء محدد ولكن لن يقوموا بتعديل هذه الأمثلة لتقديم وظيفة إضافية أو إنشاء إجراءات تستوفي متطلبات محددة.

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 896451 - آخر مراجعة: 03/27/2007 21:23:22 - المراجعة: 3.1

Microsoft Office InfoPath 2007, Microsoft Office InfoPath 2003, Microsoft Office InfoPath 2003, Service Pack 1 (SP1)

  • kbmt kbscript kbasp kbhowto KB896451 KbMtar
تعليقات
simov.clickstreamTracker.init(); >0&did=1&t=">