commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

r101 - gnue-invoice/forms


From: kilo
Subject: r101 - gnue-invoice/forms
Date: Tue, 26 Oct 2004 08:08:48 -0500 (CDT)

Author: kilo
Date: 2004-10-26 08:08:47 -0500 (Tue, 26 Oct 2004)
New Revision: 101

Modified:
   gnue-invoice/forms/INV_Head.gfd
Log:
GNUe Invoice
Separated head/item free blocks.

Modified: gnue-invoice/forms/INV_Head.gfd
===================================================================
--- gnue-invoice/forms/INV_Head.gfd     2004-10-26 11:02:58 UTC (rev 100)
+++ gnue-invoice/forms/INV_Head.gfd     2004-10-26 13:08:47 UTC (rev 101)
@@ -45,19 +45,24 @@
   ******************************************************-->
   <trigger name="calcDueDate" type="NAMED">
     dateDue = blkINV_Head.call("INV_calcDateDue", {})
-    blkFree.dateDue.set(dateDue)
+    blkFreeHead.dateDue.set(dateDue)
   </trigger>
 
   <trigger name="getItemPrice" type="NAMED">
     price = blkINV_Item.call("INV_itemPrice", {})
-    blkFree.itemPrice.set(price)
+    blkFreeItem.itemPrice.set(price)
   </trigger>
 
   <trigger name="calcItemPriceTotal" type="NAMED">
-    price = blkINV_Item.call("INV_calcItemPrice", 
{'quantity':blkINV_Item.fldInvQuantity.get()})
-    blkFree.itemPriceTotal.set(price)
+    #Calculate and display the line's total value
+    if (blkFreeItem.itemPrice is not None) and (blkINV_Item.fldInvQuantity is 
not None):
+      price = float(blkFreeItem.itemPrice.get())
+      quantity = float(blkINV_Item.fldInvQuantity.get())
+      total = price * quantity
+      blkFreeItem.itemPriceTotal.set(total)
   </trigger>
 
+
   <logic>
     <!--***************************************************
                         Invoice head
@@ -96,40 +101,36 @@
       upon viewing an invoice-->
       <trigger type="POST-QUERY" name="postquery">
         print "blkINV_Head::PostQuery"
-        blkFree.number.set(self.fldInvNumber.get())
-        blkFree.dateIssued.set(self.fldInvDateissued.get())
-        blkFree.dateDue.set(self.fldInvDatedue.get())
-        blkFree.valueTotalGross.set(self.fldInvValuetotalGross.get())
+        blkFreeHead.number.set(self.fldInvNumber.get())
+        blkFreeHead.dateIssued.set(self.fldInvDateissued.get())
+        blkFreeHead.dateDue.set(self.fldInvDatedue.get())
+        blkFreeHead.valueTotalGross.set(self.fldInvValuetotalGross.get())
       </trigger>
 
       <!--Copy generated and computed data to the DB-->
       <trigger type="PRE-COMMIT" name="precommit">
         print "blkINV_Head::PreCommit"
-        self.fldInvDateissued.set(blkFree.dateIssued.get())
-        self.fldInvDatedue.set(blkFree.dateDue.get())
+        self.fldInvDateissued.set(blkFreeHead.dateIssued.get())
+        self.fldInvDatedue.set(blkFreeHead.dateDue.get())
       </trigger>
     </block>
 
 
-
-    <!--***************************************************
-                        Free block
-     Fields to display generated/computed data on the form
-    ****************************************************-->
-    <block name="blkFree">
+    <!--***************************************************************
+                                Free head block
+     Fields to display generated/computed invoice head data on the form
+    ****************************************************************-->
+    <block name="blkFreeHead">
       <field name="number" readonly="Y" />
       <field name="dateIssued" readonly="Y" typecast="date"/>
       <field name="dateDue" readonly="Y" typecast="date"/>
       <field name="valueTotalGross" readonly="Y" typecast="number"/>
-      <field name="itemPrice" readonly="Y" typecast="number"/>
-      <field name="itemPriceTotal" readonly="Y" typecast="number"/>
 
       <!--Setting generated and computed initial data-->
       <trigger type="ON-NEWRECORD" name="onnewrecord">
-        print "blkFree::OnNewRecord"
+        print "blkFreeHead::OnNewRecord"
 
         self.valueTotalGross.set(0)
-        self.itemPriceTotal.set(0)
         self.dateIssued.set(blkINV_Head.fldInvDateissued.get())
         self.dateDue.set(blkINV_Head.fldInvDatedue.get())
       </trigger>
@@ -144,19 +145,37 @@
       <field name="fldInvHead" field="INV_head" maxLength="32" />
       <field name="fldInvProduct" field="INV_product"
              fk_description="ITEM_shortName" fk_key="gnue_id"
-             fk_source="dts_ITEM_Item" maxLength="32"/>
+             fk_source="dts_ITEM_Item" maxLength="32">
+        <trigger type="POST-CHANGE" name="postchange" src="getItemPrice" />
+      </field>
       <field name="fldInvQuantity" field="INV_quantity" maxLength="10"
