# Check sum(Qty) in DataSource and Compare with Form

**URL:** <https://www.dynamicsuser.net/t/check-sum-qty-in-datasource-and-compare-with-form/50101>\
**Category:** Developer Forum\
**Created:** [January 2, 2014, 4:52am UTC](https://www.dynamicsuser.net/t/check-sum-qty-in-datasource-and-compare-with-form/50101 "2014-01-02T04:52:09Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![antonnesedi](https://avatars.discourse-cdn.com/v4/letter/a/59ef9b/32.png) [@antonnesedi](https://www.dynamicsuser.net/u/antonnesedi)\
**Post date:** [January 2, 2014, 4:52am UTC](https://www.dynamicsuser.net/t/check-sum-qty-in-datasource-and-compare-with-form/50101/1 "2014-01-02T04:52:09Z")

</div>

Hi all,

I hv formA with dataSource tableA

tableA hs fields : itemID, Qty, Status

In formA I can add qty minus or plus.

But whenever I add the minus Qty, i need to check to sum(Qty) in tableA whether the Qty is below 0 or not .

I wrote this, but doesnt work

method: validateWrite

tableA a;

while select sum(Qty) from a group by a.ItemId where a.status::bad  
{  
if (Qty\<0)  
{  
error(“Message”);  
ret=false;  
}  
}

---

<div class="post-metadata">

**Author:** ![M\_Kumaran\_L](https://avatars.discourse-cdn.com/v4/letter/m/82dd89/32.png) [@M\_Kumaran\_L](https://www.dynamicsuser.net/u/M_Kumaran_L)\
**Post date:** [January 2, 2014, 6:19am UTC](https://www.dynamicsuser.net/t/check-sum-qty-in-datasource-and-compare-with-form/50101/2 "2014-01-02T06:19:01Z")

</div>

Hi,

you can validate the Qty in validateWrite method but the error will be shown to the user while saving the record.

If you don’t want the user to enter 0 (or sum shouldn’t 0) then place the same code in validateField method for Qty field.

Thanks.

---

<div class="post-metadata">

**Author:** ![MartinDrab](https://avatars.discourse-cdn.com/v4/letter/m/e0b2c6/32.png) [@MartinDrab](https://www.dynamicsuser.net/u/MartinDrab)\
**Post date:** [January 2, 2014, 7:02am UTC](https://www.dynamicsuser.net/t/check-sum-qty-in-datasource-and-compare-with-form/50101/3 "2014-01-02T07:02:38Z")

</div>

Note that if you run the validation before saving, the current record won’t be included in the sum. Your calculation should check whether {sum of already saved} + _{Qty being saved}_ \< 0.

---

<div class="post-metadata">

**Author:** ![antonnesedi](https://avatars.discourse-cdn.com/v4/letter/a/59ef9b/32.png) [@antonnesedi](https://www.dynamicsuser.net/u/antonnesedi)\
**Post date:** [January 2, 2014, 7:15am UTC](https://www.dynamicsuser.net/t/check-sum-qty-in-datasource-and-compare-with-form/50101/4 "2014-01-02T07:15:55Z")

</div>

Thx for the reply

But i didnt see any validateField method in QtyField.

---

<div class="post-metadata">

**Author:** ![antonnesedi](https://avatars.discourse-cdn.com/v4/letter/a/59ef9b/32.png) [@antonnesedi](https://www.dynamicsuser.net/u/antonnesedi)\
**Post date:** [January 2, 2014, 7:38am UTC](https://www.dynamicsuser.net/t/check-sum-qty-in-datasource-and-compare-with-form/50101/5 "2014-01-02T07:38:22Z")

</div>

what method should i write it on?

i hv tried to write in method validate in QtyField, but it didnt work

---

<div class="post-metadata">

**Author:** ![MartinDrab](https://avatars.discourse-cdn.com/v4/letter/m/e0b2c6/32.png) [@MartinDrab](https://www.dynamicsuser.net/u/MartinDrab)\
**Post date:** [January 2, 2014, 8:02am UTC](https://www.dynamicsuser.net/t/check-sum-qty-in-datasource-and-compare-with-form/50101/6 "2014-01-02T08:02:27Z")

</div>

And why it doesn’t work? Is the calculated value what you expect? You will find the answer in the debugger, not here.

---

<div class="post-metadata">

**Author:** ![antonnesedi](https://avatars.discourse-cdn.com/v4/letter/a/59ef9b/32.png) [@antonnesedi](https://www.dynamicsuser.net/u/antonnesedi)\
**Post date:** [January 3, 2014, 2:09am UTC](https://www.dynamicsuser.net/t/check-sum-qty-in-datasource-and-compare-with-form/50101/7 "2014-01-03T02:09:27Z")

</div>

the calculation is fine. but i’m just curious what method should i use for this case.

to be honest i am not very familiar with the method provided by ax

now the case is solved. i used canClose for the validation
