[Lohnrechner-commits] r47 - /

scm-commit at wald.intevation.org scm-commit at wald.intevation.org
Wed Jan 18 15:02:36 CET 2006


Author: wilde
Date: 2006-01-18 15:02:35 +0100 (Wed, 18 Jan 2006)
New Revision: 47

Modified:
   LST2006.py
Log:
Neue Variablen und LUT nach Programmablaufplan 2006 eingef?\195?\188gt.


Modified: LST2006.py
===================================================================
--- LST2006.py	2005-11-28 09:33:45 UTC (rev 46)
+++ LST2006.py	2006-01-18 14:02:35 UTC (rev 47)
@@ -4,7 +4,7 @@
 # $Id$
 # --------------------------------------------------------------------
 #
-# Copyright (c) 2005 by Intevation GmbH
+# Copyright (c) 2005, 2006 by Intevation GmbH
 # Authors:
 # Sascha Wilde <wilde at intevation.de>
 #
@@ -51,7 +51,7 @@
 
 class LST:
     def __init__(self,
-                 RE4=0,
+                 AJAHR =0,
                  ALTER1=0,
                  HINZUR=0,
                  JFREIB=0,
@@ -61,17 +61,21 @@
                  KRV   =0,
                  LZZ   =2,
                  R     =0,
+                 RE4   =0,
                  SONSTB=0,
+                 STERBE=0,
                  STKL  =1,
                  VBEZ  =0,
                  VBEZM =0,
                  VBEZS =0,
                  VBS   =0,
+                 VJAHR =0,
+                 VKAPA =0,
                  VMT   =0,
                  WFUNDF=0,
                  ZKF   =0,
                  ZMVB  =0):
-        self.Set_RE4(RE4)
+        self.Set_AJAHR(AJAHR)
         self.Set_ALTER1(ALTER1)
         self.Set_HINZUR(HINZUR)
         self.Set_JFREIB(JFREIB)
@@ -81,12 +85,16 @@
         self.Set_KRV(KRV)
         self.Set_LZZ(LZZ)
         self.Set_R(R)
+        self.Set_RE4(RE4)
         self.Set_SONSTB(SONSTB)
+        self.Set_STERBE(STERBE)
         self.Set_STKL(STKL)
         self.Set_VBEZ(VBEZ)
         self.Set_VBEZM(VBEZM)
         self.Set_VBEZS(VBEZS)
         self.Set_VBS(VBS)
+        self.Set_VJAHR(VJAHR)
+        self.Set_VKAPA(VKAPA)
         self.Set_VMT(VMT)
         self.Set_WFUNDF(WFUNDF)
         self.Set_ZKF(ZKF)
@@ -117,8 +125,11 @@
         self._EFA = 0
         self._FVB = 0
         self._FVBZ = 0
+        self._HFVB = 0
+        self._J = 0
         self._JBMG = 0
         self._JW = 0
+        self._K = 0
         self._KENNZ = 0
         self._KFB = 0
         self._KZTAB = 1
@@ -137,6 +148,155 @@
         self._ST = 0
         self._ST1 = 0
         self._ST2 = 0
