Почему мои итоговые данные не обновляются в Acrobat? - PullRequest
1 голос
/ 07 января 2020

Я работаю над формой заказа в Acrobat, которая рассчитывает налог с продаж для любого состояния, выбранного в раскрывающемся списке. Если я вхожу в одну позицию, это не добавляет налог к ​​общей сумме. И если я go вернусь и изменим состояние, он корректно обновит налог с продаж, но сумма включает в себя предыдущий налог с продаж, а не текущий.

Я получаю эту ошибку:

InvalidSetError: Set not possible, invalid or unknown.
Field.value:8:Field TOTAL AMOUNT:Calculate

Вот мое вычисление для общей суммы:

var a=this.getField("Subtotal without customization charges");
var b=this.getField("Customization Charges");
var c=this.getField("Tax3");
var d=this.getField("Shipping");
var e=this.getField("Express Handling");
var f=this.getField("Discount Total");
var g=this.getField("TOTAL AMOUNT");
g.value=(a.value+b.value+c.value+d.value+e.value)-(f.value);

Раскрывающееся поле "Штат":

if(event.target.value!="State")
{
this.getField("Sales Tax").value=event.target.value;
}

Поле "Налог с продаж" скрыто и показывает стоимость экспорта того, что выбрано в поле «Штат».

Поле «Налог» скрыто и является продуктом «Сборы за настройку» x «Итого без сборов за настройку»

Поле «Налог2» скрыто и имеет этот расчет:

var a=this.getField("Tax");
var b=this.getField("Discount Total");
var c=this.getField("Tax2");
c.value=(a.value)-(b.value);

Поле «Tax3» является видимым и является продуктом «налога с продаж» x «Tax2»

Ответы [ 2 ]

0 голосов
/ 09 января 2020

Решено! Вместо того, чтобы создавать четыре поля для расчета налога, я объединил его в два. Я думаю, что это не было чтение уравнения в правильном порядке, потому что цепочка вычислений была распределена между четырьмя полями.

Одно скрытое поле, которое является значением экспорта раскрывающегося списка. Одно видимое поле «Налог с продаж» вычисление:

var a=this.getField("Subtotal without customization charges");
var b=this.getField("Customization Charges");
var c=this.getField("Discount Total");
var d=this.getField("Tax Calculation");
event.value=((a.value+b.value)-(c.value))*(d.value);

«ОБЩАЯ СУММА» вычисление поля:

var a=this.getField("Subtotal without customization charges");
var b=this.getField("Customization Charges");
var c=this.getField("Sales Tax");
var d=this.getField("Shipping");
var e=this.getField("Express Handling");
var f=this.getField("Discount Total");
event.value=((a.value+b.value+c.value)-(f.value))+(d.value+e.value);
0 голосов
/ 08 января 2020

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

var a=this.getField("Subtotal without customization charges");
var b=this.getField("Customization Charges");
var c=this.getField("Tax3");
var d=this.getField("Shipping");
var e=this.getField("Express Handling");
var f=this.getField("Discount Total");
event.value=(a.value+b.value+c.value+d.value+e.value)-(f.value);

Кроме того, измените правильность раскрывающегося списка налогов на «Принять выбранное значение немедленно» на вкладке параметров.

...