Как использовать сценарий или поле источника данных-получателя для условного форматирования InfoPath

Переводы статьи Переводы статьи
Код статьи: 827008 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

Аннотация

В данной статье описывается использование сценария для условного форматирования выражения, а также для использования в поле выражение условного форматирования в дополнительном источнике данных. Использовать сценарий или поле в дополнительный источник данных в форме Microsoft Office InfoPath 2007 или в форме Microsoft Office InfoPath 2003.

Выбрать для использования функции или сценария с помощью условного форматирования или поле источника данных-получателя с условным форматированиемвыражениедля типа условия.

Выражение, которое ссылается на поле в дополнительный источник данных содержит синтаксис, аналогичный следующему:

xdXDocument:GetDOM('DataSourceName") иdocRoot/NODE1/Node2=Мой: myField1

В этот синтаксис, местозаполнители:
  • DataSourceNameссылается на имя, которое дает в источник данных-получателя.
  • docRootкорень документа XML.
  • NODE1иNode2узлы, которые содержатся в XML. Node2 является дочерним элементом Node1.
  • Мой: myField1ссылается на поле в первичный источник данных формы.
В данном конкретном примере проверяет текстовое значение, оператор условного форматированияNode2в дополнительный источник данных дляМой: myField1в основной источник данных, а затем применяет формат, который выбран, если два значения соответствия.

Аналогичным образом, чтобы вызвать функцию сценария из условное выражение форматирования, можно использовать xdExtension префикс, связанный с пространством имен http://schemas.microsoft.com/office/infopath/2003/xslt/extension.

Проектирование новой формы

В этом примере описывается, как создать условные форматы, использующего оба типа выражения.

Для InfoPath 2003

  1. Запуска InfoPath 2003. Создать новый, пустой формы.
  2. Область задач Выберите источник данных. Чтобы добавить поля в форму, выполните следующие действия:
    1. Область задач в данных источника, щелкните правой кнопкой мышимоиПоля, а затем нажмите кнопкуДобавить.
    2. ВДобавление поля или группыдиалоговое окно, типmyExpenses. ВТипраскрывающийся список выбораГруппа. ВыберитеПовторениепараметр, а затем нажмите кнопкуОК.
    3. Область задач в данных источника, щелкните правой кнопкой мышиmyExpenses, а затем нажмите кнопкуДобавить.
    4. ВДобавление поля или группыдиалоговое окно, типExpenseName, а затем нажмите кнопкуОК.
    5. Область задач в данных источника, щелкните правой кнопкой мышиmyExpenses, а затем нажмите кнопкуДобавить.
    6. ВДобавление поля или группыдиалоговое окно, типExpenseValue. Выберите в списке типов данных,Десятичное число (double), а затем нажмите кнопкуОК.
  3. ПеремещениеmyExpensesв области задач Источник данных в форму группу и нажмите кнопкуПовторяющиеся таблицы.

InfoPath 2007

  1. Запустить InfoPath 2007.
  2. В левой частиПриступая к работедиалоговое окно, нажмите кнопкуРазработки шаблона формы.
  3. В конструкторе окно шаблон формы нажмите кнопкуПустой, а затем нажмите кнопкуОК.
  4. Область задач в конструктор задачи, нажмите кнопкуИсточник данных, а затем добавьте поля в форму. Чтобы добавить поля в форму, выполните следующие действия:
    1. Область задач в данных источника, щелкните правой кнопкой мышимоиПоля, а затем нажмите кнопкуДобавить.
    2. ВДобавление поля или группыдиалоговое окно, типmyExpenses.
    3. ВТипщелкнитеГруппа.
    4. Нажмите кнопкуПовторение, а затем нажмите кнопкуОК.
    5. Область задач в данных источника, щелкните правой кнопкой мышиmyExpenses, а затем нажмите кнопкуДобавить.
    6. ВДобавление поля или группыдиалоговое окно, типExpenseName, а затем нажмите кнопкуОК.
    7. Область задач в данных источника, щелкните правой кнопкой мышиmyExpenses, а затем нажмите кнопкуДобавить.
    8. ВДобавление поля или группыдиалоговое окно, типExpenseValue.
    9. Выберите в списке типов данныхДесятичное число (double), а затем нажмите кнопкуОК.

Использование сценария для условного форматирования

Для InfoPath 2003

  1. НаСредствавыберите пункт менюСценарий, а затем нажмите кнопкуРедактор сценариев.
  2. Добавьте следующую функцию в окно кода:
    function CheckItem()
    {
        return "Airfare";
    }
  3. Сохранить сценарий, а затем закройте редактор сценариев.
  4. В форме, щелкните правой кнопкой мыши текстовое полеExpenseNameполе, а затем нажмите кнопкуСвойства текстового поля.
  5. ВСвойства текстового полядиалоговое окно, нажмите кнопкуОтображениевкладка, а затем нажмите кнопкуУсловное форматирование.

    Условное форматированиепоявится диалоговое окно.
  6. Нажмите кнопкуДобавить.

    Условный форматпоявится диалоговое окно.
  7. ВУсловный форматдиалоговое окно, выберите пунктвыражениев выпадающем-списка и затем введите следующее условие в текстовое поле:

    Мой: ExpenseName = xdExtension:CheckItem()

    Нажмите кнопкуПолужирный шрифт, а затем нажмите кнопкуОК.
  8. Нажмите кнопкуОКЗакрытьУсловное форматированиедиалоговое окно.
  9. Нажмите кнопкуОКЗакрытьСвойства текстового полядиалоговое окно.
  10. Нажмите кнопкуПредварительный просмотр формы. Чтобы проверить форму, выполните следующие действия:
    1. Введите имя расходовПроживание. Ввод суммы250.
    2. Нажмите клавиши CTRL + ENTER, чтобы добавить новые строки.
    3. Введите имя расходовАвиаперелета. Ввод суммы700.

      ПримечаниеИмя расходов на второй строке выделено полужирным шрифтом, потому что равняется имени расходовАвиаперелета, иАвиаперелета— текстовое значение, которое возвращается изCheckItemфункция.

InfoPath 2007

  1. НаСредствавыберите пункт менюПрограммирование, а затем нажмите кнопкуРедактор сценариев.
  2. Добавить следующую функцию в окне кода.
    function CheckItem()
    {
        return "Airfare";
    }
  3. НаФайлменю, нажмите кнопкуСохранить.
  4. НаФайлменю, нажмите кнопкуВыход.
  5. В форме, щелкните правой кнопкой мыши текстовое полеExpenseNameполе, а затем нажмите кнопкуСвойства текстового поля.
  6. ВСвойства текстового полядиалоговое окно, нажмите кнопкуОтображениевкладка, а затем нажмите кнопкуУсловное форматирование.

    Условное форматированиепоявится диалоговое окно.
  7. Нажмите кнопкуДобавить.

    Условный форматпоявится диалоговое окно.
  8. ВУсловный форматдиалоговое окно, нажмите кнопку выражения в списке и введите в поле следующее условие:
    Мой: ExpenseName = xdExtension:CheckItem()
  9. Нажмите кнопкуПолужирный шрифт, а затем нажмите кнопкуОК.
  10. ЗакрытьУсловное форматированиедиалоговое окно, нажмите кнопкуОК.
  11. ЗакрытьСвойства текстового полядиалоговое окно, нажмите кнопкуОК.
  12. НаФайлменю, нажмите кнопкуПредварительный просмотр, а затем нажмите кнопкуФорма.
  13. Для тестирования формы, выполните следующие действия:
    1. Введите имя расходовПроживание.
    2. Ввод суммы250.
    3. Для добавления новой строки, нажмите клавиши CTRL + ВВОД.
    4. Введите имя расходовАвиаперелета.
    5. Ввод суммы700.

      ПримечаниеИмя расходов на второй строке выделено полужирным шрифтом, потому что равняется имени расходовАвиаперелета, иАвиаперелета— текстовое значение, которое возвращается изCheckItemфункция.

Использование поля вторичного источника данных для условного форматирования

  1. Использовать редактор XML или текстовом редакторе, таком как Блокнот для создания XML-файл со следующим содержимым:
    <?xml version="1.0"?>
    <ExpenseRequirements>
    	<RequiresReceipt>75.00</RequiresReceipt>
    </ExpenseRequirements>
    Имя файлаExpenseRequirements.xml.
  2. Добавление ExpenseRequirements.xml в качестве дополнительного источника данных для формы, выполните следующие действия:
    1. НаСредстваменю, нажмите кнопкуПреобразование основного источника данных.

      Отображается в мастере источника данных.
    2. Нажмите кнопкуОбзор.

      Открытьпоявится диалоговое окно.
    3. Переход к ExpenseRequirements.xml, а затем нажмите кнопкуОткрыть.
    4. Нажмите кнопкуСледующий, а затем нажмите кнопкуОкончаниедля завершения мастера настройки источника данных.
  3. Щелкните правой кнопкой мыши повторяющуюся таблицу, в форме, а затем нажмите кнопкуПовторяющиеся свойства таблицы.
  4. ВПовторяющиеся свойства таблицыдиалоговое окно, выберитеОтображениевкладка, а затем нажмите кнопкуУсловное форматирование.

    Условное форматированиепоявится диалоговое окно.
  5. Нажмите кнопкуДобавить.

    Условный форматпоявится диалоговое окно.
  6. ВУсловный форматдиалоговое окно, выберите пунктвыражениев раскрывающемся-списка. В текстовом поле введите следующее условие:

    Мой: ExpenseValue > xdXDocument:GetDOM("ExpenseRequirements")/ExpenseRequirements/RequiresReceipt

    ВЦвет фонараскрывающийся список и выберите Красный,ОК.
  7. Нажмите кнопкуОКЗакрытьУсловное форматированиедиалоговое окно.
  8. Нажмите кнопкуОКЗакрытьПовторяющиеся свойства таблицыдиалоговое окно.
  9. Нажмите кнопкуПредварительный просмотр формы.
  10. Для тестирования формы, выполните следующие действия:
    1. Введите имя расходовОбед. Ввод суммы25.
    2. Нажмите клавиши CTRL + ENTER, чтобы добавить новые строки.
    3. Введите имя расходовОбед. Ввод суммы80.

      ПримечаниеТолько во второй строке форматируется с помощью красного цвета фона, так как значение расходов превышает 75.

Свойства

Код статьи: 827008 - Последний отзыв: 4 октября 2011 г. - Revision: 3.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft Office InfoPath 2007
  • Microsoft Office InfoPath 2003
Ключевые слова: 
kbhowtomaster kbmt KB827008 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:827008

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com