function flyt_data($kladde_id, $filnavn, $splitter, $feltnavn, $feltantal, $bilag, $datoformat) { global $charset; transaktion('begin'); $splitter = chr(9); $fp = fopen($filnavn . "2", "r"); if ($fp) { $x = 0; while (!feof($fp)) { $skriv_linje = 0; if ($linje = trim(fgets($fp))) { $x++; $skriv_linje = 1; $felt = array(); $felt = explode($splitter, $linje); for ($y = 0; $y <= $feltantal; $y++) { $felt[$y] = trim($felt[$y]); if (substr($felt[$y], 0, 1) == '"' && substr($felt[$y], -1) == '"') { $felt[$y] = substr($felt[$y], 1, strlen($felt[$y]) - 2); } if ($feltnavn[$y] == 'dato') { $felt[$y] = datotjek($datoformat, $felt[$y]); } # if ($feltnavn[$y]=='dato') $felt[$y]=str_replace(".","-",$felt[$y]); if ($feltnavn[$y] == 'belob') { if (nummertjek($felt[$y]) == 'US') { $felt[$y] = dkdecimal($felt[$y]); } elseif (nummertjek($felt[$y]) != 'DK') { $skriv_linje = 0; } } } } if ($skriv_linje == 1) { for ($y = 0; $y <= $feltantal; $y++) { $bilag = $bilag * 1; if ($feltnavn[$y] == 'bilag') { $bilag = $felt[$y] * 1; } if ($feltnavn[$y] == 'belob') { $amount = usdecimal($felt[$y]); } elseif ($feltnavn[$y] == "dato") { $transdate = usdate($felt[$y]); } elseif ($feltnavn[$y] == "beskrivelse") { $beskrivelse = addslashes($felt[$y]); } elseif ($feltnavn[$y] == "debet") { $d_type = "F"; $debet = $felt[$y]; } elseif ($feltnavn[$y] == "kredit") { $d_type = "F"; $kredit = $felt[$y]; } elseif ($feltnavn[$y] == "debitor") { $d_type = "D"; $debet = $felt[$y]; } elseif ($feltnavn[$y] == "kreditor") { $k_type = "K"; $kredit = $felt[$y]; } elseif ($feltnavn[$y] == "fakturanr") { $fakturanr = addslashes($felt[$y]); } } if (!$transdate) { $transdate = date('Y-m-d'); } #20150105 if ($amount * 1 != 0) { # $debet=$debet*1;$kredit=$kredit*1; $felttext1 = NULL; $felttext2 = NULL; if (is_numeric($debet)) { $felttext1 = "d_type,debet,"; $felttext2 = "'{$d_type}','{$debet}',"; } if (is_numeric($kredit)) { $felttext1 = $felttext1 . "k_type,kredit,"; $felttext2 = $felttext2 . "'{$k_type}','{$kredit}',"; } db_modify("insert into kassekladde (bilag, transdate, beskrivelse,{$felttext1} faktura, amount, kladde_id) values ('{$bilag}', '{$transdate}', '{$beskrivelse}',{$felttext2} '{$fakturanr}','{$amount}', '{$kladde_id}')", __FILE__ . " linje " . __LINE__); if (!in_array('bilag', $feltnavn)) { $bilag++; } } } } } fclose($fp); unlink($filnavn); # sletter filen. unlink($filnavn . "2"); # sletter filen. transaktion('commit'); print "<meta http-equiv=\"refresh\" content=\"0;URL=kassekladde.php?kladde_id={$kladde_id}\">"; }
function flyt_data($kladde_id, $filnavn, $splitter, $feltnavn, $feltantal, $kontonr, $bilag, $valutakode) { global $charset; transaktion('begin'); /* $fp=fopen($filnavn."2","r"); if ($fp) { for ($y=1; $y<4; $y++) $linje=fgets($fp); $tmp=$linje; while ($tmp=substr(strstr($tmp,";"),1)) {$semikolon++;} $tmp=$linje; while ($tmp=substr(strstr($tmp,","),1)) {$komma++;} $tmp=$linje; while ($tmp=substr(strstr($tmp,chr(9)),1)) {$tabulator++;} $tmp=''; if (($komma>$semikolon)&& ($komma>$tabulator)) {$tmp='Komma'; $feltantal=$komma;} elseif (($semikolon>$tabulator)&&($semikolon>$komma)) {$tmp='Semikolon'; $feltantal=$semikolon;} elseif (($tabulator>$semikolon)&&($tabulator>$komma)) {$tmp='Tabulator'; $feltantal=$tabulator;} if (!$splitter) {$splitter=$tmp;} $cols=$feltantal+1; } fclose($fp); if ((!$splitter)||($splitter=='Semikolon')) {$splitter=';';} elseif ($splitter=='Komma') {$splitter=',';} elseif ($splitter=='Tabulator') {$splitter=chr(9);} */ $splitter = chr(9); $fp = fopen($filnavn . "2", "r"); if ($fp) { $x = 0; $kortgebyr = 0; while (!feof($fp)) { $skriv_linje = 0; if ($linje = trim(fgets($fp))) { $x++; $skriv_linje = 1; $felt = array(); $felt = explode($splitter, $linje); for ($y = 0; $y <= $feltantal; $y++) { $felt[$y] = trim($felt[$y]); if (substr($felt[$y], 0, 1) == '"' && substr($felt[$y], -1) == '"') { $felt[$y] = substr($felt[$y], 1, strlen($felt[$y]) - 2); } if ($feltnavn[$y] == 'dato') { # 20140203 $felt[$y] = str_replace("-jan-", "-01-", $felt[$y]); $felt[$y] = str_replace("-feb-", "-02-", $felt[$y]); $felt[$y] = str_replace("-mar-", "-03-", $felt[$y]); $felt[$y] = str_replace("-apr-", "-04-", $felt[$y]); $felt[$y] = str_replace("-maj-", "-05-", $felt[$y]); $felt[$y] = str_replace("-jun-", "-06-", $felt[$y]); $felt[$y] = str_replace("-jul-", "-07-", $felt[$y]); $felt[$y] = str_replace("-aug-", "-08-", $felt[$y]); $felt[$y] = str_replace("-sep-", "-09-", $felt[$y]); $felt[$y] = str_replace("-okt-", "-10-", $felt[$y]); $felt[$y] = str_replace("-nov-", "-11-", $felt[$y]); $felt[$y] = str_replace("-dec-", "-12-", $felt[$y]); $felt[$y] = str_replace(".", "-", $felt[$y]); } if ($feltnavn[$y] == 'belob') { $felt[$y] = str_replace(" ", "", $felt[$y]); if (nummertjek($felt[$y]) == 'US') { $felt[$y] = dkdecimal($felt[$y]); } elseif (nummertjek($felt[$y]) != 'DK') { $skriv_linje = 0; } } } } if ($skriv_linje == 1) { for ($y = 0; $y <= $feltantal; $y++) { $bilag = $bilag * 1; if ($feltnavn[$y] == 'belob') { $amount = usdecimal($felt[$y]); } elseif ($feltnavn[$y] == "dato") { $transdate = usdate($felt[$y]); } elseif ($feltnavn[$y] == "beskrivelse") { $beskrivelse = db_escape_string($felt[$y]); } } if ($amount > 0) { if (strlen($beskrivelse) == 22 && substr($beskrivelse, 0, 3) == 'IK ' && is_numeric(substr($beskrivelse, 3, 19))) { # ? $kredit = substr($beskrivelse, 3, 13) * 1; $faktura = substr($beskrivelse, 16, 5) * 1; $k_type = 'D'; } elseif (strlen($beskrivelse) == 20 && substr($beskrivelse, -4) == 'IK71' && is_numeric(substr($beskrivelse, 0, 14))) { # Sparekasserne $kredit = substr($beskrivelse, 0, 8) * 1; $faktura = substr($beskrivelse, 8, 6) * 1; $k_type = 'D'; } elseif (strlen($beskrivelse) == 32 && substr($beskrivelse, 7, 10) == 'Indbet.ID=' && is_numeric(substr($beskrivelse, 17, 15))) { # Danske Bank $kredit = substr($beskrivelse, 17, 9) * 1; $faktura = substr($beskrivelse, 26, 5) * 1; $k_type = 'D'; } elseif (strlen($beskrivelse) == 35 && substr($beskrivelse, 0, 21) == 'Indbetalingskort, nr.' && is_numeric(substr($beskrivelse, 22, 14))) { # Nordea $kredit = substr($beskrivelse, 22, 7) * 1; $faktura = substr($beskrivelse, 29, 5) * 1; $k_type = 'D'; } elseif (strlen($beskrivelse) == 40 && substr($beskrivelse, 0, 6) == 'DK-IND' && is_numeric(substr($beskrivelse, 22, 14))) { # SparNord $felt_1 = "%" . substr($beskrivelse, -10); $tmp = $amount - 3; # fungerer med op til 2 kr i kortgebyr $qtxt = "select fakturanr,kontonr from ordrer where felt_1 LIKE '{$felt_1}' and sum <= '{$amount}' and sum >= '{$tmp}'"; $r = db_fetch_array(db_select($qtxt, __FILE__ . " linje " . __LINE__)); $faktura = $r['fakturanr']; $kredit = $r['kontonr'] * 1; $k_type = 'D'; } elseif (c == 30 && substr($beskrivelse, 0, 2) == 'DK' && is_numeric(substr($beskrivelse, 4, 7)) && is_numeric(substr($beskrivelse, 12, 9)) && is_numeric(substr($beskrivelse, 25, 5))) { # Dankort betaling 20140708 $betalings_id = "%" . substr($beskrivelse, 12, 9); $r = db_fetch_array(db_select("select fakturanr,kontonr,sum,moms from ordrer where betalings_id LIKE '{$betalings_id}' and sum = '{$amount}'", __FILE__ . " linje " . __LINE__)); $faktura = $r['fakturanr']; $fakturasum = $r['sum'] + $r['moms']; $kortgebyr = $amount - $fakturasum; $kredit = $r['kontonr'] * 1; $k_type = 'D'; } elseif (substr($beskrivelse, 0, 6) == 'DKSSL ') { #20131119 list($a, $b, $c) = explode(" ", $beskrivelse); $ordrenr = substr($c, 7) * 1; if ($ordrenr) { $r = db_fetch_array(db_select("select fakturanr,kontonr from ordrer where ordrenr = '{$ordrenr}' and sum = '{$amount}'", __FILE__ . " linje " . __LINE__)); $faktura = $r['fakturanr']; $kredit = $r['kontonr'] * 1; $k_type = 'D'; } else { $faktura = ''; $kredit = '0'; } } else { $kredit = '0'; $faktura = ''; $k_type = ''; } if ($kortgebyr) { $qtxt = "insert into kassekladde (bilag,transdate,beskrivelse,d_type,debet,k_type,kredit,faktura,amount,kladde_id,valuta)"; $qtxt .= " values "; $qtxt .= "('{$bilag}','{$transdate}','{$beskrivelse}','F','{$kontonr}','F','','{$faktura}','{$amount}','{$kladde_id}','{$valutakode}')"; db_modify($qtxt, __FILE__ . " linje " . __LINE__); $qtxt = "insert into kassekladde (bilag,transdate,beskrivelse,d_type,debet,k_type,kredit,faktura,amount,kladde_id,valuta)"; $qtxt .= " values "; $qtxt .= "('{$bilag}','{$transdate}','{$beskrivelse}','F','','{$k_type}','{$kredit}','{$faktura}','{$fakturasum}','{$kladde_id}','{$valutakode}')"; db_modify($qtxt, __FILE__ . " linje " . __LINE__); $qtxt = "insert into kassekladde (bilag,transdate,beskrivelse,d_type,debet,k_type,kredit,faktura,amount,kladde_id,valuta)"; $qtxt .= " values "; $qtxt .= "('{$bilag}','{$transdate}','{$beskrivelse}','F','','F','','{$faktura}','{$kortgebyr}','{$kladde_id}','{$valutakode}')"; db_modify($qtxt, __FILE__ . " linje " . __LINE__); } else { $qtxt = "insert into kassekladde (bilag,transdate,beskrivelse,d_type,debet,k_type,kredit,faktura,amount,kladde_id,valuta)"; $qtxt .= " values "; $qtxt .= "('{$bilag}','{$transdate}','{$beskrivelse}','F','{$kontonr}','{$k_type}','{$kredit}','{$faktura}','{$amount}','{$kladde_id}','{$valutakode}')"; db_modify($qtxt, __FILE__ . " linje " . __LINE__); } $bilag++; } elseif ($amount < 0) { $amount = $amount * -1; if (strlen($beskrivelse) == 30 && substr($beskrivelse, 0, 2) == 'DK' && is_numeric(substr($beskrivelse, 4, 7)) && is_numeric(substr($beskrivelse, 12, 9)) && is_numeric(substr($beskrivelse, 25, 5))) { # Dankort betaling 20150904 $betalings_id = "%" . substr($beskrivelse, 12, 9); $r = db_fetch_array(db_select("select fakturanr,kontonr from ordrer where betalings_id LIKE '{$betalings_id}' and sum = '{$amount}'", __FILE__ . " linje " . __LINE__)); $faktura = $r['fakturanr']; $debet = $r['kontonr'] * 1; $d_type = 'D'; } else { $dtype = 'F'; $debet = 0; #cho "insert into kassekladde (bilag, transdate, beskrivelse, k_type, kredit, amount, kladde_id) values ('$bilag', '$transdate', '$beskrivelse', 'F', '$kontonr', '$amount', '$kladde_id')<br>"; db_modify("insert into kassekladde (bilag,transdate,beskrivelse,d_type,debet,k_type,kredit,amount,kladde_id,valuta) values ('{$bilag}','{$transdate}','{$beskrivelse}','{$d_type}','{$debet}','F','{$kontonr}','{$amount}','{$kladde_id}','{$valutakode}')", __FILE__ . " linje " . __LINE__); } $bilag++; } } } } fclose($fp); unlink($filnavn); # sletter filen. unlink($filnavn . "2"); # sletter filen. #xit; transaktion('commit'); print "<meta http-equiv=\"refresh\" content=\"0;URL=kassekladde.php?kladde_id={$kladde_id}\">"; }