Example #1
0
 function udvaelg($tmp, $key, $art)
 {
     include "../includes/std_func.php";
     $tmp = strtolower($tmp);
     if ($art) {
         #20150105-1
         if ($art != 'BELOB') {
             $tmp = str_replace(",", ":", $tmp);
         }
         #20150601
         $tmp = str_replace(";", ":", $tmp);
         if ($art == 'BELOB' && !strpos($tmp, ':')) {
             #20151019
             $tmp = usdecimal($tmp);
             $tmp1 = $tmp - 0.005;
             $tmp2 = $tmp + 0.004;
             $tmp = number_format($tmp1, 3, ',', '') . ":" . number_format($tmp2, 3, ',', '');
         }
     }
     list($tmp1, $tmp2) = explode(":", $tmp);
     if (strstr($tmp, ':') && $art != 'TID') {
         if ($art == "DATO") {
             $tmp1 = usdate($tmp1);
             $tmp2 = usdate($tmp2);
         } elseif ($art == "BELOB") {
             $tmp1 = usdecimal($tmp1);
             $tmp2 = usdecimal($tmp2);
         } elseif ($art == "NR") {
             $tmp1 = afrund($tmp1 * 1, 2);
             #21050105-2
             $tmp2 = afrund($tmp2 * 1, 2);
         }
         $udvaelg = "and {$key} >= '{$tmp1}' and {$key} <= '{$tmp2}'";
     } else {
         if ($art == "TID") {
             if (!strstr($tmp, ':')) {
                 $tmp = $tmp * 1;
                 $tmp = str_replace(".", ":", $tmp);
                 if (!strstr($tmp, ':')) {
                     $tmp = $tmp . ":";
                 }
             }
         } elseif ($art == "DATO") {
             $tmp = usdate($tmp);
         }
         if (!$art) {
             $tmp = str_replace("*", "%", $tmp);
             $tmp = db_escape_string($tmp);
             $udvaelg = " and lower({$key}) like '{$tmp}'";
         } else {
             $udvaelg = " and {$key} = '{$tmp}'";
         }
     }
     return $udvaelg;
 }
