v20191031
authorkilian (dks-laptop) <ksaffran@dks.lu>
Thu, 31 Oct 2019 16:22:50 +0000 (17:22 +0100)
committerkilian (dks-laptop) <ksaffran@dks.lu>
Thu, 31 Oct 2019 16:22:50 +0000 (17:22 +0100)
12 files changed:
CGI/api/db.cgi
CGI/api/download.cgi [new file with mode: 0644]
CGI/api/lib/dksdb.pm
CGI/api/parsestatement.cgi
CGI/api/tmp/sql.log [new file with mode: 0644]
CGI/api/upload.cgi
CGI/index.cgi
CGI/tmpl/app/invoicejournal/module/bankaccount/index.js
CGI/tmpl/app/invoicejournal/module/bankaccount/index.tt
dev/regextest.pl [new file with mode: 0644]
dksnas.pl
htdocs/js/request.js

index 3f7ed3c..9464a4a 100644 (file)
@@ -66,11 +66,12 @@ if (($cgi->request_method() eq "GET") || ($cgi->request_method() eq "POST")){
       if ($x =~ /^ident_/ ){
         if ($p->{$x} ne ""){
           $type = "upd";
-        } else {
-          my $uuid = create_uuid(UUID_TIME);
-          my $uuid_str=uuid_to_string($uuid);
-          $p->{$x} = $uuid_str;
-        }
+        } 
+        #else {
+        #   #my $uuid = create_uuid(UUID_TIME);
+        #   my $uuid_str=uuid_to_string($uuid);
+        #   $p->{$x} = $uuid_str;
+        # }
 
       }
     }
