commit-gnue
[Top][All Lists]
Advanced

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

r10 - trunk/finance


From: reinhard
Subject: r10 - trunk/finance
Date: Fri, 5 Nov 2004 14:49:14 -0600 (CST)

Author: reinhard
Date: 2004-11-05 14:49:14 -0600 (Fri, 05 Nov 2004)
New Revision: 10

Modified:
   trunk/finance/gl-C.gld
   trunk/finance/gl.gcd
Log:
More work on accounting package.


Modified: trunk/finance/gl-C.gld
===================================================================
--- trunk/finance/gl-C.gld      2004-11-05 19:36:25 UTC (rev 9)
+++ trunk/finance/gl-C.gld      2004-11-05 20:49:14 UTC (rev 10)
@@ -24,8 +24,8 @@
      $Id: gl.gcd 6208 2004-08-25 16:49:04Z reinhard $ -->
 
 <module name="gl" language="C">
-  <class name="year">
-    <property name="name"     pos="100" label="Fiscal year" search="100" />
+  <class name="year" label="Fiscal year">
+    <property name="name"     pos="100" label="Name/Code" search="100" />
     <property name="start"    pos="200" label="Start date" />
     <property name="end"      pos="300" label="End date" />
     <property name="previous" pos="400" label="Previous year" />
@@ -33,16 +33,32 @@
     <property name="last"     pos="600" label="Last journal number" />
   </class>
 
-  <class name="account">
+  <class name="account" label="Account">
     <property name="number"   pos="100" label="Account number" search="100" />
     <property name="name"     pos="200" label="Name" />
     <property name="active"   pos="300" label="Active" />
     <property name="currency" pos="400" label="Currency" />
   </class>
 
-  <class name="doctype">
+  <class name="doctype" label="Document type">
     <property name="code"    pos="100" label="Code" />
     <property name="name"    pos="200" label="Name" />
     <property name="account" pos="300" label="Account" />
   </class>
+
+  <message name="periodInactive">
+    This accounting period is inactive.
+  </message>
+
+  <message name="journalImbalanced">
+    This journal is not balanced and therefore can not be posted.
+  </message>
+
+  <message name="journalPosted">
+    This journal is already posted and cannot be changed any more.
+  </message>
+
+  <message name="accountInactive">
+    This account is inactive.
+  </message>
 </module>

Modified: trunk/finance/gl.gcd
===================================================================
--- trunk/finance/gl.gcd        2004-11-05 19:36:25 UTC (rev 9)
+++ trunk/finance/gl.gcd        2004-11-05 20:49:14 UTC (rev 10)
@@ -32,8 +32,10 @@
     <property name="active"   type="boolean"    nullable="False" />
     <property name="last"     type="number(6)"  comment="Last journal serial" 
/>
     <procedure name="OnInit">
-      self.active = True
-      self.last = 0
+      <![CDATA[
+        self.active = True
+        self.last = 0
+      ]]>
     </procedure>
     <procedure name="OnChange">
       <![CDATA[
@@ -117,15 +119,14 @@
         # Post the journal, which means it will not be changeable any more
         import mx.DateTime
         if not self.balanced:
-          # TODO: How do we handle exceptions???
-          raise "Journal is not balanced"
+          abort (message ('journalImbalanced'))
         self.posted = mx.DateTime.now () # Should probably be a parameter
       ]]>
     </procedure>
     <procedure name="OnValidate">
       <![CDATA[
         if not self.period.active:
-          raise "Accounting period is inactive"
+          abort (message (periodInactive))
         if not self.serial:
           self.period.year.last += 1
           self.serial = self.period.year.last
@@ -159,7 +160,7 @@
       <![CDATA[
         # Find out whether the transaction can be entered
         if self.journal.posted:
-          raise "Journal is already posted"
+          abort (message ('journalPosted'))
         if not self.serial:
           self.journal.last += 1
           self.serial = self.journal.last
@@ -181,10 +182,9 @@
       <![CDATA[
         # Find out whether the entry is valid
         if not self.account.active
-          raise "Account is inactive"
-        # TODO: calculate amounta and amountb
-        self.amounta = self.amountt
-        self.amountb = self.amountt
+          abort (message ('accountInactive'))
+        self.amountb = self.trans.currency.convfrom (amount = self.amountt)
+        self.amounta = self.account.currency.convto (amount = self.amountt)
         if not self.serial:
           self.trans.last += 1
           self.serial = self.trans.last





reply via email to

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