+        self._TAB1=(None,  # 1 als erstes Element, wie im PAP
+                    0.400, # bis 2005
+                    0.384, # 2006
+                    0.368, # 2007
+                    0.352, # 2008
+                    0.336, # 2009
+                    0.320, # 2010
+                    0.304, # 2011
+                    0.288, # 2012
+                    0.272, # 2013
+                    0.256, # 2014
+                    0.240, # 2015
+                    0.224, # 2016
+                    0.208, # 2017
+                    0.192, # 2018
+                    0.176, # 2019
+                    0.160, # 2020
+                    0.152, # 2021
+                    0.144, # 2022
+                    0.136, # 2023
+                    0.128, # 2024
+                    0.120, # 2025
+                    0.112, # 2026
+                    0.104, # 2027
+                    0.096, # 2028
+                    0.088, # 2029
+                    0.080, # 2030
+                    0.072, # 2031
+                    0.064, # 2032
+                    0.056, # 2033
+                    0.048, # 2034
+                    0.040, # 2035
+                    0.032, # 2036
+                    0.024, # 2037
+                    0.016, # 2038
+                    0.008, # 2039
+                    0.000) # 2040 
+        self._TAB2=(None,  # 1 als erstes Element, wie im PAP
+                    3000,  # bis 2005
+                    2880,  # 2006
+                    2760,  # 2007
+                    2640,  # 2008
+                    2520,  # 2009
+                    2400,  # 2010
+                    2280,  # 2011
+                    2160,  # 2012
+                    2040,  # 2013
+                    1920,  # 2014
+                    1800,  # 2015
+                    1680,  # 2016
+                    1560,  # 2017
+                    1440,  # 2018
+                    1320,  # 2019
+                    1200,  # 2020
+                    1140,  # 2021
+                    1080,  # 2022
+                    1020,  # 2023
+                     960,  # 2024
+                     900,  # 2025
+                     840,  # 2026
+                     780,  # 2027
+                     720,  # 2028
+                     660,  # 2029
+                     600,  # 2030
+                     540,  # 2031
+                     480,  # 2032
+                     420,  # 2033
+                     360,  # 2034
+                     300,  # 2035
+                     240,  # 2036
+                     180,  # 2037
+                     120,  # 2038
+                      60,  # 2039
+                       0)  # 2040 
+        self._TAB3=(None,  # 1 als erstes Element, wie im PAP
+                     900,  # bis 2005
+                     864,  # 2006
+                     828,  # 2007
+                     792,  # 2008
+                     756,  # 2009
+                     720,  # 2010
+                     684,  # 2011
+                     648,  # 2012
+                     612,  # 2013
+                     576,  # 2014
+                     540,  # 2015
+                     504,  # 2016
+                     468,  # 2017
+                     432,  # 2018
+                     396,  # 2019
+                     360,  # 2020
+                     342,  # 2021
+                     324,  # 2022
+                     306,  # 2023
+                     288,  # 2024
+                     270,  # 2025
+                     252,  # 2026
+                     234,  # 2027
+                     216,  # 2028
+                     198,  # 2029
+                     180,  # 2030
+                     162,  # 2031
+                     144,  # 2032
+                     126,  # 2033
+                     108,  # 2034
+                      90,  # 2035
+                      72,  # 2036
+                      54,  # 2037
+                      36,  # 2038
+                      18,  # 2039
+                       0)  # 2040 
+        self._TAB4=self._TAB1
+        self._TAB5=(None,  # 1 als erstes Element, wie im PAP
+                    1900,  # bis 2005
+                    1824,  # 2006
+                    1748,  # 2007
+                    1672,  # 2008
+                    1596,  # 2009
+                    1520,  # 2010
+                    1444,  # 2011
+                    1368,  # 2012
+                    1292,  # 2013
+                    1216,  # 2014
+                    1140,  # 2015
+                    1064,  # 2016
+                     988,  # 2017
+                     912,  # 2018
+                     836,  # 2019
+                     760,  # 2020
+                     722,  # 2021
+                     684,  # 2022
+                     646,  # 2023
+                     608,  # 2024
+                     570,  # 2025
+                     532,  # 2026
+                     494,  # 2027
+                     456,  # 2028
+                     418,  # 2029
+                     380,  # 2030
+                     342,  # 2031
+                     304,  # 2032
+                     266,  # 2033
+                     228,  # 2034
+                     190,  # 2035
+                     152,  # 2036
+                     114,  # 2037
+                      76,  # 2038
+                      38,  # 2039
+                       0)  # 2040 
         self._VBEZB = 0
         self._VHB = 0
         self._VSP = 0.0  # 2 Dezimalstellen
@@ -155,6 +315,7 @@
         self._ZRE4VP = 0.0  # 2 Dezimalstellen
         self._ZRE4VP1 = 0.0  # 2 Dezimalstellen
         self._ZTABFB = 0
+        self._ZVBEZ = 0
         self._ZVE = 0
         self._ZX = 0
         self._ZZX = 0
@@ -183,7 +344,7 @@
         self._MSOLZ()
         self._MSONST()
         self._MVMT()
-        
+
     # Benutzte Unterprogramme:
     def _MRE4LZZ(self):
         if self.VBEZ == 0:
