Verkaufsrechnung: Die Drop-Down-Box für den Bearbeiter heißt nun employee_id (wie...
[kivitendo-erp.git] / SL / USTVA.pm
index 9f1551e..3655208 100644 (file)
@@ -562,12 +562,12 @@ sub process_query {
 
   #  return unless (-f $filename);
 
-  open(FH, "$filename") or $form->error("$filename : $!\n");
+  open my $FH, "<", "$filename" or $form->error("$filename : $!\n");
   my $query = "";
   my $sth;
   my @quote_chars;
 
-  while (<FH>) {
+  while (<$FH>) {
 
     # Remove DOS and Unix style line endings.
     s/[\r\n]//g;
@@ -606,7 +606,7 @@ sub process_query {
     }
   }
 
-  close FH;
+  close $FH;
 
   $main::lxdebug->leave_sub();
 }
@@ -751,12 +751,7 @@ sub get_accounts_ustva {
 
   my ($dbh, $last_period, $fromdate, $todate, $form, $category) = @_;
 
-  my ($null, $department_id) = split /--/, $form->{department};
-
   my $query;
-  my $dpt_where;
-  my $dpt_join;
-  my $project;
   my $where    = "";
   my $glwhere  = "";
   my $subwhere = "";
@@ -782,20 +777,6 @@ sub get_accounts_ustva {
     $ARwhere  .= " AND acc.transdate <= '$todate'";
   }
 
-  if ($department_id) {
-    $dpt_join = qq|
-               JOIN department t ON (a.department_id = t.id)
-                 |;
-    $dpt_where = qq|
-               AND t.id = $department_id
-                  |;
-  }
-
-  if ($form->{project_id}) {
-    $project = qq|
-                 AND ac.project_id = $form->{project_id}
-                |;
-  }
   ############################################
   # Method eq 'cash' = IST Versteuerung
   ############################################
@@ -854,16 +835,6 @@ sub get_accounts_ustva {
     # Method eq 'accrual' = Soll Versteuerung
     #########################################
 
-    if ($department_id) {
-      $dpt_join = qq|
-             JOIN dpt_trans t ON (t.trans_id = ac.trans_id)
-             |;
-      $dpt_where = qq|
-               AND t.department_id = $department_id
-             |;
-    }
-
-
     $query = qq|
        -- Alle Einnahmen AR und pos_ustva erfassen
        SELECT
@@ -883,8 +854,6 @@ sub get_accounts_ustva {
        $dpt_join
        WHERE 1 = 1
        $where
-       $dpt_where
-       $project
        GROUP BY tk.pos_ustva
   |;
    
@@ -912,7 +881,7 @@ sub get_accounts_ustva {
              SELECT id FROM taxkeys 
              WHERE 1=1
                AND chart_id=ac.chart_id 
-               AND taxkey_id = ac.taxkey 
+               --AND taxkey_id = ac.taxkey 
                AND startdate <= COALESCE(AP.transdate)
              ORDER BY startdate DESC LIMIT 1
            )
@@ -920,8 +889,6 @@ sub get_accounts_ustva {
        WHERE
        1=1
        $where
-       $dpt_where
-       $project
        GROUP BY tk.pos_ustva
 
      UNION -- Einnahmen direkter gl Buchungen erfassen
@@ -945,8 +912,6 @@ sub get_accounts_ustva {
        $dpt_join
        WHERE 1 = 1
        $where
-       $dpt_from
-       $project
        GROUP BY tk.pos_ustva
 
 
@@ -971,8 +936,6 @@ sub get_accounts_ustva {
        $dpt_join
        WHERE 1 = 1
        $where
-       $dpt_from
-       $project
        GROUP BY tk.pos_ustva
 
   |;
@@ -989,18 +952,10 @@ sub get_accounts_ustva {
   
   $sth->execute || $form->dberror($query);
 
-  while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
+  while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
     # Bug 365 solved?!
     $ref->{amount} *= -1;
-    if ($category eq "pos_bwa") {
-      if ($last_period) {
-        $form->{ $ref->{$category} }{kumm} += $ref->{amount};
-      } else {
-        $form->{ $ref->{$category} }{jetzt} += $ref->{amount};
-      }
-    } else {
-      $form->{ $ref->{$category} } += $ref->{amount};
-    }
+    $form->{ $ref->{$category} } += $ref->{amount};
   }
 
   $sth->finish;
@@ -1012,19 +967,26 @@ sub get_accounts_ustva {
 sub get_config {
   $main::lxdebug->enter_sub();
 
-  my ($self, $userpath, $filename) = @_;
+  my ($self, $userspath, $filename) = @_;
+
+  $form->error("Missing Parameter: @_") if !$userspath || !$filename;
 
   my $form = $main::form;
 
-  if (!open(FACONF, "$userpath/$form->{login}_$filename")) {
-    open(FANEW, ">$userpath/$form->{login}_$filename") ||
-      $form->error("$userpath/$filename : $!");
-    close(FANEW);
-    open(FACONF, "$userpath/$form->{login}_$filename") ||
-      $form->error("$userpath/$form->{username}_$filename : $!");
-  }
+  $filename = "$form->{login}_$filename";
+  $filename =~ s|.*/||;
+  $filename = "$userspath/$filename";
+  open my $FACONF, "<", $filename or sub {# Annon Sub
+    # catch open error
+    # create file if file does not exist
+    open my $FANEW, ">", $filename  or $form->error("CREATE: $filename : $!");
+    close $FANEW                    or $form->error("CLOSE: $filename : $!");
+    
+    #try again open file
+    open my $FACONF, "<", $filename or $form->error("OPEN: $filename : $!");
+  };
 
-  while (<FACONF>) {
+  while (<$FACONF>) {
     last if (/^\[/);
     next if (/^(\#|\s)/);
 
@@ -1039,7 +1001,7 @@ sub get_config {
 
   }
 
-  close(FACONF);
+  close $FACONF;
 
   $main::lxdebug->leave_sub();
 }