Example #2
0
 $bynavn = db_escape_string(trim($_POST['bynavn']));
 $tlf = db_escape_string(trim($_POST['tlf']));
 $fax = db_escape_string(trim($_POST['fax']));
 $mobil = db_escape_string(trim($_POST['mobil']));
 $privattlf = db_escape_string(trim($_POST['privattlf']));
 $email = db_escape_string(trim($_POST['email']));
 $cprnr = db_escape_string(trim($_POST['cprnr']));
 $notes = db_escape_string(trim($_POST['notes']));
 $bank = db_escape_string(trim($_POST['bank']));
 $loen = usdecimal($_POST['loen']);
 $extraloen = usdecimal($_POST['extraloen']);
 $lukket = trim($_POST['lukket']);
 $startdato = db_escape_string(trim($_POST['startdato']));
 $slutdato = db_escape_string(trim($_POST['slutdato']));
 $startdato ? $startdate = usdate($startdato) : ($startdate = NULL);
 $slutdato ? $slutdate = usdate($slutdato) : ($sluttdate = NULL);
 $trainee = trim($_POST['trainee']);
 list($afd, $x) = explode(":", $_POST['afd']);
 $afd = $afd * 1;
 $returside = $_POST['returside'];
 $fokus = $_POST['fokus'];
 $provision = $_POST['provision'];
 $provision_id = $_POST['provision_id'];
 $gruppe_id = $_POST['gruppe_id'];
 $pro_antal = $_POST['pro_antal'];
 if (!is_numeric($nummer) && $id) {
     #20140923
     $messages = "Skal være et tal";
 } elseif ($id && ($r = db_fetch_array(db_select("SELECT id FROM ansatte WHERE nummer='{$nummer}' AND id != '{$id}'", __FILE__ . " linje " . __LINE__)))) {
     $messages = "Medarbejdernummer eksisterer i forvejen ";
 } else {
Example #3
0
    $gl_logintekst = if_isset($_POST['gl_logintekst']);
    $logintekst = if_isset($_POST['logintekst']);
    for ($x = 1; $x <= $db_antal; $x++) {
        #		if (!isset($gl_lukket[$x])) echo "HMM";
        if (!isset($lukket[$x])) {
            $lukket[$x] = NULL;
        }
        if (!$lukkes[$x]) {
            $lukkes[$x] = "2099-12-31";
        } else {
            $lukkes[$x] = usdate($lukkes[$x]);
        }
        if (!$betalt_til[$x]) {
            $betalt_til[$x] = "2099-12-31";
        } else {
            $betalt_til[$x] = usdate($betalt_til[$x]);
        }
        if ($gl_brugerantal[$x] != $brugerantal[$x] || $gl_posteringer[$x] != $posteringer[$x] || $gl_lukket[$x] != $lukket[$x] || $gl_lukkes[$x] != $lukkes[$x] || $gl_betalt_til[$x] != $betalt_til[$x] || $gl_logintekst[$x] != $logintekst[$x]) {
            if ($saldiregnskab) {
                $modify = "update regnskab set brugerantal='{$brugerantal[$x]}',posteringer='{$posteringer[$x]}',lukket='{$lukket[$x]}',lukkes='{$lukkes[$x]}',betalt_til='{$betalt_til[$x]}',logintekst='{$logintekst[$x]}' where id = '{$id[$x]}'";
            } else {
                $modify = "update regnskab set\tbrugerantal='{$brugerantal[$x]}',posteringer='{$posteringer[$x]}',lukket='{$lukket[$x]}'where id = '{$id[$x]}'";
            }
            if ($id[$x]) {
                db_modify($modify, __FILE__ . " linje " . __LINE__);
            }
        }
    }
}
print "<table width=\"100%\" height=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tbody>";
print "<tr><td align=\"center\" valign=\"top\" height=\"25\">";
Example #4
0
$ny_beholdning[0] = if_isset($_GET['ny_beholdning']);
if (isset($_POST['cancel'])) {
    $id = if_isset($_POST['id']);
    print "<meta http-equiv=\"refresh\" content=\"0;URL=varekort.php?id={$id['0']}\">";
    exit;
}
if ($_POST['bilag'] || $_POST['bilag'] == '0') {
    $id = if_isset($_POST['id']);
    $ny_beholdning = if_isset($_POST['ny_beholdning']);
    $dato = if_isset($_POST['dato']);
    $bilag = if_isset($_POST['bilag']);
    if (!is_numeric($bilag) || strlen($bilag) > 9) {
        print "<BODY onLoad=\"javascript:alert('Bilagsnummer skal v&aelig;re et positivt tal og m&aring; maks indeholder 9 cifre')\">";
        $fejl = 1;
    }
    $transdate = usdate($dato);
    list($y, $m, $d) = explode("-", $transdate);
    $ym = $y . $m;
    if (checkdate($m, $d, $y)) {
        if ($ym < $aarstart || $ym > $aarslut) {
            print "<BODY onLoad=\"javascript:alert('Dato udenfor regnskabs&aring;r')\">";
            $fejl = 1;
        }
    } else {
        print "<BODY onLoad=\"javascript:alert('Dato skal v&aelig;re i formatet 'dd-mm-yyyy')\">";
        $fejl = 1;
    }
}
if ($antal >= 1) {
    $r = db_fetch_array(db_select("select * from grupper where kodenr='{$regnaar}' and art='RA'", __FILE__ . " linje " . __LINE__));
    $startaar = $r['box2'] * 1;
Example #5
0
function vis_aabne_poster($dato_fra, $dato_til, $konto_fra, $konto_til, $art)
{
    global $bgcolor;
    global $bgcolor5;
    print "<tr><td><table width=100% cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tbody>\n";
    print "<tr><td>Kontonr</td><td>Firmanavn</td><td align=right>>90</td><td align=right>60-90</td><td align=right>30-60</td><td align=right>8-30</td><td align=right>0-8</td><td align=right>I alt</td><tr>";
    $currentdate = date("Y-m-d");
    $fromdate = usdate($dato_fra);
    $todate = usdate($dato_til);
    # echo "SS $fromdate $todate KF $konto_fra<br>";
    /*
    	# Finder start og s**t paa regnskabsaar
    	for ($x=1; $x<=12; $x++) {
    		if ($maaned_fra==$md[$x]){$maaned_fra=$x;}
    		if ($maaned_til==$md[$x]){$maaned_til=$x;}
    	}
    
    	$query = db_select("select * from grupper where kodenr='$regnaar' and art='RA'",__FILE__ . " linje " . __LINE__);
    	$row = db_fetch_array($query);
    #	$regnaar=$row[kodenr];
    	$startmaaned=$row['box1']*1;
    	$startaar=$row['box2']*1;
    	$slutmaaned=$row['box3']*1;
    	$slutaar=$row['box4']*1;
    	$slutdato=31;
    
    	##
    
    	if ($maaned_fra) $startmaaned=$maaned_fra;
    	if ($maaned_til) $slutmaaned=$maaned_til;
    
    if (!is_numeric($startmaaned)) {
    	if (strstr($startmaaned," ")) list($tmp,$startmaaned)=explode(" ",$startmaaned);
    	if (!is_numeric($startmaaned)) list ($tmp,$startmaaned)=explode(" ",find_maaned_nr($startmaaned));
    }
    if (!is_numeric($slutmaaned)) {
    	if (strstr($slutmaaned," ")) list($tmp,$slutmaaned)=explode(" ",$slutmaaned);
    	if (!is_numeric($slutmaaned)) list ($tmp,$slutmaaned)=explode(" ",find_maaned_nr($slutmaaned));
    }
    
    	
    	while (!checkdate($slutmaaned,$slutdato,$slutaar))	{
    		$slutdato=$slutdato-1;
    		if ($slutdato<28) break;
    	}
    
    #	if ($slutmaaned<10){$slutmaaned="0".$slutmaaned;}
    
    
    $regnstart = $startaar. "-" . $startmaaned . "-" . '01';
    	$regnslut = $slutaar . "-" . $slutmaaned . "-" . $slutdato;
    */
    #$regnslut = "2005-05-04";
    print "<form name=aabenpost action=rapport.php method=post>";
    print "<tr><td colspan=10><hr></td></tr>\n";
    $x = 0;
    # echo "KF $konto_fra<br>";
    if (is_numeric($konto_fra) && is_numeric($konto_til)) {
        $tekst = "select * from adresser where " . nr_cast('kontonr') . ">='{$konto_fra}' and " . nr_cast('kontonr') . "<='{$konto_til}' and art = 'D' order by " . nr_cast('kontonr') . "";
    } elseif ($konto_fra && $konto_fra != '*') {
        $konto_fra = str_replace("*", "%", $konto_fra);
        $tmp1 = strtolower($konto_fra);
        $tmp2 = strtoupper($konto_fra);
        $tekst = "select * from adresser where (firmanavn like '{$konto_fra}' or lower(firmanavn) like '{$tmp1}' or upper(firmanavn) like '{$tmp2}') and art = 'D' order by firmanavn";
    } else {
        $tekst = "select * from adresser where art = '{$art}' order by firmanavn";
    }
    # echo "tekst $tekst<br>";
    $kontonr = array();
    $x = 0;
    $q = db_select("{$tekst}", __FILE__ . " linje " . __LINE__);
    #	if ($konto_fra && $konto_til) $tmp=nr_cast('kontonr').">='$konto_fra' and ".nr_cast('kontonr')."<='$konto_til' and ";
    #	elseif ($konto_fra) $tmp=nr_cast('kontonr').">='$konto_fra' and ";
    #	elseif ($konto_til) $tmp=nr_cast('kontonr')."<='$konto_til'and ";
    #	else $tmp="";
    #	$q = db_select("select * from adresser where $tmp art = '$art' order by firmanavn",__FILE__ . " linje " . __LINE__);
    while ($r = db_fetch_array($q)) {
        $x++;
        $konto_id[$x] = $r['id'];
        print "<input type=hidden name=konto_id[{$x}] value={$konto_id[$x]}>";
        $kontonr[$x] = trim($r['kontonr']);
        $firmanavn[$x] = stripslashes($r['firmanavn']);
        $addr1[$x] = stripslashes($r['addr1']);
        $addr2[$x] = stripslashes($r['addr2']);
        $postnr[$x] = trim($r['postnr']);
        $bynavn[$x] = stripslashes($r['bynavn']);
        $email[$x] = trim($r['email']);
        $betalingsbet[$x] = trim($r['betalingsbet']);
        $betalingsdage[$x] = trim($r['betalingsdage']);
    }
    $kontoantal = $x;
    $sum = 0;
    for ($x = 1; $x <= $kontoantal; $x++) {
        $amount = 0;
        $udlignet = 1;
        $rykkerbelob = 0;
        $forfalden = 0;
        $forfalden_plus8 = 0;
        $forfalden_plus30 = 0;
        $forfalden_plus60 = 0;
        $forfalden_plus90 = 0;
        $y = 0;
        $faktnr = array();
        $f = 0;
        if ($art == 'D') {
            $tmp = "";
        } else {
            $tmp = "desc";
        }
        #		if ($fromdate && $todate) $q=db_select("select * from openpost where transdate>='$fromdate' and transdate<='$todate' and konto_id='$konto_id[$x]'",__FILE__ . " linje " . __LINE__);
        #		elseif ($todate) $q=db_select("select * from openpost where transdate<='$todate' and konto_id='$konto_id[$x]'",__FILE__ . " linje " . __LINE__);
        #		else $q=db_select("select * from openpost where konto_id='$konto_id[$x]'",__FILE__ . " linje " . __LINE__);
        #		if ($fromdate && $todate) $tekst="select * from openpost where transdate>='$fromdate' and transdate<='$todate' and konto_id='$konto_id[$x]' order by faktnr,amount $tmp";
        if ($todate) {
            $tekst = "select * from openpost where transdate<='{$todate}' and konto_id='{$konto_id[$x]}' order by faktnr,amount {$tmp}";
        } else {
            $tekst = "select * from openpost where konto_id='{$konto_id[$x]}' order by faktnr,amount {$tmp}";
        }
        $q = db_select("{$tekst}", __FILE__ . " linje " . __LINE__);
        #		if ($regnaar) $q=db_select("select * from openpost where konto_id=$id[$x] and transdate <= '$regnslut' order by faktnr,amount $tmp",__FILE__ . " linje " . __LINE__);
        #		else $q=db_select("select * from openpost where konto_id=$id[$x] and udlignet!='1' order by faktnr,amount $tmp",__FILE__ . " linje " . __LINE__);
        while ($r = db_fetch_array($q)) {
            if ($r['udlignet'] != 1 || $r['transdate'] <= $todate && $r['udlign_date'] && $r['udlign_date'] > $todate) {
                if ($r['faktnr'] && !in_array($r['faktnr'], $faktnr)) {
                    $f++;
                    $faktnr[$f] = $r['faktnr'];
                    $forfaldsdag = $r['forfaldsdate'];
                } elseif (!$r['faktnr']) {
                    $forfaldsdag = $r['transdate'];
                }
                $oid = $r['id'];
                $transdate = $r['transdate'];
                if ($r['valuta']) {
                    $valuta = $r['valuta'];
                } else {
                    $valuta = 'DKK';
                }
                if ($r['valutakurs']) {
                    $valutakurs = $r['valutakurs'];
                } else {
                    $valutakurs = 100;
                }
                $udlignet = "0";
                $amount = $r['amount'];
                if ($amount > 0) {
                    $amount += 0.0001;
                } else {
                    $amount -= 0.0001;
                }
                if (!$forfaldsdag && $art == 'D' && $amount < 0) {
                    $forfaldsdag = $r['transdate'];
                } elseif (!$forfaldsdag && $art == 'K' && $amount > 0) {
                    $forfaldsdag = $r['transdate'];
                } elseif (!$forfaldsdag) {
                    $forfaldsdag = $r['forfaldsdate'];
                }
                if ($r['faktnr'] && !$r['kladde_id'] && ($amount > 0 || $amount < 0 && strstr($r['beskrivelse'], "Lev. fakt")) && $r['refnr'] > 1) {
                    #rettet 20090715
                    if ($r2 = db_fetch_array(db_select("select betalingsbet, betalingsdage from ordrer where id='{$r['refnr']}' and fakturanr = '{$r['faktnr']}'", __FILE__ . " linje " . __LINE__))) {
                        $betalingsbet[$x] = trim($r2['betalingsbet']);
                        $betalingsdage[$x] = trim($r2['betalingsdage']);
                        $tmp = usdate(forfaldsdag($transdate, $betalingsbet[$x], $betalingsdage[$x]));
                        if ($tmp != $forfaldsdag) {
                            $forfaldsdag = $tmp;
                            db_modify("update openpost set forfaldsdate = '{$forfaldsdag}' where id='{$oid}'", __FILE__ . " linje " . __LINE__);
                        }
                    }
                }
                #elseif ()
                $amount = $amount * $valutakurs / 100;
                if ($amount > 0) {
                    $amount = round($amount + 0.0001, 2);
                } else {
                    $amount = round($amount - 0.0001, 2);
                }
                ### nedenstående er indført grundet en fejl i 2.0.3 som skrev forkert forfaldsdato i openpost	og fjernet i 2.0.8.
                #				$tmp=usdate(forfaldsdag($transdate, $betalingsbet[$x], $betalingsdage[$x]));
                #				if ($tmp && !$forfaldsdag) db_modify("update openpost set forfaldsdate='$tmp' where id='$oid'",__FILE__ . " linje " . __LINE__);
                #				$forfaldsdag=$tmp;
                ################
                $fakt_utid = strtotime($transdate);
                $forf_utid = strtotime($forfaldsdag);
                $dage = round(($forf_utid - $fakt_utid) / 86400, 0);
                $forfaldsdag_plus8 = usdate(forfaldsdag($transdate, 'netto', $dage + 8));
                $forfaldsdag_plus30 = usdate(forfaldsdag($transdate, 'netto', $dage + 30));
                $forfaldsdag_plus60 = usdate(forfaldsdag($transdate, 'netto', $dage + 60));
                $forfaldsdag_plus90 = usdate(forfaldsdag($transdate, 'netto', $dage + 90));
                if ($forfaldsdag < $currentdate) {
                    $rykkerbelob = $rykkerbelob + $amount;
                }
                if ($forfaldsdag < $currentdate && $forfaldsdag_plus8 > $currentdate) {
                    $forfalden = $forfalden + $amount;
                }
                if ($forfaldsdag_plus8 <= $currentdate && $forfaldsdag_plus30 > $currentdate) {
                    $forfalden_plus8 = $forfalden_plus8 + $amount;
                }
                if ($forfaldsdag_plus30 <= $currentdate && $forfaldsdag_plus60 > $currentdate) {
                    $forfalden_plus30 = $forfalden_plus30 + $amount;
                }
                if ($forfaldsdag_plus60 <= $currentdate && $forfaldsdag_plus90 > $currentdate) {
                    $forfalden_plus60 = $forfalden_plus60 + $amount;
                }
                if ($forfaldsdag_plus90 <= $currentdate) {
                    $forfalden_plus90 = $forfalden_plus90 + $amount;
                }
                $y = $y + $amount;
            }
        }
        $y > 0 ? $y = round($y + 0.0001, 2) : ($y = round($y - 0.0001, 2));
        if ($y > 0.01 || $udlignet == "0") {
            if ($linjebg != $bgcolor) {
                $linjebg = $bgcolor;
                $color = '#000000';
            } elseif ($linjebg != $bgcolor5) {
                $linjebg = $bgcolor5;
                $color = '#000000';
            }
            $forfaldsum = $forfaldsum + $forfalden;
            $forfaldsum_plus8 = $forfaldsum_plus8 + $forfalden_plus8;
            $forfaldsum_plus30 = $forfaldsum_plus30 + $forfalden_plus30;
            $forfaldsum_plus60 = $forfaldsum_plus60 + $forfalden_plus60;
            $forfaldsum_plus90 = $forfaldsum_plus90 + $forfalden_plus90;
            $sum = $sum + $y;
            print "<tr bgcolor=\"{$linjebg}\">";
            if ($popup) {
                print "<td onClick=\"window.open('rapport.php?rapportart=kontokort&dato_fra={$dato_fra}&dato_til={$dato_til}&konto_fra={$kontonr[$x]}&konto_til={$kontonr[$x]}&submit=ok','kreditorrapport','{$jsvars}')\" onMouseOver=\"this.style.cursor = 'pointer'\"><a>";
            } else {
                print "<td><a href=rapport.php?rapportart=kontokort&kilde=openpost&kto_fra={$konto_fra}&kilde_kto_til={$konto_til}&dato_fra={$dato_fra}&dato_til={$dato_til}&konto_fra={$kontonr[$x]}&konto_til={$kontonr[$x]}&submit=ok>";
            }
            print "<span title='Klik for detaljer' style=\"text-decoration: underline;\">{$kontonr[$x]}</span></a></td>";
            print "<td>{$firmanavn[$x]}</td>";
            /*	
            	if ($forfalden_plus90 != 0) $color="rgb(255, 0, 0)";
            	else $color="rgb(0, 0, 0)";
            	$tmp=dkdecimal($forfalden_plus90);
            	print "<td align=right><span style='color: $color;'>$tmp</span></td>";
            	if ($forfalden_plus60 != 0) $color="rgb(255, 0, 0)";
            	else $color="rgb(0, 0, 0)";
            	$tmp=dkdecimal($forfalden_plus60);
            	print "<td align=right><span style='color: $color;'>$tmp</span></td>";
            	if ($forfalden_plus60 != 0) $color="rgb(255, 0, 0)";
            	else $color="rgb(0, 0, 0)";
            	$tmp=dkdecimal($forfalden_plus30);
            	print "<td align=right><span style='color: $color;'>$tmp</span></td>";
            	if ($forfalden_plus30 != 0) $color="rgb(255, 0, 0)";
            	else $color="rgb(0, 0, 0)";
            	$tmp=dkdecimal($forfalden_plus8);
            	print "<td align=right><span style='color: $color;'>$tmp</span></td>";
            	if ($forfalden != 0) $color="rgb(255, 0, 0)";
            	else $color="rgb(0, 0, 0)";
            	$tmp=dkdecimal($forfalden);
            */
            if ($art == 'D' && $forfalden_plus90 > 0 || $art == 'K' && $forfalden_plus90 < 0) {
                $color = "rgb(255, 0, 0)";
            } else {
                $color = "rgb(0, 0, 0)";
            }
            $tmp = dkdecimal($forfalden_plus90);
            print "<td align=right><span style='color: {$color};'>{$tmp}</span></td>";
            if ($art == 'D' && $forfalden_plus60 > 0 || $art == 'K' && $forfalden_plus60 < 0) {
                $color = "rgb(255, 0, 0)";
            } else {
                $color = "rgb(0, 0, 0)";
            }
            $tmp = dkdecimal($forfalden_plus60);
            print "<td align=right><span style='color: {$color};'>{$tmp}</span></td>";
            if ($art == 'D' && $forfalden_plus30 > 0 || $art == 'K' && $forfalden_plus30 < 0) {
                $color = "rgb(255, 0, 0)";
            } else {
                $color = "rgb(0, 0, 0)";
            }
            $tmp = dkdecimal($forfalden_plus30);
            print "<td align=right><span style='color: {$color};'>{$tmp}</span></td>";
            if ($art == 'D' && $forfalden_plus8 > 0 || $art == 'K' && $forfalden_plus8 < 0) {
                $color = "rgb(255, 0, 0)";
            } else {
                $color = "rgb(0, 0, 0)";
            }
            $tmp = dkdecimal($forfalden_plus8);
            print "<td align=right><span style='color: {$color};'>{$tmp}</span></td>";
            if ($art == 'D' && $forfalden > 0 || $art == 'K' && $forfalden < 0) {
                $color = "rgb(255, 0, 0)";
            } else {
                $color = "rgb(0, 0, 0)";
            }
            $tmp = dkdecimal($forfalden);
            print "<td align=right><span style='color: {$color};'>{$tmp}</span></td>";
            $tmp = dkdecimal($y);
            if (abs($y) < 0.01) {
                print "<td align=right title=\"Klik her for at udligne &aring;bne poster\"><a href=\"rapport.php?submit=ok&rapportart=openpost&dato_fra={$dato_fra}&dato_til={$dato_til}&konto_fra={$konto_fra}&konto_til={$konto_til}&udlign={$konto_id[$x]}\">{$tmp}</a></td>";
            } else {
                print "<td align=right>{$tmp}</td>";
            }
            if ($kontoudtog[$x] == 'on' && $art == "D") {
                print "<td align=center><input type=checkbox name=kontoudtog[{$x}] checked>";
            } elseif ($art == "D") {
                print "<td align=center><input type=checkbox name=kontoudtog[{$x}]>";
            }
            print "</tr>\n";
        }
        print "<input type=hidden name=rykkerbelob[{$x}] value={$rykkerbelob}>";
    }
    print "<tr><td colspan=10><hr></td></tr>\n";
    print "<tr><td><br></td><td>I alt</td>";
    if ($forfaldsum_plus90 != 0) {
        $color = "rgb(255, 0, 0)";
    } else {
        $color = "rgb(0, 0, 0)";
    }
    $tmp = dkdecimal($forfaldsum_plus90);
    print "<td align=right><span style='color: {$color};'>{$tmp}</span></td>";
    if ($forfaldsum_plus60 != 0) {
        $color = "rgb(255, 0, 0)";
    } else {
        $color = "rgb(0, 0, 0)";
    }
    $tmp = dkdecimal($forfaldsum_plus60);
    print "<td align=right><span style='color: {$color};'>{$tmp}</span></td>";
    if ($forfaldsum_plus60 != 0) {
        $color = "rgb(255, 0, 0)";
    } else {
        $color = "rgb(0, 0, 0)";
    }
    $tmp = dkdecimal($forfaldsum_plus30);
    print "<td align=right><span style='color: {$color};'>{$tmp}</span></td>";
    if ($forfaldsum_plus30 != 0) {
        $color = "rgb(255, 0, 0)";
    } else {
        $color = "rgb(0, 0, 0)";
    }
    $tmp = dkdecimal($forfaldsum_plus8);
    print "<td align=right><span style='color: {$color};'>{$tmp}</span></td>";
    if ($forfaldsum != 0) {
        $color = "rgb(255, 0, 0)";
    } else {
        $color = "rgb(0, 0, 0)";
    }
    $tmp = dkdecimal($forfaldsum);
    print "<td align=right><span style='color: {$color};'>{$tmp}</span></td>";
    $color = "rgb(0, 0, 0)";
    $tmp = dkdecimal($sum);
    print "<td align=right><span style='color: {$color};'>{$tmp}</span></td>";
    print "<input type=hidden name=rapportart value=\"openpost\">";
    print "<input type=hidden name=regnaar value={$regnaar}>";
    print "<input type=hidden name=dato_fra value={$dato_fra}>";
    print "<input type=hidden name=dato_til value={$dato_til}>";
    print "<input type=hidden name=konto_fra value={$konto_fra}>";
    print "<input type=hidden name=konto_til value={$konto_til}>";
    print "<input type=hidden name=kontoantal value={$kontoantal}>";
    if ($art == 'D') {
        print "<tr><td colspan=10 align=center><span title=\"Klik her for at maile kontoudtog til de modtagere som er afm&aelig;rket herover\"><input type=submit value=\"Mail kontoudtog\" name=\"submit\"></span>&nbsp;\n\t\t<span title='Klik her for at oprette rykker til de som er afm&aelig;rkede herover'><input type=submit value=\"Opret rykker\" name=\"submit\"></span>&nbsp;\n\t\t<span onmouseover=\"return overlib('" . findtekst(242, $sprog_id) . "', WIDTH=800);\" onmouseout=\"return nd();\"><input type=submit value=\"Ryk alle\" name=\"submit\"></span></td></tr>\n";
    }
    print "</form>\n";
    print "<tr><td colspan=10><hr></td></tr>\n";
    print "</tbody></table>";
}
Example #6
0
function oioubldoc_faktura($l_ordreid = "", $l_doktype = "faktura", $l_testdoc = "")
{
    global $db_encode;
    include "../includes/forfaldsdag.php";
    if ($l_testdoc) {
        $l_testdoc = "TEST";
    }
    if (!$l_ordreid) {
        return "";
    }
    if (strtolower($l_doktype) == "faktura") {
        # Faktura
        $l_doctype = "Invoice";
        $l2_doctype = "Invoiced";
        $l_ptype = "PIE";
    } else {
        # Kreditnota
        $l_doctype = "CreditNote";
        $l2_doctype = "Credited";
        $l_ptype = "PCM";
    }
    #	$l_doctype = "Invoice"; # Ogsaa selvom det er en kreditnota
    #	$l_retur=oioubl_top($l_doctype, $l_ptype, $l_testdoc, $l_ordreid);
    $query = db_select("select * from ordrer where id = {$l_ordreid}", __FILE__ . " linje " . __LINE__);
    $r_faktura = db_fetch_array($query);
    if ($db_encode != "UTF8") {
        $firmanavn = utf8_encode($r_faktura['firmanavn']);
        $addr_1 = utf8_encode($r_faktura['addr1']);
        $addr_2 = utf8_encode($r_faktura['addr2']);
        $postnr = utf8_encode($r_faktura['postnr']);
        $bynavn = utf8_encode($r_faktura['bynavn']);
        $land = utf8_encode($r_faktura['land']);
        $kontakt = utf8_encode($r_faktura['kontakt']);
        $bank_navn = utf8_encode($r_faktura['bank_navn']);
        $kundeordnr = utf8_encode($r_faktura['kundeordnr']);
        $cvrnr = utf8_encode($r_faktura['cvrnr']);
        $tlf = utf8_encode($r_faktura['tlf']);
        $email = utf8_encode($r_faktura['email']);
        $kontonr = utf8_encode($r_faktura['kontonr']);
    } else {
        $firmanavn = $r_faktura['firmanavn'];
        $addr_1 = $r_faktura['addr1'];
        $addr_2 = $r_faktura['addr2'];
        $postnr = $r_faktura['postnr'];
        $bynavn = $r_faktura['bynavn'];
        $land = $r_faktura['land'];
        $kontakt = $r_faktura['kontakt'];
        $bank_navn = $r_faktura['bank_navn'];
        $kundeordnr = $r_faktura['kundeordnr'];
        $cvrnr = $r_faktura['cvrnr'];
        $tlf = $r_faktura['tlf'];
        $email = $r_faktura['email'];
        $kontonr = $r_faktura['kontonr'];
    }
    $firmanavn = htmlspecialchars($firmanavn, ENT_QUOTES);
    $addr_1 = htmlspecialchars($addr_1, ENT_QUOTES);
    $addr_2 = htmlspecialchars($addr_2, ENT_QUOTES);
    $postnr = htmlspecialchars($postnr, ENT_QUOTES);
    $bynavn = htmlspecialchars($bynavn, ENT_QUOTES);
    $land = htmlspecialchars($land, ENT_QUOTES);
    $kontakt = htmlspecialchars($kontakt, ENT_QUOTES);
    $bank_navn = htmlspecialchars($bank_navn, ENT_QUOTES);
    $kundeordnr = htmlspecialchars($kundeordnr, ENT_QUOTES);
    $cvrnr = htmlspecialchars(str_replace(" ", "", $cvrnr), ENT_QUOTES);
    $tlf = htmlspecialchars($tlf, ENT_QUOTES);
    $email = htmlspecialchars($email, ENT_QUOTES);
    if (!$kundeordnr) {
        $kundeordnr = '0';
    }
    # phr 20090803
    while (strlen($cvrnr) < 8) {
        $cvrnr = "0" . $cvrnr;
    }
    $l_momsbeloeb = afrund(abs($r_faktura['moms']), 2);
    $l_momssats = $r_faktura['momssats'] * 1;
    $l_sumbeloeb = afrund(abs($r_faktura['sum']), 2);
    $l_momspligtigt = 100 * $l_momsbeloeb / $l_momssats;
    $l_momsfrit = $l_sumbeloeb - $l_momspligtigt;
    if ($l_momsfrit < 0.02) {
        #20150618
        $l_momsfrit = 0;
        $l_momspligtigt = $l_sumbeloeb;
    }
    $l_forfaldsdate = usdate(forfaldsdag($r_faktura['fakturadate'], $r_faktura['betalingsbet'], $r_faktura['betalingsdage']));
    #	$l_retur.="\t<com:ID>".$r_faktura['fakturanr']."</com:ID>\n";
    #	$l_retur.="\t<com:IssueDate>".$r_faktura['fakturadate']."</com:IssueDate>\n";
    #	$l_retur.="\t<com:TypeCode>".$l_ptype."</com:TypeCode>\n";
    if ($r_faktura['valuta']) {
        $l_valutakode = $r_faktura['valuta'];
        $l_valutakurs = $r_faktura['valutakurs'];
    } else {
        $l_valutakode = "DKK";
    }
    if ($r_faktura['valutakurs']) {
        $l_valutakurs = $r_faktura['valutakurs'];
    } else {
        $l_valutakurs = 100;
    }
    $query = db_select("select * from adresser where art='S'", __FILE__ . " linje " . __LINE__);
    $r_egen = db_fetch_array($query);
    if ($db_encode != "UTF8") {
        $egen_firmanavn = utf8_encode($r_egen['firmanavn']);
        $egen_addr_1 = utf8_encode($r_egen['addr1']);
        $egen_addr_2 = utf8_encode($r_egen['addr2']);
        $egen_postnr = utf8_encode($r_egen['postnr']);
        $egen_bynavn = utf8_encode($r_egen['bynavn']);
        $egen_land = utf8_encode($r_egen['land']);
        $egen_kontakt = utf8_encode($r_egen['kontakt']);
        $egen_bank_navn = utf8_encode($r_egen['bank_navn']);
        $egen_tlf = utf8_encode($r_egen['tlf']);
    } else {
        $egen_firmanavn = $r_egen['firmanavn'];
        $egen_addr_1 = $r_egen['addr1'];
        $egen_addr_2 = $r_egen['addr2'];
        $egen_postnr = $r_egen['postnr'];
        $egen_bynavn = $r_egen['bynavn'];
        $egen_land = $r_egen['land'];
        $egen_kontakt = $r_egen['kontakt'];
        $egen_bank_navn = $r_egen['bank_navn'];
        $egen_tlf = $r_egen['tlf'];
    }
    $egen_firmanavn = htmlspecialchars($egen_firmanavn, ENT_QUOTES);
    $egen_addr_1 = htmlspecialchars($egen_addr_1, ENT_QUOTES);
    $egen_addr_2 = htmlspecialchars($egen_addr_2, ENT_QUOTES);
    $egen_postnr = htmlspecialchars($egen_postnr, ENT_QUOTES);
    $egen_bynavn = htmlspecialchars($egen_bynavn, ENT_QUOTES);
    $egen_land = htmlspecialchars($egen_land, ENT_QUOTES);
    $egen_kontakt = htmlspecialchars($egen_kontakt, ENT_QUOTES);
    $egen_bank_navn = htmlspecialchars($egen_bank_navn, ENT_QUOTES);
    $egen_tlf = htmlspecialchars($egen_tlf, ENT_QUOTES);
    $egen_cvrnr = str_replace(" ", "", $r_egen['cvrnr']);
    $l_retur .= "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
    $l_retur .= "<" . $l_doctype . " xsi:schemaLocation=\"urn:oasis:names:specification:ubl:schema:xsd:" . $l_doctype . "-2 UBL-" . $l_doctype . "-2.0.xsd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"urn:oasis:names:specification:ubl:schema:xsd:" . $l_doctype . "-2\" xmlns:cac=\"urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2\" xmlns:cbc=\"urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2\" xmlns:ccts=\"urn:oasis:names:specification:ubl:schema:xsd:CoreComponentParameters-2\" xmlns:sdt=\"urn:oasis:names:specification:ubl:schema:xsd:SpecializedDatatypes-2\" xmlns:udt=\"urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2\">\n";
    $l_retur .= "<cbc:UBLVersionID>2.0</cbc:UBLVersionID>\n";
    $l_retur .= "<cbc:CustomizationID>OIOUBL-2.01</cbc:CustomizationID>\n";
    #	$l_retur.="<cbc:ProfileID schemeAgencyID=\"320\" schemeID=\"urn:oioubl:id:profileid-1.1\">Procurement-BilSim-1.0</cbc:ProfileID>\n"; 20210725
    $l_retur .= "<cbc:ProfileID schemeAgencyID=\"320\" schemeID=\"urn:oioubl:id:profileid-1.2\">urn:www.nesubl.eu:profiles:profile5:ver2.0</cbc:ProfileID>\n";
    $l_retur .= "<cbc:ID>" . $r_faktura['fakturanr'] . "</cbc:ID>\n";
    $l_retur .= "<cbc:CopyIndicator>false</cbc:CopyIndicator>\n";
    $l_retur .= "<cbc:IssueDate>" . $r_faktura['fakturadate'] . "</cbc:IssueDate>\n";
    #20160208
    if ($l_doctype == "Invoice") {
        $l_retur .= "<cbc:" . $l_doctype . "TypeCode listAgencyID=\"320\" listID=\"urn:oioubl:codelist:invoicetypecode-1.1\">380</cbc:" . $l_doctype . "TypeCode>\n";
    }
    #	$l_retur.="<cbc:Note>".$l_doctype." note</cbc:Note>\n";
    $l_retur .= "<cbc:DocumentCurrencyCode>{$l_valutakode}</cbc:DocumentCurrencyCode>\n";
    $l_retur .= "<cbc:AccountingCost>{$kontonr}</cbc:AccountingCost>\n";
    $l_retur .= "<cac:OrderReference>\n";
    $l_retur .= "<cbc:ID>{$kundeordnr}</cbc:ID>\n";
    $l_retur .= "<cbc:SalesOrderID>{$l_ordreid}</cbc:SalesOrderID>\n";
    $l_retur .= "<cbc:IssueDate>" . $r_faktura['ordredate'] . "</cbc:IssueDate>\n";
    $l_retur .= "</cac:OrderReference>\n";
    $l_retur .= "<cac:AccountingSupplierParty>\n";
    $l_retur .= "<cac:Party>\n";
    $l_retur .= "<cbc:EndpointID schemeID=\"DK:CVR\">DK" . $egen_cvrnr . "</cbc:EndpointID>\n";
    $l_retur .= "<cac:PartyIdentification>\n";
    $l_retur .= "<cbc:ID schemeID=\"DK:CVR\">DK" . $egen_cvrnr . "</cbc:ID>\n";
    $l_retur .= "</cac:PartyIdentification>\n";
    $l_retur .= "<cac:PartyName>\n";
    $l_retur .= "<cbc:Name>" . $egen_firmanavn . "</cbc:Name>\n";
    $l_retur .= "</cac:PartyName>\n";
    $l_retur .= "<cac:PostalAddress>\n";
    $l_retur .= "<cbc:AddressFormatCode listAgencyID=\"320\" listID=\"urn:oioubl:codelist:addressformatcode-1.1\">StructuredDK</cbc:AddressFormatCode>\n";
    $l_retur .= "<cbc:StreetName>" . oioubl_vej($egen_addr_1, "vejnavn") . "</cbc:StreetName>\n";
    $l_retur .= "<cbc:BuildingNumber>" . oioubl_vej($egen_addr_1, "husnummer") . "</cbc:BuildingNumber>\n";
    $l_retur .= "<cbc:CityName>" . $egen_bynavn . "</cbc:CityName>\n";
    $l_retur .= "<cbc:PostalZone>" . $egen_postnr . "</cbc:PostalZone>\n";
    $l_retur .= "<cac:Country>\n";
    $l_retur .= "<cbc:IdentificationCode>" . oioubl_landekode($egen_land) . "</cbc:IdentificationCode>\n";
    $l_retur .= "</cac:Country>\n";
    $l_retur .= "</cac:PostalAddress>\n";
    $l_retur .= "<cac:PartyTaxScheme>\n";
    $l_retur .= "<cbc:CompanyID schemeID=\"DK:SE\">DK" . $egen_cvrnr . "</cbc:CompanyID>\n";
    $l_retur .= "<cac:TaxScheme>\n";
    $l_retur .= "<cbc:ID schemeAgencyID=\"320\" schemeID=\"urn:oioubl:id:taxschemeid-1.1\">63</cbc:ID>\n";
    $l_retur .= "<cbc:Name>Moms</cbc:Name>\n";
    $l_retur .= "</cac:TaxScheme>\n";
    $l_retur .= "</cac:PartyTaxScheme>\n";
    $l_retur .= "<cac:PartyLegalEntity>\n";
    $l_retur .= "<cbc:RegistrationName>" . $egen_firmanavn . "</cbc:RegistrationName>\n";
    $l_retur .= "<cbc:CompanyID schemeID=\"DK:CVR\">DK" . $egen_cvrnr . "</cbc:CompanyID>\n";
    $l_retur .= "</cac:PartyLegalEntity>\n";
    $l_retur .= "</cac:Party>\n";
    $l_retur .= "</cac:AccountingSupplierParty>\n";
    $l_retur .= "<cac:AccountingCustomerParty>\n";
    $l_retur .= "<cac:Party>\n";
    $l_retur .= "<cbc:EndpointID schemeAgencyID=\"9\" schemeID=\"GLN\">" . $r_faktura['ean'] . "</cbc:EndpointID>\n";
    $l_retur .= "<cac:PartyIdentification>\n";
    $l_retur .= "<cbc:ID schemeID=\"DK:CVR\">DK" . $cvrnr . "</cbc:ID>\n";
    $l_retur .= "</cac:PartyIdentification>\n";
    $l_retur .= "<cac:PartyName>\n";
    $l_retur .= "<cbc:Name>" . $firmanavn . "</cbc:Name>\n";
    $l_retur .= "</cac:PartyName>\n";
    $l_retur .= "<cac:PostalAddress>\n";
    $l_retur .= "<cbc:AddressFormatCode listAgencyID=\"320\" listID=\"urn:oioubl:codelist:addressformatcode-1.1\">StructuredDK</cbc:AddressFormatCode>\n";
    if (oioubl_vej($addr_1, "vejnavn")) {
        $l_retur .= "<cbc:StreetName>" . oioubl_vej($addr_1, "vejnavn") . "</cbc:StreetName>\n";
    } elseif (oioubl_vej($addr_2, "vejnavn")) {
        $l_retur .= "<cbc:StreetName>" . oioubl_vej($addr_2, "vejnavn") . "</cbc:StreetName>\n";
    } else {
        $l_retur .= "<cbc:StreetName>?</cbc:StreetName>\n";
    }
    if (oioubl_vej($addr_1, "husnummer")) {
        $l_retur .= "<cbc:BuildingNumber>" . oioubl_vej($addr_1, "husnummer") . "</cbc:BuildingNumber>\n";
    } elseif (!oioubl_vej($addr_1, "husnummer") && oioubl_vej($addr_2, "husnummer")) {
        $l_retur .= "<cbc:BuildingNumber>" . oioubl_vej($addr_2, "husnummer") . "</cbc:BuildingNumber>\n";
    } else {
        $l_retur .= "<cbc:BuildingNumber>0</cbc:BuildingNumber>\n";
    }
    $l_retur .= "<cbc:CityName>" . $bynavn . "</cbc:CityName>\n";
    $l_retur .= "<cbc:PostalZone>" . $postnr . "</cbc:PostalZone>\n";
    $l_retur .= "<cac:Country>\n";
    $l_retur .= "<cbc:IdentificationCode>" . oioubl_landekode($land) . "</cbc:IdentificationCode>\n";
    $l_retur .= "</cac:Country>\n";
    $l_retur .= "</cac:PostalAddress>\n";
    $l_retur .= "<cac:PartyLegalEntity>\n";
    $l_retur .= "<cbc:RegistrationName>" . $firmanavn . "</cbc:RegistrationName>\n";
    $l_retur .= "<cbc:CompanyID schemeID=\"DK:CVR\">DK" . $cvrnr . "</cbc:CompanyID>\n";
    $l_retur .= "</cac:PartyLegalEntity>\n";
    $l_retur .= "<cac:Contact>\n";
    $l_retur .= oioubl_kontaktinfo($kontakt, "BuyerContact");
    #	$l_retur.="<cbc:Telephone>".$tlf."</cbc:Telephone>\n";
    #	$l_retur.="<cbc:ElectronicMail>".$email."</cbc:ElectronicMail>\n";
    $l_retur .= "</cac:Contact>\n";
    $l_retur .= "</cac:Party>\n";
    $l_retur .= "</cac:AccountingCustomerParty>\n";
    if ($l_doctype == "Invoice") {
        $l_retur .= "<cac:Delivery>\n";
        $l_retur .= "<cbc:ActualDeliveryDate>" . $r_faktura['ordredate'] . "</cbc:ActualDeliveryDate>\n";
        $l_retur .= "</cac:Delivery>\n";
        $l_retur .= "<cac:PaymentMeans>\n";
        $l_retur .= "<cbc:ID>1</cbc:ID>\n";
        $l_retur .= "<cbc:PaymentMeansCode>42</cbc:PaymentMeansCode>\n";
        $l_retur .= "<cbc:PaymentDueDate>{$l_forfaldsdate}</cbc:PaymentDueDate>\n";
        $l_retur .= "<cbc:PaymentChannelCode listAgencyID=\"320\" listID=\"urn:oioubl:codelist:paymentchannelcode-1.1\">DK:BANK</cbc:PaymentChannelCode>\n";
        $l_retur .= "<cac:PayeeFinancialAccount>\n";
        $l_retur .= "<cbc:ID>" . str_replace(" ", "", $r_egen['bank_konto']) . "</cbc:ID>\n";
        $l_retur .= "<cac:FinancialInstitutionBranch>\n";
        $l_retur .= "<cbc:ID>" . $r_egen['bank_reg'] . "</cbc:ID>\n";
        $l_retur .= "</cac:FinancialInstitutionBranch>\n";
        $l_retur .= "</cac:PayeeFinancialAccount>\n";
        $l_retur .= "</cac:PaymentMeans>\n";
        $l_retur .= "<cac:PaymentTerms>\n";
        $l_retur .= "<cbc:ID>1</cbc:ID>\n";
        $l_retur .= "<cbc:PaymentMeansID>1</cbc:PaymentMeansID>\n";
        $l_retur .= "<cbc:Amount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_sumbeloeb + $l_momsbeloeb) . "</cbc:Amount>\n";
        $l_retur .= "</cac:PaymentTerms>\n";
    }
    $l_retur .= "<cac:TaxTotal>\n";
    $l_retur .= "<cbc:TaxAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_momsbeloeb) . "</cbc:TaxAmount>\n";
    $l_retur .= "<cac:TaxSubtotal>\n";
    $l_retur .= "<cbc:TaxableAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_momspligtigt) . "</cbc:TaxableAmount>\n";
    $l_retur .= "<cbc:TaxAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_momsbeloeb) . "</cbc:TaxAmount>\n";
    $l_retur .= "<cac:TaxCategory>\n";
    $l_retur .= "<cbc:ID schemeAgencyID=\"320\" schemeID=\"urn:oioubl:id:taxcategoryid-1.1\">StandardRated</cbc:ID>\n";
    $l_retur .= "<cbc:Percent>" . $l_momssats . "</cbc:Percent>\n";
    $l_retur .= "<cac:TaxScheme>\n";
    $l_retur .= "<cbc:ID schemeAgencyID=\"320\" schemeID=\"urn:oioubl:id:taxschemeid-1.1\">63</cbc:ID>\n";
    $l_retur .= "<cbc:Name>Moms</cbc:Name>\n";
    $l_retur .= "</cac:TaxScheme>\n";
    $l_retur .= "</cac:TaxCategory>\n";
    $l_retur .= "</cac:TaxSubtotal>\n";
    $l_retur .= "</cac:TaxTotal>\n";
    $l_retur .= "<cac:LegalMonetaryTotal>\n";
    $l_retur .= "<cbc:LineExtensionAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_sumbeloeb) . "</cbc:LineExtensionAmount>\n";
    $l_retur .= "<cbc:TaxExclusiveAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_momsbeloeb) . "</cbc:TaxExclusiveAmount>\n";
    $l_retur .= "<cbc:TaxInclusiveAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_sumbeloeb + $l_momsbeloeb) . "</cbc:TaxInclusiveAmount>\n";
    $l_retur .= "<cbc:PayableAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_sumbeloeb + $l_momsbeloeb) . "</cbc:PayableAmount>\n";
    $l_retur .= "</cac:LegalMonetaryTotal>\n";
    # Ordrelinjer
    $tjeksum = 0;
    $posnr = 0;
    #20150922
    $query = db_select("select * from ordrelinjer where ordre_id = {$l_ordreid} order by posnr", __FILE__ . " linje " . __LINE__);
    while ($r_linje = db_fetch_array($query)) {
        $posnr++;
        #20150922
        if ($db_encode != "UTF8") {
            $varenr = utf8_encode($r_linje['varenr']);
            $enhed = utf8_encode($r_linje['enhed']);
            $beskrivelse = utf8_encode($r_linje['beskrivelse']);
        } else {
            $varenr = $r_linje['varenr'];
            $enhed = $r_linje['enhed'];
            $beskrivelse = $r_linje['beskrivelse'];
        }
        if (!$beskrivelse) {
            $beskrivelse = ".";
        }
        $varenr = htmlspecialchars($varenr, ENT_QUOTES);
        $enhed = htmlspecialchars($enhed, ENT_QUOTES);
        $beskrivelse = htmlspecialchars($beskrivelse, ENT_QUOTES);
        $pris = $r_linje['pris'] * 1;
        $antal = $r_linje['antal'];
        if (!$antal) {
            #20150922
            $pris = 0;
            $antal = 1;
        }
        $momsfri = $r_linje['momsfri'];
        $varemomssats = $r_linje['momssats'] * 1;
        if (!$momsfri && !$varemomssats) {
            $varemomssats = $l_momssats;
        }
        if ($varemomssats > $l_momssats) {
            $varemomssats = $l_momssats;
        }
        if (!$varenr) {
            $varenr = '.';
        }
        #phr 20080803 + 20150922
        if ($r_linje['procent']) {
            $pris *= $r_linje['procent'] / 100;
        }
        #20150525
        $pris = $pris - $r_linje['rabat'] * $pris / 100;
        #20140206 + næste 2 linjer
        $linjepris = afrund($r_linje['antal'] * $pris, 2);
        $pris = afrund($pris, 2);
        $linjemoms = afrund($linjepris / 100 * $varemomssats, 2);
        if ($l_ptype == "PCM") {
            $l_fortegn = -1;
            $tjeksum -= $linjepris;
            #20150825
        } else {
            $l_fortegn = 1;
            $tjeksum += $linjepris;
        }
        $l_retur .= "<cac:" . $l_doctype . "Line>\n";
        $l_retur .= "<cbc:ID>" . $posnr . "</cbc:ID>\n";
        $l_retur .= "<cbc:" . $l2_doctype . "Quantity unitCode=\"" . oioubl_enhed($enhed) . "\">" . $l_fortegn * $antal . "</cbc:" . $l2_doctype . "Quantity>\n";
        $l_retur .= "<cbc:LineExtensionAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_fortegn * $linjepris) . "</cbc:LineExtensionAmount>\n";
        $l_retur .= "<cac:TaxTotal>\n";
        $l_retur .= "<cbc:TaxAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_fortegn * $linjemoms) . "</cbc:TaxAmount>\n";
        #20150825
        $l_retur .= "<cac:TaxSubtotal>\n";
        $l_retur .= "<cbc:TaxableAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_fortegn * $linjepris) . "</cbc:TaxableAmount>\n";
        $l_retur .= "<cbc:TaxAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_fortegn * $linjemoms) . "</cbc:TaxAmount>\n";
        $l_retur .= "<cac:TaxCategory>\n";
        if ($momsfri) {
            $l_retur .= "<cbc:ID schemeAgencyID=\"320\" schemeID=\"urn:oioubl:id:taxcategoryid-1.1\">ZeroRated</cbc:ID>\n";
        } else {
            $l_retur .= "<cbc:ID schemeAgencyID=\"320\" schemeID=\"urn:oioubl:id:taxcategoryid-1.1\">StandardRated</cbc:ID>\n";
        }
        $l_retur .= "<cbc:Percent>" . $varemomssats . "</cbc:Percent>\n";
        $l_retur .= "<cac:TaxScheme>\n";
        $l_retur .= "<cbc:ID schemeAgencyID=\"320\" schemeID=\"urn:oioubl:id:taxschemeid-1.1\">63</cbc:ID>\n";
        $l_retur .= "<cbc:Name>Moms</cbc:Name>\n";
        $l_retur .= "</cac:TaxScheme>\n";
        $l_retur .= "</cac:TaxCategory>\n";
        $l_retur .= "</cac:TaxSubtotal>\n";
        $l_retur .= "</cac:TaxTotal>\n";
        $l_retur .= "<cac:Item>\n";
        $l_retur .= "<cbc:Description>" . $beskrivelse . "</cbc:Description>\n";
        $tmp = substr(utf8_decode($beskrivelse), 0, 40);
        $tmp = utf8_encode($tmp);
        $l_retur .= "<cbc:Name>" . $tmp . "</cbc:Name>\n";
        #		$l_retur.="<cbc:Name>".substr($beskrivelse,0,15)."</cbc:Name>\n";
        $l_retur .= "<cac:SellersItemIdentification>\n";
        $l_retur .= "<cbc:ID>" . $varenr . "</cbc:ID>\n";
        $l_retur .= "</cac:SellersItemIdentification>\n";
        $l_retur .= "</cac:Item>\n";
        $l_retur .= "<cac:Price>\n";
        $l_retur .= "<cbc:PriceAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $pris) . "</cbc:PriceAmount>\n";
        # 20120515
        $l_retur .= "<cbc:BaseQuantity unitCode=\"ANN\">1</cbc:BaseQuantity>\n";
        $l_retur .= "<cbc:OrderableUnitFactorRate>1</cbc:OrderableUnitFactorRate>\n";
        $l_retur .= "</cac:Price>\n";
        $l_retur .= "</cac:" . $l_doctype . "Line>\n";
    }
    if ($tjeksum != $l_sumbeloeb) {
        echo "{$tjeksum}!={$l_sumbeloeb}";
        $l_retur .= "<cac:" . $l_doctype . "Line>\n";
        $tmp = $posnr + 1;
        $l_retur .= "<cbc:ID>" . $tmp . "</cbc:ID>\n";
        $l_retur .= "<cbc:" . $l2_doctype . "Quantity unitCode=\"" . oioubl_enhed($enhed) . "\">1</cbc:" . $l2_doctype . "Quantity>\n";
        $l_retur .= "<cbc:LineExtensionAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_sumbeloeb - $tjeksum) . "</cbc:LineExtensionAmount>\n";
        $l_retur .= "<cac:TaxTotal>\n";
        $l_retur .= "<cbc:TaxAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", 0) . "</cbc:TaxAmount>\n";
        $l_retur .= "<cac:TaxSubtotal>\n";
        $l_retur .= "<cbc:TaxableAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_sumbeloeb - $tjeksum) . "</cbc:TaxableAmount>\n";
        $l_retur .= "<cbc:TaxAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", 0) . "</cbc:TaxAmount>\n";
        $l_retur .= "<cac:TaxCategory>\n";
        if ($momsfri) {
            $l_retur .= "<cbc:ID schemeAgencyID=\"320\" schemeID=\"urn:oioubl:id:taxcategoryid-1.1\">ZeroRated</cbc:ID>\n";
        } else {
            $l_retur .= "<cbc:ID schemeAgencyID=\"320\" schemeID=\"urn:oioubl:id:taxcategoryid-1.1\">StandardRated</cbc:ID>\n";
        }
        $l_retur .= "<cbc:Percent>" . $varemomssats . "</cbc:Percent>\n";
        $l_retur .= "<cac:TaxScheme>\n";
        $l_retur .= "<cbc:ID schemeAgencyID=\"320\" schemeID=\"urn:oioubl:id:taxschemeid-1.1\">63</cbc:ID>\n";
        $l_retur .= "<cbc:Name>Moms</cbc:Name>\n";
        $l_retur .= "</cac:TaxScheme>\n";
        $l_retur .= "</cac:TaxCategory>\n";
        $l_retur .= "</cac:TaxSubtotal>\n";
        $l_retur .= "</cac:TaxTotal>\n";
        $l_retur .= "<cac:Item>\n";
        $l_retur .= "<cbc:Description>Afrunding</cbc:Description>\n";
        #		$tmp=substr(utf8_decode($beskrivelse),0,40);
        #		$tmp=utf8_encode($tmp);
        $l_retur .= "<cbc:Name>Afrunding</cbc:Name>\n";
        #		$l_retur.="<cbc:Name>".substr($beskrivelse,0,15)."</cbc:Name>\n";
        $l_retur .= "<cac:SellersItemIdentification>\n";
        $l_retur .= "<cbc:ID>0</cbc:ID>\n";
        $l_retur .= "</cac:SellersItemIdentification>\n";
        $l_retur .= "</cac:Item>\n";
        $l_retur .= "<cac:Price>\n";
        $l_retur .= "<cbc:PriceAmount currencyID=\"{$l_valutakode}\">" . sprintf("%01.2f", $l_sumbeloeb - $tjeksum) . "</cbc:PriceAmount>\n";
        # 20120515
        $l_retur .= "<cbc:BaseQuantity unitCode=\"ANN\">1</cbc:BaseQuantity>\n";
        $l_retur .= "<cbc:OrderableUnitFactorRate>1</cbc:OrderableUnitFactorRate>\n";
        $l_retur .= "</cac:Price>\n";
        $l_retur .= "</cac:" . $l_doctype . "Line>\n";
    }
    $l_retur .= "</" . $l_doctype . ">\n";
    # $l_retur.=oioubl_bottom($l_doctype);
    return $l_retur;
}
Example #7
0
function bogfor_nu($id, $kilde)
{
    include "../includes/genberegn.php";
    include "../includes/forfaldsdag.php";
    global $db;
    global $regnaar;
    global $valuta;
    global $valutakurs;
    global $difkto;
    global $title;
    $kilde == 'on' ? $webservice = 'on' : ($webservice = NULL);
    /*
    	$r = db_fetch_array(db_select("select box7 from grupper where art = 'DIV' and kodenr = '3'",__FILE__ . " linje " . __LINE__));
    	$tjek_lagerdiff=$r['box7'];
    	if ($tjek_lagerdiff) {
    		include("../includes/genberegn.php");
    		include("../includes/lagervaerdi.php");
    		$pre_stockvalue=lagervaerdi($regnaar);
    		$pre_finans=finanslager($regnaar);
    		$pre_lagerdiff=$pre_finans-$pre_stockvalue;
    #cho "$pre_lagerdiff=$pre_finans-$pre_stockvalue<br>";
    	}
    */
    #	print "<table><tbody>";
    $svar = "OK";
    $regnaar = $regnaar * 1;
    #20130820 -->
    $x = 0;
    if ($webservice) {
        $qtxt = "select distinct(kontonr) as kontonr from kontoplan where (kontotype='D' or kontotype='S')";
    } else {
        $qtxt = "select kontonr from kontoplan where regnskabsaar='{$regnaar}' and (kontotype='D' or kontotype='S')";
    }
    $q = db_select($qtxt, __FILE__ . " linje " . __LINE__);
    while ($r = db_fetch_array($q)) {
        $kontoplan[$x] = $r['kontonr'];
        $x++;
    }
    # <-- 20130820
    #	$fp=fopen("../temp/bogfor_nu.log","w");
    #	$linje="select * from ordrer where id = $id";
    #	fwrite($fp,$qtxt."\n");
    $d_kontrol = 0;
    $k_kontrol = 0;
    $logdate = date("Y-m-d");
    $logtime = date("H:i");
    $uxtid = date("U");
    $q = db_select("select box1, box2, box3, box4, box5 from grupper where art='RB'", __FILE__ . " linje " . __LINE__);
    if ($r = db_fetch_array($q)) {
        if (trim($r['box3']) == "on") {
            $faktbill = 1;
        } else {
            $faktbill = 0;
        }
        if (trim($r['box4']) == "on") {
            $modtbill = 1;
        } else {
            $modtbill = 0;
        }
        if (trim($r['box5']) == "on") {
            $no_faktbill = 1;
            $faktbill = 0;
        } else {
            $no_faktbill = 0;
        }
    }
    $projekt = array();
    $idliste = array();
    if (is_numeric($id)) {
        $tmp = "id = '" . $id . "'";
    } else {
        $idliste = explode(",", $id);
        $antal = count($idliste);
        #cho " id er array<br>";
        $tmp = "(id = '" . $idliste[0] . "'";
        for ($x = 1; $x < $antal; $x++) {
            $tmp .= " or id = '" . $idliste[$x] . "'";
        }
        $tmp .= ")";
    }
    $x = 0;
    $moms = 0;
    $sum = 0;
    $modtaget = 0;
    $modtaget2 = 0;
    $betaling = array();
    #20150518 (Denne og de to næste er flyttet fra "over select * from pos_betalinger")
    $modtaget = array();
    #20150518
    $bnr = -1;
    #20150518
    #cho "select * from ordrer where $tmp<br>";
    $q = db_select("select * from ordrer where {$tmp}", __FILE__ . " linje " . __LINE__);
    while ($r = db_fetch_array($q)) {
        #cho "Sum $r[sum] $r[moms]<br>";
        $art = $r['art'];
        if ($kilde == 'Dagsafslutning') {
            $art = 'PO';
        }
        $ordre_id = $r['id'];
        #20120905
        $konto_id = $r['konto_id'];
        $kontonr = str_replace(" ", "", $r['kontonr']);
        $firmanavn = trim($r['firmanavn']);
        $modtagelse = $r['modtagelse'];
        $transdate = $r['fakturadate'];
        $fakturanr = $r['fakturanr'];
        $ordrenr = $r['ordrenr'];
        $momssats = $r['momssats'] * 1;
        #cho "$firmanavn | $ordrenr<br>";
        $valuta = $r['valuta'];
        $kred_ord_id = $r['kred_ord_id'];
        if (!$valuta) {
            $valuta = 'DKK';
        }
        $projekt[0] = $r['projekt'];
        $betalingsbet = $r['betalingsbet'];
        $betalingsdage = $r['betalingsdage'] * 1;
        $betalt = $r['betalt'] * 1;
        /*
        		if ($art=='PO') {
        			$betaling=$r['felt_1'];
        			$modtaget+=$r['felt_2'];
        			$betaling2=$r['felt_3'];
        			$modtaget2+=$r['felt_4'];
        			$kasse=$r['felt_5']*1;
        			if ($betalingsbet=='Kontant') {
        				$konto_id=0;
        				$kontonr=NULL;
        			}
        		} else $kasse=0;
        */
        if ($art == 'PO') {
            #20150505
            $qtxt = "select * from pos_betalinger where ordre_id='{$ordre_id}' order by betalingstype";
            $q2 = db_select($qtxt, __FILE__ . " linje " . __LINE__);
            while ($r2 = db_fetch_array($q2)) {
                #				for ($c=0;$c<count($betaling);$c++) echo "$bnr | $c | $bnretaling[$c]==$r2[betalingstype] | $r2[amount]<br>";
                if (in_array($r2['betalingstype'], $betaling)) {
                    #cho __line__."<br>";
                    for ($c = 0; $c < count($betaling); $c++) {
                        if ($betaling[$c] == $r2['betalingstype']) {
                            $modtaget[$c] += $r2['amount'];
                            #cho "B $betaling[$c]==$r2[betalingstype] --> $modtaget[$c] -- $r2[amount]<br>";
                        }
                    }
                } else {
                    $bnr++;
                    $betaling[$bnr] = $r2['betalingstype'];
                    $modtaget[$bnr] = $r2['amount'];
                }
            }
            $kasse = $r['felt_5'] * 1;
            if ($betalingsbet == 'Kontant') {
                $konto_id = 0;
                $kontonr = NULL;
            }
        } else {
            $kasse = 0;
        }
        #		$refnr;
        if ($momssats) {
            $moms += $r['moms'] * 1;
        }
        #		else {$moms=afrund($r['sum']*$r['momssats']/100,2);}
        $sum += $r['sum'] + $r['moms'];
        $ordreantal = $x;
        $forfaldsdate = usdate(forfaldsdag($r['fakturadate'], $betalingsbet, $betalingsdage));
        if ($art == 'PO') {
            $r2 = db_fetch_array(db_select("select id, afd from ansatte where initialer = '{$r['ref']}'", __FILE__ . " linje " . __LINE__));
        } else {
            $r2 = db_fetch_array(db_select("select id, afd from ansatte where navn = '{$r['ref']}'", __FILE__ . " linje " . __LINE__));
        }
        $afd = $r2['afd'] * 1;
        #sikkerhed for at 'afd' har en vaerdi
        $ansat = $r2['id'] * 1;
        if ($no_faktbill == 1) {
            $bilag = '0';
        } else {
            $bilag = trim($fakturanr);
        }
        $udlign = 0;
    }
    #	if ($sum) {
    /*
    		if ($art=='PO' && $betalt >= $sum) {
    			$kontonr=0;
    			$konto_id=0;
    		}
    */
    if ($art != 'PO') {
        $r = db_fetch_array(db_select("select gruppe from adresser where id='{$konto_id}'", __FILE__ . " linje " . __LINE__));
        $debitorgruppe = $r['gruppe'];
        $r = db_fetch_array(db_select("select box1 from grupper where art='DG' and kodenr='{$debitorgruppe}'", __FILE__ . " linje " . __LINE__));
        $momskode = substr(trim($r['box1']), 1, 1);
        if ($moms && !$momskode) {
            return "Debitorgruppe {$debitorgruppe} ikke tilnkyttet en momsgruppe";
        }
    } else {
        #saa er det en kontantordre
        #			global $kasse;
        #			global $betaling;
        #			global $betaling2;
        #			global $modtaget;
        #			global $modtaget2;
        $tmparray = array();
        $r = db_fetch_array(db_select("select * from grupper where art = 'POS' and kodenr = '1'", __FILE__ . " linje " . __LINE__));
        $tmparray = explode(chr(9), $r['box7']);
        $momskode = $tmparray[$kasse - 1];
        if ($moms && !$momskode) {
            return "Fejl i momskode for kasse {$kasse}!";
        }
    }
    if (!is_numeric($id) || $betalingsbet == "Kontant" || $betalingsbet == "Kreditkort" || $betalingsbet == "Forud" && $art == 'PO') {
        #20130820+20150306
        $tmp = NULL;
        $openpost = NULL;
        $r = db_fetch_array(db_select("select * from grupper where art = 'DIV' and kodenr = '3'", __FILE__ . " linje " . __LINE__));
        #cho "select * from grupper where art = 'DIV' and kodenr = '3'<br>";
        if ($betalingsbet == "Kontant") {
            $tmp = $r['box7'];
        } elseif ($betalingsbet == "Kreditkort") {
            $tmp = $r['box10'];
        }
        #cho "tmp $tmp<br>";
        if ($tmp) {
            if (in_array($tmp, $kontoplan)) {
                $openpost = NULL;
                $kontonr = $tmp;
            } else {
                $tekst = "Kontonummer for {$betalingsbet} er ikke gyldigt\\nTjek Indstillinger > Diverse >Ordrerelaterede valg";
                return $tekst;
            }
        } else {
            $openpost = 1;
        }
    } elseif ($art == 'PO' && !$kontonr) {
        $openpost = NULL;
    } else {
        $openpost = 1;
    }
    if (substr($art, 1, 1) == 'K' && $openpost && $kred_ord_id) {
        $beskrivelse = "Kreditnota - " . $fakturanr;
        $r = db_fetch_array(db_select("select fakturanr,fakturadate from ordrer where id='{$kred_ord_id}'", __FILE__ . " linje " . __LINE__));
        $tmp = $sum * -1;
        if ($r2 = db_fetch_array(db_select("select * from openpost  where konto_id='{$konto_id}' and amount='{$tmp}' and faktnr='{$r['fakturanr']}' and transdate='{$r['fakturadate']}' and udlignet != '1'", __FILE__ . " linje " . __LINE__))) {
            $transdate > $r2['transdate'] ? $udlign_date = $transdate : ($udlign_date = $r2['transdate']);
            $r2 = db_fetch_array(db_select("select max(udlign_id) as udlign_id from openpost", __FILE__ . " linje " . __LINE__));
            $udlign_id = $r2['udlign_id'] + 1;
            db_modify("update openpost set udlignet='1',udlign_date='{$udlign_date}',udlign_id='{$udlign_id}' where konto_id='{$konto_id}' and amount='{$tmp}' and faktnr='{$r['fakturanr']}' and transdate='{$r['fakturadate']}'", __FILE__ . " linje " . __LINE__);
            $udlign = 1;
        }
    } elseif ($art == 'PO') {
        is_numeric($id) ? $beskrivelse = "Bon - " . $fakturanr : ($beskrivelse = "Kontantsalg kasse - " . $kasse);
        if ($kilde == 'Dagsafslutning') {
            $beskrivelse = $kilde . " - kassenr: " . $kasse;
        }
    } elseif ($openpost) {
        $beskrivelse = "Faktura - " . $fakturanr;
    } elseif ($betalingsbet == "Kontant") {
        $beskrivelse = "Kontantsalg: Faktura - " . $fakturanr;
    } else {
        $beskrivelse = "Kreditkort salg: Faktura - " . $fakturanr;
    }
    # 20120905 - Indsat grundet dobbelt bogforing af ordre id 4207 i regnskab saldi_510
    #cho "select id from transaktioner where ordre_id='$ordre_id'<br>";
    if ($r = db_fetch_array(db_select("select id,ordre_id from transaktioner where ordre_id='{$ordre_id}'", __FILE__ . " linje " . __LINE__))) {
        $tekst = "Bogf&oslash;ring afbrudt - tjek kontrolspor (id {$r['id']} oid {$r['ordre_id']})";
        print "<BODY onLoad=\"javascript:alert('{$tekst}')\">";
        return $tekst;
    }
    if ($kontonr && $openpost) {
        $tmp = $sum;
        if (db_fetch_array(db_select("select id from openpost where konto_id='{$konto_id}' and konto_nr='{$kontonr}' and faktnr='{$fakturanr}' and amount='{$tmp}' and beskrivelse='{$beskrivelse}' and udlignet='{$udlign}' and transdate='{$transdate}' and kladde_id='{$udlign}' and refnr='{$id}' and valuta='{$valuta}' and valutakurs='{$valutakurs}' and forfaldsdate='{$forfaldsdate}'", __FILE__ . " linje " . __LINE__))) {
            $tekst = "Bogf&oslash;ring afbrudt - tjek kontrolspor";
            print "<BODY onLoad=\"javascript:alert('{$tekst}')\">";
            return $tekst;
        }
        if ($udlign && $udlign_id && $udlign_date) {
            db_modify("insert into openpost (konto_id,konto_nr,faktnr,amount,beskrivelse,udlignet,udlign_id,udlign_date,transdate,uxtid,kladde_id,refnr,valuta,valutakurs,forfaldsdate,projekt) values ('{$konto_id}','{$kontonr}','{$fakturanr}','{$tmp}','{$beskrivelse}','{$udlign}','{$udlign_id}','{$udlign_date}','{$transdate}','{$uxtid}','{$udlign}','{$id}','{$valuta}','{$valutakurs}','{$forfaldsdate}','{$projekt['0']}')", __FILE__ . " linje " . __LINE__);
        } else {
            db_modify("insert into openpost (konto_id,konto_nr,faktnr,amount,beskrivelse,udlignet,transdate,uxtid,kladde_id,refnr,valuta,valutakurs,forfaldsdate,projekt) values ('{$konto_id}','{$kontonr}','{$fakturanr}','{$tmp}','{$beskrivelse}','{$udlign}','{$transdate}','{$uxtid}','{$udlign}','{$id}','{$valuta}','{$valutakurs}','{$forfaldsdate}','{$projekt['0']}')", __FILE__ . " linje " . __LINE__);
        }
        $r = db_fetch_array(db_select("select max(id) as id from openpost where konto_id = '{$konto_id}' and faktnr = '{$fakturanr}' and refnr='{$id}'", __FILE__ . " linje " . __LINE__));
        $openpost_id = $r['id'];
        $r = db_fetch_array(db_select("select gruppe from adresser where id='{$konto_id}'", __FILE__ . " linje " . __LINE__));
        $r = db_fetch_array(db_select("select beskrivelse, box2 from grupper where art = 'DG' and kodenr='{$r['gruppe']}'", __FILE__ . " linje " . __LINE__));
        $kontonr = $r['box2'];
        # Kontonr aendres fra at vaere leverandoerkontonr til finanskontonr
        $tekst = "Kontonummer for Debitorgruppe `{$r['beskrivelse']}` er ikke gyldigt";
        if (!$kontonr && $webservice) {
            return $tekst;
        } elseif (!$kontonr) {
            print "<BODY onLoad=\"javascript:alert('{$tekst}')\">";
        }
    }
    if (!in_array($kontonr, $kontoplan) && $art != 'PO') {
        $tekst = "Kontonummer {$kontonr} findes ikke i kontoplanen for regnskabsaar {$regnaar}";
        return $tekst;
        exit;
    }
    if ($art == 'PO' && $sum) {
        #saa er det en kontantordre (POS)
        $retur = $sum;
        $tmparray = array();
        $r = db_fetch_array(db_select("select box6 from grupper where art = 'POS' and kodenr = '2'", __FILE__ . " linje " . __LINE__));
        $div_kort_kto = trim($r['box6']);
        $r = db_fetch_array(db_select("select * from grupper where art = 'POS' and kodenr = '1'", __FILE__ . " linje " . __LINE__));
        if (!$konto_id) {
            #20140616
            $tmparray = explode(chr(9), $r['box2']);
            $kassekto = $tmparray[$kasse - 1];
            $kontonr = $kassekto;
        }
        #else
        $tmparray = explode(chr(9), $r['box3']);
        $afd = $tmparray[$kasse - 1] * 1;
        $tmparray = explode(chr(9), $r['box5']);
        $kortantal = $r['box4'] * 1;
        $korttyper = explode(chr(9), $r['box5']);
        $kortkonti = explode(chr(9), $r['box6']);
        $kortnavn = NULL;
        if ($div_kort_kto) {
            #20140129
            for ($b = 0; $b < count($betaling); $b++) {
                #20150505
                if (strpos($betaling[$b], "|")) {
                    list($betaling[$b], $kortnavn) = explode("|", $betaling[$b]);
                }
            }
            #				if (strpos($betaling2,"|")) list($betaling2,$kortnavn)=explode("|",$betaling2);
            $korttyper[$kortantal] = 'Betalingskort';
            $kortkonti[$kortantal] = $div_kort_kto;
            $kortantal++;
        }
        for ($x = 0; $x < $kortantal; $x++) {
            #20150505
            #cho __LINE__." $korttyper[$x] -->";
            for ($b = 0; $b < count($betaling); $b++) {
                #cho __LINE__." $betaling[$b]==$korttyper[$x] -->";
                #cho "$modtaget[$b]<br>";
                if ($betaling[$b] == $korttyper[$x]) {
                    $kontonr = $kortkonti[$x];
                    #20150507
                    $debet = afrund($modtaget[$b], 2);
                    $kredit = '0';
                    $d_kontrol = $d_kontrol + $debet;
                    $k_kontrol = $k_kontrol + $kredit;
                    $retur = $retur - $modtaget[$b];
                    $sum = $sum - $modtaget[$b];
                    if ($debet) {
                        if (is_numeric($id)) {
                            $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','{$transdate}','{$beskrivelse}','{$kortkonti[$x]}','{$fakturanr}','{$debet}','{$kredit}','0',{$afd},'{$logdate}','{$logtime}','{$projekt['0']}','{$ansat}','{$id}','{$kasse}')";
                        } else {
                            $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','{$transdate}','{$beskrivelse}','{$kortkonti[$x]}','0','{$debet}','{$kredit}','0',{$afd},'{$logdate}','{$logtime}','{$projekt['0']}','{$ansat}','0','{$kasse}')";
                        }
                        db_modify($qtxt, __FILE__ . " linje " . __LINE__);
                        $qtxt = "update kontoplan set saldo=saldo+'{$debet}' where kontonr='{$kortkonti[$x]}' and regnskabsaar='{$regnaar}'";
                        db_modify($qtxt, __FILE__ . " linje " . __LINE__);
                    }
                }
                #xit;
                /*				
                				if ($betaling2==$korttyper[$x]) {
                					$debet=afrund($modtaget2,2);
                					$kredit='0';
                					$d_kontrol=$d_kontrol+$debet; $k_kontrol=$k_kontrol+$kredit;
                					$sum=$sum-$modtaget2;
                					if (is_numeric($id)) {
                						$qtxt="insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','$transdate','$beskrivelse','$kortkonti[$x]','$fakturanr','$debet','$kredit','0',$afd,'$logdate','$logtime','$projekt[0]','$ansat','$id','$kasse')";
                					} else {
                						$qtxt="insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','$transdate','$beskrivelse','$kortkonti[$x]','0','$debet','$kredit','0',$afd,'$logdate','$logtime','$projekt[0]','$ansat','0','$kasse')";
                					}
                					db_modify($qtxt,__FILE__ . " linje " . __LINE__);
                					$qtxt="update kontoplan set saldo=saldo+'$debet' where kontonr='$kortkonti[$x]' and regnskabsaar='$regnaar'";
                					db_modify($qtxt,__FILE__ . " linje " . __LINE__);
                				}
                */
            }
        }
        #cho __LINE__." $konto_id | $openpost -> $kontonr<br>";
        if (!$konto_id) {
            $kontonr = $kassekto;
        }
        #20150518 (Ellers fortsætter den med at bogføre på samme kontonr) #20150521
        #cho __LINE__." $konto_id-> $kontonr<br>";
    }
    $sum = afrund($sum, 3);
    if ($sum) {
        if ($sum > 0) {
            $debet = $sum;
            $kredit = '0';
        } else {
            $debet = '0';
            $kredit = $sum * -1;
        }
        if ($valutakurs) {
            $kredit = afrund($kredit * $valutakurs / 100, 3);
            $debet = afrund($debet * $valutakurs / 100, 3);
        }
        # Omregning til DKR.
        $d_kontrol = $d_kontrol + $debet;
        $k_kontrol = $k_kontrol + $kredit;
        $debet = afrund($debet, 2);
        $kredit = afrund($kredit, 2);
        if (is_numeric($id)) {
            $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','{$transdate}','{$beskrivelse}','{$kontonr}','{$fakturanr}','{$debet}','{$kredit}','0',{$afd},'{$logdate}','{$logtime}','{$projekt['0']}','{$ansat}','{$id}','{$kasse}')";
        } else {
            $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','{$transdate}','{$beskrivelse}','{$kontonr}','0','{$debet}','{$kredit}','0',{$afd},'{$logdate}','{$logtime}','{$projekt['0']}','{$ansat}','0','{$kasse}')";
        }
        #cho __LINE__." $qtxt<br>";
        #xit;
        db_modify($qtxt, __FILE__ . " linje " . __LINE__);
        $tmp = $debet - $kredit;
        $qtxt = "update kontoplan set saldo=saldo+'{$tmp}' where kontonr='{$kontonr}' and regnskabsaar='{$regnaar}'";
        db_modify($qtxt, __FILE__ . " linje " . __LINE__);
    }
    if ($valutakurs) {
        $maxdif = 2;
    }
    #Der tillades 2 oeres afrundingsdiff
    $p = 0;
    $projektliste = '';
    if (is_numeric($id)) {
        $tmp = "ordre_id = '" . $id . "'";
    } else {
        $idliste = explode(",", $id);
        $antal = count($idliste);
        $tmp = "(ordre_id = '" . $idliste[0] . "'";
        for ($x = 1; $x < $antal; $x++) {
            $tmp .= " or ordre_id = '" . $idliste[$x] . "'";
        }
        $tmp .= ")";
    }
    db_modify("update ordrelinjer set projekt='' where projekt is NULL and {$tmp}", __FILE__ . " linje " . __LINE__);
    $q = db_select("select distinct(projekt) from ordrelinjer where {$tmp} and vare_id >'0'", __FILE__ . " linje " . __LINE__);
    while ($r = db_fetch_array($q)) {
        #			if(trim($r['projekt'])) {
        $p++;
        $projekt[$p] = trim($r['projekt']);
        $projektliste ? $projektliste .= "<br>" . $projekt[$p] : ($projektliste = $projekt[$p]);
        #			}
    }
    $p ? $projektantal = $p : ($projektantal = 1);
    if ($projektliste && $openpost) {
        db_modify("update openpost set projekt='{$projektliste}' where id='{$openpost_id}'", __FILE__ . " linje " . __LINE__);
    }
    #		for ($p=1;$p<=$projektantal;$p++)
    for ($t = 1; $t <= 2; $t++) {
        for ($p = 1; $p <= $projektantal; $p++) {
            $y = 0;
            $tjek = array();
            $bogf_konto = array();
            if (is_numeric($id)) {
                $tmp = "ordre_id = '" . $id . "'";
            } else {
                $idliste = explode(",", $id);
                $antal = count($idliste);
                $tmp = "(ordre_id = '" . $idliste[0] . "'";
                for ($x = 1; $x < $antal; $x++) {
                    $tmp .= " or ordre_id = '" . $idliste[$x] . "'";
                }
                $tmp .= ")";
            }
            if ($t == 1) {
                $qtxt = "select * from ordrelinjer where {$tmp} and projekt='{$projekt[$p]}' and posnr>='0' order by bogf_konto";
            } else {
                $qtxt = "select * from ordrelinjer where {$tmp} and projekt='{$projekt[$p]}' and posnr<'0' order by bogf_konto";
            }
            #cho __LINE__."$qtxt<br>";
            $q = db_select($qtxt, __FILE__ . " linje " . __LINE__);
            while ($r = db_fetch_array($q)) {
                #cho __LINE__." $y<br>";
                if ($valutakurs && $valutakurs != 100) {
                    $maxdif = $maxdif + 2;
                }
                #Og yderligere 2 pr ordrelinje.
                if (!in_array($r['bogf_konto'], $bogf_konto)) {
                    $y++;
                    $bogf_konto[$y] = $r['bogf_konto'];
                    if ($r['rabatart'] == 'amount') {
                        #								$pris[$y]=$r['pris']*$r['antal']-($r['rabat']*$r['antal']); # remmet 20140424b
                        $linjesum = $r['pris'] * $r['antal'] - $r['rabat'] * $r['antal'];
                        #20140424b
                        $r['procent'] || $r['procent'] != '' ? $pris[$y] = $linjesum * $r['procent'] / 100 : ($pris[$y] = $linjesum);
                        #20140424b
                    } else {
                        #								$pris[$y]=$r['pris']*$r['antal']-($r['pris']*$r['antal']*$r['rabat']/100); # remmet 20140424b
                        $linjesum = $r['pris'] * $r['antal'] - $r['pris'] * $r['antal'] * $r['rabat'] / 100;
                        #20140424b
                        $r['procent'] || $r['procent'] != '' ? $pris[$y] = $linjesum * $r['procent'] / 100 : ($pris[$y] = $linjesum);
                        #20140424b
                        if ($art == 'PO') {
                            $pris[$y] = afrund($pris[$y], 3);
                        } else {
                            $pris[$y] = afrund($pris[$y], 3);
                        }
                        #Afrunding tilfoejet 2009.01.26 grundet diff i ordre 98 i saldi_104 -- 2011.02.07 ændret til 2 decimaler ordre_id 1325 saldi_329
                        #cho "$pris[$y]<br>";
                    }
                } else {
                    for ($a = 1; $a <= $y; $a++) {
                        if ($bogf_konto[$a] == $r['bogf_konto']) {
                            if ($r['rabatart'] == 'amount') {
                                #									$pris[$a]+=$r['pris']*$r['antal']-($r['rabat']*$r['antal']); # remmet 20140424b
                                $linjesum = $r['pris'] * $r['antal'] - $r['rabat'] * $r['antal'];
                                #20140424b
                            } else {
                                #									$pris[$a]=$pris[$a]+($r['pris']*$r['antal']-($r['pris']*$r['antal']*$r['rabat']/100)); # remmet 20140424b
                                $linjesum = $r['pris'] * $r['antal'] - $r['pris'] * $r['antal'] * $r['rabat'] / 100;
                                #20140424b
                            }
                            $r['procent'] || $r['procent'] != '' ? $pris[$a] += $linjesum * $r['procent'] / 100 : ($pris[$a] += $linjesum);
                            #20140424b
                            if ($art == 'PO') {
                                $pris[$a] = afrund($pris[$a], 3);
                            } else {
                                $pris[$a] = afrund($pris[$a], 3);
                            }
                            #Afrunding tilfoejet 2009.01.26 grundet diff i ordre 98 i saldi_104 -- 2011.02.07 ændret til 2 decimaler ordre_id 1325 saldi_329
                        }
                    }
                }
            }
            $ordrelinjer = $y;
            if ($indbetaling) {
                $ordrelinjer = 0;
            }
            for ($y = 1; $y <= $ordrelinjer; $y++) {
                if ($bogf_konto[$y] && $pris[$y]) {
                    if ($pris[$y] > 0) {
                        $kredit = $pris[$y];
                        $debet = 0;
                    } else {
                        $kredit = 0;
                        $debet = $pris[$y] * -1;
                    }
                    if ($t == 1 && $valutakurs) {
                        $kredit = $kredit * $valutakurs / 100;
                        $debet = $debet * $valutakurs / 100;
                    }
                    # Omregning til DKR.
                    $kredit = afrund($kredit, 3);
                    $debet = afrund($debet, 3);
                    $d_kontrol = $d_kontrol + $debet;
                    $k_kontrol = $k_kontrol + $kredit;
                    $debet = afrund($debet, 2);
                    $kredit = afrund($kredit, 2);
                    if (is_numeric($id)) {
                        $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','{$transdate}','{$beskrivelse}','{$bogf_konto[$y]}','{$fakturanr}','{$debet}','{$kredit}','0','{$afd}','{$logdate}','{$logtime}','{$projekt[$p]}','{$ansat}','{$id}','{$kasse}')";
                    } else {
                        $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','{$transdate}','{$beskrivelse}','{$bogf_konto[$y]}','0','{$debet}','{$kredit}','0','{$afd}','{$logdate}','{$logtime}','{$projekt[$p]}','{$ansat}','0','{$kasse}')";
                    }
                    #cho __LINE__."$qtxt<br>";
                    db_modify($qtxt, __FILE__ . " linje " . __LINE__);
                    $tmp = $debet - $kredit;
                    $qtxt = "update kontoplan set saldo=saldo+'{$tmp}' where kontonr='{$bogf_konto[$y]}' and regnskabsaar='{$regnaar}'";
                    db_modify($qtxt, __FILE__ . " linje " . __LINE__);
                } elseif ($pris[$y]) {
                    $svar = "Fejl i kontoopsætning";
                    if (!$webservice) {
                        print "<BODY onLoad=\"javascript:alert('{$svar}')\">";
                    } else {
                        return "{$svar}";
                    }
                    exit;
                }
            }
        }
    }
    #xit;
    if ($momskode) {
        $query = db_select("select box1 from grupper where art='SM' and kodenr='{$momskode}'", __FILE__ . " linje " . __LINE__);
        $row = db_fetch_array($query);
        if ($box1 = trim($row['box1'])) {
            # 20150522
            if ($moms > 0) {
                $kredit = $moms;
                $debet = '0';
            } else {
                $kredit = '0';
                $debet = $moms * -1;
            }
            if ($valutakurs) {
                $kredit = afrund($kredit * $valutakurs / 100, 3);
                $debet = afrund($debet * $valutakurs / 100, 3);
            }
            # Omregning til DKR.
            $kredit = afrund($kredit, 3);
            $debet = afrund($debet, 3);
            $d_kontrol = $d_kontrol + $debet;
            $k_kontrol = $k_kontrol + $kredit;
            $diff = afrund($d_kontrol - $k_kontrol, 3);
            $absdiff = abs($diff);
            if ($moms && $valutakurs && $valutakurs != 100 && $absdiff >= 0.01 && $absdiff <= 0.05) {
                if ($debet > 0) {
                    $debet = $debet + $diff;
                    $d_kontrol = $d_kontrol + $diff;
                } elseif ($kredit > 0) {
                    $kredit = $kredit + $diff;
                    $k_kontrol = $k_kontrol + $diff;
                }
            }
            $moms = afrund($moms, 2);
            if ($moms) {
                if (is_numeric($id)) {
                    $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id, afd, logdate, logtime, projekt, ansat, ordre_id,kasse_nr) values ('0', '{$transdate}', '{$beskrivelse}', '{$box1}', '{$fakturanr}', '{$debet}', '{$kredit}', '0', '{$afd}', '{$logdate}', '{$logtime}', '{$projekt['0']}', '{$ansat}', '{$id}','{$kasse}')";
                } else {
                    $qtxt = "insert into transaktioner (bilag, transdate, beskrivelse, kontonr, faktura, debet, kredit, kladde_id, afd, logdate, logtime, projekt, ansat, ordre_id,kasse_nr) values ('0', '{$transdate}', '{$beskrivelse}', '{$box1}', '0', '{$debet}', '{$kredit}', '0', '{$afd}', '{$logdate}', '{$logtime}', '{$projekt['0']}', '{$ansat}', '0','{$kasse}')";
                }
                #cho __LINE__." $qtxt<br>";
                db_modify($qtxt, __FILE__ . " linje " . __LINE__);
                $tmp = $debet - $kredit;
                $qtxt = "update kontoplan set saldo=saldo+'{$tmp}' where kontonr='{$box1}' and regnskabsaar='{$regnaar}'";
                db_modify($qtxt, __FILE__ . " linje " . __LINE__);
            }
            $valutakurs = $valutakurs * 1;
        } elseif ($moms) {
            return "Fejl i momsopsætning";
        }
    }
    if (is_numeric($id)) {
        $tmp = "id = '" . $id . "'";
    } else {
        $idliste = explode(",", $id);
        $antal = count($idliste);
        $tmp = "(id = '" . $idliste[0] . "'";
        for ($x = 1; $x < $antal; $x++) {
            $tmp .= " or id = '" . $idliste[$x] . "'";
        }
        $tmp .= ")";
    }
    $tidspkt = date("H:i");
    db_modify("update ordrer set status='4',valutakurs='{$valutakurs}' where {$tmp}", __FILE__ . " linje " . __LINE__);
    if (is_numeric($id)) {
        $tmp = "ordre_id = '" . $id . "'";
    } else {
        $idliste = explode(",", $id);
        $antal = count($idliste);
        $tmp = "(ordre_id = '" . $idliste[0] . "'";
        for ($x = 1; $x < $antal; $x++) {
            $tmp .= " or ordre_id = '" . $idliste[$x] . "'";
        }
        $tmp .= ")";
    }
    db_modify("delete from ordrelinjer where {$tmp} and posnr < 0", __FILE__ . " linje " . __LINE__);
    $d_kontrol = afrund($d_kontrol, 2);
    $k_kontrol = afrund($k_kontrol, 2);
    if ($diff = afrund($d_kontrol - $k_kontrol, 2)) {
        $debet = 0;
        $kredit = 0;
        if ($diff < 0) {
            $debet = $diff * -1;
        } else {
            $kredit = $diff;
        }
        $debet = afrund($debet, 2);
        $kredit = afrund($kredit, 2);
        #cho "$diff > maxdif $maxdif<br>";
        if ($art == 'PO') {
            #20140628
            #cho "select box1,box2 from grupper where grupper.art='OreDif'<br>";
            $r = db_fetch_array(db_select("select box1,box2 from grupper where grupper.art='OreDif'", __FILE__ . " linje " . __LINE__));
            $difkto = $r['box2'] * 1;
            $maxdif = $r['box1'] * 100;
            if (!db_fetch_array(db_select("select id from kontoplan where kontonr='{$difkto}' and regnskabsaar='{$regnaar}'", __FILE__ . " linje " . __LINE__))) {
                return "Kontonr {$difkto} (Øredifferencer) eksisterer ikke";
            }
            $diff = 0;
            $q = db_select("select debet,kredit from transaktioner where beskrivelse='{$beskrivelse}' and logdate='{$logdate}' and logtime='{$logtime}' and kasse_nr='{$kasse}'", __FILE__ . " linje " . __LINE__);
            while ($r = db_fetch_array($q)) {
                $d = afrund($r['debet'], 2);
                $k = afrund($r['kredit'], 2);
                #cho "tmp $d $k<br>";
                $diff += $d - $k;
            }
            if ($diff) {
                if ($diff < 0) {
                    $debet = $diff * -1;
                } else {
                    $kredit = $diff;
                }
                $debet = afrund($debet, 2);
                $kredit = afrund($kredit, 2);
                if (is_numeric($id)) {
                    $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','{$transdate}','{$beskrivelse}','{$difkto}','{$fakturanr}','{$debet}','{$kredit}','0','{$afd}','{$logdate}','{$logtime}','{$projekt['0']}','{$ansat}','{$id}','{$kasse}')";
                } else {
                    $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','{$transdate}','{$beskrivelse}','{$difkto}','0','{$debet}','{$kredit}','0','{$afd}','{$logdate}','{$logtime}','{$projekt['0']}','{$ansat}','0','{$kasse}')";
                }
                #cho __LINE__." $qtxt<br>";
                db_modify($qtxt, __FILE__ . " linje " . __LINE__);
                $tmp = $debet - $kredit;
                db_modify("update kontoplan set saldo=saldo+'{$tmp}' where kontonr='{$difkto}' and regnskabsaar='{$regnaar}'", __FILE__ . " linje " . __LINE__);
            }
            #xit;
        } elseif ($valuta != 'DKK' && abs($diff) <= $maxdif) {
            #Der maa max vaere en afvigelse paa 1 oere pr ordrelinje m fremmed valuta;
            $r = db_fetch_array(db_select("select box3 as difkto from grupper where grupper.art='VK' and grupper.box1='{$valuta}'", __FILE__ . " linje " . __LINE__));
            $difkto = $r['difkto'] * 1;
            if (!db_fetch_array(db_select("select id from kontoplan where kontonr='{$difkto}' and regnskabsaar='{$regnaar}'", __FILE__ . " linje " . __LINE__))) {
                return "Kontonr {$difkto} (kursdiff) eksisterer ikke";
            }
            if (is_numeric($id)) {
                $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','{$transdate}','{$beskrivelse}','{$difkto}','{$fakturanr}','{$debet}','{$kredit}','0','{$afd}','{$logdate}','{$logtime}','{$projekt['0']}','{$ansat}','{$id}','{$kasse}')";
            } else {
                $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','{$transdate}','{$beskrivelse}','{$difkto}','0','{$debet}','{$kredit}','0','{$afd}','{$logdate}','{$logtime}','{$projekt['0']}','{$ansat}','0','{$kasse}')";
            }
            #cho __LINE__."$qtxt<br>";
            db_modify($qtxt, __FILE__ . " linje " . __LINE__);
            $tmp = $debet - $kredit;
            db_modify("update kontoplan set saldo=saldo+'{$tmp}' where kontonr='{$difkto}' and regnskabsaar='{$regnaar}'", __FILE__ . " linje " . __LINE__);
            #xit;
        } elseif (abs($diff) < 0.05) {
            if ($r = db_fetch_array(db_select("select * from grupper where art = 'OreDif'", __FILE__ . " linje " . __LINE__))) {
                $oredifkto = $r['box2'];
            } else {
                return 'Manglende kontonummer til &oslash;redifferencer - Se indstillinger -> diverse -> &oslash;rediff';
            }
            $r = db_fetch_array(db_select("select id from kontoplan where kontotype = 'D' and kontonr = '{$oredifkto}' and regnskabsaar='{$regnaar}'", __FILE__ . " linje " . __LINE__));
            if ($r['id']) {
                if (is_numeric($id)) {
                    $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','{$transdate}','{$beskrivelse}','{$oredifkto}','{$fakturanr}','{$debet}','{$kredit}','0','{$afd}','{$logdate}','{$logtime}','{$projekt['0']}','{$ansat}','{$id}','{$kasse}')";
                } else {
                    $qtxt = "insert into transaktioner (bilag,transdate,beskrivelse,kontonr,faktura,debet,kredit,kladde_id,afd,logdate,logtime,projekt,ansat,ordre_id,kasse_nr) values ('0','{$transdate}','{$beskrivelse}','{$oredifkto}','0','{$debet}','{$kredit}','0','{$afd}','{$logdate}','{$logtime}','{$projekt['0']}','{$ansat}','0','{$kasse}')";
                }
                #cho __LINE__."$qtxt<br>";
                db_modify($qtxt, __FILE__ . " linje " . __LINE__);
                $tmp = $debet - $kredit;
                db_modify("update kontoplan set saldo=saldo+'{$tmp}' where kontonr='{$oredifkto}' and regnskabsaar='{$regnaar}'", __FILE__ . " linje " . __LINE__);
            } else {
                return 'Manglende kontonummer til &oslash;redifferencer - Se indstillinger -> diverse -> &oslash;rediff';
            }
        } else {
            $svar = "Der er konstateret en uoverensstemmelse i posteringssummen, ID {$ordre_id} ordre {$ordrenr}, d={$d_kontrol}, k={$k_kontrol} kontakt DANOSOFT p&aring; telefon 4690 2208";
            if ($art == 'PO') {
                echo "{$svar}<br>";
            }
            $message = $db . " | Uoverensstemmelse i posteringssum: ordre_id={$id}, d={$d_kontrol}, k={$k_kontrol} | " . __FILE__ . " linje " . __LINE__ . " | " . $brugernavn . " " . date("Y-m-d H:i:s");
            $headers = 'From: fejl@saldi.dk' . "\r\n" . 'Reply-To: fejl@saldi.dk' . "\r\n" . 'X-Mailer: PHP/' . phpversion();
            mail('*****@*****.**', 'SALDI Fejl', $message, $headers);
            return "{$svar}";
            #20130506
            exit;
        }
    }
    if ($konto_id) {
        $r = db_fetch_array(db_select("select sum(amount) from openpost where udlignet!='1' and konto_id = '{$konto_id}'", __FILE__ . " linje " . __LINE__));
        $saldo = $r['amount'] * 1;
        db_modify("update adresser set saldo='{$saldo}' where id='{$konto_id}'", __FILE__ . " linje " . __LINE__);
    }
    if ($title != "Massefakturering" && !$webservice && $art != 'PO') {
        genberegn($regnaar);
    }
    return $svar;
}
Example #8
0
$dato = date("d-m-Y");
$kurs = NULL;
$valuta = NULL;
$beskrivelse = NULL;
$kodenr = if_isset($_GET['kodenr']);
$id = if_isset($_GET['id']);
if (isset($_GET['ret'])) {
    print "<BODY onLoad=\"javascript:alert('Ved kursændring skal du ikke rette kursen, men tilføje en ny kurs med angivelse af dato for kursændringen.\\nEllers risikerer du at lave rod i dit regnskab ')\">";
}
if (isset($_POST['submit'])) {
    $dato = addslashes(if_isset($_POST['dato']));
    $kurs = addslashes(if_isset($_POST['kurs']));
    $valuta = addslashes(if_isset($_POST['valuta']));
    $beskrivelse = addslashes(if_isset($_POST['beskrivelse']));
    $difkto = if_isset($_POST['difkto']) * 1;
    $ny_valdate = usdate($dato);
    $ny_kurs = usdecimal($kurs);
    $r = db_fetch_array(db_select("select max(transdate) as transdate from transaktioner where valuta = '{$kodenr}'", __FILE__ . " linje " . __LINE__));
    $transdate = $r['transdate'];
    if ($ny_valdate <= $transdate) {
        print "<BODY onLoad=\"javascript:alert('Det er foretaget posteringer i {$vauta} efter {$dato}! Kursændring afbrudt')\">";
        $dato = NULL;
    }
    if (!($r = db_fetch_array(db_select("select id from kontoplan where kontonr='{$difkto}' and kontotype = 'D' and regnskabsaar= '{$regnaar}'")))) {
        print "<BODY onLoad=\"javascript:alert('Driftkonto {$difkto} eksisterer ikke')\">";
        $difkto = '';
        $kodenr = -1;
    }
    #cho "$difkto && is_numeric($kodenr) && $dato && $kurs && $dato!=\"-\" && $kurs!=\"-\"<br>";
    if ($difkto && is_numeric($kodenr) && $dato && $kurs && $dato != "-" && $kurs != "-") {
        if ($id) {
Example #9
0
$mailmodt_id = $r['box1'];
$email = $r['box2'];
$ffdage = $r['box5'];
$chkdate = $r['box8'];
if (!$ffdage || $chkdate == $dd) {
    echo '';
} else {
    $rykkerdate = usdate(forfaldsdag($dd, 'netto', $ffdage));
    $x = 0;
    $konto_id = array();
    $x = 0;
    #	$q=db_select("select openpost.* from openpost,adresser where openpost.udlignet = '0' and openpost.forfaldsdate >= '$rykkerdate' and openpost.amount>'0' and adresser.id=openpost.konto_id and adresser.art = 'D' order by openpost.konto_id",__FILE__ . " linje " . __LINE__);
    $q = db_select("select openpost.* from openpost,adresser where openpost.udlignet = '0' and openpost.amount>'0' and adresser.id=openpost.konto_id and adresser.art = 'D' order by openpost.konto_id", __FILE__ . " linje " . __LINE__);
    while ($r = db_fetch_array($q)) {
        # echo "$r[forfaldsdate] <= $dd<br>";
        $rykkerdate = usdate(forfaldsdag($r['forfaldsdate'], 'netto', $ffdage));
        #	echo "$rykkerdate <= $dd<br>";
        if ($rykkerdate <= $dd) {
            if (!db_fetch_array(db_select("select id from ordrelinjer where enhed = '{$r['id']}'", __FILE__ . " linje " . __LINE__))) {
                #Tjekker om der allerede eksisterer en rykker på ordren.
                if (!in_array($r['konto_id'], $konto_id)) {
                    $konto_id[$x] = $r['konto_id'];
                    #Liste over konto id numre der skal rykkes
                    $x++;
                }
            }
        }
    }
    $ff_antal = $x;
    #echo "$ff_antal $rykkerdate <br>";
    #exit;
Example #10
0
function opdater_varer($kodenr, $art, $box1, $box2, $box3, $box4)
{
    if ($art == 'VPG' && $kodenr) {
        if ($box1) {
            $box1 = usdecimal($box1);
        }
        if ($box2) {
            $box2 = usdecimal($box2);
        }
        if ($box3) {
            $box3 = usdecimal($box3);
        }
        if ($box4) {
            $box4 = usdecimal($box4);
        }
        if ($box1) {
            db_modify("update varer set kostpris='{$box1}' where prisgruppe = '{$kodenr}'", __FILE__ . " linje " . __LINE__);
        }
        if ($box2) {
            db_modify("update varer set salgspris='{$box2}' where prisgruppe = '{$kodenr}'", __FILE__ . " linje " . __LINE__);
        }
        if ($box3) {
            db_modify("update varer set retail_price='{$box3}' where prisgruppe = '{$kodenr}'", __FILE__ . " linje " . __LINE__);
        }
        if ($box4) {
            db_modify("update varer set tier_price='{$box4}' where prisgruppe = '{$kodenr}'", __FILE__ . " linje " . __LINE__);
        }
        return $box1 . ";" . $box2 . ";" . $box3 . ";" . $box4;
    }
    if ($art == 'VTG' && $kodenr) {
        if ($box1) {
            $box1 = usdecimal($box1);
        }
        if ($box2) {
            $box2 = usdecimal($box2);
        }
        if ($box3) {
            $box3 = usdate($box3);
        }
        if ($box4) {
            $box4 = usdate($box4);
        }
        if ($box1) {
            db_modify("update varer set special_price='{$box1}' where tilbudgruppe = '{$kodenr}'", __FILE__ . " linje " . __LINE__);
        }
        if ($box2) {
            db_modify("update varer set campaign_cost='{$box2}' where tilbudgruppe = '{$kodenr}'", __FILE__ . " linje " . __LINE__);
        }
        if ($box3) {
            db_modify("update varer set special_from_date='{$box3}' where tilbudgruppe = '{$kodenr}'", __FILE__ . " linje " . __LINE__);
        }
        if ($box4) {
            db_modify("update varer set special_to_date='{$box4}' where tilbudgruppe = '{$kodenr}'", __FILE__ . " linje " . __LINE__);
        }
        return $box1 . ";" . $box2 . ";" . $box3 . ";" . $box4;
    }
    if ($art == 'VRG' && $kodenr) {
        if ($box2) {
            $box2 = usdecimal($box2);
        }
        if ($box3) {
            $box3 = usdecimal($box3);
        }
        if ($box1) {
            db_modify("update varer set m_type='{$box1}' where rabatgruppe = '{$kodenr}'", __FILE__ . " linje " . __LINE__);
        }
        if ($box2) {
            db_modify("update varer set m_rabat='{$box2}' where rabatgruppe = '{$kodenr}'", __FILE__ . " linje " . __LINE__);
        }
        if ($box3) {
            db_modify("update varer set m_antal='{$box3}' where rabatgruppe = '{$kodenr}'", __FILE__ . " linje " . __LINE__);
        }
    }
}
Example #11
0
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}\">";
}
Example #12
0
if (isset($_POST['kontosaldo'])) {
    $rapportart = 'kontosaldo';
}
if (isset($_POST['kontokort'])) {
    $rapportart = 'kontokort';
}
if (isset($_POST['dato'])) {
    $dato = $_POST['dato'];
    list($dato_fra, $dato_til) = explode(":", $dato);
    #	if (!$dato_til) {
    #		$dato_til=$dato_fra;
    #		$dato_fra='010100';
    #	}
    # echo "dato $dato | $dato_fra | $dato_til<br>";
    $fromdate = usdate($dato_fra);
    $todate = usdate($dato_til);
    # echo "dato $dato | $dato_fra | $dato_til<br>";
}
if (isset($_POST['konto'])) {
    $konto = $_POST['konto'];
    list($konto_fra, $konto_til) = explode(":", $konto);
    if (is_numeric($konto_fra) && !$konto_til) {
        $konto_til = $konto_fra;
    }
    # echo "konto $dato | $konto_fra | $konto_til<br>";
}
#echo "R $rapportart<br>";
$husk = if_isset($_POST['husk']);
if (isset($_POST['salgsstat']) && $_POST['salgsstat']) {
    if ($husk) {
        db_modify("update grupper set box1='{$husk}',box2='{$dato_fra}',box3='{$dato_til}',box4='{$konto_fra}',box5='{$konto_til}',box6='{$rapportart}' where art='DRV' and kodenr='{$bruger_id}'", __FILE__ . " linje " . __LINE__);
Example #13
0
function bogfor_nu($id, $webservice)
{
    include "../includes/genberegn.php";
    include "../includes/forfaldsdag.php";
    global $db;
    global $regnaar;
    global $valuta;
    global $valutakurs;
    global $difkto;
    global $title;
    #	print "<table><tbody>";
    $svar = "OK";
    $d_kontrol = 0;
    $k_kontrol = 0;
    $logdate = date("Y-m-d");
    $logtime = date("H:i");
    $q = db_select("select box1, box2, box3, box4, box5 from grupper where art='RB'", __FILE__ . " linje " . __LINE__);
    if ($r = db_fetch_array($q)) {
        if (trim($r['box3']) == "on") {
            $faktbill = 1;
        } else {
            $faktbill = 0;
        }
        if (trim($r['box4']) == "on") {
            $modtbill = 1;
        } else {
            $modtbill = 0;
        }
        if (trim($r['box5']) == "on") {
            $no_faktbill = 1;
            $faktbill = 0;
        } else {
            $no_faktbill = 0;
        }
    }
    $projekt = array();
    $x = 0;
    $q = db_select("select * from ordrer where id='{$id}'", __FILE__ . " linje " . __LINE__);
    if ($r = db_fetch_array($q)) {
        $art = $r['art'];
        $konto_id = $r['konto_id'];
        $kontonr = str_replace(" ", "", $r['kontonr']);
        $firmanavn = trim($r['firmanavn']);
        $modtagelse = $r['modtagelse'];
        $transdate = $r['fakturadate'];
        $fakturanr = $r['fakturanr'];
        $ordrenr = $r['ordrenr'];
        #echo "$firmanavn | $ordrenr<br>";
        $valuta = $r['valuta'];
        $kred_ord_id = $r['kred_ord_id'];
        if (!$valuta) {
            $valuta = 'DKK';
        }
        $projekt[0] = $r['projekt'] * 1;
        $betalingsbet = $r['betalingsbet'];
        $betalingsdage = $r['betalingsdage'] * 1;
        #		$refnr;
        $moms = $r['moms'] * 1;
        #		else {$moms=afrund($r['sum']*$r['momssats']/100,2);}
        $sum = $r['sum'] + $moms;
        #echo "sum $r[sum] + $moms = $sum<br>";
        #exit;
        $ordreantal = $x;
        $forfaldsdate = usdate(forfaldsdag($r['fakturadate'], $betalingsbet, $betalingsdage));
        $r2 = db_fetch_array(db_select("select id, afd from ansatte where navn = '{$r['ref']}'", __FILE__ . " linje " . __LINE__));
        $afd = $r2['afd'] * 1;
        #sikkerhed for at 'afd' har en vaerdi
        $ansat = $r2['id'] * 1;
        if ($no_faktbill == 1) {
            $bilag = '0';
        } else {
            $bilag = trim($fakturanr);
        }
        $udlign = 0;
        if (substr($art, 1, 1) == 'K') {
            $beskrivelse = "Kreditnota - " . $fakturanr;
            $r = db_fetch_array(db_select("select fakturanr,fakturadate from ordrer where id='{$kred_ord_id}'", __FILE__ . " linje " . __LINE__));
            $tmp = $sum * -1;
            if (db_fetch_array(db_select("select * from openpost  where konto_id='{$konto_id}' and amount='{$tmp}' and faktnr='{$r['fakturanr']}' and transdate='{$r['fakturadate']}' and udlignet != '1'", __FILE__ . " linje " . __LINE__))) {
                db_modify("update openpost set udlignet = 1 where konto_id='{$konto_id}' and amount='{$tmp}' and faktnr='{$r['fakturanr']}' and transdate='{$r['fakturadate']}'");
                $udlign = 1;
            }
        } elseif ($art == 'PO') {
            $beskrivelse = "Bon - " . $fakturanr;
        } else {
            $beskrivelse = "Faktura - " . $fakturanr;
        }
        if ($art != 'PO') {
            db_modify("insert into openpost (konto_id, konto_nr, faktnr, amount, beskrivelse, udlignet, transdate, kladde_id, refnr, valuta, valutakurs, forfaldsdate) values ('{$konto_id}', '{$kontonr}', '{$fakturanr}', '{$sum}', '{$beskrivelse}', '{$udlign}', '{$transdate}', '{$udlign}', '{$id}', '{$valuta}', '{$valutakurs}','{$forfaldsdate}')", __FILE__ . " linje " . __LINE__);
            $r = db_fetch_array(db_select("select gruppe from adresser where id='{$konto_id}'", __FILE__ . " linje " . __LINE__));
            $r = db_fetch_array(db_select("select beskrivelse, box2 from grupper where art = 'DG' and kodenr='{$r['gruppe']}'", __FILE__ . " linje " . __LINE__));
            $kontonr = $r['box2'];
            # Kontonr aendres fra at vaere leverandoerkontonr til finanskontonr
            $tekst = "Kontonummer for Debitorgruppe `{$r['beskrivelse']}` er ikke gyldigt";
            if (!$kontonr && $webservice) {
                return $tekst;
            } elseif (!$kontonr) {
                print "<BODY onLoad=\"javascript:alert('{$tekst}')\">";
            }
        } else {
            $kontonr = "58200";
        }
        # midleritdig kun til brug med POS
        if ($sum > 0) {
            $debet = $sum;
            $kredit = '0';
        } else {
            $debet = '0';
            $kredit = $sum * -1;
        }
        if ($valutakurs) {
            $kredit = afrund($kredit * $valutakurs / 100, 3);
            $debet = afrund($debet * $valutakurs / 100, 3);
        }
        # Omregning til DKR.
        $d_kontrol = $d_kontrol + $debet;
        $k_kontrol = $k_kontrol + $kredit;
        $debet = afrund($debet, 2);
        $kredit = afrund($kredit, 2);
        #echo "A insert into transaktioner (bilag, transdate, beskrivelse, kontonr, faktura, debet, kredit, kladde_id, afd, logdate, logtime, projekt, ansat, ordre_id) values ('0', '$transdate', '$beskrivelse', '$kontonr', '$fakturanr', '$debet', '$kredit', '0', $afd, '$logdate', '$logtime', '$projekt[0]', '$ansat', '$id')<br>";
        db_modify("insert into transaktioner (bilag, transdate, beskrivelse, kontonr, faktura, debet, kredit, kladde_id, afd, logdate, logtime, projekt, ansat, ordre_id) values ('0', '{$transdate}', '{$beskrivelse}', '{$kontonr}', '{$fakturanr}', '{$debet}', '{$kredit}', '0', {$afd}, '{$logdate}', '{$logtime}', '{$projekt['0']}', '{$ansat}', '{$id}')", __FILE__ . " linje " . __LINE__);
        if ($valutakurs) {
            $maxdif = 2;
        }
        #Der tillades 2 oeres afrundingsdiff
        $p = 0;
        $q = db_select("select distinct(projekt) from ordrelinjer where ordre_id={$id} and vare_id >\t'0'", __FILE__ . " linje " . __LINE__);
        while ($r = db_fetch_array($q)) {
            $p++;
            $projekt[$p] = $r['projekt'] * 1;
        }
        $projektantal = $p;
        for ($t = 1; $t <= 2; $t++) {
            for ($p = 1; $p <= $projektantal; $p++) {
                $y = 0;
                $tjek = array();
                $bogf_konto = array();
                if ($t == 1) {
                    #echo "select * from ordrelinjer where ordre_id='$id' and projekt='$projekt[$p]' and posnr>=0<br>";
                    $q = db_select("select * from ordrelinjer where ordre_id='{$id}' and projekt='{$projekt[$p]}' and posnr>=0", __FILE__ . " linje " . __LINE__);
                } else {
                    #echo "select * from ordrelinjer where ordre_id='$id' and projekt='$projekt[$p]' and posnr<0<br>";
                    $q = db_select("select * from ordrelinjer where ordre_id='{$id}' and projekt='{$projekt[$p]}' and posnr<0", __FILE__ . " linje " . __LINE__);
                }
                while ($r = db_fetch_array($q)) {
                    if ($valutakurs) {
                        $maxdif = $maxdif + 2;
                    }
                    #Og yderligere 2 pr ordrelinje.
                    $tmp = $projekt[$p] . ":" . $r['bogf_konto'];
                    if (!in_array($r['bogf_konto'], $bogf_konto)) {
                        $y++;
                        $bogf_konto[$y] = $r['bogf_konto'];
                        $pris[$y] = $r['pris'] * $r['antal'] - $r['pris'] * $r['antal'] * $r['rabat'] / 100;
                        $pris[$y] = afrund($pris[$y], 3);
                        #Afrunding tilfoejet 2009.01.26 grundet diff i ordre 98 i saldi_104
                    } else {
                        for ($a = 1; $a <= $y; $a++) {
                            if ($bogf_konto[$a] == $r['bogf_konto']) {
                                $pris[$a] = $pris[$a] + ($r['pris'] * $r['antal'] - $r['pris'] * $r['antal'] * $r['rabat'] / 100);
                                $pris[$a] = afrund($pris[$a], 3);
                                #Afrunding tilfoejet 2009.01.26 grundet diff i ordre 98 i saldi_104
                            }
                        }
                    }
                }
                $ordrelinjer = $y;
                #echo "ol $ordrelinjer<br>";
                for ($y = 1; $y <= $ordrelinjer; $y++) {
                    if ($bogf_konto[$y]) {
                        if ($pris[$y] > 0) {
                            $kredit = $pris[$y];
                            $debet = 0;
                        } else {
                            $kredit = 0;
                            $debet = $pris[$y] * -1;
                        }
                        if ($t == 1 && $valutakurs) {
                            $kredit = $kredit * $valutakurs / 100;
                            $debet = $debet * $valutakurs / 100;
                        }
                        # Omregning til DKR.
                        $kredit = afrund($kredit, 3);
                        $debet = afrund($debet, 3);
                        $d_kontrol = $d_kontrol + $debet;
                        $k_kontrol = $k_kontrol + $kredit;
                        $debet = afrund($debet, 2);
                        $kredit = afrund($kredit, 2);
                        #echo "B insert into transaktioner (bilag, transdate, beskrivelse, kontonr, faktura, debet, kredit, kladde_id, afd, logdate, logtime, projekt, ansat, ordre_id) values ('0', '$transdate', '$beskrivelse', '$bogf_konto[$y]', '$fakturanr', '$debet', '$kredit', '0','$afd', '$logdate', '$logtime', '$projekt[$p]', '$ansat', '$id')<br>";
                        db_modify("insert into transaktioner (bilag, transdate, beskrivelse, kontonr, faktura, debet, kredit, kladde_id, afd, logdate, logtime, projekt, ansat, ordre_id) values ('0', '{$transdate}', '{$beskrivelse}', '{$bogf_konto[$y]}', '{$fakturanr}', '{$debet}', '{$kredit}', '0','{$afd}', '{$logdate}', '{$logtime}', '{$projekt[$p]}', '{$ansat}', '{$id}')", __FILE__ . " linje " . __LINE__);
                    }
                }
            }
        }
        $query = db_select("select gruppe from adresser where id='{$konto_id}';", __FILE__ . " linje " . __LINE__);
        $row = db_fetch_array($query);
        $query = db_select("select box1 from grupper where art='DG' and kodenr='{$row['gruppe']}';", __FILE__ . " linje " . __LINE__);
        $row = db_fetch_array($query);
        $box1 = substr(trim($row[box1]), 1, 1);
        $query = db_select("select box1 from grupper where art='SM' and kodenr='{$box1}'", __FILE__ . " linje " . __LINE__);
        $row = db_fetch_array($query);
        $box1 = trim($row['box1']);
        if ($moms > 0) {
            $kredit = $moms;
            $debet = '0';
        } else {
            $kredit = '0';
            $debet = $moms * -1;
        }
        if ($valutakurs) {
            $kredit = afrund($kredit * $valutakurs / 100, 3);
            $debet = afrund($debet * $valutakurs / 100, 3);
        }
        # Omregning til DKR.
        $kredit = afrund($kredit, 3);
        $debet = afrund($debet, 3);
        $d_kontrol = $d_kontrol + $debet;
        $k_kontrol = $k_kontrol + $kredit;
        $diff = afrund($d_kontrol - $k_kontrol, 3);
        $absdiff = abs($diff);
        if ($moms && $valutakurs && $valutakurs != 100 && $absdiff >= 0.01 && $absdiff <= 0.05) {
            if ($debet > 0) {
                $debet = $debet + $diff;
                $d_kontrol = $d_kontrol + $diff;
            } elseif ($kredit > 0) {
                $kredit = $kredit + $diff;
                $k_kontrol = $k_kontrol + $diff;
            }
        }
        #echo "moms $moms<br>";
        $moms = afrund($moms, 2);
        #echo "C insert into transaktioner (bilag, transdate, beskrivelse, kontonr, faktura, debet, kredit, kladde_id, afd, logdate, logtime, projekt, ansat, ordre_id) values ('0', '$transdate', '$beskrivelse', '$box1', '$fakturanr', '$debet', '$kredit', '0', '$afd', '$logdate', '$logtime', '$projekt[0]', '$ansat', '$id')<br>";
        if ($moms) {
            db_modify("insert into transaktioner (bilag, transdate, beskrivelse, kontonr, faktura, debet, kredit, kladde_id, afd, logdate, logtime, projekt, ansat, ordre_id) values ('0', '{$transdate}', '{$beskrivelse}', '{$box1}', '{$fakturanr}', '{$debet}', '{$kredit}', '0', '{$afd}', '{$logdate}', '{$logtime}', '{$projekt['0']}', '{$ansat}', '{$id}')", __FILE__ . " linje " . __LINE__);
        }
        $valutakurs = $valutakurs * 1;
        #echo "update ordrer set status=4, valutakurs=$valutakurs where id=$id<br>";
        db_modify("update ordrer set status=4, valutakurs={$valutakurs} where id={$id}", __FILE__ . " linje " . __LINE__);
        db_modify("delete from ordrelinjer where ordre_id={$id} and posnr < 0", __FILE__ . " linje " . __LINE__);
    }
    $d_kontrol = afrund($d_kontrol, 2);
    $k_kontrol = afrund($k_kontrol, 2);
    #echo "$d_kontrol $k_kontrol<br>";
    if ($diff = afrund($d_kontrol - $k_kontrol)) {
        if ($valuta != 'DKK' && abs($diff) <= $maxdif) {
            #Der maa max vaere en afvigelse paa 1 oere pr ordrelinje m fremmed valuta;
            $debet = 0;
            $kredit = 0;
            if ($diff < 0) {
                $debet = $diff * -1;
            } else {
                $kredit = $diff;
            }
            $debet = afrund($debet, 2);
            $kredit = afrund($kredit, 2);
            #echo "D insert into transaktioner (bilag, transdate, beskrivelse, kontonr, faktura, debet, kredit, kladde_id, afd, logdate, logtime, projekt, ansat, ordre_id) values ('0', '$transdate', '$beskrivelse', '$difkto', '$fakturanr', '$debet', '$kredit', '0', '$afd', '$logdate', '$logtime', '$projekt[0]', '$ansat', '$id')<br>";
            db_modify("insert into transaktioner (bilag, transdate, beskrivelse, kontonr, faktura, debet, kredit, kladde_id, afd, logdate, logtime, projekt, ansat, ordre_id) values ('0', '{$transdate}', '{$beskrivelse}', '{$difkto}', '{$fakturanr}', '{$debet}', '{$kredit}', '0', '{$afd}', '{$logdate}', '{$logtime}', '{$projekt['0']}', '{$ansat}', '{$id}')", __FILE__ . " linje " . __LINE__);
        } else {
            # echo "Id	$id<br>";
            # echo "D	$d_kontrol K $k_kontrol<br>";
            $message = $db . " | Uoverensstemmelse i posteringssum: ordre_id={$id}, d={$d_kontrol}, k={$k_kontrol} | " . __FILE__ . " linje " . __LINE__ . " | " . $brugernavn . " " . date("Y-m-d H:i:s");
            $headers = 'From: fejl@saldi.dk' . "\r\n" . 'Reply-To: fejl@saldi.dk' . "\r\n" . 'X-Mailer: PHP/' . phpversion();
            mail('*****@*****.**', 'SALDI Fejl', $message, $headers);
            if (!$webservice) {
                print "<BODY onLoad=\"javascript:alert('Der er konstateret en uoverensstemmelse i posteringssummen, ordre {$ordrenr}, kontakt DANOSOFT p&aring; telefon 4690 2208')\">";
            } else {
                return "Der er konstateret en uoverensstemmelse i posteringssummen, ordre {$ordrenr}, kontakt DANOSOFT p&aring; telefon 4690 2208' debet {$debet} != kredit {$kredit}";
            }
            #     	print "<meta http-equiv=\"refresh\" content=\"0;URL=ordre.php?id=$id\">";
            exit;
        }
    }
    if ($title != "Massefakturering" && !$webservice) {
        genberegn($regnaar);
    }
    return $svar;
}
Example #14
0
function autoudlign($udlign)
{
    $y = 0;
    $v = 0;
    #	global $regnaar;
    global $dato_til;
    #	if ($r = db_fetch_array(db_select("select box1, box2, box3, box4 from grupper where art='RA' and kodenr='$regnaar'",__FILE__ . " linje " . __LINE__))){
    #		if ($maaned_til <= $r['box3']) $s**t="31-".trim($maaned_til)."-".$slutaar=trim($r['box4']);
    #		else $s**t="31-".trim($maaned_til)."-".$slutaar=trim($r['box2']);
    #
    if (!$dato_til) {
        $periodeslut = '2999-12-31';
    } else {
        $periodeslut = usdate($dato_til);
    }
    transaktion('begin');
    $udlign = $udlign * 1;
    #cho "udlign $udlign<br>";
    if ($udlign > 0) {
        #sker kun når kontoens saldo er 0
        db_modify("update openpost set udlignet='0' where udlignet is NULL and konto_id='{$udlign}'", __FILE__ . " linje " . __LINE__);
        db_modify("update openpost set udlign_id='0' where udlign_id is NULL and konto_id='{$udlign}'", __FILE__ . " linje " . __LINE__);
        $q1 = db_select("SELECT MAX(udlign_id) as udlign_id from openpost", __FILE__ . " linje " . __LINE__);
        if ($r1 = db_fetch_array($q1)) {
            $y = $r1['udlign_id'];
        }
        $tilfoj = "konto_id={$udlign} and udlignet!='1' and";
    } else {
        $tilfoj = "udlignet='1' and";
    }
    #cho "tilføj: $tilfoj<br>";
    $sum = 0;
    for ($i = 1; $i <= 5; $i++) {
        $udligndate = "1970-01-01";
        $kontrol = array();
        $x = 0;
        $qtxt = "SELECT id, faktnr,amount,konto_id,transdate,valutakurs from openpost where {$tilfoj} ";
        if ($i <= 2) {
            $qtxt .= "faktnr != '' and transdate <= '{$periodeslut}' and udlign_id = '0' order by transdate";
        } elseif ($i == 3) {
            $qtxt .= "faktnr != '' and transdate <= '{$periodeslut}' and udlign_id = '0' order by transdate";
        } elseif ($i == 4) {
            $qtxt .= "faktnr = '' and transdate <= '{$periodeslut}' and udlign_id = '0' order by transdate";
        } elseif ($i == 5) {
            $qtxt .= "udlign_id = '0' and transdate <= '{$periodeslut}' order by transdate";
        }
        #cho __line__." X $x $qtxt<br>";
        $q1 = db_select($qtxt, __FILE__ . " linje " . __LINE__);
        while ($r1 = db_fetch_array($q1)) {
            #cho "R1 $r1[id]<br>";
            if (!in_array($r1['id'], $kontrol)) {
                $x++;
                $id[$x] = $r1['id'];
                #cho "ID $id[$x]<br>";
                $faktnr[$x] = $r1['faktnr'];
                $amount[$x] = $r1['amount'] * -1;
                if ($r1['transdate'] > $udligndate) {
                    $udligndate = $r1['transdate'];
                }
                $sum += $r1['amount'] * $r1['valutakurs'] / 100;
                $konto_id[$x] = $r1['konto_id'];
            }
            #cho __line__." $sum Amount $amount[$x]<br>";
        }
        $faktantal = $x;
        if ($sum == 0) {
            $y++;
            for ($x = 1; $x <= $faktantal; $x++) {
                #cho "update openpost set udlignet='1', udlign_id='$y', udlign_date='$udligndate' where id='$id[$x]'<br>";
                db_modify("update openpost set udlignet='1', udlign_id='{$y}', udlign_date='{$udligndate}' where id='{$id[$x]}'", __FILE__ . " linje " . __LINE__);
            }
        } else {
            #cho "faktantal $faktantal<br>";
            for ($x = 1; $x <= $faktantal; $x++) {
                if ($i == 1) {
                    $qtxt = "SELECT id, transdate, faktnr from openpost where {$tilfoj} id != '{$id[$x]}' and amount='{$amount[$x]}' and konto_id='{$konto_id[$x]}' and udlignet='1' and transdate <= '{$periodeslut}' and udlign_id = '0' order by transdate";
                } elseif ($i == 2) {
                    $qtxt = "SELECT id, transdate from openpost where {$tilfoj} id != '{$id[$x]}' and amount='{$amount[$x]}' and konto_id='{$konto_id[$x]}' and  udlign_id = '0' and udlignet='1'  and transdate <= '{$periodeslut}' order by transdate";
                } elseif ($i <= 4) {
                    $qtxt = "SELECT id, transdate from openpost where {$tilfoj} id != '{$id[$x]}' and amount='{$amount[$x]}' and konto_id='{$konto_id[$x]}' and  udlign_id = '0' and udlignet='1'  and transdate <= '{$periodeslut}' order by transdate";
                } elseif ($i == 5) {
                    $qtxt = "SELECT id, transdate from openpost where {$tilfoj} id != '{$id[$x]}' and  udlign_id = '0' and transdate <= '{$periodeslut}'";
                }
                $z = 0;
                #cho __line__." X $x $qtxt<br>";
                $q1 = db_select($qtxt, __FILE__ . " linje " . __LINE__);
                if (($r1 = db_fetch_array($q1)) && !in_array($r1[id], $kontrol)) {
                    $z++;
                    $id2 = $r1['id'];
                    #cho "ID2 $id2<br>	";
                    $transdate = $r1['transdate'];
                }
                if ($z == 1 && !in_array($id[$x], $kontrol) && !in_array($id2, $kontrol)) {
                    $y++;
                    $v++;
                    $kontrol[$v] = $id[$x];
                    $v++;
                    $kontrol[$v] = $id2;
                    #cho __line__." update openpost set udlignet='1', udlign_id='$y', udlign_date='$transdate' where id='$id[$x]'<br>";
                    db_modify("update openpost set udlignet='1', udlign_id='{$y}', udlign_date='{$transdate}' where id='{$id[$x]}'", __FILE__ . " linje " . __LINE__);
                    #cho __line__." update openpost set udlignet='1', udlign_id='$y', udlign_date='$transdate' where id='$id[$x]'<br>";
                    db_modify("update openpost set udlignet='1', udlign_id='{$y}', udlign_date='{$transdate}' where id='{$id2}'", __FILE__ . " linje " . __LINE__);
                }
            }
        }
        $y++;
        #cho "$y<br>";
        if ($udlign > 0) {
            #Hvis der er nogen tilbage som ikke er blevet udlignet
            $q1 = db_select("SELECT id, transdate from openpost where konto_id='{$udlign}' and udlignet = '0' and transdate <= '{$periodeslut}'", __FILE__ . " linje " . __LINE__);
            while ($r1 = db_fetch_array($q1)) {
                #cho __line__." update openpost set udlignet='1', udlign_id='$y', udlign_date='$r1[transdate]' where id='$r1[id]'<br>";
                db_modify("update openpost set udlignet='1', udlign_id='{$y}', udlign_date='{$r1['transdate']}' where id='{$r1['id']}'", __FILE__ . " linje " . __LINE__);
            }
        }
    }
    #exit;
    transaktion('commit');
}
Example #15
0
function kontosaldo($dato_fra, $dato_til, $konto_fra, $konto_til, $rapportart, $kontoart)
{
    #	global $connection;
    global $top_bund;
    global $md;
    global $returside;
    global $popup;
    global $bgcolor;
    global $bgcolor5;
    global $menu;
    $kilde = if_isset($_GET['kilde']);
    $kilde_kto_fra = if_isset($_GET['kilde_kto_fra']);
    $kilde_kto_til = if_isset($_GET['kilde_kto_til']);
    if ($popup) {
        $returside = "../includes/luk.php";
    } elseif ($kilde == 'openpost') {
        $returside = "rapport.php?rapportart=openpost&submit=ok&dato_fra={$dato_fra}&dato_til={$dato_til}&konto_fra={$kilde_kto_fra}&konto_til={$kilde_kto_til}";
    } else {
        $returside = "rapport.php?dato_fra={$dato_fra}&dato_til={$dato_til}&konto_fra={$konto_fra}&konto_til={$konto_til}";
    }
    $returside = "rapport.php?dato_fra={$dato_fra}&dato_til={$dato_til}&konto_fra={$konto_fra}&konto_til={$konto_til}";
    $luk = "<a accesskey=L href=\"{$returside}\">";
    $currentdate = date("Y-m-d");
    if ($dato_fra && $dato_til) {
        $fromdate = usdate($dato_fra);
        $todate = usdate($dato_til);
    } elseif ($dato_fra && !$dato_til) {
        #		$fromdate=usdate($dato_fra);
        $todate = usdate($dato_fra);
    }
    print "<table width = 100% cellpadding=\"1\" cellspacing=\"1\" border=\"0\"><tbody>";
    if ($menu == 'T') {
        if ($kontoart == 'K') {
            $returnpath = "../kreditor/";
        } else {
            $returnpath = "../debitor/";
        }
        $leftbutton = "<a title=\"Klik her for at komme til startsiden\" href=\"{$returnpath}/rapport.php\" accesskey=\"L\">LUK</a>";
        $rightbutton = NULL;
        $vejledning = NULL;
        include "../includes/topmenu.php";
        print "<div id=\"topmenu\" style=\"position:absolute;top:6px;right:0px\">";
    } elseif ($menu == 'S') {
        include "../includes/sidemenu.php";
    } else {
        print "<tr><td colspan=\"8\" height=\"8\">";
        print "<table width=\"100%\" align=\"center\" border=\"0\" cellspacing=\"3\" cellpadding=\"0\"><tbody>";
        #B
        print "<td width=\"10%\" {$top_bund}>{$luk} Luk</a></td>";
        if ($kontoart == 'K') {
            $tekst = "Kreditorrapport - kontosaldo";
        } else {
            $tekst = "Debitorapport - kontosaldo";
        }
        print "<td width=\"80%\" {$top_bund}>{$tekst}</td>";
        print "<td width=\"10%\" {$top_bund}><br></td>";
        print "</tbody></table>";
        #B s**t
        print "</td></tr>\n";
    }
    if (is_numeric($konto_fra) && is_numeric($konto_fra)) {
        $qtxt = "select id from adresser where " . nr_cast('kontonr') . ">='{$konto_fra}' and " . nr_cast('kontonr') . "<='{$konto_til}' and art = '{$kontoart}' order by " . nr_cast('kontonr') . "";
    } elseif ($konto_fra && $konto_fra != '*') {
        $konto_fra = str_replace("*", "%", $konto_fra);
        $tmp1 = strtolower($konto_fra);
        $tmp2 = strtoupper($konto_fra);
        $qtxt = "select id from adresser where (firmanavn like '{$konto_fra}' or lower(firmanavn) like '{$tmp1}' or upper(firmanavn) like '{$tmp2}') and art = '{$kontoart}' order by firmanavn";
    } else {
        $qtxt = "select id from adresser where art = '{$kontoart}' order by firmanavn";
    }
    # #cho "qtxt $qtxt<br>";
    $kontonr = array();
    $x = 0;
    $query = db_select("{$qtxt}", __FILE__ . " linje " . __LINE__);
    while ($row = db_fetch_array($query)) {
        $x++;
        $konto_id[$x] = $row[id];
    }
    $kto_id = array();
    $kontoantal = $x;
    $x = 0;
    # finder alle konti med bevaegelser i den anfoerte periode eller aabne poster fra foer perioden
    for ($y = 1; $y <= $kontoantal; $y++) {
        #		if ($fromdate && $todate) $qtxt="select amount from openpost where transdate>='$fromdate' and transdate<='$todate' and konto_id='$konto_id[$y]'";
        if ($todate) {
            $qtxt = "select amount from openpost where transdate<='{$todate}' and konto_id='{$konto_id[$y]}'";
        } else {
            $qtxt = "select amount from openpost where konto_id='{$konto_id[$y]}'";
        }
        # #cho "Z $qtxt<br>";
        $query = db_select("{$qtxt}", __FILE__ . " linje " . __LINE__);
        while ($row = db_fetch_array($query)) {
            if (!in_array($konto_id[$y], $kto_id)) {
                $x++;
                $kto_id[$x] = $konto_id[$y];
            }
        }
    }
    $kontoantal = $x;
    for ($x = 1; $x <= $kontoantal; $x++) {
        $r = db_fetch_array(db_select("select\t* from adresser where id={$kto_id[$x]}", __FILE__ . " linje " . __LINE__));
        $kontonr[$x] = stripslashes($r['kontonr']);
        $firmanavn[$x] = stripslashes($r['firmanavn']);
        $kontosum[$x] = 0;
        $primo[$x] = 0;
        $primoprint[$x] = 0;
        $bgcolor = '';
        if ($todate) {
            $qtxt = "select * from openpost where konto_id='{$kto_id[$x]}' and transdate<='{$todate}' order by transdate, faktnr, refnr";
        } else {
            $qtxt = "select * from openpost where konto_id='{$kto_id[$x]}' order by transdate, faktnr, refnr";
        }
        # #cho "$qtxt<br>";
        $q2 = db_select("{$qtxt}", __FILE__ . " linje " . __LINE__);
        while ($r2 = db_fetch_array($q2)) {
            # -> 2009.05.05
            $amount = afrund($r2['amount'], 2);
            $oppvaluta = $r2['valuta'];
            if (!$oppvaluta) {
                $oppvaluta = 'DKK';
            }
            $oppkurs = $r2['valutakurs'] * 1;
            if (!$oppkurs) {
                $oppkurs = 100;
            }
            $dkkamount = $amount;
            if ($oppvaluta == 'DKK') {
                $belob = dkdecimal($amount);
            } else {
                $belob = dkdecimal($amount * 100 / $oppkurs);
            }
            $forfaldsdag = $r2['forfaldsdate'];
            $transdate = $r2['transdate'];
            if ($oppvaluta != 'DKK' && $oppkurs != 100) {
                #postering foert i anden valuta end Debitors som er DKK
                $amount = $amount * $oppkurs / 100;
            }
            $kontosum[$x] = $kontosum[$x] + $amount;
        }
        $totalsum = $totalsum + $kontosum[$x];
        if (afrund($kontosum[$x], 2)) {
            if ($linjebg != $bgcolor) {
                $linjebg = $bgcolor;
                $color = '#000000';
            } else {
                $linjebg = $bgcolor5;
                $color = '#000000';
            }
            print "<tr bgcolor=\"{$linjebg}\"><td width=\"200px\">{$kontonr[$x]}</td><td>{$firmanavn[$x]}</td>";
            $tmp = dkdecimal($kontosum[$x]);
            print "<td align=right> {$tmp}</td></tr>\n";
        }
    }
    $tmp = dkdecimal($totalsum);
    print "<tr><td colspan=\"3\"><hr></td></tr>\n";
    print "<tr><td><b>ialt</b></td><td  colspan=\"3\" align=\"right\"><b>{$tmp}</b><td></tr>\n";
    print "</tbody></table>";
}
Example #16
0
$qtxt="select * from adresser where art = $art order by firmanavn";
$q=db_select($qtxt,__FILE__ . " linje " . __LINE__);
while($r=db_fetch_array($q)){
	$konto_id[$x]=$r['konto_id'];
	$kontonr[$x]=$r['kontonr'];
	$firmanavn[$x]=$r['firmanavn'];
	$x;
}
*/
$x = 0;
$y = 0;
$qtxt = "select ordrelinjer.vare_id,ordrelinjer.varenr,ordrelinjer.beskrivelse,ordrelinjer.antal,ordrelinjer.pris,ordrelinjer.rabat,";
$qtxt .= "ordrer.konto_id,ordrer.kontonr,ordrer.firmanavn,ordrer.id,ordrer.fakturadate from ordrer,ordrelinjer,adresser ";
$qtxt .= "where ordrelinjer.ordre_id=ordrer.id and adresser.id=ordrer.konto_id and adresser.art='{$art}' ";
if ($dato_fra && $dato_til) {
    $qtxt .= "and ordrer.fakturadate>='" . usdate($dato_fra) . "' and ordrer.fakturadate<='" . usdate($dato_til) . "' ";
}
if ($konto_fra && $konto_til) {
    $qtxt .= "and ordrer.kontonr>='{$konto_fra}' and ordrer.kontonr<='{$konto_til}' ";
} elseif ($kontonr) {
    $qtxt .= "and ordrer.kontonr like '" . str_replace('*', '%', $kontonr) . "' ";
}
if ($firmanavn) {
    $qtxt .= "and lower(ordrer.firmanavn) like '" . str_replace('*', '%', strtolower($firmanavn)) . "' ";
}
if ($adresse) {
    $qtxt .= "and ordrer.adresse like '" . str_replace('*', '%', strtolower($adresse)) . "' ";
}
if ($postnr) {
    $qtxt .= "and ordrer.postnr like '" . str_replace('*', '%', strtolower($postnr)) . "' ";
}
Example #17
0
function indsaet_linjer($kladde_id, $bilag, $dato, $beskrivelse, $d_type, $debet, $k_type, $kredit, $faktura, $belob, $afd, $ansat, $projekt, $valuta, $forfaldsdato, $betal_id, $momsfri)
{
    global $fejl;
    $date = usdate($dato);
    $amount = usdecimal($belob);
    if ($forfaldsdato) {
        $forfaldsdate = usdate($forfaldsdato);
    } else {
        $forfaldsdate = NULL;
    }
    $bilag = str_replace('+', ':', $bilag);
    #jeg ved ikke hvorfor, men den vil ikke splitte med "+"
    list($bilag, $antal) = explode(':', $bilag);
    if ($ansat) {
        $r = db_fetch_array(db_select("select id from adresser where art = 'S'", __FILE__ . " linje " . __LINE__));
        $tmp = $r['id'] * 1;
        $r = db_fetch_array(db_select("select id from ansatte where initialer = '{$ansat}' and konto_id = '{$tmp}'", __FILE__ . " linje " . __LINE__));
        $ansat_id = $r['id'];
    }
    $ansat_id = $ansat_id * 1;
    if ($valuta && $valuta != 'DKK') {
        $r = db_fetch_array(db_select("select kodenr from grupper where box1 = '{$valuta}' and art = 'VK'", __FILE__ . " linje " . __LINE__));
        if ($r['kodenr']) {
            $valutakode = $r['kodenr'] * 1;
        } else {
            $fejl = 1;
            print "<BODY onLoad=\"javascript:alert('Valuta {$valuta} eksisterer ikke (Bilag {$bilag})')\">";
        }
    } else {
        $valutakode = 0;
    }
    if (!$fejl) {
        if ($antal == "=") {
            if (!$forfaldsdate) {
                $forfaldsdate = $date;
            }
            db_modify("insert into kassekladde (bilag,kladde_id,transdate,beskrivelse,d_type,debet,k_type,kredit,faktura,amount,afd,ansat,projekt,valuta,forfaldsdate,betal_id,momsfri) values ('{$bilag}','{$kladde_id}','{$date}','{$beskrivelse}','{$d_type}','{$debet}','{$k_type}','{$kredit}','{$faktura}','{$amount}','{$afd}','{$ansat_id}','{$projekt}','{$valutakode}','{$forfaldsdate}','{$betal_id}','{$momsfri}')", __FILE__ . " linje " . __LINE__);
        } else {
            $antal = $antal * 1;
        }
        if ($antal > 25) {
            #20150521
            print "<BODY onLoad=\"javascript:alert('Du forsøger at indsætte {$antal} bilagslinjer! Max er 25!')\">";
            $antal = 0;
        }
        for ($x = 1; $x <= $antal; $x++) {
            db_modify("insert into kassekladde (bilag, kladde_id, transdate) values ('{$bilag}', '{$kladde_id}', '{$date}')", __FILE__ . " linje " . __LINE__);
            db_modify("insert into tmpkassekl (bilag, kladde_id, transdate) values ('{$bilag}', '{$kladde_id}', '{$dato}')", __FILE__ . " linje " . __LINE__);
        }
    }
    if (!$fokus) {
        $fokus = "ny_kladdenote";
    }
}
Example #18
0
//2015.03.16
//2015.04.09 Sidste side blev ikke udskrevet v. flere sider. Ændrer $side til $side-1. 20150409
@session_start();
$s_id = session_id();
include "../includes/connect.php";
include "../includes/online.php";
include "../includes/std_func.php";
include "../includes/formfunk.php";
include "../includes/forfaldsdag.php";
$konto_fra = if_isset($_GET['konto_fra']);
$konto_til = if_isset($_GET['konto_til']);
$dato_fra = if_isset($_GET['dato_fra']);
$dato_til = if_isset($_GET['dato_til']);
$kontoart = if_isset($_GET['kontoart']);
$dato_fra ? $dato_fra = usdate($dato_fra) : ($dato_fra = "1970-01-01");
$dato_til = usdate($dato_til);
$formular = 11;
$fsize = filesize("../includes/faktinit.ps");
$fp = fopen("../includes/faktinit.ps", "r");
$initext = fread($fp, $fsize);
fclose($fp);
if (!$formularsprog) {
    $formularsprog = 'dansk';
}
$r = db_fetch_array(db_select("select count(id) as antal from formularer where formular = '{$formular}' and lower(sprog)='{$formularsprog}'", __FILE__ . " linje " . __LINE__));
if ($r['antal'] < 5) {
    include "../includes/formularimport.php";
    formularimport("../importfiler/formular.txt", '11');
}
print "<!-- kommentar for at skjule uddata til siden \n";
if (!file_exists("../logolib/{$db_id}")) {
Example #19
0
     $fejllinje = 1;
     $fejldato++;
 } elseif ($felt1 == '"H"') {
     list($felt1, $k_kontonr, $bilag, $faktnr, $faktdate, $betaldate, $transdate, $belob, $moms, $art, $valuta, $betal_id, $beskrivelse, $tmp, $tmp) = split(chr(9), $linje);
     #echo "$faktdate";
     $fejllinje = 0;
     $k_kontonr = str_replace("\"", "", $k_kontonr);
     $faktnr = str_replace("\"", "", $faktnr);
     $beskrivelse = str_replace("\"", "", $beskrivelse);
     $valuta = str_replace("\"", "", $valuta);
     $betal_id = str_replace("\"", "", $betal_id);
     $faktdato = substr($faktdate, 4, 2) . substr($faktdate, 2, 2) . substr($faktdate, 0, 2);
     $faktdate = usdate($faktdato);
     #echo " - $faktdate<br>";
     $betaldato = substr($betaldate, 4, 2) . substr($betaldate, 2, 2) . substr($betaldate, 0, 2);
     $forfaldsdate = usdate($betaldato);
     $amount = usdecimal($belob);
     if ($art == '"K"') {
         $amount = $amount * -1;
     }
     $r = db_fetch_array(db_select("select kodenr from grupper where art='VK' and box1='{$valuta}'", __FILE__ . " linje " . __LINE__));
     $valutakode = $r['kodenr'] * 1;
     db_modify("insert into kassekladde(bilag,transdate,beskrivelse,k_type,faktura,amount,kladde_id,kredit,valuta,forfaldsdate,betal_id) values ('{$bilag}','{$faktdate}','{$beskrivelse}','K','{$faktnr}','{$amount}','{$kladde_id}','{$k_kontonr}','{$valutakode}','{$forfaldsdate}','{$betal_id}')", __FILE__ . " linje " . __LINE__);
 } elseif ($felt1 == '"K"') {
     list($felt1, $kontonr, $projekt, $ansat, $beskrivelse, $belob, $moms) = split(chr(9), $linje);
     $kontonr = str_replace("\"", "", $kontonr);
     $projekt = str_replace("\"", "", $projekt);
     $beskrivelse = str_replace("\"", "", $beskrivelse);
     if ($projekt) {
         $projekt = $projekt * 1;
         $extra = ",projekt";
Example #20
0
if (isset($_POST['salgspris']) && $_POST['salgspris']) {
    $id = $_POST['id'];
    $startdato = $_POST['startdato'];
    $slutdato = $_POST['slutdato'];
    $starttid = $_POST['starttid'];
    $sluttid = $_POST['sluttid'];
    $salgspris = $_POST['salgspris'];
    $kostpris = $_POST['kostpris'];
    $ugedag = $_POST['ugedag'];
    $slet = $_POST['slet'];
    for ($x = 0; $x <= count($id) + 1; $x++) {
        if ($slet[$x] && $id[$x]) {
            db_modify("delete from varetilbud where id={$id[$x]}", __FILE__ . " linje " . __LINE__);
        } else {
            $startdag[$x] = strtotime(usdate($startdato[$x]));
            $slutdag[$x] = strtotime(usdate($slutdato[$x]));
            if (!$starttid[$x]) {
                $starttid[$x] = "00:00:00";
            } else {
                $starttid[$x] = tjektid($starttid[$x]);
            }
            if (!$sluttid[$x]) {
                $sluttid[$x] = "24:00:00";
            } else {
                $sluttid[$x] = tjektid($sluttid[$x]);
            }
            $salgspris[$x] *= 0.8;
            $kostpris[$x] *= 1;
            if ($id[$x]) {
                $qtxt = "update varetilbud set";
                $qtxt .= " startdag='{$startdag[$x]}',slutdag='{$slutdag[$x]}',starttid='{$starttid[$x]}',sluttid='{$sluttid[$x]}',ugedag='{$ugedag[$x]}',";
Example #21
0
include "../includes/online.php";
include "../includes/std_func.php";
include "../includes/forfaldsdag.php";
include "../includes/ordrefunc.php";
#	include("../includes/db_query.php");
if ($popup) {
    $returside = "../includes/luk.php";
} else {
    $returside = "../index/menu.php";
}
if (isset($_POST['submit']) && $_POST['submit']) {
    $submit = strtolower(trim($_POST['submit']));
    $varegruppe = trim($_POST['varegruppe']);
    $afd = $_POST['afd'];
    $date_from = usdate($_POST['dato_fra']);
    $date_to = usdate($_POST['dato_til']);
    #	$md=$_POST['md'];
    $varenr = $_POST['varenr'];
    $varenavn = $_POST['varenavn'];
    $detaljer = $_POST['detaljer'];
    $vk_kost = $_POST['vk_kost'];
    $varenr = trim($varenr);
    $varenavn = trim($varenavn);
} else {
    $varegruppe = if_isset($_GET['varegruppe']);
    $afd = if_isset($_GET['afd']);
    $date_from = if_isset($_GET['date_from']);
    $date_to = if_isset($_GET['date_to']);
    $varenr = if_isset($_GET['varenr']);
    $varenavn = if_isset($_GET['varenavn']);
    $detaljer = $_GET['detaljer'];
Example #22
0
function flytordre($kladde_id, $ordre_id)
{
    global $regnaar;
    global $connection;
    global $aarstart;
    global $aarslut;
    include "../includes/forfaldsdag.php";
    transaktion("begin");
    if (!$aarstart) {
        $query = db_select("select box1, box2, box3, box4 from grupper where art='RA' and kodenr='{$regnaar}'", __FILE__ . " linje " . __LINE__);
        if ($row = db_fetch_array($query)) {
            $year = trim($row['box2']);
            $aarstart = trim($year . $row['box1']);
            $year = trim($row['box4']);
            $aarslut = trim($year . $row['box3']);
        }
    }
    $query = db_select("select box1, box2, box3, box4, box5 from grupper where art='RB'", __FILE__ . " linje " . __LINE__);
    if ($row = db_fetch_array($query)) {
        if (trim($row['box3']) == "on") {
            $faktbill = 1;
        } else {
            $faktbill = 0;
        }
        if (trim($row['box4']) == "on") {
            $modtbill = 1;
        } else {
            $modtbill = 0;
        }
        if (trim($row['box5']) == "on") {
            $no_faktbill = 1;
            $faktbill = 0;
        } else {
            $no_faktbill = 0;
        }
    }
    $x = 0;
    $query = db_select("select * from ordrer where status=3 and id='{$ordre_id}' order by fakturadate", __FILE__ . " linje " . __LINE__);
    if ($row = db_fetch_array($query)) {
        list($year, $month, $day) = split('-', $row['fakturadate']);
        $ym = $year . $month;
        if ($ym >= $aarstart && $ym <= $aarslut) {
            $id = $row['id'];
            $art = $row['art'];
            $konto_id = $row['konto_id'];
            $kontonr = str_replace(" ", "", $row['kontonr']);
            $firmanavn = trim($row['firmanavn']);
            $modtagelse = $row['modtagelse'];
            $transdate = $row['fakturadate'];
            $forfaldsdate = usdate(forfaldsdag($transdate, $row['betalingsbet'], $row['betalingsdage']));
            $fakturanr = addslashes($row['fakturanr']);
            $ordrenr = $row['ordrenr'];
            $valuta = $row['valuta'];
            if ($valuta && $valuta != 'DKK') {
                $r = db_fetch_array(db_select("select kodenr from grupper where box1='{$valuta}' and art='VK'", __FILE__ . " linje " . __LINE__));
                $valuta = $r['kodenr'] * 1;
            } else {
                $valuta = 0;
            }
            $projekt[0] = $row['projekt'];
            $moms = $row['moms'] * 1;
            $sum = $row['sum'] + $moms;
            $ordreantal = $x;
            $q = db_select("select id, afd from ansatte where navn = '{$row['ref']}'", __FILE__ . " linje " . __LINE__);
            $r = db_fetch_array($q);
            $afd = $r['afd'] * 1;
            $ansat = $r['id'] * 1;
            if (!$konto_id) {
                $firmanavn = "Kontantsalg";
                $betalt = $row['betalt'];
                $retur = $betalt - $sum;
                $betaling1 = $row['felt_1'];
                $betalt1 = $row['felt_2'] * 1;
                $betaling2 = $row['felt_3'];
                $betalt2 = $row['felt_4'] * 1;
                $kasse = $row['felt_5'] * 1;
                $kortnavn = array();
                $kortkto = array();
                $r = db_fetch_array(db_select("select * from grupper where art = 'POS' and kodenr='{$kasse}'", __FILE__ . " linje " . __LINE__));
                $tmparray = explode(chr(9), $r['box2']);
                $kontonr = $tmparray[$kasse - 1];
                $kortnavn = explode(chr(9), $r['box5']);
                $kortkto = explode(chr(9), $r['box6']);
                $tmparray = explode(chr(9), $r['box7']);
                $momsgruppe = $tmparray[$kasse - 1];
                $z = 0;
                if ($betaling1 == 'Kontant') {
                    $kortkto1 = $kontonr;
                    $betalt1 = $betalt1 - $retur;
                    $retur = 0;
                }
                if ($betaling2 == 'Kontant') {
                    $kortkto2 = $kontonr;
                    $betalt2 = $betalt2 - $retur;
                    $retur = 0;
                }
                while ($kortkto[$z]) {
                    if ($betaling1 == $kortnavn[$z]) {
                        $kortkto1 = $kortkto[$z];
                    }
                    if ($betaling2 == $kortnavn[$z]) {
                        $kortkto2 = $kortkto[$z];
                    }
                    $z++;
                }
                $r = db_fetch_array(db_select("select box1 from grupper where art='SM' and kodenr='{$momskode}'", __FILE__ . " linje " . __LINE__));
                $box1 = trim($r['box1']);
            }
            if (substr($art, 0, 1) == 'K' && $modtagelse > 0 && $modtbill == 1) {
                $bilag = $modtagelse;
            } elseif ((substr($art, 0, 1) == 'D' || $art == 'PO') && $no_faktbill == 1) {
                $bilag = '0';
            } elseif ((substr($art, 0, 1) == 'D' || $art == 'PO') && $faktbill == 1) {
                $bilag = trim($fakturanr);
            } else {
                $tmp1 = substr($aarstart, 0, 4) . "-" . substr($aarstart, 4, 2) . "-01";
                $tmp2 = 31;
                while (!checkdate(substr($aarslut, 4, 2), $tmp2, substr($aarslut, 0, 4))) {
                    $tmp2--;
                    if ($tmp2 < 28) {
                        break 1;
                    }
                    #20130210
                }
                $tmp2 = substr($aarslut, 0, 4) . "-" . substr($aarslut, 4, 2) . "-" . $tmp2;
                $row = db_fetch_array(db_select("select MAX(bilag) as bilag from kassekladde where transdate>='{$tmp1}' and transdate<='{$tmp2}'", __FILE__ . " linje " . __LINE__));
                $bilag = $row['bilag'] + 1;
            }
            $p = 0;
            $q = db_select("select distinct(projekt) from ordrelinjer where ordre_id={$id} and vare_id >\t'0'", __FILE__ . " linje " . __LINE__);
            while ($r = db_fetch_array($q)) {
                $p++;
                $projekt[$p] = $r['projekt'];
            }
            $projektantal = $p;
            if (substr($art, 0, 1) == 'K') {
                if (substr($art, 1, 1) == 'K') {
                    $beskrivelse = "Lev. Kreditnota - " . $fakturanr;
                } else {
                    $beskrivelse = "Lev.Faktura - " . $fakturanr;
                }
                $beskrivelse = addslashes($beskrivelse);
                db_modify("insert into kassekladde (bilag, transdate, beskrivelse, k_type, kredit, faktura, amount, momsfri, kladde_id, afd, valuta, projekt, ansat, ordre_id) values ('{$bilag}', '{$transdate}', '{$beskrivelse}', 'K', '{$kontonr}', '{$fakturanr}', '{$sum}', 'on', '{$kladde_id}', '{$afd}', '{$valuta}', '{$projekt['0']}', '{$ansat}', '{$ordre_id}')", __FILE__ . " linje " . __LINE__);
                for ($p = 1; $p <= $projektantal; $p++) {
                    $query = db_select("select * from ordrelinjer where ordre_id='{$id}' and projekt = '{$projekt[$p]}'", __FILE__ . " linje " . __LINE__);
                    $y = 0;
                    $bogf_konto = array();
                    while ($row = db_fetch_array($query)) {
                        $bogf_kto = $row['bogf_konto'];
                        if ($valuta != 'DKK' && $row['posnr'] < 0) {
                            $bogf_kto = $bogf_kto * -1;
                        }
                        if (!in_array($bogf_kto, $bogf_konto)) {
                            $y++;
                            $posnr[$y] = $row['posnr'];
                            $bogf_konto[$y] = trim($bogf_kto);
                            $pris[$y] = afrund($row['pris'] * $row['antal'] - $row['pris'] * $row['antal'] * $row['rabat'] / 100, 3);
                        } else {
                            for ($a = 1; $a <= $y; $a++) {
                                if ($bogf_konto[$a] == $bogf_kto) {
                                    $pris[$a] = $pris[$a] + afrund($row['pris'] * $row['antal'] - $row['pris'] * $row['antal'] * $row['rabat'] / 100, 3);
                                }
                            }
                        }
                    }
                    if ($valuta) {
                        for ($a = 1; $a <= $y; $a++) {
                            $bogf_konto[$a] = abs($bogf_konto[$a]);
                        }
                    }
                    $ordrelinjer = $y;
                    for ($y = 1; $y <= $ordrelinjer; $y++) {
                        if ($bogf_konto[$y]) {
                            if ($posnr[$y] < 0) {
                                $tmpvaluta = 0;
                            } else {
                                $tmpvaluta = $valuta;
                            }
                            $kontoart[$y] = $art;
                            if ($pris[$y] < 0) {
                                $pris[$y] = $pris[$y] * -1;
                                db_modify("insert into kassekladde (bilag, transdate, beskrivelse, k_type, kredit, faktura, amount, momsfri, kladde_id, afd, valuta, projekt, ansat, ordre_id) values ('{$bilag}', '{$transdate}', '{$beskrivelse}', 'F', '{$bogf_konto[$y]}', '{$fakturanr}', '{$pris[$y]}', 'on', '{$kladde_id}', '{$afd}', '{$tmpvaluta}', '{$projekt[$p]}', '{$ansat}', '{$ordre_id}')", __FILE__ . " linje " . __LINE__);
                            } elseif ($pris[$y] > 0) {
                                db_modify("insert into kassekladde (bilag, transdate, beskrivelse, d_type, debet, faktura, amount, momsfri, kladde_id, afd, valuta, projekt, ansat, ordre_id) values ('{$bilag}', '{$transdate}', '{$beskrivelse}', 'F', '{$bogf_konto[$y]}', '{$fakturanr}', '{$pris[$y]}', 'on', '{$kladde_id}', '{$afd}', '{$tmpvaluta}', '{$projekt[$p]}', '{$ansat}', '{$ordre_id}')", __FILE__ . " linje " . __LINE__);
                            }
                        }
                    }
                }
                $query = db_select("select gruppe from adresser where id='{$konto_id}';", __FILE__ . " linje " . __LINE__);
                $row = db_fetch_array($query);
                $query = db_select("select box1 from grupper where art='KG' and kodenr='{$row['gruppe']}';", __FILE__ . " linje " . __LINE__);
                $row = db_fetch_array($query);
                $box1 = substr(trim($row['box1']), 1, 1);
                if (substr(trim($row['box1']), 0, 1) == 'E') {
                    $query = db_select("select box1, box2, box3 from grupper where art='EM' and kodenr='{$box1}'", __FILE__ . " linje " . __LINE__);
                    $row = db_fetch_array($query);
                    $box1 = trim($row['box3']);
                    # Ser lidt forvirrende ud, men den er go nok - fordi koebsmomsen ligger i box 3 v. udenlandsmoms.
                    $moms = $sum / 100 * $row['box2'];
                    #moms af varekoeb i udland beregnes
                    db_modify("insert into kassekladde (bilag, transdate, beskrivelse, k_type, kredit, faktura, amount, momsfri, kladde_id, afd, valuta, projekt, ansat, ordre_id) values ('{$bilag}', '{$transdate}', '{$beskrivelse}', 'F', '{$row['box1']}', '{$fakturanr}', '{$moms}', 'on', '{$kladde_id}', '{$afd}', '{$valuta}', '{$projekt['0']}', '{$ansat}', '{$ordre_id}')", __FILE__ . " linje " . __LINE__);
                } else {
                    $query = db_select("select box1 from grupper where art='KM' and kodenr='{$box1}'", __FILE__ . " linje " . __LINE__);
                    $row = db_fetch_array($query);
                    $box1 = trim($row['box1']);
                }
                db_modify("insert into kassekladde (bilag, transdate, beskrivelse, d_type, debet, faktura, amount, momsfri, kladde_id, afd, valuta, projekt, ansat, ordre_id) values ('{$bilag}', '{$transdate}', '{$beskrivelse}', 'F', '{$box1}', '{$fakturanr}', '{$moms}', 'on', '{$kladde_id}', '{$afd}', '{$valuta}', '{$projekt['0']}', '{$ansat}', '{$ordre_id}')", __FILE__ . " linje " . __LINE__);
            } else {
                #################### Debitor / POS ordrer ####################
                if ($art == 'RB') {
                    $beskrivelse = "Rykker  - " . $ordrenr;
                } elseif (substr($art, 1, 1) == 'K') {
                    $beskrivelse = "Kreditnota - " . $fakturanr;
                } elseif ($art == 'PO') {
                    $beskrivelse = "Kassebon - " . $fakturanr;
                } else {
                    $beskrivelse = "Faktura - " . $fakturanr;
                }
                if ($sum < 0) {
                    if ($art == 'PO') {
                        $dk = 'F';
                    } else {
                        $dk = 'D';
                    }
                    $tmp = $sum * -1;
                    #indsat 50.02.11 grunder vejl v. hentning af kreditnota
                    db_modify("insert into kassekladde (bilag, transdate, beskrivelse, k_type, kredit, faktura, amount, momsfri, kladde_id, afd, valuta, projekt, ansat, ordre_id) values ('{$bilag}', '{$transdate}', '{$beskrivelse}', '{$dk}', '{$kontonr}', '{$fakturanr}', '{$tmp}', 'on', '{$kladde_id}', '{$afd}', '{$valuta}', '{$projekt['0']}', '{$ansat}', '{$ordre_id}')", __FILE__ . " linje " . __LINE__);
                } else {
                    if ($art == 'PO') {
                        if ($betaling1 && $betalt1) {
                            db_modify("insert into kassekladde (bilag,transdate,beskrivelse,d_type,debet,faktura,amount,momsfri,kladde_id,afd,valuta,projekt,ansat,ordre_id,forfaldsdate) values ('{$bilag}','{$transdate}','{$beskrivelse}','F','{$kortkto1}','{$fakturanr}','{$betalt1}','on','{$kladde_id}','{$afd}','{$valuta}','{$projekt['0']}','{$ansat}','{$ordre_id}','{$forfaldsdate}')", __FILE__ . " linje " . __LINE__);
                        }
                        if ($betaling2 && $betalt2) {
                            db_modify("insert into kassekladde (bilag,transdate,beskrivelse,d_type,debet,faktura,amount,momsfri,kladde_id,afd,valuta,projekt,ansat,ordre_id,forfaldsdate) values ('{$bilag}','{$transdate}','{$beskrivelse}','F','{$kortkto2}','{$fakturanr}','{$betalt2}','on','{$kladde_id}','{$afd}','{$valuta}','{$projekt['0']}','{$ansat}','{$ordre_id}','{$forfaldsdate}')", __FILE__ . " linje " . __LINE__);
                        }
                        if ($retur) {
                            db_modify("insert into kassekladde (bilag,transdate,beskrivelse,k_type,kredit,faktura,amount,momsfri,kladde_id,afd,valuta,projekt,ansat,ordre_id,forfaldsdate) values ('{$bilag}','{$transdate}','{$beskrivelse}','F','{$kontonr}','{$fakturanr}','{$retur}','on','{$kladde_id}','{$afd}','{$valuta}','{$projekt['0']}','{$ansat}','{$ordre_id}','{$forfaldsdate}')", __FILE__ . " linje " . __LINE__);
                        }
                    } else {
                        db_modify("insert into kassekladde (bilag,transdate,beskrivelse,d_type,debet,faktura,amount,momsfri,kladde_id,afd,valuta,projekt,ansat,ordre_id,forfaldsdate) values ('{$bilag}','{$transdate}','{$beskrivelse}','D','{$kontonr}','{$fakturanr}','{$sum}','on','{$kladde_id}','{$afd}','{$valuta}','{$projekt['0']}','{$ansat}','{$ordre_id}','{$forfaldsdate}')", __FILE__ . " linje " . __LINE__);
                    }
                }
                for ($p = 1; $p <= $projektantal; $p++) {
                    $query = db_select("select * from ordrelinjer where ordre_id={$id} and projekt = '{$projekt[$p]}'", __FILE__ . " linje " . __LINE__);
                    $y = 0;
                    $bogf_konto = array();
                    while ($row = db_fetch_array($query)) {
                        $bogf_kto = $row['bogf_konto'];
                        if ($valuta != 'DKK' && $row['posnr'] < 0) {
                            $bogf_kto = $bogf_kto * -1;
                        }
                        if (!in_array($bogf_kto, $bogf_konto)) {
                            $y++;
                            $posnr[$y] = $row['posnr'];
                            $bogf_konto[$y] = $bogf_kto;
                            $pris[$y] = afrund($row['pris'] * $row['antal'] - $row['pris'] * $row['antal'] * $row['rabat'] / 100, 3);
                        } else {
                            for ($a = 1; $a <= $y; $a++) {
                                if ($bogf_konto[$a] == $bogf_kto) {
                                    $pris[$a] = $pris[$a] + afrund($row['pris'] * $row['antal'] - $row['pris'] * $row['antal'] * $row['rabat'] / 100, 3);
                                }
                            }
                        }
                    }
                    if ($valuta) {
                        for ($a = 1; $a <= $y; $a++) {
                            $bogf_konto[$a] = abs($bogf_konto[$a]);
                        }
                    }
                    $ordrelinjer = $y;
                    for ($y = 1; $y <= $ordrelinjer; $y++) {
                        if ($bogf_konto[$y]) {
                            if ($posnr[$y] < 0) {
                                $tmpvaluta = 0;
                            } else {
                                $tmpvaluta = $valuta;
                            }
                            if ($pris[$y] < 0) {
                                $pris[$y] = $pris[$y] * -1;
                                db_modify("insert into kassekladde (bilag, transdate, beskrivelse, d_type, debet, faktura, amount, momsfri, kladde_id, afd, valuta, projekt, ansat, ordre_id) values ('{$bilag}', '{$transdate}', '{$beskrivelse}', 'F', '{$bogf_konto[$y]}', '{$fakturanr}', '{$pris[$y]}', 'on', '{$kladde_id}', '{$afd}', '{$tmpvaluta}', '{$projekt[$p]}', '{$ansat}', '{$ordre_id}')", __FILE__ . " linje " . __LINE__);
                            } elseif ($pris[$y] > 0) {
                                db_modify("insert into kassekladde (bilag, transdate, beskrivelse, k_type, kredit, faktura, amount, momsfri, kladde_id, afd, valuta, projekt, ansat, ordre_id) values ('{$bilag}', '{$transdate}', '{$beskrivelse}', 'F', '{$bogf_konto[$y]}', '{$fakturanr}', '{$pris[$y]}', 'on', '{$kladde_id}', '{$afd}', '{$tmpvaluta}', '{$projekt[$p]}', '{$ansat}', '{$ordre_id}')", __FILE__ . " linje " . __LINE__);
                            }
                        }
                    }
                }
                if ($art != 'RB') {
                    if ($art != 'PO') {
                        $r = db_fetch_array(db_select("select gruppe from adresser where id='{$konto_id}'", __FILE__ . " linje " . __LINE__));
                        $r = db_fetch_array(db_select("select box1 from grupper where art='DG' and kodenr='{$r['gruppe']}'", __FILE__ . " linje " . __LINE__));
                        $momsgruppe = substr(trim($r['box1']), 1, 1);
                    }
                    $r = db_fetch_array(db_select("select box1 from grupper where art='SM' and kodenr='{$momsgruppe}'", __FILE__ . " linje " . __LINE__));
                    $box1 = trim($r['box1']);
                    if ($moms && $box1) {
                        db_modify("insert into kassekladde (bilag, transdate, beskrivelse, k_type, kredit, faktura, amount, momsfri, kladde_id, afd, valuta, projekt, ansat, ordre_id) values ('{$bilag}', '{$transdate}', '{$beskrivelse}', 'F', '{$box1}', '{$fakturanr}', '{$moms}', 'on', '{$kladde_id}', '{$afd}', '{$valuta}', '{$projekt['0']}', '{$ansat}', '{$ordre_id}')", __FILE__ . " linje " . __LINE__);
                    }
                }
            }
            db_modify("update ordrer set status=4 where id={$id}", __FILE__ . " linje " . __LINE__);
            db_modify("delete from ordrelinjer where ordre_id={$id} and posnr < 0", __FILE__ . " linje " . __LINE__);
        } else {
            print "<BODY onLoad=\"javascript:alert('Ordredato uden for regnskabs&aring;r!')\">";
        }
    }
    transaktion("commit");
    #exit;
}
Example #23
0
function overfoer_data($filnavn, $splitter, $feltnavn, $feltantal)
{
    global $charset;
    $x = 0;
    $fp = fopen("../importfiler/postnr.csv", "r");
    if ($fp) {
        while (!feof($fp)) {
            $x++;
            $linje = trim(fgets($fp));
            list($postnr[$x], $bynavn[$x]) = split(chr(9), $linje);
        }
    }
    fclose($fp);
    $postnr_antal = $x;
    $fp = fopen("{$filnavn}", "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);
    for ($y = 0; $y <= $feltantal; $y++) {
        for ($x = 0; $x <= $felt_antal; $x++) {
            if ($felt_navn[$x] && $feltnavn[$y] == $felt_navn[$x] && $felt_aktiv[$x] == 1) {
                print "<BODY onLoad=\"javascript:alert('Der kan kun v&aelig;re 1 kolonne med {$felt_navn[$x]}')\">";
                $feltnavn[$y] = '';
            } elseif ($felt_navn[$x] && $feltnavn[$y] == $felt_navn[$x]) {
                $felt_aktiv[$x] = 1;
            }
        }
    }
    print "<tr><td colspan={$cols}><hr></td></tr>\n";
    if (!$splitter || $splitter == 'Semikolon') {
        $splitter = ';';
    } elseif ($splitter == 'Komma') {
        $splitter = ',';
    } elseif ($splitter == 'Tabulator') {
        $splitter = chr(9);
    }
    # print "<tr><td><span title='Angiv 1. bilagsnummer'><input type=text size=4 name=bilag value=$bilag></span></td>";
    transaktion('begin');
    #echo "delete from kontoplan where regnskabsaar='$regnskabsaar'<br>";
    #db_modify("delete from de where regnskabsaar='$regnskabsaar'");
    $fp = fopen("{$filnavn}", "r");
    if ($fp) {
        $kontonumre = array();
        $x = 0;
        $imp_antal = 0;
        while (!feof($fp)) {
            $skriv_linje = 0;
            if ($linje = trim(fgets($fp))) {
                $x++;
                $skriv_linje = 1;
                if ($charset == 'UTF-8') {
                    $linje = utf8_encode($linje);
                }
                $felt = array();
                $felt = opdel($splitter, $linje);
                for ($y = 0; $y <= $feltantal; $y++) {
                    $felt[$y] = trim($felt[$y]);
                    $feltnavn[$y] = strtolower($feltnavn[$y]);
                    if (substr($felt[$y], 0, 1) == '"' && substr($felt[$y], -1) == '"') {
                        $felt[$y] = substr($felt[$y], 1, strlen($felt[$y]) - 2);
                    }
                    if ($feltnavn[$y] == 'kontonr' && !is_numeric($felt[$y])) {
                        $kontonr = 0;
                        $skriv_linje = 2;
                        #					print "<BODY onLoad=\"javascript:alert('R&oslash;de linjer indeholder fejl (kontonummer ikke numerisk) og bliver ikke importeret')\">";
                        #					print "<BODY onLoad=\"javascript:alert('Kontonrnummer skal v&aelig;re numerisk')\">";
                    } elseif ($feltnavn[$y] == 'kontonr') {
                        $kontonr = $felt[$y];
                    }
                    if ($feltnavn[$y] == "postnr") {
                        list($felt[$y], $bynavn[$y]) = split(" ", $felt[$y], 2);
                    }
                    if ($feltnavn[$y] == 'kontoansvarlig' && $felt[$y] && $kontonr) {
                        $r = db_fetch_array(db_select("select id from adresser where kontonr='{$kontonr}'", __FILE__ . " linje " . __LINE__));
                        $konto_id = $r['id'] * 1;
                        $r = db_fetch_array(db_select("select id from ansatte where initialer='{$felt[$y]}' and konto_id={$konto_id}", __FILE__ . " linje " . __LINE__));
                        $felt[$y] = $r['id'] * 1;
                    } elseif ($feltnavn[$y] == 'kontoansvarlig') {
                        $felt[$y] = '0';
                    }
                    if ($feltnavn[$y] == 'oprettet' && $felt[$y] && $kontonr) {
                        $felt[$y] = usdate($felt[$y]);
                    } elseif ($feltnavn[$y] == 'oprettet') {
                        $felt[$y] = date("Y-m-d");
                    }
                    if ($feltnavn[$y] == 'kreditmax') {
                        $felt[$y] = usdecimal($felt[$y]);
                    }
                    if ($feltnavn[$y] == 'betalingsdage') {
                        $felt[$y] = $felt[$y] * 1;
                    }
                }
            }
            if ($skriv_linje == 1) {
                $addr_a = '';
                $addr_b = '';
                $kontakt_a = '';
                $kontakt_b = '';
                for ($y = 0; $y <= $feltantal; $y++) {
                    if ($feltnavn[$y]) {
                        $felt[$y] = addslashes($felt[$y]);
                        if (!strstr($feltnavn[$y], "kontakt_")) {
                            if ($y > 0) {
                                $addr_a = $addr_a . ",";
                                $addr_b = $addr_b . ",";
                            }
                            $addr_a = $addr_a . $feltnavn[$y];
                            $addr_b = $addr_b . "'" . $felt[$y] . "'";
                        } else {
                            if ($kontakt_a) {
                                $kontakt_a = $kontakt_a . ",";
                                $kontakt_b = $kontakt_b . ",";
                            }
                            $tmp = substr($feltnavn[$y], 8);
                            $kontakt_a = $kontakt_a . $tmp;
                            $kontakt_b = $kontakt_b . "'" . $felt[$y] . "'";
                        }
                    }
                }
                if ($r = db_fetch_array(db_select("select id from adresser where kontonr='{$kontonr}'", __FILE__ . " linje " . __LINE__))) {
                    $imp_antal++;
                    db_modify("delete from adresser where id = '{$r['id']}'", __FILE__ . " linje " . __LINE__);
                    db_modify("insert into adresser(id,{$addr_a},art) values ({$r['id']},{$addr_b},'K')", __FILE__ . " linje " . __LINE__);
                } else {
                    $imp_antal++;
                    db_modify("insert into adresser({$addr_a}, art) values ({$addr_b}, 'K')", __FILE__ . " linje " . __LINE__);
                }
                $r = db_fetch_array(db_select("select id from adresser where kontonr='{$kontonr}' and art = 'K'", __FILE__ . " linje " . __LINE__));
                $konto_id = $r['id'];
                if ($kontakt_a && !($r = db_fetch_array(db_select("select id from ansatte where konto_id='{$konto_id}'", __FILE__ . " linje " . __LINE__)))) {
                    db_modify("insert into ansatte({$kontakt_a}, konto_id) values ({$kontakt_b}, '{$konto_id}')", __FILE__ . " linje " . __LINE__);
                }
            }
        }
    }
    fclose($fp);
    transaktion('commit');
    print "</tbody></table>";
    print "</td></tr>";
    print "<BODY onLoad=\"javascript:alert('{$imp_antal} adresser importeret')\">";
    print "<meta http-equiv=\"refresh\" content=\"0;URL=../includes/luk.php\">";
}
Example #24
0
function send_mails($kontoantal, $konto_id, $email, $fra, $til)
{
    global $db;
    global $brugernavn;
    global $bgcolor;
    global $bgcolor5;
    global $charset;
    ini_set("include_path", ".:../phpmailer");
    require "class.phpmailer.php";
    $tmpmappe = "../temp/{$db}/" . str_replace(" ", "_", $brugernavn);
    mkdir($tmpmappe);
    for ($x = 1; $x <= $kontoantal; $x++) {
        mkdir("{$tmpmappe}/{$x}");
        if ($konto_id[$x] && $email[$x] && $fra[$x] && $til[$x] && strpos($email[$x], '@')) {
            $fromdate[$x] = usdate($fra[$x]);
            $todate[$x] = usdate($til[$x]);
            $mailtext = "<!DOCTYPE html PUBLIC \"-//W3C//DTD HTMP 4.01 Transitional//EN\">\n";
            $mailtext .= "<html><head><meta content=\"text/html; charset=ISO-8859-15\" http-equiv=\"content-type\">\n";
            $row = db_fetch_array(db_select("select firmanavn from adresser where art = 'S'", __FILE__ . " linje " . __LINE__));
            $mailtext .= "<title>Kontoudtog fra {$row['firmanavn']}</title></head>\n";
            $mailtext .= "<body bgcolor={$bgcolor} link='#000000' vlink='#000000' alink='#000000' center=''>\n";
            $mailtext .= "<table width = 100% cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tbody>\n";
            $mailtext .= "<tr><td colspan=\"5\"><b>{$row['firmanavn']}</b></td><td colspan=\"2\" align=\"right\">Dato</td><td align=right> " . date('d-m-Y') . "</td></tr>\n";
            $mailtext .= "<tr><td colspan=8><hr></td></tr>\n";
            $mailtext .= "<tr><td colspan=\"8\" style=\"font-size:115%;font-weight:bold\">Kontoudtog</td></tr>\n";
            $row = db_fetch_array(db_select("select * from adresser where id={$konto_id[$x]}", __FILE__ . " linje " . __LINE__));
            $mailtext .= "<tr><td colspan=\"5\">{$row['firmanavn']}</td><td colspan=\"2\" align=\"right\">Kontonr.</td><td align=right> {$row['kontonr']}</td></tr>\n";
            $mailtext .= "<tr><td colspan=\"8\">{$row['addr1']}</td></tr>\n";
            if ($row[addr2]) {
                $mailtext .= "<tr><td colspan=\"8\">{$row['addr2']}</td></tr>\n";
            }
            $mailtext .= "<tr><td colspan=\"8\">{$row['postnr']} {$row['bynavn']}</td></tr>\n";
            $mailtext .= "<tr><td><br></td></tr>\n";
            $mailtext .= "<tr><td width=\"10%\"> Dato</td><td width=\"5%\"> Bilag</td><td width=\"5%\"> Faktura</td><td width=\"40%\" align=\"center\"> Tekst</td><td> Forfaldsdato</td><td width=\"10%\" align=\"right\"> Debet</td><td width=\"10%\" align=\"right\"> Kredit</td><td width=\"10%\" align=\"right\"> Saldo</td></tr>\n";
            $mailtext .= "<tr><td colspan=8><hr></td></tr>\n";
            $betalingsbet = trim($row['betalingsbet']);
            $betalingsdage = $row['betalingsdage'];
            $kontosum = 0;
            $primo = 0;
            $primoprint = 0;
            $query = db_select("select * from openpost where konto_id={$konto_id[$x]} and transdate<='{$todate[$x]}' order by transdate, faktnr", __FILE__ . " linje " . __LINE__);
            while ($row = db_fetch_array($query)) {
                $amount = afrund($row['amount'], 2);
                $forfaldsdag = NULL;
                if ($row['forfaldsdate']) {
                    $forfaldsdag = dkdato($row['forfaldsdate']);
                }
                if ($row['transdate'] < $fromdate[$x]) {
                    $primoprint = 0;
                    $kontosum = $kontosum + $amount;
                } else {
                    if ($primoprint == 0) {
                        $tmp = dkdecimal($kontosum);
                        $linjebg = $bgcolor5;
                        $color = '#000000';
                        $mailtext .= "<tr bgcolor=\"{$linjebg}\"><td colspan=\"3\"></td><td>Primosaldo</td><td colspan=\"3\"></td><td align=right> {$tmp}</td></tr>\n";
                        $primoprint = 1;
                    }
                    if ($linjebg != $bgcolor) {
                        $linjebg = $bgcolor;
                        $color = '#000000';
                    } elseif ($linjebg != $bgcolor5) {
                        $linjebg = $bgcolor5;
                        $color = '#000000';
                    }
                    $mailtext .= "<tr bgcolor=\"{$linjebg}\"><td> " . dkdato($row['transdate']) . "&nbsp;</td><td> {$row['refnr']}&nbsp;</td><td> {$row['faktnr']}&nbsp;</td><td> {$row['beskrivelse']}</td>\n";
                    if ($amount < 0) {
                        $tmp = 0 - $amount;
                    } else {
                        $tmp = $amount;
                    }
                    $tmp = dkdecimal($tmp);
                    if (!$forfaldsdag) {
                        $forfaldsdag = forfaldsdag($row['transdate'], $betalingsbet, $betalingsdage);
                    }
                    if ($row[udlignet] != '1' && $forfaldsdag < $currentdate) {
                        $stil = "<span style='color: rgb(255, 0, 0);'>";
                    } else {
                        $stil = "<span style='color: rgb(0, 0, 0);'>";
                    }
                    if ($amount > 0) {
                        $mailtext .= "<td>{$stil}{$forfaldsdag}</td><td align=right>{$stil} {$tmp}</td><td></td>\n";
                        $forfaldsum = $forfaldsum + $amount;
                    } else {
                        $mailtext .= "<td></td><td></td><td align=right>{$stil}{$tmp}</td>\n";
                    }
                    $kontosum = $kontosum + $amount;
                    $tmp = dkdecimal($kontosum);
                    $mailtext .= "<td align=right> {$tmp}</td>\n";
                    $mailtext .= "</tr>\n";
                }
            }
            if ($primoprint == 0) {
                $tmp = dkdecimal($kontosum);
                $mailtext .= "<tr><td></td><td></td><td></td><td> Primosaldo</td><td></td><td></td><td></td><td align=right> {$tmp}</td></tr>\n";
            }
            $mailtext .= "<tr><td colspan=\"8\"><hr></td></tr>\n";
            $row = db_fetch_array(db_select("select * from adresser where art = 'S'", __FILE__ . " linje " . __LINE__));
            $mailtext .= "<tr><td colspan=\"8\">\n";
            if ($row['bank_konto']) {
                $mailtext .= "<p>Et eventuelt udest&aring;ende bedes indbetalt hurtigst muligt p&aring; vores bankkonto med\n";
                if ($row['bank_reg']) {
                    $mailtext .= " reg.nr. " . $row['bank_reg'] . " og";
                }
                $mailtext .= " kontonr. " . $row['bank_konto'];
                if ($row['bank_navn']) {
                    $mailtext .= " i " . $row['bank_navn'];
                }
                $mailtext .= ".</p>\n";
            }
            if ($row['tlf']) {
                $mailtext .= "<p>Hvis du har sp&oslash;rgsm&aring;l, s&aring; kontakt os p&aring; telefon " . $row['tlf'];
                $mailtext .= ".</p>\n</td></tr>\n";
            }
            $mailtext .= "<tr><td colspan=\"8\"><hr></td></tr>\n";
            $mailtext .= "<tr><td colspan=\"8\" align=\"center\">\n";
            $mailtext .= "<p style=\"font-size:80%\">" . $row['firmanavn'];
            if ($row['addr1']) {
                $mailtext .= " * " . $row['addr1'];
            }
            if ($row['addr2']) {
                $mailtext .= " * " . $row['addr2'];
            }
            if ($row['postnr']) {
                $mailtext .= " * " . $row['postnr'] . " " . $row['bynavn'];
            }
            if ($row['tlf']) {
                $mailtext .= " * tlf " . $row['tlf'];
            }
            if ($row['fax']) {
                $mailtext .= " * fax " . $row['fax'];
            }
            if ($row['cvr']) {
                $mailtext .= " * cvr " . $row['fax'];
            }
            $mailtext .= "<p>\n</td></tr>\n";
            $mailtext .= "</table></body></html>\n";
            #echo "select * from adresser where art='S'<br>";
            $row = db_fetch_array(db_select("select * from adresser where art='S'", __FILE__ . " linje " . __LINE__));
            $afsendermail = $row['email'];
            $afsendernavn = $row['firmanavn'];
            #echo "AFSM $afsendermail<br>";
            if ($charset == "UTF-8") {
                $subjekt = utf8_decode($subjekt);
                $mailtext = utf8_decode($mailtext);
                $afsendernavn = utf8_decode($afsendernavn);
                $afsendermail = utf8_decode($afsendermail);
                #echo "MM $mailtext<br>";
            }
            $fp = fopen("{$tmpmappe}/{$x}/kontoudtog.html", "w");
            fwrite($fp, $mailtext);
            fclose($fp);
            $mail = new PHPMailer();
            $mail->IsSMTP();
            // send via SMTP
            $mail->Host = "localhost";
            // SMTP servers
            $mail->SMTPAuth = false;
            // turn on SMTP authentication
            if (strpos($_SERVER['SERVER_NAME'], 'saldi.dk')) {
                #20121029
                if ($_SERVER['SERVER_NAME'] == 'ssl.saldi.dk') {
                    $mail->From = $db . '@ssl.saldi.dk';
                } elseif ($_SERVER['SERVER_NAME'] == 'ssl2.saldi.dk') {
                    $mail->From = $db . '@ssl2.saldi.dk';
                } elseif ($_SERVER['SERVER_NAME'] == 'ssl3.saldi.dk') {
                    $mail->From = $db . '@ssl3.saldi.dk';
                } else {
                    $mail->From = '*****@*****.**';
                }
                #20140128
                $mail->FromName = $afsendernavn;
            } else {
                $mail->From = $afsendermail;
                $mail->FromName = $afsendernavn;
            }
            if (strpos($email[$x], ";")) {
                #20150305-2
                $tmp = array();
                $tmp = explode(";", $email[$x]);
                for ($i = 0; $i < count($tmp); $i++) {
                    if (strpos($tmp[$i], "@")) {
                        $mail->AddAddress($tmp[$i]);
                    }
                }
            } else {
                $mail->AddAddress($email[$x]);
            }
            $mail->AddBCC($afsendermail);
            $mail->AddReplyTo($afsendermail, $afsendernavn);
            $mail->WordWrap = 50;
            // set word wrap
            $mail->AddAttachment("{$tmpmappe}/{$x}/kontoudtog.html");
            // attachment
            $mail->IsHTML(true);
            // send as HTML
            $mail->Subject = "Kontoudtog fra {$afsendernavn}";
            $mailbody = "<html><body>\n";
            $mailbody .= "<p>Hermed fremsendes kontoudtog fra " . $afsendernavn . ".</p>\n";
            $mailbody .= "<p>Den vedlagte fil er en HTML-fil og kan ses i din webbrowser eksempelvis \n";
            $mailbody .= "ved at dobbeltklikke p&aring; den.</p>\n";
            $mailbody .= "<hr />\n<p>";
            $mailbody .= $row['firmanavn'] . "<br />\n";
            if ($row['addr1']) {
                $mailbody .= $row['addr1'] . "<br />\n";
            }
            if ($row['addr2']) {
                $mailbody .= $row['addr2'] . "<br />\n";
            }
            if ($row['postnr']) {
                $mailbody .= $row['postnr'] . " " . $row['bynavn'] . "<br />\n";
            }
            if ($row['tlf']) {
                $mailbody .= "tlf " . $row['tlf'];
            }
            if ($row['fax']) {
                $mailbody .= " * fax " . $row['fax'];
            }
            if ($row['cvr']) {
                $mailbody .= " * cvr " . $row['fax'];
            }
            $mailbody .= "</p></body></html>";
            $mailaltbody = "Hermed fremsendes kontoudtog fra " . $afsendernavn . ".\n\n";
            $mailaltbody .= "Den vedlagte fil er en HTML-fil og kan ses i din webbrowser eksempelvis \n";
            $mailaltbody .= "ved at dobbeltklikke på den.\n";
            $mailaltbody .= "-- \n";
            $mailaltbody .= $row['firmanavn'] . "\n";
            if ($row['addr1']) {
                $mailaltbody .= $row['addr1'] . "\n";
            }
            if ($row['addr2']) {
                $mailaltbody .= $row['addr2'] . "\n";
            }
            if ($row['postnr']) {
                $mailaltbody .= $row['postnr'] . " " . $row['bynavn'] . "\n";
            }
            if ($row['tlf']) {
                $mailaltbody .= "tlf " . $row['tlf'];
            }
            if ($row['fax']) {
                $mailaltbody .= " * fax " . $row['fax'];
            }
            if ($row['cvr']) {
                $mailaltbody .= " * cvr " . $row['fax'];
            }
            if ($charset == "UTF-8") {
                $mailbody = utf8_decode($mailbody);
                $mailaltbody = utf8_decode($mailaltbody);
            }
            $mail->Body = $mailbody;
            $mail->AltBody = $mailaltbody;
            if (!$mail->Send()) {
                echo "Fejl i afsendelse til {$email[$x]}<p>";
                echo "Mailer Error: " . $mail->ErrorInfo;
                exit;
            }
            echo "Kontoudtog sendt til {$email[$x]}<br>";
            #			sleep(2);
        }
    }
    for ($x = 1; $x <= $kontoantal; $x++) {
        unlink("{$tmpmappe}/{$x}/kontoudtog.html");
        rmdir("{$tmpmappe}/{$x}");
    }
    #	unlink("$tmpmappe/kontoudtog.html");
    rmdir($tmpmappe);
}
Example #25
0
     $gl_betalingsbet = $r['betalingsbet'];
     $gl_betalingsdage = $r['betalingsdage'];
     $betalingsdage[$x] = str_replace("*=", "", $betalingsdage[$x]);
     $ny_betalingsbet = $betalingsbet[$x];
     $ny_betalingsdage = $betalingsdage[$x];
 } elseif ($gl_betalingsbet && $ny_betalingsbet && $betalingsbet[$x] == $gl_betalingsbet && $betalingsdage[$x] == $gl_betalingsdage) {
     $betalingsbet[$x] = $ny_betalingsbet;
     $betalingsdage[$x] = $ny_betalingsdage;
 }
 if (!$betalingsbet[$x]) {
     $betalingsbet[$x] = 'Netto';
 }
 $firmanavn[$x] = db_escape_string($firmanavn[$x]);
 $email[$x] = db_escape_string($email[$x]);
 $fakturadate = usdate($fakturadato[$x]);
 $nextfakt = usdate($genfakt[$x]);
 $udskriv_til[$x] == 'email' ? $mail_fakt = 'on' : ($mail_fakt = '');
 $udskriv_til[$x] == 'PBS_BS' || $udskriv_til[$x] == 'PBS_FI' ? $pbs = 'on' : ($pbs = '');
 if ($udskriv_til[$x] == 'oioubl') {
     if ($art == "DO") {
         $oioubl = 'faktura';
     } else {
         $oioubl = 'kreditnota';
     }
 } else {
     $oioubl = NULL;
 }
 db_modify("update ordrer set firmanavn='{$firmanavn[$x]}',fakturadate='{$fakturadate}',nextfakt='{$nextfakt}',email='{$email[$x]}',udskriv_til='{$udskriv_til[$x]}',mail_fakt='{$mail_fakt}',projekt='{$projekt[$x]}',betalingsbet='{$betalingsbet[$x]}',betalingsdage='{$betalingsdage[$x]}',procenttillag='{$procenttillag[$x]}' where id='{$ordreliste[$x]}'", __FILE__ . " linje " . __LINE__);
 if ($nextfakt <= $fakturadate) {
     $fejltekst = "Genfaktureringsdato skal v&aelig;re efter fakturadato ({$firmanavn[$x]})";
 }
Example #26
0
 $id = $_POST['id'];
 $egen_id = $_POST['egen_id'];
 $historik_id = $_POST['historik_id'];
 $ansat = $_POST['ansat'];
 $kontakt = $_POST['kontakt'];
 if ($_POST['oprettet']) {
     $oprettet = $_POST['oprettet'];
 }
 if ($_POST['kontaktet']) {
     $kontaktet = usdate($_POST['kontaktet']);
 } else {
     $kontaktet = date("Y-m-d");
 }
 $kontaktes = $_POST['kontaktes'];
 if ($kontaktes) {
     $kontaktes = usdate($kontaktes);
 } else {
     $kontaktes = NULL;
 }
 $notat = addslashes(trim($_POST['note']));
 if ($kontaktes || $notat) {
     $r = db_fetch_array(db_select("select id from ansatte where konto_id = '{$egen_id}' and navn = '{$ansat}'", __FILE__ . " linje " . __LINE__));
     $ansat_id = $r['id'] * 1;
     $r = db_fetch_array(db_select("select id from ansatte where konto_id = '{$id}' and navn = '{$kontakt}'", __FILE__ . " linje " . __LINE__));
     $kontakt_id = $r['id'] * 1;
     if ($historik_id) {
         db_modify("update historik set kontakt_id = {$kontakt_id}, ansat_id = {$ansat_id}, notat = '{$notat}', kontaktet = '{$kontaktet}' where id = {$historik_id}", __FILE__ . " linje " . __LINE__);
     } else {
         $notedate = date("Y-m-d");
         $r = db_fetch_array(db_select("select id from ansatte where konto_id = '{$egen_id}' and navn = '{$ansat}'", __FILE__ . " linje " . __LINE__));
         $ansat_id = $r[id] * 1;
Example #27
0
function overfoer_data($filnavn, $splitter, $feltnavn, $feltantal)
{
    global $charset;
    global $kontotype;
    global $art;
    $x = 0;
    $fp = fopen("../importfiler/postnr.csv", "r");
    if ($fp) {
        while (!feof($fp)) {
            $x++;
            $linje = trim(fgets($fp));
            list($postnr[$x], $bynavn[$x]) = explode(chr(9), $linje);
        }
    }
    fclose($fp);
    $postnr_antal = $x;
    $fp = fopen("{$filnavn}", "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);
    for ($y = 0; $y <= $feltantal; $y++) {
        for ($x = 0; $x <= $felt_antal; $x++) {
            if ($felt_navn[$x] && $feltnavn[$y] == $felt_navn[$x] && $felt_aktiv[$x] == 1) {
                print "<BODY onLoad=\"javascript:alert('Der kan kun v&aelig;re 1 kolonne med {$felt_navn[$x]}')\">";
                $feltnavn[$y] = '';
            } elseif ($felt_navn[$x] && $feltnavn[$y] == $felt_navn[$x]) {
                $felt_aktiv[$x] = 1;
            }
        }
    }
    print "<tr><td colspan={$cols}><hr></td></tr>\n";
    if (!$splitter || $splitter == 'Semikolon') {
        $splitter = ';';
    } elseif ($splitter == 'Komma') {
        $splitter = ',';
    } elseif ($splitter == 'Tabulator') {
        $splitter = chr(9);
    }
    transaktion('begin');
    #$felt_antal=$feltantal;
    $ryd_firmanavn = 0;
    $fp = fopen("{$filnavn}", "r");
    if ($fp) {
        $kontonumre = array();
        $x = 0;
        $imp_antal = 0;
        while (!feof($fp)) {
            #			$feltantal=$felt_antal;
            $skriv_linje = 0;
            if ($linje = trim(fgets($fp))) {
                $x++;
                $skriv_linje = 1;
                if ($charset == 'UTF-8') {
                    $linje = utf8_encode($linje);
                }
                $felt = array();
                $felt = opdel($splitter, $linje);
                #			if ($ryd_firmanavn) $felt[$ryd_firmanavn]='';
                if (in_array('pbs_nr', $feltnavn) && !in_array('pbs', $feltnavn)) {
                    $feltantal++;
                    $pbs = $feltantal;
                    $feltnavn[$feltantal] = 'pbs';
                    $felt[$feltantal] = '';
                }
                if (in_array('husnr', $feltnavn)) {
                    $felt = add2felt($feltantal, 'husnr', 'addr1', $feltnavn, $felt);
                }
                if (in_array('etage', $feltnavn)) {
                    $felt = add2felt($feltantal, 'etage', 'addr1', $feltnavn, $felt);
                }
                if (in_array('fornavn', $feltnavn) && !in_array('firmanavn', $feltnavn)) {
                    $feltantal++;
                    $ryd_firmanavn = $feltantal;
                    $feltnavn[$feltantal] = 'firmanavn';
                    $felt[$feltantal] = '';
                }
                if (in_array('efternavn', $feltnavn) && !in_array('firmanavn', $feltnavn)) {
                    $feltantal++;
                    $ryd_firmanavn = $feltantal;
                    $feltnavn[$feltantal] = 'firmanavn';
                    $felt[$feltantal] = '';
                }
                if (in_array('fornavn', $feltnavn)) {
                    $felt = add2felt($feltantal, 'fornavn', 'firmanavn', $feltnavn, $felt);
                }
                if (in_array('efternavn', $feltnavn)) {
                    $felt = add2felt($feltantal, 'efternavn', 'firmanavn', $feltnavn, $felt);
                }
                for ($y = 0; $y <= $feltantal; $y++) {
                    $felt[$y] = trim($felt[$y]);
                    $feltnavn[$y] = strtolower($feltnavn[$y]);
                    if (substr($felt[$y], 0, 1) == '"' && substr($felt[$y], -1) == '"') {
                        $felt[$y] = substr($felt[$y], 1, strlen($felt[$y]) - 2);
                    }
                    if ($feltnavn[$y] == 'kontonr' && !is_numeric($felt[$y])) {
                        $kontonr = 0;
                        $skriv_linje = 2;
                    } elseif ($feltnavn[$y] == 'kontonr') {
                        $kontonr = $felt[$y];
                    }
                    if ($feltnavn[$y] == 'pbs_nr' && $felt[$y]) {
                        $felt[$pbs] = 'on';
                    }
                    if ($feltnavn[$y] == "postnr") {
                        list($felt[$y], $bynavn[$y]) = explode(" ", $felt[$y], 2);
                    }
                    if ($feltnavn[$y] == 'kontoansvarlig' && $felt[$y] && $kontonr) {
                        $r = db_fetch_array(db_select("select id from adresser where kontonr='{$kontonr}'", __FILE__ . " linje " . __LINE__));
                        $konto_id = $r['id'] * 1;
                        $r = db_fetch_array(db_select("select id from ansatte where initialer='{$felt[$y]}' and konto_id={$konto_id}", __FILE__ . " linje " . __LINE__));
                        $felt[$y] = $r['id'] * 1;
                    } elseif ($feltnavn[$y] == 'kontoansvarlig') {
                        $felt[$y] = '0';
                    }
                    if ($feltnavn[$y] == 'oprettet' && $felt[$y] && $kontonr) {
                        $felt[$y] = usdate($felt[$y]);
                    } elseif ($feltnavn[$y] == 'oprettet') {
                        $felt[$y] = date("Y-m-d");
                    }
                    if ($feltnavn[$y] == 'kreditmax') {
                        $felt[$y] = usdecimal($felt[$y]);
                    }
                    if ($feltnavn[$y] == 'betalingsdage') {
                        $felt[$y] = $felt[$y] * 1;
                    }
                }
            }
            if ($skriv_linje == 1) {
                $addr_a = '';
                $addr_b = '';
                $upd = '';
                $kontakt_a = '';
                $kontakt_b = '';
                for ($y = 0; $y <= $feltantal; $y++) {
                    if ($feltnavn[$y] && $feltnavn[$y] != 'husnr' && $feltnavn[$y] != 'etage') {
                        $felt[$y] = trim(addslashes($felt[$y]));
                        if (!strstr($feltnavn[$y], "kontakt_")) {
                            if ($y > 0) {
                                $addr_a = $addr_a . ",";
                                $addr_b = $addr_b . ",";
                                $upd = $upd . ",";
                            }
                            $addr_a = $addr_a . $feltnavn[$y];
                            $addr_b = $addr_b . "'" . $felt[$y] . "'";
                            $upd = $upd . $feltnavn[$y] . "='" . $felt[$y] . "'";
                        } else {
                            if ($kontakt_a) {
                                $kontakt_a = $kontakt_a . ",";
                                $kontakt_b = $kontakt_b . ",";
                            }
                            $tmp = substr($feltnavn[$y], 8);
                            $kontakt_a = $kontakt_a . $tmp;
                            $kontakt_b = $kontakt_b . "'" . $felt[$y] . "'";
                        }
                    }
                }
                if (!strpos($addr_a, 'lukket')) {
                    $addr_a = $addr_a . ",lukket";
                    $addr_b = $addr_b . ",''";
                }
                if (!strpos($addr_a, 'gruppe')) {
                    $addr_a = $addr_a . ",gruppe";
                    $addr_b = $addr_b . ",'1'";
                    $upd = $upd . ",gruppe='1'";
                }
                if (!strpos($addr_a, 'art')) {
                    $addr_a = $addr_a . ",art";
                    $addr_b = $addr_b . ",'{$art}'";
                    $upd = $upd . ",art='{$art}'";
                } else {
                    for ($y = 0; $y <= $feltantal; $y++) {
                        if ($feltnavn[$y] == 'art') {
                            $art = $felt[$y];
                        }
                    }
                }
                if ($r = db_fetch_array(db_select("select id from adresser where kontonr='{$kontonr}' and art='{$art}'", __FILE__ . " linje " . __LINE__))) {
                    $konto_id = $r['id'];
                    $imp_antal++;
                    # echo "update adresser set $upd where id='$konto_id'<br>";
                    db_modify("update adresser set {$upd} where id='{$konto_id}'", __FILE__ . " linje " . __LINE__);
                } else {
                    $imp_antal++;
                    db_modify("insert into adresser({$addr_a},kontotype) values ({$addr_b},'{$kontotype}')", __FILE__ . " linje " . __LINE__);
                    $r = db_fetch_array(db_select("select id from adresser where kontonr='{$kontonr}' and art = 'D'", __FILE__ . " linje " . __LINE__));
                    $konto_id = $r['id'];
                }
                if ($kontakt_a && !($r = db_fetch_array(db_select("select id from ansatte where konto_id='{$konto_id}'", __FILE__ . " linje " . __LINE__)))) {
                    db_modify("insert into ansatte({$kontakt_a},konto_id) values ({$kontakt_b},'{$konto_id}')", __FILE__ . " linje " . __LINE__);
                }
            }
        }
    }
    fclose($fp);
    transaktion('commit');
    print "</tbody></table>";
    print "</td></tr>";
    print "<BODY onLoad=\"javascript:alert('{$imp_antal} adresser importeret')\">";
    if ($popup) {
        print "<meta http-equiv=\"refresh\" content=\"0;URL=../includes/luk.php\">";
    } else {
        print "<meta http-equiv=\"refresh\" content=\"0;URL=../systemdata/diverse.php\">";
    }
    #exit;
}
Example #28
0
function txtdaterange($date1, $date2)
{
    if (nulldate($date1) && nulldate($date2)) {
        return "always";
    }
    if (nulldate($date1) && !nulldate($date2)) {
        return "before " . usdate($date2);
    }
    if (!nulldate($date1) && nulldate($date2)) {
        return "after " . usdate($date1);
    }
    if (!nulldate($date1) && !nulldate($date2)) {
        return "between " . usdate($date1) . " and " . usdate($date2);
    }
    return "????";
}
Example #29
0
$day = date("d");
$month = date("m");
$year = date("y");
$tmp = $year - 1;
if ($tmp < 10) {
    $tmp = "0" . $tmp;
}
if (!$periode) {
    $periode = "{$day}" . "{$month}" . "{$tmp}" . ":" . "{$day}" . "{$month}" . "{$year}";
}
list($fra, $til) = split(":", $periode);
if (!$til) {
    $til = date("dmY");
}
$from = usdate($fra);
$to = usdate($til);
$fra = dkdato($from);
$til = dkdato($to);
print "<table width = 100% cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tbody>";
print "<tr><td colspan=\"4\" height=\"8\">";
print "<table width=\"100%\" align=\"center\" border=\"0\" cellspacing=\"3\" cellpadding=\"0\"><tbody>";
#B
$tekst = "Klik her for at lukke \"Top100\"";
print "<td width=\"10%\" {$top_bund} title='{$tekst}'><a href=../includes/luk.php accesskey=L>Luk</a></td>";
print "<td width=\"80%\" {$top_bund}>Top 100 i perioden: {$fra} til {$til}</td>";
$tekst = "Klik her for at v&aelig;lge en anden periode";
print "<td width=\"10%\" {$top_bund} title='{$tekst}'><a href=top100.php?periode={$periode}&ret=on accesskey=P>Periode<br></a></td>";
print "</tbody></table>";
print "</td></tr>\n";
if ($ret) {
    $tekst = "Skriv fra &amp; til dato som mmdd&aring;&aring;:mmdd&aring;&aring;. Hvis der kun skrives én dato, s&aelig;ttes dato til dags dato.";
Example #30
0
    $returside = "rapport.php?varegruppe={$varegruppe}";
}
if (isset($_POST['dato']) && $_POST['dato']) {
    $dato = $_POST['dato'];
    $varegruppe = trim($_POST['varegruppe']);
    setcookie("saldi_lagerstatus", $varegruppe);
} elseif (!$varegruppe) {
    $dato = date("d-m-Y");
    $varegruppe = $_COOKIE['saldi_lagerstatus'];
    if (!$varegruppe) {
        $varegruppe = "0:Alle";
    }
}
$csv = if_isset($_GET['csv']);
$dd = date("Y-m-d");
$date = usdate($dato);
$dato = dkdato($date);
$x = 0;
$q1 = db_select("select kodenr, box9 from grupper where art = 'VG' and box8 = 'on'", __FILE__ . " linje " . __LINE__);
while ($r1 = db_fetch_array($q1)) {
    $x++;
    $lagervare[$x] = $r1['kodenr'];
    $batchvare[$x] = $r1['box9'];
}
$x = 0;
$q1 = db_select("select kodenr from grupper where art = 'LG'", __FILE__ . " linje " . __LINE__);
while ($r1 = db_fetch_array($q1)) {
    $x++;
    $lager[$x] = $r1['kodenr'];
}
if (count($lager) >= 1) {