@@ -236,7 +397,7 @@
             if self.RE4 > self.VBEZ:
                 self._ANP += 920
         else:
-            self._ANP = 0            
+            self._ANP = 0
         if self.STKL == 1:
             self._SAP = 36
             self._KFB = self.ZKF * 5808
@@ -260,7 +421,7 @@
         if self.STKL < 5:
             self._UPEVP()
         else:
-            self._VSP = 0.0  
+            self._VSP = 0.0
         self._ZVE = self._ZRE4 - self._ZTABFB - self._VSP
         if self._ZVE < 1:
             self._ZVE = self._X = 0.0
@@ -388,7 +549,7 @@
             self._ANTEIL2 = ceil(self._JW * 7 / 360.0)
         else:
             self._ANTEIL1 = floor(self._JW / 360.0)
-            self._ANTEIL2 = ceil(self._JW / 360.0)            
+            self._ANTEIL2 = ceil(self._JW / 360.0)
 
     def _UPTAB05(self):
         if self._X < 7665:
@@ -465,7 +626,7 @@
             old_lzz = self.LZZ
             old_vbez = self.VBEZ
             old_re4 = self.RE4
-            # ------------------------------   
+            # ------------------------------
             self.LZZ = 1
             self.VBEZ = self.JVBEZ + self.VBS
             self.RE4 = self.JRE4 + self.SONSTB
@@ -514,51 +675,58 @@
 
     # Methoden zum geprüften setzen der Wert
     # FIX ME: Prüfung _sehr_ unvollständig
-    def Set_RE4(self, value):
-        assert value >= 0, "must not be negative"
-        self.RE4 = value
 
+    def Set_AJAHR(self, value):
+        self.HINZUR = value
+
     def Set_ALTER1(self, value):
         assert value in (0,1), "must be 0 or 1"
         self.ALTER1 = value
-        
+
     def Set_HINZUR(self, value):
         self.HINZUR = value
-        
+
     def Set_JFREIB(self, value):
         self.JFREIB = value
-        
+
     def Set_JHINZU(self, value):
         self.JHINZU = value
-        
+
     def Set_JRE4(self, value):
         self.JRE4 = value
-        
+
     def Set_JVBEZ(self, value):
         self.JVBEZ = value
-        
+
     def Set_KRV(self, value):
         assert value in (0,1), "must be 0 or 1"
         self.KRV = value
-        
+
     def Set_LZZ(self, value):
         assert value in (1,2,3,4), \
                "must be in range 1-4 (JAHR, MONAT, WOCHE, TAG)"
         self.LZZ = value
-        
+
     def Set_R(self, value):
         assert value >= 0.0 and value <= 100.0, \
                "must be in range 0.0-100.0 (Percent)"
         self.R = value
-        
+
+    def Set_RE4(self, value):
+        assert value >= 0, "must not be negative"
+        self.RE4 = value
+
     def Set_SONSTB(self, value):
         self.SONSTB = value
-        
+
+    def Set_STERBE(self, value):
+        self.STERBE = value
+
     def Set_STKL(self, value):
         assert value in (1,2,3,4,5,6), \
                "must be in range 1-6 (I II III IV V VI)"
         self.STKL = value
-        
+
     def Set_VBEZ(self, value):
         self.VBEZ = value
 
@@ -571,6 +739,12 @@
     def Set_VBS(self, value):
         self.VBS = value
 
+    def Set_VJAHR(self, value):
+        self.VJAHR = value
+
+    def Set_VKAPA(self, value):
+        self.VKAPA = value
+
     def Set_VMT(self, value):
         self.VMT = value
 
@@ -582,7 +756,7 @@
                value >= 0, \
                "must be positive, and must not have more than one decimal digit"
         self.ZKF = value
-        
+
     def Set_ZMVB(self, value):
         self.ZMVB = value
 
@@ -596,7 +770,7 @@
 class LStRechner2005(LST):
     def __init__(self):
         LST.__init__(self)
-    
+
     def SetLohn(self, lohn):
         """Setzt Lohn in Euro.Cent"""
         self.Set_RE4(round (lohn * 100.0))



More information about the Lohnrechner-commits mailing list