


Hi
Can you please let me know how to identify whether value in a decimal field has decimal
if value has decimal, i need to ignore that value during summation.
Requirement is as follows
A table has 2 columns. Column 1 has a running number that can have values like 1, 1.1, 1.2, 2
Second column is amount. This can have decimals.
I need to total the amount only for main nos 1, 2. Amount for rows having decimal should be ignored
code i use as part of calculate
var fields = xfa.resolveNodes("Subform1.Table1.Row1[*]");
xfa.host.messageBox("fields length"+fields.length);
for(i=0 ; i<fields.length; i++)
{
c = xfa.resolveNode("Subform1.Table1.Row1[" + i +"].NF1[*]").rawValue;
how to check if c has decimal?
}
Thanks in advance
Ram
Views
Replies
Sign in to like this content
Total Likes
Hi,
Try the following;
var total = 0;
var fields = xfa.resolveNodes("Subform1.Table1.Row1[*]")
for (var i = 0; i < fields.length; i++)
{
var row = fields.item(i);
if (Math.floor(row.DecimalField1.rawValue) === row.DecimalField1.rawValue)
{
total += row.DecimalField2.rawValue;
}
}
console.println(total);
Or maybe, if you aren't doing anything else in the loop;
var total = 0;
var fields = xfa.resolveNodes("Subform1.Table1.Row1.[Floor(DecimalField1) == DecimalField1]")
for (var i = 0; i < fields.length; i++)
{
var row = fields.item(i)
total += row.DecimalField2.rawValue;
}
console.println(total);
Note you don't need to do a resolveNodes within the loop, the item() method will return the row.
Regards
Bruce
Views
Replies
Sign in to like this content
Total Likes
Dear Bruce
Thanks a ton for the quick help
Appreciate it
Best Regards
Ram
Views
Replies
Sign in to like this content
Total Likes