-             typecast="number"/>
+             typecast="number">
+        <trigger type="POST-CHANGE" name="postchange" src="calcItemPriceTotal" 
/>
+      </field>
 
       <!--Count totals -->
       <trigger type="POST-COMMIT" name="postcommit">
-        valueTotalGross = blkINV_Head.call("INV_getvalueTotalGross", {})
-        print "blkINV_Item::PostCommit", valueTotalGross
-        if valueTotalGross:
-          blkFree.valueTotalGross.set(valueTotalGross)
+        #valueTotalGross = blkINV_Head.call("INV_getvalueTotalGross", {})
+        #print "blkINV_Item::PostCommit", valueTotalGross
+        #if valueTotalGross:
+          #blkFreeHead.valueTotalGross.set(valueTotalGross)
       </trigger>
     </block>
 
+    <!--***************************************************************
+                                Free item block
+     Fields to display generated/computed invoice line data on the form
+    ****************************************************************-->
+    <block name="blkFreeItem" rows="5">
+      <field name="itemPrice" readonly="Y" typecast="number"/>
+      <field name="itemPriceTotal" readonly="Y" typecast="number"/>
+
+      <!--Setting generated and computed initial data-->
+      <trigger type="ON-NEWRECORD" name="onnewrecord">
+        self.itemPriceTotal.set(0)  #TODO: is it needed here???
+      </trigger>
+    </block>
+
   </logic>
 
 
@@ -168,7 +187,7 @@
       <label name="lblInv Number:" Char:height="1" Char:width="7" Char:x="1"
              Char:y="1" text="Number:"/>
       <entry name="entInvNumber" Char:height="1" Char:width="20" Char:x="16"
-             Char:y="1" block="blkFree" field="number" style="label"/>
+             Char:y="1" block="blkFreeHead" field="number" style="label"/>
       <label name="lblInv Buyer:" Char:height="1" Char:width="6" Char:x="1"
              Char:y="2" text="Buyer:"/>
       <entry name="entInvBuyer" Char:height="1" Char:width="28" Char:x="16"
@@ -207,11 +226,11 @@
       <label name="lblInv Dateissued:" Char:height="1" Char:width="12"
              Char:x="1" Char:y="4" text="Date issued:"/>
       <entry name="entInvDateIssued" Char:height="1" Char:width="10"
-             Char:x="16" Char:y="4" block="blkFree" field="dateIssued" />
+             Char:x="16" Char:y="4" block="blkFreeHead" field="dateIssued" />
       <label name="lblInv Datedue:" Char:height="1" Char:width="14"
              Char:x="1" Char:y="5" text="Due date:"/>
       <entry name="entInvDatedue" Char:height="1" Char:width="10"
-             Char:x="16" Char:y="5" block="blkFree" field="dateDue" />
+             Char:x="16" Char:y="5" block="blkFreeHead" field="dateDue" />
       <label name="lblInv Datedelivery:" Char:height="1" Char:width="14"
              Char:x="1" Char:y="6" text="Delivery date:"/>
       <entry name="entInvDatedelivery" Char:height="1" Char:width="10"
@@ -227,7 +246,7 @@
       <label name="lblInv ValuetotalGross:" Char:height="1" Char:width="12"
              Char:x="1" Char:y="9" text="Value total:"/>
       <entry name="entInvValuetotalGross" Char:height="1" Char:width="10"
-             Char:x="16" Char:y="9" block="blkFree" field="valueTotalGross"
+             Char:x="16" Char:y="9" block="blkFreeHead" field="valueTotalGross"
              style="label"/>
 
       <box name="BoxItem" Char:height="8" Char:width="50" Char:x="1"
@@ -248,17 +267,13 @@
 
       <entry name="entInvProduct" Char:height="1" Char:width="28" Char:x="2"
              Char:y="12" block="blkINV_Item" field="fldInvProduct"
-             style="dropdown">
-        <trigger type="POST-FOCUSOUT" name="postfocusout" src="getItemPrice" />
-      </entry>
+             style="dropdown" />
       <entry name="entItemPrice" Char:height="1" Char:width="6" Char:x="31"
-             Char:y="12" block="blkFree" field="itemPrice" style="label" />
+             Char:y="12" block="blkFreeItem" field="itemPrice" style="label" />
       <entry name="entInvQuantity" Char:height="1" Char:width="5" Char:x="38"
-             Char:y="12" block="blkINV_Item" field="fldInvQuantity">
-        <!-- <trigger type="POST-FOCUSOUT" name="postfocusout" 
src="calcItemPriceTotal" /> -->
-      </entry>
+             Char:y="12" block="blkINV_Item" field="fldInvQuantity"/>
       <entry name="entItemPriceTotal" Char:height="1" Char:width="10" 
Char:x="343"
-             Char:y="12" block="blkFree" field="itemPriceTotal" style="label" 
/>
+             Char:y="12" block="blkFreeItem" field="itemPriceTotal" 
style="label" />
     </page>
   </layout>
 </form>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]