Как динамически установить значение в SAP Adobe Forms с помощью JavaScript

Я создаю форму на основе стандартной формы SAP F140_CUS_STAT_01 для Adobe.

В столбце «Документ» у меня есть требование отображать поле REBZG, если оно содержит значение, или BELNR, если нет.

Я сделал следующее:

if ( data.CustomerStatement.ItemTable.TableOpenItem.REBZG.rawValue == null ||
     data.CustomerStatement.ItemTable.TableOpenItem.REBZG.rawValue == '' ) 
  {  data.CustomerStatement.ItemTable.TableOpenItem.REBZG.rawValue = 
     data.CustomerStatement.ItemTable.TableOpenItem.BELNR.rawValue; }

BELNR — это скрытое поле в TableOpenItem.

К сожалению, ничего не происходит.

Что-то не так с моим синтаксисом?; Должен ли я использовать конкретное событие? Должен ли я по-разному относиться к полям внутренней таблицы?

Кроме того, как отлаживать javascript в контексте SAP. Я пробовал как «Предупреждение», так и печать на консоль, но ни один из них не дал никакого эффекта.


person Esti    schedule 20.09.2011    source источник


Ответы (1)


Чтобы включить отладчик JavaScript для LiveCycle Designer и выполнить код из консоли JavaScript, необходимо включить JavaScript и отладчик JavaScript в Acrobat Professional. Вам необходимо разрешить отладчику JavaScript доступ к консоли JavaScript, поскольку окно консоли является компонентом интерфейса отладчика JavaScript.

Вы можете включить отладчик JavaScript в Adobe Reader, если у вас установлены расширения LiveCycle Reader. Чтобы включить отладчик JavaScript в Adobe Reader, вам необходимо получить файл debugger.js, а затем отредактировать реестр Microsoft Windows. Дополнительные сведения о включении отладчика JavaScript в Adobe Reader см. в разделе «Разработка приложений Acrobat с использованием JavaScript» на странице partner.adobe.com/public/developer/acrobat/devcenter.html (только на английском языке). (из справки в Adobe Designer) Надеюсь, это полезно..) В любом случае вы можете использовать «this.isNull» вместо data.CustomerStatement.ItemTable.TableOpenItem.REBZG.rawValue == null And event.. обычно я использую форму события: готово для таких случаев.

person Alexander_P    schedule 22.09.2011
comment
Спасибо за ответ, Александр - person Esti; 23.09.2011