@@ -78,6 +79,7 @@ if (($cgi->request_method() eq "GET") || ($cgi->request_method() eq "POST")){
     my $x = $p;
     delete $x->{sid};
     delete $x->{set};
+    delete $x->{db};
     my @sql = ();
     
     if ($type eq "ins"){
@@ -87,7 +89,7 @@ if (($cgi->request_method() eq "GET") || ($cgi->request_method() eq "POST")){
       @sql = $db->create_ddl_update($x);
     }
     if (scalar(@sql) > 0 ){
-      my $rid = $db->query($sql[0]);
+      my $rid = $db->exec($sql[0]);
       if (keys(%{$rid}) > 0 ){
         $html->{result} = $rid->{0};
       }
@@ -97,7 +99,9 @@ if (($cgi->request_method() eq "GET") || ($cgi->request_method() eq "POST")){
     my $x = $p;
     delete $x->{sid};
     delete $x->{del};
+    delete $x->{db};
     my  @sql = $db->create_ddl_delete($x);
+    # $html->{sql} = \@sql;
     if (scalar(@sql) > 0 ){
       my $rid = $db->exec($sql[0]);
       if (keys(%{$rid}) > 0 ){
diff --git a/CGI/api/download.cgi b/CGI/api/download.cgi
new file mode 100644 (file)
index 0000000..e70de28
--- /dev/null
@@ -0,0 +1,51 @@
+#!/usr/bin/perl
+use strict;
+use CGI;
+use CGI::Carp qw/fatalsToBrowser/;
+use File::Basename;
+use MIME::Type::FileName;
+
+my $cgi = new CGI();
+my $p = ();
+my $cfgpath=""; 
+if ($^O eq "MSWin32"){
+       $cfgpath = $ENV{APPDATA}.'/dks';
+} elsif ($^O eq "darwin"){
+       $cfgpath = $ENV{HOME}.'/Library/Application Support/dks';
+} else {
+       $cfgpath = $ENV{HOME}.'/.dks';
+}
+$cfgpath =~ s/\\/\//g;
+#print $cfgpath."\n";
+
+my @params = $cgi->param();
+foreach my $pp (@params){
+       $p->{$pp} = $cgi->param($pp);
+}
+my $docpath = $cfgpath.'/'.$p->{app};
+my $html->{result} = ();
+$html->{result}->{params} = $p;
+
+if (-e $docpath.'/'.$p->{file}){
+  my $mimetype = MIME::Type::FileName::guess ($docpath.'/'.$p->{file});
+  my @stat = stat($docpath.'/'.$p->{file});
+  print $cgi->header(  
+  -type => $mimetype,
+  -target => basename($p->{file}),
+  -attachment => basename($p->{file})
+  );
+  open(DLD,$docpath.'/'.$p->{file});
+  binmode(DLD);
+  local $/ = \10240;
+  while (<DLD>){
+    print $_;
+  }
+  close(DLD);
+}else {
+
+  print "Status: 404 Not Found\r\n";
+  print "Content-Type: text/html\r\n\r\n";
+
+  print "<h1>404 File not found!</h1>";
+  print "<p>$docpath/".$p->{file}."</p>";
+}
\ No newline at end of file
index 71e6d98..43643be 100644 (file)
@@ -147,9 +147,9 @@ sub exec(){
     my $retdata;
     my $dbh = DBI->connect(((exists($self->{dsn}))?$self->{dsn}:$sitecfg->{dsn}),$sitecfg->{dbuser},$sitecfg->{dbpassword},{PrintError=>0,RaiseError=>0,AutoCommit=>1})  or return $retdata->{error} = "exec Connection Error!".$!;
     #  $stat = decode("UTF-8", $stat);
-    open FILE,">>tmp/sql.log";
-    print FILE "\n==\n$stat\n==\n";
-    close FILE;
+    open FILE,">>tmp/sql.log";
+    print FILE "\n==\n$stat\n==\n";
+    close FILE;
     my $sth = $dbh->prepare($stat) or return $retdata->{error} = "exec ".$dbh->errstr. "- SQL: ".$stat;
    $retdata->{success}  = $dbh->do($stat) or return $retdata->{error} = "dbexec ".$dbh->errstr. "- SQL: ".$stat;
    $dbh->disconnect();
@@ -223,7 +223,7 @@ sub create_ddl_insert(){
                        }
                        push (@sqlval,$v);
                }
-               push(@ddl,"INSERT INTO ".$tb." (".join(",",@sqlcol).") VALUES (".join(",",@sqlval).") returning id;");
+               push(@ddl,"INSERT INTO ".$tb." (".join(",",@sqlcol).") VALUES (".join(",",@sqlval).");");
        }
        return @ddl;
 }
index 0f6c18d..3b0d0ae 100644 (file)
@@ -1,13 +1,17 @@
 #!/usr/bin/perl
-
-use strict;
-#!/usr/bin/perl
 use strict;
 use CGI;
 use CGI::Carp qw/fatalsToBrowser/;
 use File::Path qw/make_path/;
 use File::Basename;
 use JSON::PP;
+use FindBin qw($Bin);
+# use lib ('CGI/api/lib/perl5');
+# use lib ('CGI/api/lib');
+use lib ($Bin.'/CGI/api/lib/perl5');
+use lib ($Bin.'/CGI/api/lib');
+use dksconfig qw/$sitecfg/;
+use dksdb;
 
 my $cgi = new CGI();
 my $p = ();
@@ -21,16 +25,61 @@ if ($^O eq "MSWin32"){
 }
 $cfgpath =~ s/\\/\//g;
 #print $cfgpath."\n";
-my $docpath = $cfgpath.'/invoicejournal/documents';
+my $docpath = $cfgpath.'/'.$p->{app};
 my @params = $cgi->param();
 foreach my $pp (@params){
        $p->{$pp} = $cgi->param($pp);
 }
-
+my $dbredirect = {};
 my $html->{result} = ();
 my $js = JSON::PP->new();
+my @allsql = ();
 if (exists($p->{file}) && -f $docpath.'/'.$p->{file}){
-  $html->{result}->{bookings} = &parsestatement($docpath.'/'.$p->{file});
+  my $sdata = &parsestatement($docpath.'/'.$p->{file});
+  if (exists($p->{import}) && (exists($p->{db}))){
+    if ($sitecfg->{dbtype} eq "SQLite"){
+      if (exists($p->{db})){
+        $dbredirect->{dsn} = "DBI:SQLite:dbname=".$sitecfg->{datapath}.'/'.$p->{db}.'.sqlite';
+      }
+    }
+    my $db = dksdb->new($dbredirect);
+    $html->{conn} = $dbredirect;
+    my $updates = 0;
+    my $inserts = 0;
+    foreach my $i (keys(%{$sdata})){
+      my @tr = $db->query("select id from banktransactions where transactionident='".$sdata->{$i}->{transactionident}."';");
+      my $tid=0;
+      if (scalar(@tr) > 1){
+        $tid = int($tr[0]->{id});
+      }
+      my $ddlv = {};
+      foreach my $x (keys(%{$sdata->{$i}})){
+        $ddlv->{"banktransactions_".$x} = $sdata->{$i}->{$x}; 
+      }
+      $ddlv->{"banktransactions_file"} = $p->{file};
+      my @sql = ();
+      if ($tid == 0){
+        @sql = $db->create_ddl_insert($ddlv);
+
+        $inserts++;
+      }else {
+         $ddlv->{"ident_banktransactions_id"} = $tid;
+        @sql = $db->create_ddl_update($ddlv);
+        $updates++;
+      }
+      push (@allsql,@sql);
+      if (scalar(@sql) > 0 ){
+        my $rid = $db->exec($sql[0]);
+      }
+    }
+    $html->{result}->{total} =  keys(%{$sdata});
+    $html->{result}->{updates} = $updates;
+    $html->{result}->{inserts} = $inserts;
+    #$html->{result}->{sql} = \@allsql;
+  }else {
+    $html->{result}->{bookings} = $sdata;
+  }
+  
   
 }
 print $cgi->header(-type=> 'application/json', -charset=>"UTF-8");
@@ -42,9 +91,9 @@ sub pdfextract(){
        my $sep = "/";
        if ($^O eq "MSWin32") {
                $sep = "\\";
-               $pdftotext=dirname($0).$sep.'pdftotext.exe';
+               $pdftotext=dirname($0).'/tools/pdftotext.exe';
        }else {
-               $pdftotext=dirname($0).$sep.'pdftotext';
+               $pdftotext=dirname($0).'/tools/pdftotext';
        }
        if (-e $file.'.txt'){
        unlink($file.'.txt');
@@ -88,7 +137,8 @@ sub parsestatement(){
       }elsif ($p =~ /^\d\d\.\d\d\s+[GUT|UEBER|SEPA]/){
         $cpos = "";
         $r++;
-        my ($type,$trdate,$trval,$trsign) = $p =~ m/\d\d\.\d\d\s+(.+)\s+(\d\d\.\d\d\.\d\d)\s+([\d|,|\.]+)\s([+|-])$/; 
+        my ($type,$trdate,$trval,$trsign) = $p =~ m/^\d\d\.\d\d\s+([A-Z ]+)(\d\d\.\d\d\.\d\d)\s+([\d|,|\.]+)\s+([+|-])/; 
+        
         $type =~ s/\s//g;
         $trsign =~ s/\+//;
         $trval=~ s/\.//g;
@@ -153,6 +203,13 @@ sub parsestatement(){
         my ($tramount) = $p =~ /^\s+Transfergeb.hr\s+EUR\s+(.+)$/;
         $tramount =~ s/\,/\./g;
         $jdata->{$r}->{$cpos} =$tramount;
+        
+      }elsif ($p =~ /^\s+.BERW\sEISUNGSGEB.HR/){
+        $cpos = "transfercosts";
+        my ($tramount) = $p =~ /^\s+.BERW\sEISUNGSGEB.HR\s+EUR\s+(.+)$/;
+        $tramount =~ s/\,/\./g;
+        $jdata->{$r}->{$cpos} =$tramount;
+        
       }elsif ($p =~ /^\s+Durch Ihren Bonus abgedeckt/){
         $cpos = "transfercosts";
         my ($tramount) = $p =~ /^\s+Durch Ihren Bonus abgedeckt\s+EUR\s+(.+)$/;
@@ -167,11 +224,11 @@ sub parsestatement(){
         $jdata->{$r}->{$cpos} .= " ".$data;
       }
     }
-
-  }
-  if (-e $file.'.txt'){
-    unlink($file.'.txt');
   }
+  
+  # if (-e $file.'.txt'){
+  #   unlink($file.'.txt');
+  # }
   return $jdata;
   
 }
\ No newline at end of file
diff --git a/CGI/api/tmp/sql.log b/CGI/api/tmp/sql.log
new file mode 100644 (file)
index 0000000..258edea
--- /dev/null
@@ -0,0 +1,464 @@
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('1','SOLANA ARCHITECTURE SARL 61 RUE DES TREVIRES L -2628  LUXEMBOURG','397.80','2019-01-15','GUTSCHRIFT','LU25 0020 1100 2783 8700','R N 20181231-0042 K N 1703001','BCEELULL','statements/2019/2019_01.pdf','AA4675647',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('1','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE  DUDELANGE-3591','2511.12','2019-01-17','GUTSCHRIFT','LU25 0020 1100 2783 8700','20181218-0035','BGLLLULL','statements/2019/2019_01.pdf','AA4879461',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('2','M.KILIAN SAFFRAN','-2100.96','2019-01-25','UEBERWEISUNG','LU25 0020 1100 2783 8700','Gehalt November 2018',null,'statements/2019/2019_02.pdf','AA5488255','LU32 0023 3101 4286 4700','0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('2','CTRE COMM.DE LA SECURITE SOCIAL','-606.00','2019-01-25','UEBERWEISUNG','LU25 0020 1100 2783 8700','20122414974 - 99',null,'statements/2019/2019_02.pdf','AA5488182','LU77 0029 1014 6730 0000','0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('3','ORANGE COMMUNICATIONS LUXEMBOURG','-61.84','2019-01-28','SEPA-LASTSCHRIFT','LU25 0020 1100 2783 8700','ORANGE COMM. LUXBG NR.101282914758',null,'statements/2019/2019_03.pdf','AA5558589000293',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('4','G.T. RESSOURCES HUMAINES SA 19, ru','-70.20','2019-02-04','UEBERWEISUNG','LU25 0020 1100 2783 8700','No Facture 20182473 01 No Client 5708/TH Edition 31.12.2018',null,'statements/2019/2019_04.pdf','AA6133180','LU97 0030 7074 4255 0000','-0.5');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('4','VISALUX S.C.','-7.80','2019-02-04','EINZUGSERMAECHTIGUNG','LU25 0020 1100 2783 8700','VISA BUSINESS 49403627XXXX1083 RELEVE VISA AU 19/01/2019',null,'statements/2019/2019_04.pdf','AA6164334008471',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('4','PAYPAL EUROPE SARL ET CIE SCA 22 24 BOULEVARD ROY AL2449 LUXEMBOURG','0.11','2019-02-04','GUTSCHRIFT','LU25 0020 1100 2783 8700','/ROC/YYR1004851052774 PAYPAL/RFB/YY R1004851052774 PAYPAL','BNPAFRPP Blatt : 1 / 2 Banque Internationale à Luxembourg société anonyme 69, route d''Esch · L-2953 Luxembourg · Tél.: (+352) 4590-1 R.C.S. Luxembourg B-6307 · BIC Code : BILLLULL TVA : LU 11180925 · LEI Code : 9CZ7TVMR36CYD5TZBS50 Basisvertrag   : 10027813                                                                                                    Datum : 08.02.2019 Bezeichnung  : DKS SARL','statements/2019/2019_04.pdf','AA6123502',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('4','PAYPAL EUROPE SARL ET CIE SCA 22 24 BOULEVARD ROY AL2449 LUXEMBOURG','0.06','2019-02-04','GUTSCHRIFT','LU25 0020 1100 2783 8700','/ROC/YYR1004851052772 PAYPAL/RFB/YY R1004851052772 PAYPAL','BNPAFRPP','statements/2019/2019_04.pdf','AA6123501',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('5','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE  DUDELANGE-3591','2511.12','2019-02-15','GUTSCHRIFT','LU25 0020 1100 2783 8700','Facture 20190116-0005','BGLLLULL','statements/2019/2019_05.pdf','AA7012728',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('6','ORANGE COMMUNICATIONS LUXEMBOURG','-62.57','2019-02-25','SEPA-LASTSCHRIFT','LU25 0020 1100 2783 8700','ORANGE COMM. LUXBG NR.101295119681',null,'statements/2019/2019_06.pdf','AA7617256000293',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('6','M.KILIAN SAFFRAN','-2100.96','2019-02-26','UEBERWEISUNG','LU25 0020 1100 2783 8700','Gehalt Dezember 2018',null,'statements/2019/2019_06.pdf','AA7685521','LU32 0023 3101 4286 4700','0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('6','CTRE COMM.DE LA SECURITE SOCIAL','-607.32','2019-02-26','UEBERWEISUNG','LU25 0020 1100 2783 8700','20122414974 - 99',null,'statements/2019/2019_06.pdf','AA7683491','LU77 0029 1014 6730 0000','0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('7','VISALUX S.C.','-168.01','2019-03-08','EINZUGSERMAECHTIGUNG','LU25 0020 1100 2783 8700','VISA BUSINESS 49403627XXXX1083 RELEVE VISA AU 23/02/2019',null,'statements/2019/2019_07.pdf','AA8698696008327',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('7','SumUp Payments Limited Street 32-34 W1F 7JB London','0.97','2019-03-08','GUTSCHRIFT','LU25 0020 1100 2783 8700','/ROC/70901572/RFB/SUMUP PID33651 PA YOUT 080319','DEUTDEBB','statements/2019/2019_07.pdf','AA8716499',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('8','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE    DUDELANGE-3591','2511.12','2019-03-19','GUTSCHRIFT','LU25 0020 1100 2783 8700','Facture 20190218-0007','BGLLLULL','statements/2019/2019_08.pdf','AA9376415',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('8','M.KILIAN SAFFRAN',null,'--',null,'LU25 0020 1100 2783 8700','Gehalt Januar 2019',null,'statements/2019/2019_08.pdf','AA0013246','LU32 0023 3101 4286 4700','0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('8','BUREAU DE RECETTE DES CONTRIBUTIONS',null,'--',null,'LU25 0020 1100 2783 8700','Lohnsteuer Q1 2019 20122414974',null,'statements/2019/2019_08.pdf','AA0013455','LU58 1111 0085 4408 0000','-0.5');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('8','CTRE COMM.DE LA SECURITE SOCIAL',null,'--',null,'LU25 0020 1100 2783 8700','20122414974 - 99',null,'statements/2019/2019_08.pdf','AA0013042','LU77 0029 1014 6730 0000','0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('9','ORANGE COMMUNICATIONS LUXEMBOURG','-61.84','2019-03-25','SEPA-LASTSCHRIFT','LU25 0020 1100 2783 8700','ORANGE COMM. LUXBG NR.101307185168',null,'statements/2019/2019_09.pdf','AA0064441000290',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('10','SumUp Payments Limited Street 32-34 W1F 7JB London','398.23','2019-04-02','GUTSCHRIFT','LU25 0020 1100 2783 8700','/ROC/76669672/RFB/SUMUP PID35306 PA YOUT 020419','DEUTDEBB','statements/2019/2019_10.pdf','AA0723239',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('10','VISALUX S.C.','-346.47','2019-04-05','EINZUGSERMAECHTIGUNG','LU25 0020 1100 2783 8700','VISA BUSINESS 49403627XXXX1083 RELEVE VISA AU 23/03/2019',null,'statements/2019/2019_10.pdf','AA0996912007576',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('11','Hand an Hand fir Afrika','-388.51','2019-04-16','UEBERWEISUNG','LU25 0020 1100 2783 8700','Auszahlung Karten-Einnahmen vom 29.03.2019',null,'statements/2019/2019_11.pdf','AA1717385','LU19 0090 0000 0674 2712','-0.5');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('11','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE  DUDELANGE-3591','2511.12','2019-04-16','GUTSCHRIFT','LU25 0020 1100 2783 8700','Rechnung 20190318-0008','BGLLLULL','statements/2019/2019_11.pdf','AA1718121',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('11','CTRE COMM.DE LA SECURITE SOCIAL','-607.62','2019-04-18','UEBERWEISUNG','LU25 0020 1100 2783 8700','20122414974 - 99',null,'statements/2019/2019_11.pdf','AA1972429','LU77 0029 1014 6730 0000','0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('12','ORANGE COMMUNICATIONS LUXEMBOURG','-61.84','2019-04-25','SEPA-LASTSCHRIFT','LU25 0020 1100 2783 8700','ORANGE COMM. LUXBG NR.101319560853',null,'statements/2019/2019_12.pdf','AA2305218000282',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (statementnumber,foreignaccountowner,amount,bookingdate,type,account,message,bank,file,transactionident,transferaccount,transfercosts) VALUES ('13','VISALUX S.C.','-50.07','2019-05-03','EINZUGSERMAECHTIGUNG','LU25 0020 1100 2783 8700','VISA BUSINESS 49403627XXXX1083 RELEVE VISA AU 20/04/2019',null,'statements/2019/2019_13.pdf','AA3019597007641',null,'0');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','20190415-0010','2511.12','GUTSCHRIFT',null,'2019-05-15','LU25 0020 1100 2783 8700','14','statements/2019/2019_14.pdf','AA3807673','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE  DUDELANGE-3591','BGLLLULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('-0.5','No Facture 20190453 01 No Client 5708/TH Edition 29.4.2019','-95.36','UEBERWEISUNG','LU97 0030 7074 4255 0000','2019-05-23','LU25 0020 1100 2783 8700','15','statements/2019/2019_15.pdf','AA4446221','G.T. RESSOURCES HUMAINES SA 19, ru',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','20122414974 - 99','-607.62','UEBERWEISUNG','LU77 0029 1014 6730 0000','2019-05-23','LU25 0020 1100 2783 8700','15','statements/2019/2019_15.pdf','AA4446358','CTRE COMM.DE LA SECURITE SOCIAL',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','ORANGE COMM. LUXBG NR.101331469423','-61.84','SEPA-LASTSCHRIFT',null,'2019-05-27','LU25 0020 1100 2783 8700','16','statements/2019/2019_16.pdf','AA4619733000284','ORANGE COMMUNICATIONS LUXEMBOURG',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','VISA BUSINESS 49403627XXXX1083 RELEVE VISA AU 25/05/2019','-89.85','EINZUGSERMAECHTIGUNG',null,'2019-06-07','LU25 0020 1100 2783 8700','17','statements/2019/2019_17.pdf','AA5560777008014','VISALUX S.C.',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Facture 20190515-0012','2511.12','GUTSCHRIFT',null,'2019-06-18','LU25 0020 1100 2783 8700','18','statements/2019/2019_18.pdf','AA6252532','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE    DUDELANGE-3591','BGLLLULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','/ROC/201906121606228678MULTI/RFB/20 190611-0003','417.69','GUTSCHRIFT',null,'2019-06-17','LU25 0020 1100 2783 8700','18','statements/2019/2019_18.pdf','AA6114105','CO-LABOR SOC. COOP. 1A,GREVELSBARRI ERE 8059 BERTRANGE','CCPLLULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','20122414974 - 99','-607.62','UEBERWEISUNG','LU77 0029 1014 6730 0000','2019-06-25','LU25 0020 1100 2783 8700','19','statements/2019/2019_19.pdf','AA6739488','CTRE COMM.DE LA SECURITE SOCIAL',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','ORANGE COMM. LUXBG NR.101343398807','-61.84','SEPA-LASTSCHRIFT',null,'2019-06-27','LU25 0020 1100 2783 8700','19','statements/2019/2019_19.pdf','AA6950517000287','ORANGE COMMUNICATIONS LUXEMBOURG',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','20190611-0001','856.44','GUTSCHRIFT',null,'2019-06-26','LU25 0020 1100 2783 8700','19','statements/2019/2019_19.pdf','AA6881713','LE CHAT POTTE RUE DE NOERTZANGE 65 L-L-3315 BERGEM','CELLLULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Honorarrechnung 5708/0931 vom 12.06.2019','-994.50','UEBERWEISUNG','LU04 0026 1855 2206 8300','2019-06-25','LU25 0020 1100 2783 8700','19','statements/2019/2019_19.pdf','AA6739577','G.T. EXPERTS COMPTABLES SARL',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Gehalt Februar 2019','-2120.44','UEBERWEISUNG','LU32 0023 3101 4286 4700','2019-06-25','LU25 0020 1100 2783 8700','19','statements/2019/2019_19.pdf','AA6739622','M.KILIAN SAFFRAN',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','VISA BUSINESS 49403627XXXX1083 RELEVE VISA AU 22/06/2019','-666.21','EINZUGSERMAECHTIGUNG',null,'2019-07-05','LU25 0020 1100 2783 8700','20','statements/2019/2019_20.pdf','AA7661665007409','VISALUX S.C.',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','20122414974 - 99',null,null,'LU77 0029 1014 6730 0000','--','LU25 0020 1100 2783 8700','21','statements/2019/2019_21.pdf','AA8782313','CTRE COMM.DE LA SECURITE SOCIAL',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','2012 2414 974 cotisation 2019',null,null,'LU57 0023 1001 7470 0000','--','LU25 0020 1100 2783 8700','21','statements/2019/2019_21.pdf','AA8782611','CHAMBRE DE COMMERCE LUXBG',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','10/0212115 Avt. 0 - 442143',null,null,'LU86 0029 1000 6450 0000','--','LU25 0020 1100 2783 8700','21','statements/2019/2019_21.pdf','AA8782520','AXA ASSURANCES LUXEMBOURG SA',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Gehalt Marz 2019',null,null,'LU32 0023 3101 4286 4700','--','LU25 0020 1100 2783 8700','21','statements/2019/2019_21.pdf','AA8782714','M.KILIAN SAFFRAN',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Facture 20190614-0014','2511.12','GUTSCHRIFT',null,'2019-07-16','LU25 0020 1100 2783 8700','21','statements/2019/2019_21.pdf','AA8431843','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE  DUDELANGE-3591','BGLLLULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','FACTURE N 20190729-0021','608.40','GUTSCHRIFT',null,'2019-08-01','LU25 0020 1100 2783 8700','22','statements/2019/2019_22.pdf','AA9622479','FONDATION ROBERT KRIEPS 36 BOULEVAR D DE LA PETRUSSE L  2320     LUXEMB OURG','BCEELULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','VISA BUSINESS 49403627XXXX1083 RELEVE VISA AU 20/07/2019','-7.80','EINZUGSERMAECHTIGUNG',null,'2019-08-02','LU25 0020 1100 2783 8700','22','statements/2019/2019_22.pdf','AA9835329007377','VISALUX S.C.',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Rechnungs-Nr. 20190729-0020','608.40','GUTSCHRIFT',null,'2019-07-31','LU25 0020 1100 2783 8700','22','statements/2019/2019_22.pdf','AA9478491','FONDATION LYDIE SCHMIT 22 CITE OP S OLTGEN L    -3862  SCHIFFLANGE','BCEELULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','ORANGE COMM. LUXBG NR.101356265350','-51.66','SEPA-LASTSCHRIFT',null,'2019-07-29','LU25 0020 1100 2783 8700','22','statements/2019/2019_22.pdf','AA9286384000284','ORANGE COMMUNICATIONS LUXEMBOURG',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('-0.5','2012 2414 974 impot sur la fortune Q2 /2019','-133.75','UEBERWEISUNG','LU58 1111 0085 4408 0000','2019-08-09','LU25 0020 1100 2783 8700','23','statements/2019/2019_23.pdf','AA0511668','BUREAU DE RECETTE DES CONTRIBUTIONS',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('-0.5','2012 2414 974 impot sur la fortune Q3 /2019','-133.75','UEBERWEISUNG','LU58 1111 0085 4408 0000','2019-08-09','LU25 0020 1100 2783 8700','23','statements/2019/2019_23.pdf','AA0482719','BUREAU DE RECETTE DES CONTRIBUTIONS',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0',null,'-55.00','GebührVISABUSINESS',null,'2019-08-05','LU25 0020 1100 2783 8700','23','statements/2019/2019_23.pdf',null,null,null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('-0.5','No Facture 20191182 01 Edition 16.7.2019 No Client 5708/TH','-71.96','UEBERWEISUNG','LU97 0030 7074 4255 0000','2019-08-12','LU25 0020 1100 2783 8700','24','statements/2019/2019_24.pdf','AA0535304','G.T. RESSOURCES HUMAINES SA 19, ru',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Honorarrechnung 5708/1218','-468.00','UEBERWEISUNG','LU04 0026 1855 2206 8300','2019-08-12','LU25 0020 1100 2783 8700','24','statements/2019/2019_24.pdf','AA0535285','G.T. EXPERTS COMPTABLES SARL',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('-0.5','20122414974','-2500.00','UEBERWEISUNG','LU31 1111 0114 1970 0000','2019-08-12','LU25 0020 1100 2783 8700','24','statements/2019/2019_24.pdf','AA0535269','Recette Centrale - Enregistrement',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Facture 20190715-0014','2511.12','GUTSCHRIFT',null,'2019-08-27','LU25 0020 1100 2783 8700','25','statements/2019/2019_25.pdf','AA1579915','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE L -3591    DUDELANGE','BCEELULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','ORANGE COMM. LUXBG NR.101368005481','-51.66','SEPA-LASTSCHRIFT',null,'2019-08-30','LU25 0020 1100 2783 8700','25','statements/2019/2019_25.pdf','AA1843218000281','ORANGE COMMUNICATIONS LUXEMBOURG',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','20190826-0027 domaines','88.00','GUTSCHRIFT',null,'2019-08-28','LU25 0020 1100 2783 8700','25','statements/2019/2019_25.pdf','AA1655235','IDLS SARL 2 OP DER NUDDELSFABRIK L -3424     DUDELANGE','BCEELULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Acompte Facture 20181231-0040','3000.00','GUTSCHRIFT',null,'2019-08-27','LU25 0020 1100 2783 8700','25','statements/2019/2019_25.pdf','AA1584016','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE L -3591    DUDELANGE','BCEELULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','20190826-0026 domaine fanclubf91.lu','40.00','GUTSCHRIFT',null,'2019-08-27','LU25 0020 1100 2783 8700','25','statements/2019/2019_25.pdf','AA1612395','FANCLUB F91 DIDDELENG ASBL 2 OP DER NUDDELSFABRIK 3424 DUDELANGE LUXEMBOURG','BILLLULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Gehalt April 2019','-2120.44','UEBERWEISUNG','LU32 0023 3101 4286 4700','2019-08-27','LU25 0020 1100 2783 8700','25','statements/2019/2019_25.pdf','AA1625895','M.KILIAN SAFFRAN',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','VISA BUSINESS 49403627XXXX1083 RELEVE VISA AU 24/08/2019','-7.80','EINZUGSERMAECHTIGUNG',null,'2019-09-06','LU25 0020 1100 2783 8700','26','statements/2019/2019_26.pdf','AA2455311007846','VISALUX S.C.',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Honorarrechnung 5708/1387 vom 09.08.2019','-351.00','UEBERWEISUNG','LU04 0026 1855 2206 8300','2019-09-03','LU25 0020 1100 2783 8700','26','statements/2019/2019_26.pdf','AA2113631','G.T. EXPERTS COMPTABLES SARL',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','20122414974 - 99','-607.13','UEBERWEISUNG','LU77 0029 1014 6730 0000','2019-09-03','LU25 0020 1100 2783 8700','26','statements/2019/2019_26.pdf','AA2113699','CTRE COMM.DE LA SECURITE SOCIAL',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0',null,'1750.00','GUTSCHRIFT',null,'2019-09-12','LU25 0020 1100 2783 8700','27','statements/2019/2019_27.pdf','AA2882626','MM WELSCHBILLIG-LEITZ PAUL 63A RUE DE LUXEMBOURG         ESCH-SUR-ALZETTE-422 1','BGLLLULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','/ROC/201909091036039608MULTI/RFB/20 190801-0102+0103+0105','1062.71','GUTSCHRIFT',null,'2019-09-10','LU25 0020 1100 2783 8700','27','statements/2019/2019_27.pdf','AA2691612','CO-LABOR SOC. COOP. 1A,GREVELSBARRI ERE 8059 BERTRANGE','CCPLLULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Gehalt Mai 2019','-2470.44','UEBERWEISUNG','LU32 0023 3101 4286 4700','2019-09-10','LU25 0020 1100 2783 8700','27','statements/2019/2019_27.pdf','AA2715751','M.KILIAN SAFFRAN',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Datum: 29/08/2019 Rechnungs-Nr.: 20 190829-0032 Kunden-Nr.: 19081001','309.10','GUTSCHRIFT',null,'2019-09-18','LU25 0020 1100 2783 8700','28','statements/2019/2019_28.pdf','AA3312524','ASSURANCES STEMPER (AS.ST.) SARL 25 0A ROUTE DE KAYL L -3514           DUDELAN GE','BCEELULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('-0.5 Blatt : 1 / 2 Banque Internationale à Luxembourg société anonyme 69, route d''Esch · L-2953 Luxembourg · Tél.: (+352) 4590-1 R.C.S. Luxembourg B-6307 · BIC Code : BILLLULL TVA : LU 11180925 · LEI Code : 9CZ7TVMR36CYD5TZBS50 Basisvertrag     : 10027813                                                                                                                    Datum : 20.09.2019 Bezeichnung    : DKS SARL','20122414974 -EDC- 25.08.2019','-3422.37','UEBERWEISUNG','LU31 1111 0114 1970 0000','2019-09-19','LU25 0020 1100 2783 8700','28','statements/2019/2019_28.pdf','AA3467016','Recette Centrale - Enregistrement',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Facture 20190812-0014','2511.12','GUTSCHRIFT',null,'2019-09-17','LU25 0020 1100 2783 8700','28','statements/2019/2019_28.pdf','AA3202278','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE  DUDELANGE-3591','BGLLLULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','1904001 20190829-0030','419.98','GUTSCHRIFT',null,'2019-09-17','LU25 0020 1100 2783 8700','28','statements/2019/2019_28.pdf','AA3192818','SOLUTION INFORMATIQUE SARL 20 RUE M ATHIAS CUNGS L     -3446  DUDELANGE','BCEELULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','ORANGE COMM. LUXBG NR.101380152208','-41.97','SEPA-LASTSCHRIFT',null,'2019-09-26','LU25 0020 1100 2783 8700','29','statements/2019/2019_29.pdf','AA3893201000279','ORANGE COMMUNICATIONS LUXEMBOURG',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','VISA BUSINESS 49403627XXXX1083 RELEVE VISA AU 21/09/2019','-1821.81','EINZUGSERMAECHTIGUNG',null,'2019-10-04','LU25 0020 1100 2783 8700','30','statements/2019/2019_30.pdf','AA4601771007273','VISALUX S.C.',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','20122414974 - 99','-652.03','UEBERWEISUNG','LU77 0029 1014 6730 0000','2019-09-30','LU25 0020 1100 2783 8700','30','statements/2019/2019_30.pdf','AA4099782','CTRE COMM.DE LA SECURITE SOCIAL',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Solde - Facture 20181231-0040','1680.00','GUTSCHRIFT',null,'2019-10-08','LU25 0020 1100 2783 8700','31','statements/2019/2019_31.pdf','AA4822595','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE L -3591   DUDELANGE','BCEELULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','/ROC/201910091107383048MULTI/RFB/20 191001-0106','85.00','GUTSCHRIFT',null,'2019-10-10','LU25 0020 1100 2783 8700','31','statements/2019/2019_31.pdf','AA5104542','CO-LABOR SOC. COOP. 1A,GREVELSBARRI ERE 8059 BERTRANGE','CCPLLULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Gehalt Juni 2019','-2190.44','UEBERWEISUNG','LU32 0023 3101 4286 4700','2019-10-08','LU25 0020 1100 2783 8700','31','statements/2019/2019_31.pdf','AA4858848','M.KILIAN SAFFRAN',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('-0.5','20122414974 Lohnsteuer Q3/2019','-37.06','UEBERWEISUNG','LU58 1111 0085 4408 0000','2019-10-07','LU25 0020 1100 2783 8700','31','statements/2019/2019_31.pdf','AA4660759','BUREAU DE RECETTE DES CONTRIBUTIONS',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Facture 20190918-0015','2511.12','GUTSCHRIFT',null,'2019-10-17','LU25 0020 1100 2783 8700','32','statements/2019/2019_32.pdf','AA5577718','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE L -3591  DUDELANGE','BCEELULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','20190515-0013 v. 15.05.19','86.58','GUTSCHRIFT',null,'2019-10-16','LU25 0020 1100 2783 8700','32','statements/2019/2019_32.pdf','AA5522809','LIEWEN VERTRIEBS-G.m.b.H. 73 DUCHSCHERSTROOSS 6868 WECKER LUXEMBOURG','BILLLULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','20122414974 - 99',null,null,'LU77 0029 1014 6730 0000','--','LU25 0020 1100 2783 8700','33','statements/2019/2019_33.pdf','AA6069948','CTRE COMM.DE LA SECURITE SOCIAL',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('-0.5','No Facture 20191884  01 No Client 5708/TH Edition 15.10.2019',null,null,'LU97 0030 7074 4255 0000','--','LU25 0020 1100 2783 8700','33','statements/2019/2019_33.pdf','AA6069915','G.T. RESSOURCES HUMAINES SA 19, ru',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','Gehalt Juli 2019',null,null,'LU32 0023 3101 4286 4700','--','LU25 0020 1100 2783 8700','33','statements/2019/2019_33.pdf','AA6070112','M.KILIAN SAFFRAN',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (transfercosts,message,amount,type,transferaccount,bookingdate,account,statementnumber,file,transactionident,foreignaccountowner,bank) VALUES ('0','20191007-0202 du 07.10.19','447.50','GUTSCHRIFT',null,'2019-10-22','LU25 0020 1100 2783 8700','33','statements/2019/2019_33.pdf','AA5926839','EBERHARD P. ET/OU DI BARTOLOMEO M. 10-12 RUE DU VILLAGE L     -6183  GON DERANGE','BCEELULL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,statementnumber,type,foreignaccountowner,transfercosts,file,account,message,transactionident,transferaccount,amount,bank) VALUES ('2019-07-19','21','UEBERWEISUNG','AXA ASSURANCES LUXEMBOURG SA','0','statements/2019/2019_21.pdf','LU25 0020 1100 2783 8700','10/0212115 Avt. 0 - 442143','AA8782520','LU86 0029 1000 6450 0000','-150.63',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,statementnumber,type,foreignaccountowner,transfercosts,file,account,message,transactionident,transferaccount,amount,bank) VALUES ('2019-07-19','21','UEBERWEISUNG','M.KILIAN SAFFRAN','0','statements/2019/2019_21.pdf','LU25 0020 1100 2783 8700','Gehalt Marz 2019','AA8782714','LU32 0023 3101 4286 4700','-2089.44',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,statementnumber,type,foreignaccountowner,transfercosts,file,account,message,transactionident,transferaccount,amount,bank) VALUES ('2019-07-19','21','UEBERWEISUNG','CHAMBRE DE COMMERCE LUXBG','0','statements/2019/2019_21.pdf','LU25 0020 1100 2783 8700','2012 2414 974 cotisation 2019','AA8782611','LU57 0023 1001 7470 0000','-70.00',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,statementnumber,type,foreignaccountowner,transfercosts,file,account,message,transactionident,transferaccount,amount,bank) VALUES ('2019-07-19','21','UEBERWEISUNG','CTRE COMM.DE LA SECURITE SOCIAL','0','statements/2019/2019_21.pdf','LU25 0020 1100 2783 8700','20122414974 - 99','AA8782313','LU77 0029 1014 6730 0000','-638.62',null);\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,statementnumber,type,foreignaccountowner,transfercosts,file,account,message,transactionident,transferaccount,amount,bank) VALUES ('2019-07-16','21','GUTSCHRIFT','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE  DUDELANGE-3591','0','statements/2019/2019_21.pdf','LU25 0020 1100 2783 8700','Facture 20190614-0014','AA8431843',null,'2511.12','BGLLLULL');\r
+==\r
+\r
+==\r
+DELETE FROM banktransaction WHERE id='41';\r
+==\r
+\r
+==\r
+DELETE FROM banktransaction WHERE id='41';\r
+==\r
+\r
+==\r
+DELETE FROM banktransaction WHERE id='41';\r
+==\r
+\r
+==\r
+DELETE FROM banktransaction WHERE id='41';\r
+==\r
+\r
+==\r
+DELETE FROM banktransaction WHERE id='41';\r
+==\r
+\r
+==\r
+DELETE FROM banktransaction WHERE id='41';\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='41';\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='17';\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='42';\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='18';\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='19';\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='16';\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='43';\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='44';\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='45';\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,transferaccount,account,transfercosts,type,statementnumber,file,transactionident,message,bank,amount,foreignaccountowner) VALUES ('2019-03-22','LU58 1111 0085 4408 0000','LU25 0020 1100 2783 8700','0','UEBERWEISUNG','8','statements/2019/2019_08.pdf','AA0013455','Lohnsteuer Q1 2019 20122414974',null,'-188.10','BUREAU DE RECETTE DES CONTRIBUTIONS');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,transferaccount,account,transfercosts,type,statementnumber,file,transactionident,message,bank,amount,foreignaccountowner) VALUES ('2019-03-22','LU77 0029 1014 6730 0000','LU25 0020 1100 2783 8700','0','UEBERWEISUNG','8','statements/2019/2019_08.pdf','AA0013042','20122414974 - 99',null,'-608.58','CTRE COMM.DE LA SECURITE SOCIAL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,transferaccount,account,transfercosts,type,statementnumber,file,transactionident,message,bank,amount,foreignaccountowner) VALUES ('2019-03-22','LU32 0023 3101 4286 4700','LU25 0020 1100 2783 8700','0','UEBERWEISUNG','8','statements/2019/2019_08.pdf','AA0013246','Gehalt Januar 2019',null,'-2120.44','M.KILIAN SAFFRAN');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,transferaccount,account,transfercosts,type,statementnumber,file,transactionident,message,bank,amount,foreignaccountowner) VALUES ('2019-03-19',null,'LU25 0020 1100 2783 8700','0','GUTSCHRIFT','8','statements/2019/2019_08.pdf','AA9376415','Facture 20190218-0007','BGLLLULL','2511.12','CREATX IDEA FACTORY SARL 69 RUE DE LA VALLEE    DUDELANGE-3591');\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='81';\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='82';\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='83';\r
+==\r
+\r
+==\r
+DELETE FROM banktransactions WHERE id='84';\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,transferaccount,account,transfercosts,type,statementnumber,file,transactionident,message,bank,amount,foreignaccountowner) VALUES ('2019-10-23','LU97 0030 7074 4255 0000','LU25 0020 1100 2783 8700','0','UEBERWEISUNG','33','statements/2019/2019_33.pdf','AA6069915','No Facture 20191884  01 No Client 5708/TH Edition 15.10.2019',null,'-71.96','G.T. RESSOURCES HUMAINES SA 19, ru');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,transferaccount,account,transfercosts,type,statementnumber,file,transactionident,message,bank,amount,foreignaccountowner) VALUES ('2019-10-23','LU77 0029 1014 6730 0000','LU25 0020 1100 2783 8700','0','UEBERWEISUNG','33','statements/2019/2019_33.pdf','AA6069948','20122414974 - 99',null,'-613.11','CTRE COMM.DE LA SECURITE SOCIAL');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,transferaccount,account,transfercosts,type,statementnumber,file,transactionident,message,bank,amount,foreignaccountowner) VALUES ('2019-10-23','LU32 0023 3101 4286 4700','LU25 0020 1100 2783 8700','0','UEBERWEISUNG','33','statements/2019/2019_33.pdf','AA6070112','Gehalt Juli 2019',null,'-2190.44','M.KILIAN SAFFRAN');\r
+==\r
+\r
+==\r
+INSERT INTO banktransactions (bookingdate,transferaccount,account,transfercosts,type,statementnumber,file,transactionident,message,bank,amount,foreignaccountowner) VALUES ('2019-10-22',null,'LU25 0020 1100 2783 8700','0','GUTSCHRIFT','33','statements/2019/2019_33.pdf','AA5926839','20191007-0202 du 07.10.19','BCEELULL','447.50','EBERHARD P. ET/OU DI BARTOLOMEO M. 10-12 RUE DU VILLAGE L     -6183  GON DERANGE');\r
+==\r
index acbae06..5d9d492 100644 (file)
@@ -4,6 +4,7 @@ use CGI;
 use CGI::Carp qw/fatalsToBrowser/;
 use File::Path qw/make_path/;
 use JSON::PP;
+
 my $cgi = new CGI();
 my $p = ();
 my $cfgpath=""; 
@@ -16,31 +17,33 @@ if ($^O eq "MSWin32"){
 }
 $cfgpath =~ s/\\/\//g;
 #print $cfgpath."\n";
-my $docpath = $cfgpath.'/invoicejournal/documents';
+
 my @params = $cgi->param();
 foreach my $pp (@params){
        $p->{$pp} = $cgi->param($pp);
 }
-
+my $docpath = $cfgpath.'/'.$p->{app};
 my $html->{result} = ();
+$html->{result}->{params} = $p;
 #my $upl = $cgi->upload('file');
       ##my @uploads = $req->uploads->get_all('file');
       # $html->{result}->{file} = $p->{file};   
        
 my $fh = $cgi->upload('file');
-    my $uplpath = $docpath.'/'.$p->{folder}.'/'.$p->{subfolder};
-     if (! -d $uplpath){
-       make_path($uplpath);
-     }
-     open(SPF,'>'.$uplpath.'/'.$p->{file});
+    #my $uplpath = $docpath.'/'.;
+my $relpath = $p->{folder}.'/'.$p->{subfolder};
+if (! -d $docpath."/".$relpath){
+  make_path($docpath."/".$relpath);
+}
+open(SPF,'>'.$docpath."/".$relpath.'/'.$p->{file});
      binmode(1);
      while (my $l = <$fh>) {
       print SPF $l;
      }
      close(SPF);
-if (-f $uplpath.'/'.$p->{file}){
-  $html->{result}->{relpath} = $p->{folder}.'/'.$p->{subfolder}.'/'.$p->{file};
-}
+#if (-f $uplpath.'/'.$p->{file}){
+  $html->{result}->{relpath} = $relpath.'/'.$p->{file};
+#}
 print $cgi->header(-type=> 'application/json', -charset=>"UTF-8");
 my $js = JSON::PP->new();
 $js->allow_blessed(1);
index d850dde..b1a8baf 100644 (file)
@@ -194,7 +194,7 @@ if ($vars->{page} =~ /module/){
 
 $template->process($skl,$vars) || die "Template process failed: ", $template->error(), "\n";
 
-print '/*<pre  >'.Dumper($vars)."<pre>*/";
+#print '/*<pre  >'.Dumper($vars)."<pre>*/";
 
 
 
index 0871a5b..1d4a6a1 100644 (file)
@@ -1,33 +1,50 @@
 
 var tbl = null;
-var dlgname = null;
+
 function initpage(){
+  console.log(mpref.cfg);
+  console.log("APP:" + parent.app);
   mpref.loadconfig();
   loadtable();
 }
 
 function loadtable(){
-  tbl = new Tabulator("#maintbl", {
+  tbl = new Tabulator("#tbl_bankaccount", {
     headerFilterPlaceholder:"filter...",
     height: "94vh",
+    layout:"fitData",
     // layout:"fitDataFill",
     selectable:1,
     //responsiveLayout:"collapse",
     columns:[
-    {title:"account", field:"account",headerFilter:"input"},
-    {title:"Stmt", field:"statementnumber",headerFilter:"input"},
-    {title:"Datum", field:"bookingdate",headerFilter:"input"},
-    {title:"amount", field:"amount",headerFilter:"input"},
-    {title:"message", field:"message",headerFilter:"input"},
-    {title:"foreignaccountowner", field:"foreignaccountowner",headerFilter:"input"},
-    {title:"transferaccount", field:"transferaccount",headerFilter:"input"},
+    {title:"Bank-Konto", field:"account",headerFilter:"input"},
+    {title:"Auszug", field:"statementnumber",headerFilter:true,formatter:"number",align: "right"},
+    {title:"Datum", field:"bookingdate",headerFilter:true,formatter:"datetime", formatterParams:{
+      inputFormat:"YYYY-MM-DD",
+      outputFormat:"DD.MM.YYYY",
+      invalidPlaceholder:""}},
+    {title:"Betrag", field:"amount",align: "right",headerFilter:"input",formatter:"money", formatterParams:{
+      decimal:",",
+      thousand:".",
+      symbol:"€",
+      symbolAfter:"p",
+      precision:2}},
+    {title:"Betreff", field:"message",headerFilter:"input"},
+    {title:"Transfer-Konto", field:"foreignaccountowner",headerFilter:"input"},
+    {title:"Datei", field:"file",formatter:function(cell, formatterParams){
+      var value = cell.getValue();
+      if ((value) && (value != "")){
+        return '<button class="w3-button w3-blue-grey" onclick="downloadfile(\''+ value +'\');"><img src="[% abspath %][% staticpath%]img/icons/download_white.svg" style="width: 20px;"/></button>';
+      }
+      
+   }}
     ],
 });
   gettbldata();
 }
 
 function gettbldata(){
-  req.reqdata("POST","/sqlite/" + mpref.cfg.db,{"type":"array","sql":"select * from banktransactions;"},filltbldata);
+  req.reqdata("POST","db.cgi",{"db":parent.app + "/" + mpref.cfg.db,"get":"banktransactions"},filltbldata);
 }
 
 function filltbldata(data){
@@ -48,8 +65,32 @@ function add(){
 
 }
 
+function downloadfile(filename){
+  window.open(api + 'download.cgi?app=' + parent.app + "&file=" + encodeURIComponent(filename));
+  return false;
+}
+
 function remove(){
+  var udata = tbl.getSelectedData();
+  if (udata && udata[0]){
+    document.getElementById('dlgdeleterow').style.display='block';
+  }
+  return false;
+}
+
+function removeselectedrow(){
+  var udata = tbl.getSelectedData();
+  if (udata && udata[0]){
+    req.reqdata("POST","db.cgi",{"del":"1","ident_banktransactions_id":udata[0].id,"db":parent.app + "/" + mpref.cfg.db},afterremove);
+  }
+  return false;
+}
 
+function afterremove(data){
+  gettbldata();
+  document.getElementById('dlgdeleterow').style.display='none';
+  
+  return false;
 }
 
 function saveandparse(dlg,frmid){
@@ -68,28 +109,34 @@ function saveandparse(dlg,frmid){
       }
     // console.log(field);
     }
+    fxdata.append('app',parent.app);
     for (var pair of fxdata.entries()) {
       console.log(pair[0]+ ', ' + pair[1]); 
     }
-    req.multipartform("/upload",fxdata,multipartformsaved);
-    
+    req.multipartform("upload.cgi",fxdata,multipartformsaved);
+    return false;
 }
 
 function multipartformsaved(data){
   document.getElementById(dlgname).style.display='none';
   console.log(data);
   if ((data) && (data.relpath)){
-    req.reqdata("POST","/parsestatement",{"file":data.relpath},parsestatement);
-  }
-  
+     req.reqdata("POST","parsestatement.cgi",{"app": parent.app,"file":data.relpath,"db":parent.app + "/" + mpref.cfg.db,"import":"1"},parsestatement);
+   }
+  return false;
 }
 
 function parsestatement(data){
   
-  //console.log(data);
-  if (data && data.bookings){
-    for (var i in data.bookings){
-      console.log(data.bookings[i]);
-    }
+  console.log(data);
+  if (data){
+    //alert("Total:" + data.total + " - Inserts:" + data.inserts + " - Updates:" + data.updates);
+    gettbldata();
+
+    //   for (var i in data.bookings){
+  //     console.log(data.bookings[i]);
+  //     req.reqdata("POST","db.cgi",{"db":parent.app + "/" + mpref.cfg.db,"sql":"select id from banktransactions where transactionident='"+ data.booking[i].transactionident+"';"});
+  //   }
   }
+  return false;
 }
\ No newline at end of file
index 7d1096e..5817708 100644 (file)
@@ -7,7 +7,7 @@
       <button class="w3-button w3-blue-grey" onclick="remove();">löschen</button>\r
       <button class="w3-button w3-blue-grey" onclick="edit();">bearbeiten</button>\r
     </div>\r
-    <div id="maintbl"></div>\r
+    <div id="tbl_bankaccount"></div>\r
     <!-- PAGE DATA END -->\r
     </div>\r
     <div id="dlguploadfile" class="w3-modal">\r
           <button class="w3-button w3-blue-grey w3-margin-right" onclick="saveandparse('dlguploadfile','uploadfile');return false;">speichern</button>\r
           </footer>\r
         </div>\r
+      </div>\r
+<div id="dlgdeleterow" class="w3-modal">\r
+\r
+        <div class="w3-modal-content w3-animate-top w3-card-4">\r
+          <header class="w3-container"> \r
+            <span onclick="document.getElementById('dlgdeleterow').style.display='none'; return false;" \r
+             class="w3-button w3-display-topright">&times;</span>\r
+            <h2 id="dlgdeleterow_title">Transaktion löschen!</h2>\r
+          </header>\r
+          <div class="w3-container">\r
+            Sind sie sicher dasss sie die ausgewählte Transaktion löschen möchten?\r
+          </div>\r
+          <footer class="w3-container w3-right-align w3-padding-16">\r
+          <button class="w3-button w3-theme-light w3-margin-right w3-border" onclick="document.getElementById('dlgdeleterow').style.display='none'; return false;">Abbrechen</button>\r
+          <button class="w3-button w3-red w3-margin-right" onclick="removeselectedrow();">löschen</button>\r
+          </footer>\r
+        </div>\r
       </div>
\ No newline at end of file
diff --git a/dev/regextest.pl b/dev/regextest.pl
new file mode 100644 (file)
index 0000000..ad39aa0
--- /dev/null
@@ -0,0 +1,12 @@
+#!/usr/bin/perl
+use strict;
+use Data::Dumper;
+my $p="23.10  UEBERW EISUNG                    23.10.19              2.190,44   -   ";
+my ($type,$trdate,$trval,$trsign);
+#my ($type,$trdate,$trval,$trsign) = $p =~ m/\d\d\.\d\d\s+([A-Z\ ]+)(\d\d\.\d\d\.\d\d)\s+([\d|,|\.]+)\s+([+|-])\s*$/;
+
+($type,$trdate,$trval,$trsign) = $p =~ m/^\d\d\.\d\d\s+([A-Z ]+)(\d\d\.\d\d\.\d\d)\s+([\d|,|\.]+)\s+([+|-])/;
+print Dumper($type)."\n";
+print Dumper($trdate)."\n";
+print Dumper($trval)."\n";
+print Dumper($trsign)."\n";
index b61bf7f..dad6ece 100644 (file)
--- a/dksnas.pl
+++ b/dksnas.pl
@@ -4,7 +4,8 @@ use File::Basename;
 use Getopt::Long;
 use Time::HiRes;
 use Data::Dumper;
-use lib (dirname($0));
+use FindBin qw($Bin $RealBin);
+use lib ($RealBin);
 #use lib ('/home/dks/perl5/lib/perl5');
 # if ($^O ne "MSWin32" ){
 #      use lib (dirname($0));
@@ -38,7 +39,7 @@ print join(@INC)."\n";
 # }
 my @match =  grep { /par-.*inc$/} @INC;
 
-my $basedir = dirname($0);
+my $basedir = $RealBin;
 if (scalar(@match) > 0){
        $basedir = $match[0];
 }
@@ -61,16 +62,16 @@ print $cfgpath."\n";
 
 my $allapp = builder {
   enable "DirIndex", dir_index => 'index.html';
-  mount "/" => Plack::App::WrapCGI->new(script => dirname($0)."/CGI/index.cgi")->to_app;
+  mount "/" => Plack::App::WrapCGI->new(script => $RealBin."/CGI/index.cgi")->to_app;
   
   opendir(API,dirname($0)."/CGI/api");
    while (my $s = readdir(API)){
      if ($s =~ /\.cgi$/){
-       mount "/api/".$s => Plack::App::WrapCGI->new(script => dirname($0)."/CGI/api/".$s)->to_app;
+       mount "/api/".$s => Plack::App::WrapCGI->new(script => $RealBin."/CGI/api/".$s)->to_app;
      }
    }
    closedir(API);
-   mount "/htdocs" => Plack::App::File->new(root => dirname($0)."/htdocs")->to_app;
+   mount "/htdocs" => Plack::App::File->new(root => $RealBin."/htdocs")->to_app;
   #  if (-e $cfgpath.'/'.$name.'.passwd'){
   #            enable "Auth::Basic", authenticator => \&authen_cb;     
   #  }
index 66de155..2aaf17b 100644 (file)
@@ -27,6 +27,7 @@ var req = {
           console.log(ret);
         }
         else {
+          
           ret = request.responseText;
         }
         if (async){