Example #1
0
function afslut($id, $betaling, $betaling2, $modtaget, $modtaget2, $indbetaling, $godkendt, $kortnavn)
{
    print "\n<!-- Function afslut (start)-->\n";
    #exit;
    #cho "$id,$betaling,$betaling2,$modtaget,$modtaget2,$indbetaling<br>";
    global $charset;
    global $bruger_id;
    global $kasse;
    global $regnaar;
    global $retur;
    #	global $printserver;
    $tmp = array();
    $betalingskort = array();
    if ($godkendt != 'OK') {
        #20131205
        $r = db_fetch_array(db_select("select box3,box4,box5,box6 from grupper where art = 'POS' and kodenr='2'", __FILE__ . " linje " . __LINE__));
        $x = $kasse - 1;
        $tmp = explode(chr(9), $r['box3']);
        $printserver = trim($tmp[$x]);
        $tmp = explode(chr(9), $r['box4']);
        $terminal_ip = trim($tmp[$x]);
        $betalingskort = explode(chr(9), $r['box5']);
        $div_kort_kto = trim($r['box6']);
        if ($terminal_ip) {
            # 20131210  div ændringer i rutine
            $r = db_fetch_array(db_select("select box4,box5 from grupper where art = 'POS' and kodenr = '1'", __FILE__ . " linje " . __LINE__));
            $kortantal = $r['box4'] * 1;
            $korttyper = explode(chr(9), $r['box5']);
            if ($div_kort_kto) {
                $betalingskort[$kortantal] = 'on';
                $korttyper[$kortantal] = 'Betalingskort';
                $kortantal++;
            }
            if (in_array($betaling, $korttyper) || in_array($betaling2, $korttyper)) {
                $amount = 0;
                for ($x = 0; $x < $kortantal; $x++) {
                    if ($betaling == $korttyper[$x] && $betalingskort[$x] && !$amount) {
                        $amount = $modtaget;
                    } elseif ($betaling == $korttyper[$x] && $betalingskort[$x] && $amount) {
                        return "Der kan ikke betales med 2 betalingskort";
                    }
                    if ($betaling2 == $korttyper[$x] && $betalingskort[$x] && !$amount) {
                        $amount = $modtaget2;
                    } elseif ($betaling2 == $korttyper[$x] && $betalingskort[$x] && $amount) {
                        return "Der kan ikke betales med 2 betalingskort";
                    }
                }
            }
            if ($amount) {
                if (!$printserver) {
                    $printserver = 'localhost';
                }
                $belob = dkdecimal($amount);
                $belob = str_replace(".", "", $belob);
                if ($_SERVER['HTTPS']) {
                    $url = 'https://';
                } else {
                    $url = 'http://';
                }
                $url .= $_SERVER['SERVER_NAME'] . $_SERVER['PHP_SELF'];
                print "<meta http-equiv=\"refresh\" content=\"0;URL=http://{$printserver}/pointd/kvittering.php?url={$url}&id={$id}&kommando=kortbetaling&belob={$belob}&betaling={$betaling}&betaling2={$betaling2}&modtaget={$modtaget}&modtaget2={$modtaget2}&indbetaling={$indbetaling}\">\n";
                exit;
            }
        }
    } elseif ($kortnavn) {
        #20140129
        $r = db_fetch_array(db_select("select box3,box4,box5,box6 from grupper where art = 'POS' and kodenr='2'", __FILE__ . " linje " . __LINE__));
        $x = $kasse - 1;
        $tmp = explode(chr(9), $r['box3']);
        $printserver = trim($tmp[$x]);
        $tmp = explode(chr(9), $r['box4']);
        $terminal_ip = trim($tmp[$x]);
        $betalingskort = explode(chr(9), $r['box5']);
        $div_kort_kto = trim($r['box6']);
        if ($terminal_ip && $div_kort_kto) {
            $r = db_fetch_array(db_select("select box4,box5 from grupper where art = 'POS' and kodenr = '1'", __FILE__ . " linje " . __LINE__));
            $kortantal = $r['box4'] * 1;
            $korttyper = explode(chr(9), $r['box5']);
            $lkt = explode(chr(9), strtolower($r['box5']));
            $lk = strtolower($kortnavn);
            if (in_array($lk, $lkt)) {
                for ($x = 0; $x < $kortantal; $x++) {
                    if ($lk == $lkt[$x] && $betaling == 'Betalingskort') {
                        $betaling = $korttyper[$x];
                    }
                    if ($lk == $lkt[$x] && $betaling2 == 'Betalingskort') {
                        $betaling2 = $korttyper[$x];
                    }
                }
            } elseif ($betaling == 'Betalingskort') {
                $betaling .= "|" . $kortnavn;
            } elseif ($betaling2 == 'Betalingskort') {
                $betaling2 = "|" . $kortnavn;
            }
        }
    }
    #	return("$godkendt");
    #	if ($bettalintaling==,$betaling2)
    #exit;
    $projekt = NULL;
    $tid = date("H:i");
    $r = db_fetch_array(db_select("select box9 from grupper where art='POSBUT' and (box7 < box8) and (box7<'{$tid}' and box8>'{$tid}')", __FILE__ . " linje " . __LINE__));
    $projekt = $r['box9'];
    if (!$projekt) {
        $r = db_fetch_array(db_select("select box9 from grupper where art='POSBUT' and (box7 > box8) and ((box7>'{$tid}' and box8>'{$tid}') or (box7<'{$tid}' and box8<'{$tid}'))", __FILE__ . " linje " . __LINE__));
        $projekt = $r['box9'];
    }
    $hurtigfakt = 'on';
    $moms = 0;
    $dd = date("Y-m-d");
    $r = db_fetch_array(db_select("select konto_id,status,fakturanr,momssats,betalingsbet from ordrer where id = '{$id}'", __FILE__ . " linje " . __LINE__));
    $momssats = $r['momssats'];
    $status = $r['status'];
    $konto_id = $r['konto_id'];
    $betalingsbet = $r['betalingsbet'];
    $x = 0;
    if ($status < 3) {
        $r = db_fetch_array(db_select("select box8 from grupper where art = 'POS' and kodenr = '1'", __FILE__ . " linje " . __LINE__));
        $rabatvareid = $r['box8'];
        $q = db_select("select * from ordrelinjer where ordre_id = '{$id}' order by rabatgruppe, id desc ", __FILE__ . " linje " . __LINE__);
        while ($r = db_fetch_array($q)) {
            $x++;
            $linje_id[$x] = $r['id'];
            $vare_id[$x] = $r['vare_id'];
            $varenr[$x] = $r['varenr'];
            $pris[$x] = $r['pris'];
            $antal[$x] = $r['antal'];
            $momsfri[$x] = $r['momsfri'];
            $varemomssats[$x] = $r['momssats'];
            $folgevare[$x] = $r['folgevare'];
            $rabat[$x] = $r['rabat'];
            $rabatart[$x] = $r['rabatart'];
            $rabatgruppe[$x] = $r['rabatgruppe'];
            if ($rabatgruppe[$x]) {
                if ($rabatgruppe[$x] == $rabatgruppe[$x - 1]) {
                    $rabatantal[$x] = $antal[$x] + $rabatantal[$x - 1];
                    $rabatantal[$x - 1] = 0;
                } else {
                    $rabatantal[$x] = $antal[$x];
                }
            } else {
                $rabatantal[$x] = 0;
            }
            $m_rabat[$x] = $r['m_rabat'] * -1;
        }
        $linjeantal = $x;
        $pos = 0;
        $sum = 0;
        $moms = 0;
        $incl_moms = 0;
        transaktion("begin");
        for ($x = 1; $x <= $linjeantal; $x++) {
            $pos++;
            db_modify("update ordrelinjer set posnr='{$pos}',projekt='{$projekt}' where id='{$linje_id[$x]}'", __FILE__ . " linje " . __LINE__);
            if ($rabatart[$x] == 'amount') {
                $tmp = afrund(($pris[$x] - $rabat[$x]) * $antal[$x], 2);
            } else {
                $tmp = afrund($pris[$x] * $antal[$x] - $pris[$x] * $antal[$x] / 100 * $rabat[$x], 2);
            }
            $sum += $tmp;
            if (!$momsfri[$x]) {
                $linjemoms[$x] = $tmp * $varemomssats[$x] / 100;
                $moms += $linjemoms[$x];
            } else {
                $linjemoms[$x] = 0;
            }
            $linjesum[$x] = afrund($tmp + $linjemoms[$x], 2);
            $incl_moms += $linjesum[$x];
            #cho 	"$linjesum[$x] -> $incl_moms<br>";
            ########################################################################
            if ($folgevare[$x]) {
                $pos++;
                $r = db_fetch_array(db_select("select varenr,beskrivelse,salgspris,gruppe from varer where id = '{$folgevare[$x]}'", __FILE__ . " linje " . __LINE__));
                $r2 = db_fetch_array(db_select("select box4, box7 from grupper where art = 'VG' and kodenr = '{$r['gruppe']}'", __FILE__ . " linje " . __LINE__));
                $f_bogfkto = $r2['box4'];
                $f_momsfri = $r2['box7'];
                $tmp = afrund($antal[$x] * $r['salgspris'], 2);
                $sum += $tmp;
                if (!$f_momsfri) {
                    $r2 = db_fetch_array(db_select("select moms from kontoplan where kontonr = '{$f_bogfkto}' and regnskabsaar = '{$regnaar}'", __FILE__ . " linje " . __LINE__));
                    $kodenr = substr($r['moms'], 1);
                    $r2 = db_fetch_array(db_select("select box2 from grupper where kodenr = '{$kodenr}' and art = 'SM'", __FILE__ . " linje " . __LINE__));
                    $f_momssats = $r2['box2'] * 1;
                    $incl_moms += afrund($tmp + $tmp * $f_momssats / 100, 2);
                }
                #cho "insert into ordrelinjer (ordre_id,vare_id,varenr,beskrivelse,antal,m_rabat,pris,kostpris,momssats,momsfri,posnr,projekt) values ('$id','$folgevare[$x]', '$r[varenr]', '$r[beskrivelse]', '$antal[$x]','0','$r[salgspris]','0','$f_momssats','$f_momsfri','$pos','0')<br>\n";
                db_modify("insert into ordrelinjer (ordre_id,vare_id,varenr,beskrivelse,antal,m_rabat,pris,kostpris,momssats,momsfri,posnr,projekt) values ('{$id}','{$folgevare[$x]}', '{$r['varenr']}', '{$r['beskrivelse']}', '{$antal[$x]}','0','{$r['salgspris']}','0','{$f_momssats}','{$f_momsfri}','{$pos}','{$projekt}')", __FILE__ . " linje " . __LINE__);
                #				print "<tr><td>$r[varenr]</td><td align=\"right\">".dkdecimal($antal[$x])."</td><td>$r[beskrivelse]</td><td align=\"right\">".dkdecimal($r['salgspris'])."</td><td align=\"right\">".dkdecimal($antal[$x]*$r['salgspris'])."</td>\n";
            }
            if ($rabatantal[$x]) {
                list($grupperabat, $rabattype) = explode(";", grupperabat($rabatantal[$x], $rabatgruppe[$x]));
                if ($grupperabat) {
                    $pos++;
                    if ($rabatvareid && ($r = db_fetch_array(db_select("select varenr,beskrivelse,salgspris,gruppe from varer where id = '{$rabatvareid}'", __FILE__ . " linje " . __LINE__)))) {
                        $r2 = db_fetch_array(db_select("select box6, box7 from grupper where art = 'VG' and kodenr = '{$r['gruppe']}'", __FILE__ . " linje " . __LINE__));
                        $r_momsfri = $r2['box7'];
                        $r_vare_id = $r['id'];
                        $r_varenr = $r['varenr'];
                        $r_beskrivelse = $r['beskrivelse'];
                    } else {
                        $r_momsfri = $momsfri[$x];
                        $r_vare_id = $vare_id[$x];
                        $r_varenr = $varenr[$x];
                        $r_beskrivelse = 'rabat';
                    }
                    db_modify("insert into ordrelinjer (ordre_id,vare_id,varenr,beskrivelse,antal,m_rabat,pris,kostpris,momsfri,posnr,projekt) values ('{$id}','{$r_vare_id}', '{$r_varenr}', '{$r_beskrivelse}', '{$rabatantal[$x]}','0','{$grupperabat}','0','{$r_momsfri}','{$pos}','{$projekt}')", __FILE__ . " linje " . __LINE__);
                    $tmp = afrund($grupperabat * $rabatantal[$x], 2);
                    $sum += $tmp;
                    if (!$r_momsfri) {
                        $incl_moms += afrund($tmp + $tmp * $varemomssats[$x] / 100, 2);
                    }
                }
            } elseif ($m_rabat[$x] && !$rabatgruppe[$x]) {
                $pos++;
                if ($rabatvareid && ($r = db_fetch_array(db_select("select id,varenr,beskrivelse,salgspris,gruppe from varer where id = '{$rabatvareid}'", __FILE__ . " linje " . __LINE__)))) {
                    $r2 = db_fetch_array(db_select("select box6, box7 from grupper where art = 'VG' and kodenr = '{$r['gruppe']}'", __FILE__ . " linje " . __LINE__));
                    $r_momsfri = $r2['box7'];
                    $r_vare_id = $r['id'];
                    $r_varenr = $r['varenr'];
                    $r_beskrivelse = $r['beskrivelse'];
                } else {
                    $r_momsfri = $momsfri[$x];
                    $r_vare_id = $vare_id[$x];
                    $r_varenr = $varenr[$x];
                    $r_beskrivelse = 'rabat';
                }
                db_modify("insert into ordrelinjer (ordre_id,vare_id,varenr,beskrivelse,antal,m_rabat,pris,kostpris,momsfri,posnr,projekt) values ('{$id}','{$r_vare_id}', '{$r_varenr}', '{$r_beskrivelse}', '{$antal[$x]}','0','{$m_rabat[$x]}','0','{$r_momsfri}','{$pos}','{$projekt}')", __FILE__ . " linje " . __LINE__);
                $rabatbelob = afrund($m_rabat[$x] * $antal[$x], 2);
                $sum += $rabatbelob;
                if (!$r_momsfri) {
                    $moms += afrund($rabatbelob * $momssats / 100, 2);
                    #20131015
                    $incl_moms += afrund($rabatbelob + $rabatbelob * $varemomssats[$x] / 100, 2);
                }
            }
            #			}
        }
        $fakturanr = 1;
        $q = db_select("select fakturanr from ordrer where art = 'PO'", __FILE__ . " linje " . __LINE__);
        #max(fakturanr) fungerer ikke da feltet ikke er numerisk
        while ($r = db_fetch_array($q)) {
            if ($r['fakturanr'] >= $fakturanr) {
                $fakturanr = $r['fakturanr'] + 1;
            }
        }
        #cho "update ordrer set fakturanr='$fakturanr' where id='$id'<br>";
        db_modify("update ordrer set fakturanr='{$fakturanr}' where id='{$id}'", __FILE__ . " linje " . __LINE__);
        while ($r = db_fetch_array($q = db_select("select id from ordrer where fakturanr='{$fakturanr}' and art = 'PO' and id != '{$id}'", __FILE__ . " linje " . __LINE__))) {
            usleep($kasse * 100000);
            if ($r = db_fetch_array($q = db_select("select id from ordrer where fakturanr='{$fakturanr}' and art = 'PO' and id != '{$id}'", __FILE__ . " linje " . __LINE__))) {
                $fakturanr = $fakturanr + 1;
                db_modify("update ordrer set fakturanr='{$fakturanr}' where id='{$id}'", __FILE__ . " linje " . __LINE__);
            }
        }
        $sum *= 1;
        $moms *= 1;
        $betalt = $modtaget + $modtaget2;
        $retur = afrund($betalt - ($sum + $moms), 2);
        #20140613
        if ($konto_id && ($betalingsbet != 'Kontant' || $indbetaling)) {
            $saldo = 0;
            $q = db_select("select * from openpost where konto_id = '{$konto_id}'", __FILE__ . " linje " . __LINE__);
            while ($r = db_fetch_array($q)) {
                $saldo = $saldo + $r['amount'];
            }
            $betaling2 = $saldo;
            if ($indbetaling) {
                $modtaget2 = $saldo - $indbetaling;
                $sum = $indbetaling;
                $moms = '0';
            } else {
                $modtaget2 = $saldo + $sum;
            }
        }
        $moms = afrund($moms, 2);
        #	$retur=($sum+$moms)-($modtaget+$modtaget2); #remmet 20140605
        if ($betaling == 'Kontant' && !$betaling2 && $retur) {
            if ($difkto) {
                $afrundet = pos_afrund($sum + $moms);
                $tmp = afrund($modtaget - ($sum + $moms), 2);
                if (!$tmp) {
                    $betalt = $afrundet;
                    $modtaget = $afrundet;
                } elseif ($modtaget == pos_afrund($modtaget, $difkto)) {
                    $betalt = $afrundet;
                }
            }
        } elseif ($betaling == 'Konto' && $betalingsbet == 'Kontant' && $modtaget != $sum + $moms && $retur) {
            if ($modtaget != $sum + $moms && $sum + $moms != pos_afrund($sum + $moms, $difkto)) {
                #cho "$modtaget!=$sum+$moms";
                #cho "&& ";
                #cho "!=";
                #cho pos_afrund($sum+$moms)."<br>";
                $afrundet = pos_afrund($sum + $moms, $difkto);
                $betalt = $afrundet;
            }
        }
        #	if (!$retur) $retur=afrund($modtaget+$modtaget2-$betalt,2);
        #cho "R $retur ($modtaget+$modtaget2-$betalt)<br>";
        $modtaget = afrund($modtaget, 2);
        $modtaget2 = afrund($modtaget2, 2);
        #cho "$sum+$moms!=$incl_moms<br>";
        if ($sum + $moms != $incl_moms) {
            // Denne rutine korrigerer for de differencer det kan opstå i totaler fordi momsberegningen på skærmen vises for den enkelte vare, mens databasen indeholder
            // summen at varer excl moms og momsen separat. Hvis der er difference på summen tillægges/frratrækkes de enkelte varer så mange tienedele ører som muligt
            // uden at den afrundede værdi incl moms ændres, indtil summen ex. moms + moms svarer til summen af varer incl moms. 20131205
            $tmp = afrund($incl_moms - ($sum + $moms), 2);
            if (abs($tmp) <= $linjeantal / 200) {
                #max 0,5 øre afrundingsfejl pr linje;
                $sum += $tmp;
                for ($x = 1; $x <= $linjeantal; $x++) {
                    $ny_pris[$x] = $pris[$x];
                    $tmp2 = afrund($pris[$x], 2);
                    $tmp3 = afrund($tmp2 * $antal[$x] - $tmp2 * $antal[$x] / 100 * $rabat[$x], 2);
                    #cho "A-: $tmp && ".afrund($tmp3+$linjemoms[$x],2)."==$linjesum[$x]<br>";
                    while (afrund($tmp, 2) && afrund($tmp3 + $linjemoms[$x], 2) == $linjesum[$x]) {
                        #cho "A: $tmp && ".afrund($tmp3+$linjemoms[$x],2)."==$linjesum[$x]<br>";
                        $tmp > 0 ? $tmp2 += 0.001 : ($tmp2 -= 0.001);
                        $tmp3 = afrund($tmp2 * $antal[$x] - $tmp2 * $antal[$x] / 100 * $rabat[$x], 2);
                        #cho "B: $tmp && ".afrund($tmp3+$linjemoms[$x],2)."==$linjesum[$x]<br>";
                        if (afrund($tmp3 + $linjemoms[$x], 2) == $linjesum[$x]) {
                            $ny_pris[$x] = $tmp2;
                            $tmp > 0 ? $tmp -= 0.001 : ($tmp += 0.001);
                        }
                    }
                    if ($ny_pris[$x] != $pris[$x]) {
                        #cho "$ny_pris[$x]!=$pris[$x]<br>";
                        $qtxt = "update ordrelinjer set pris='{$ny_pris[$x]}' where id = '{$linje_id[$x]}'";
                        #cho "$qtxt<br>";
                        db_modify($qtxt, __FILE__ . " linje " . __LINE__);
                    }
                }
            } elseif (!$indbetaling) {
                print "<BODY onLoad=\"javascript:alert('Fejl i øreafrunding, kontakt Danosoft på telefon 46902208')\">";
                print "<meta http-equiv=\"refresh\" content=\"0;URL=pos_ordre.php?id={$id}\">";
                exit;
            }
        }
        #cho "INCL MOMS=$incl_moms-($sum+$moms)<br>";
        $tidspkt = date("Y-m-d H:i");
        $qtxt = "update ordrer set levdate = '{$dd}',fakturadate = '{$dd}',sum='{$sum}', moms='{$moms}', betalt='{$betalt}',status='2',felt_1='{$betaling}',felt_2='{$modtaget}',felt_3='{$betaling2}',felt_4='{$modtaget2}',felt_5='{$kasse}',tidspkt='{$tidspkt}',projekt='{$projekt}' where id='{$id}'";
        db_modify($qtxt, __FILE__ . " linje " . __LINE__);
        if (!$indbetaling) {
            $svar = levering($id, 'on', '', '');
            if ($svar != 'OK') {
                return $svar;
            }
            $svar = bogfor($id, '');
            if ($svar != 'OK') {
                return $svar;
            }
        } else {
            $svar = bogfor_indbetaling($id, '');
            if ($svar != 'OK') {
                return $svar;
            }
        }
    }
    #xit;
    transaktion("commit");
    if (db_fetch_array(db_select("select id from grupper where art = 'POS' and kodenr = '1' and box10='on'", __FILE__ . " linje " . __LINE__))) {
        pos_txt_print($id, $betaling, $betaling2, $modtaget, $modtaget2, $indbetaling);
    } else {
        $pfnavn = "../temp/" . $db . "/" . $bruger_id . ".txt";
        $fp = fopen("{$pfnavn}", "w");
        fclose($fp);
        $tmp = "/temp/" . $db . "/" . $bruger_id . ".txt";
        $url = "://" . ($_SERVER['SERVER_NAME'] .= $_SERVER['PHP_SELF']);
        $url = str_replace("/debitor/pos_ordre.php", "", $url);
        if ($_SERVER['HTTPS']) {
            $url = "s" . $url;
        }
        $url = "http" . $url;
        print "<BODY onLoad=\"JavaScript:window.open('http://{$printserver}/saldiprint.php?printfil={$tmp}&url={$url}&bruger_id={$bruger_id}&bonantal=1' , '' , '{$jsvars}');\">\n";
    }
    print "\n<!-- Function afslut (s**t)-->\n";
    return NULL;
}
Example #2
0
if (isset($_GET['id'])) {
    $id = $_GET['id'];
}
if ($id && $id >= 1) {
    $modulnr = 5;
    include "../includes/connect.php";
    include "../includes/online.php";
    include "../includes/std_func.php";
    include "../includes/ordrefunc.php";
    include "../includes/fuld_stykliste.php";
    $hurtigfakt = if_isset($_GET['hurtigfakt']);
    $genfakt = if_isset($_GET['genfakt']);
    $pbs = if_isset($_GET['pbs']);
    $mail_fakt = if_isset($_GET['mail_fakt']);
    transaktion("begin");
    $svar = levering($id, $hurtigfakt, $genfakt, 0);
    if ($svar == 'OK') {
        transaktion("commit");
        if ($hurtigfakt == 'on') {
            db_modify("update ordrer set status=2 where id='{$id}' and status<2", __FILE__ . " linje " . __LINE__);
            print "<meta http-equiv=\"refresh\" content=\"0;URL=bogfor.php?id={$id}&genfakt={$genfakt}&mail_fakt={$mail_fakt}&pbs={$pbs}\">";
            exit;
        } else {
            print "<meta http-equiv=\"refresh\" content=\"0;URL=ordre.php?id={$id}\">";
        }
    } else {
        print "<BODY onLoad=\"javascript:alert('{$svar}')\">";
    }
}
?>
</body></html>
Example #3
0
function invoice($string)
{
    $webservice = '1';
    $fp = fopen("../temp/invoice.log", "w");
    list($s_id, $tmp) = explode(chr(9), $string);
    if (!$s_id) {
        return '1' . chr(9) . "Missing session ID";
    }
    #	include("../includes/select.php");
    include "../includes/connect.php";
    include "../includes/online.php";
    include "../includes/std_func.php";
    include "../includes/ordrefunc.php";
    include "../includes/formfunk.php";
    $linje = NULL;
    $ordre_id = str_replace($s_id, "", $string);
    $ordre_id = str_replace(chr(9), "", $ordre_id);
    $ordre_id = str_replace(chr(10), "", $ordre_id);
    $ordre_id = str_replace(chr(13), "", $ordre_id);
    #	$ordre_id=str_replace(" ","",$ordre_id);
    $ordre_id = strtolower($ordre_id);
    list($table, $tmp) = explode("set", $ordre_id, 2);
    $table = trim($table);
    $r = db_fetch_array(db_select("select momssats from ordrer where id = '{$ordre_id}'", __FILE__ . " linje " . __LINE__));
    $momssats = $r['momssats'] * 1;
    $x = 0;
    $ordresum = 0;
    $momssum = 0;
    $kostsum = 0;
    $momsdiff = 0;
    $q = db_select("select * from ordrelinjer where ordre_id = '{$ordre_id}'", __FILE__ . " linje " . __LINE__);
    while ($r = db_fetch_array($q)) {
        if ($r['vare_id']) {
            $linjesum = $r['pris'] * $r['antal'] - $r['pris'] * $r['antal'] * $r['rabat'] / 100;
            $ordresum += $linjesum;
            $linjemoms = $linjesum * $r['momssats'] / 100;
            $momssum += $linjemoms;
            if ($r['momssats'] != $momssats || $r['momsfri']) {
                $momsdiff = 1;
            }
            $kostsum += $r['kostpris'] * $r['antal'];
        }
        $ordresum = afrund($ordresum, 2);
        if (!$momsdiff) {
            $momssum = $ordresum * $momssats / 100;
        }
        $momssum = afrund($momssum, 2);
    }
    transaktion('begin');
    $linje = "update ordrer set status = '2',levdate = ordredate,fakturadate = ordredate,sum='{$ordresum}',moms='{$momssum}',udskriv_til='email',mail_fakt='on',momssats='{$momssats}',kostpris='{$kostsum}',projekt='' where id = '{$ordre_id}'";
    fwrite($fp, $linje . "\n");
    $svar = db_modify($linje, __FILE__ . " linje " . __LINE__);
    list($fejl, $svar) = explode(chr(9), $svar);
    if ($fejl) {
        return $fejl . chr(9) . $svar;
    }
    $linje = "update ordrelinjer set projekt = '' where ordre_id = '{$ordre_id}'";
    fwrite($fp, $linje . "\n");
    $svar = db_modify($linje, __FILE__ . " linje " . __LINE__);
    list($fejl, $svar) = explode(chr(9), $svar);
    if ($fejl) {
        return $fejl . chr(9) . $svar;
    }
    $linje = "update ordrelinjer set leveres = antal where ordre_id = '{$ordre_id}' and vare_id>'0'";
    fwrite($fp, $linje . "\n");
    $svar = db_modify($linje, __FILE__ . " linje " . __LINE__);
    list($fejl, $svar) = explode(chr(9), $svar);
    if ($fejl) {
        return $fejl . chr(9) . $svar;
    }
    $linje = "levering({$ordre_id},'on','','on')";
    fwrite($fp, $linje . "\n");
    $svar = levering($ordre_id, 'on', '', 'on');
    if ($svar != 'OK') {
        return '1' . chr(9) . $svar;
    }
    $linje = "update ordrelinjer set leveret = antal,leveres='0' where ordre_id = '{$ordre_id}' and vare_id>'0'";
    fwrite($fp, $linje . "\n");
    $svar = db_modify($linje, __FILE__ . " linje " . __LINE__);
    $linje = "bogfor({$ordre_id},'on')";
    fwrite($fp, $linje . "\n");
    $svar = bogfor($ordre_id, 'on');
    list($fejl, $svar) = explode(chr(9), $svar);
    fwrite($fp, $fejl . " " . $svar . "\n");
    if ($fejl != 'OK') {
        $linje = "{$fejl}";
        #		fwrite($fp,$linje."\n");
        return '1' . chr(9) . $fejl;
    } else {
        transaktion('commit');
    }
    $linje = "formularprint({$ordre_id},'4','1',{$charset},'email')";
    fwrite($fp, $linje . "\n");
    $svar = formularprint($ordre_id, '4', '1', $charset, 'email');
    fwrite($fp, $linje . "Svar " . $svar . "\n");
    if ($svar && $svar != 'OK') {
        return '1' . chr(9) . $svar;
    } else {
        fclose($fp);
        return '0' . chr(9) . $ordre_id;
    }
}
Example #4
0
 $udskriv_til[$x] == 'email' ? $mail_fakt = 'on' : ($mail_fakt = '');
 #20130117
 strstr($udskriv_til[$x], 'PBS') ? $pbs = 'on' : ($pbs = '');
 #20130117
 if ($udskriv_til[$x] == 'oioubl') {
     if ($art == "DO") {
         $oioubl = 'faktura';
     } else {
         $oioubl = 'kreditnota';
     }
 } else {
     $oioubl = NULL;
 }
 $y++;
 transaktion('begin');
 levering($ordreliste[$x], 'on', 'on');
 $svar = bogfor($ordreliste[$x], 'on', 'on');
 if ($svar == 'OK') {
     if ($pbs) {
         pbsfakt($ordreliste[$x]);
         $y--;
         #20130117
     } elseif ($oioubl) {
         $printfilnavn = "doktype-faktura_dokid-" . $ordreliste[$x] . ".xml";
         $fp = fopen("../temp/{$db}/{$printfilnavn}", "w");
         fwrite($fp, oioubldoc_faktura($ordreliste[$x], 'faktura', NULL));
         fclose($fp);
         #echo "'oioubl_dok.php?id=$ordreliste[$x]&doktype=$oioubl&genfakt=1' ,'' ,'$jsvars'<br>";
         #						print "<BODY onLoad=\"JavaScript:window.open('oioubl_dok.php?id=$ordreliste[$x]&doktype=$oioubl&genfakt=1' ,'' ,'$jsvars');\">\n";
         $r = db_fetch_array(db_select("select box8 from grupper where art = 'DIV' and kodenr = '2'", __FILE__ . " linje " . __LINE__));
         if ($r['box8']) {
Example #5
0
function bogfor($id, $webservice)
{
    echo "<!--function bogfor start-->";
    global $regnaar;
    global $fakturadate;
    global $valutakurs;
    global $pbs;
    global $mail_fakt;
    global $db;
    global $brugernavn;
    global $momssats;
    global $retur;
    #	$fp=fopen("../temp/ordrefunc.log","a");
    #	$linje="select * from ordrer where id = $id";
    #	fwrite($fp,$linje."\n");
    $query = db_select("select * from ordrer where id = {$id}", __FILE__ . " linje " . __LINE__);
    $row = db_fetch_array($query);
    $konto_id = $row['konto_id'];
    $ordredate = $row['ordredate'];
    $levdate = $row['levdate'];
    $fakturadate = $row['fakturadate'];
    $nextfakt = $row['nextfakt'];
    $art = $row['art'];
    $kred_ord_id = $row['kred_ord_id'];
    $valuta = $row['valuta'];
    $art = $row['art'];
    $fakturanr = $row['fakturanr'];
    $procenttillag = $row['procenttillag'] * 1;
    $momssats = $row['momssats'];
    #cho $row['sum']." -> ".$row['moms']."<br>";
    if ($art == 'PO') {
        $sum = $row['sum'];
        $moms = afrund($row['moms'], 2);
        #cho "Moms $moms<br>";
        $betaling = $row['felt_1'];
        $betalt = $row['felt_2'];
        $betaling2 = $row['felt_3'];
        $betalt2 = $row['felt_4'];
        $betalingsbet = $row['betalingsbet'];
        if ($betalingsbet == 'Kontant') {
            $konto_id = '0';
        }
        $r = db_fetch_array(db_select("select box2 from grupper where art='OreDif'", __FILE__ . " linje " . __LINE__));
        $difkto = $r['box2'];
    }
    if ($row['status'] > '2') {
        return "invoice allready created for order id {$id}";
    }
    #cho "procenttillag $procenttillag<br>";
    if ($procenttillag) {
        $sum = 0;
        $q = db_select("select * from ordrelinjer where ordre_id='{$id}' order by posnr", __FILE__ . " linje " . __LINE__);
        while ($r = db_fetch_array($q)) {
            if ($r['vare_id']) {
                $linjesum = $r['antal'] * $r['pris'];
                if ($r['rabat']) {
                    $linjesum -= $linjesum * $r['rabat'] / 100;
                }
                $linjesum -= $linjesum * (100 - $r['procent']) / 100;
                $sum += $linjesum;
            }
            $posnr = $r['posnr'];
        }
        $posnr++;
        $tillag = $sum / 100 * $procenttillag;
        $qtxt = "select box13 from grupper where art = 'DIV' and kodenr = '3'";
        #cho "$qtxt<br>";
        $r = db_fetch_array(db_select($qtxt, __FILE__ . " linje " . __LINE__));
        list($tmp, $procentvare) = explode(chr(9), $r['box13']);
        #cho "box13 $r[box13] -> $procentvare<br>";
        if ($procentvare) {
            $qtxt = "select * from varer where varenr = '{$procentvare}'";
            #cho "$qtxt<br>";
            $r = db_fetch_array(db_select($qtxt, __FILE__ . " linje " . __LINE__));
            if ($r['id']) {
                #cho "$id,$r[varenr],1,$r[beskrivelse],$tillag,0,100,$art,'',$posnr,'','','on','percent',''<br>";
                $tmp = str_replace('$procenttillæg;', $procenttillag, $r['beskrivelse']);
                opret_ordrelinje($id, $r['id'], $r['varenr'], 1, $tmp, $tillag, 0, 100, $art, '', $posnr, '', '', 'on', 'percent', '');
                #20140426
                $r = db_fetch_array(db_select("select max(id) as linje_id from ordrelinjer where ordre_id='{$id}'", __FILE__ . " linje " . __LINE__));
                db_modify("update ordrelinjer set leveres='1' where id='{$r['linje_id']}'", __FILE__ . " linje " . __LINE__);
                levering($id, '', '', '');
                $sum += $tillag;
                #cho "update ordrer set sum=sum+$tillag, moms=moms+$tillag/100*$momssats where id = '$id'<br>";
                db_modify("update ordrer set sum=sum+{$tillag}, moms=moms+{$tillag}/100*{$momssats} where id = '{$id}'", __FILE__ . " linje " . __LINE__);
                #xit;
            } else {
                return 'Manglende vare til procenttillæg';
            }
        } else {
            return 'Manglende vare til procenttillæg -- ' . $procentvare;
        }
    }
    #	$x=0;
    #	$saet=array();
    $diff = 0;
    $saetsum = 0;
    $saetmoms = 0;
    $q = db_select("select * from ordrelinjer where ordre_id='{$id}' order by saet", __FILE__ . " linje " . __LINE__);
    $art == 'DO' ? $dan_kn = 1 : ($dan_kn = 0);
    while ($r = db_fetch_array($q)) {
        if ($r['vare_id'] && $r['antal'] >= 0) {
            $dan_kn = 0;
        }
        #		if ($r['saet'] && in_array($r['saet'],$saet) {
        #			$saetsum[$x]+=$r['pris']*$r['antal']-($r['pris']*$r['antal']*$r['rabat']/100);
        #		} elseif ($r['saet']) {
        if ($r['saet']) {
            $tmp = $r['pris'] * $r['antal'] - $r['pris'] * $r['antal'] * $r['rabat'] / 100;
            $saetsum += $tmp;
            if (!$r['momsfri'] && $momssats) {
                $saetmoms += $tmp * $momssats / 100;
            }
        }
    }
    if ($saetsum) {
        $r = db_fetch_array(db_select("select box2 from grupper where art='OreDif'", __FILE__ . " linje " . __LINE__));
        $difkto = $r['box2'];
        $tmp = afrund($saetsum + $saetmoms, 2);
        $diff = $tmp - pos_afrund($tmp, $difkto);
        #		if (afrund($diff,2)) saet_afrund($id,$saetsum,$saetmoms,$difkto);
    }
    #		$q=db_select("select * from ordrelinjer where ordre_id='$id' order by posnr",__FILE__ . " linje " . __LINE__);
    #		while ($r = db_fetch_array($q)) #cho "Ordrelinje $r[posnr] $r[ordre_id] $r[vare_id] $r[varenr] $r[beskrivelse] >$r[projekt]< $r[bogf_konto]<br>";
    #xit;
    $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 = $row['box2'] * 1;
        $month = $row['box1'] * 1;
        #20130411-2
        if ($month < 10) {
            $month = "0" . $month;
        }
        #20130411-2
        $aarstart = str_replace(" ", "", $year . $month);
        $year = $row['box4'] * 1;
        $month = $row['box3'] * 1;
        if ($month < 10) {
            $month = "0" . $month;
        }
        $aarslut = str_replace(" ", "", $year . $month);
    }
    $query = db_select("select * from ordrer where id = '{$id}'", __FILE__ . " linje " . __LINE__);
    $row = db_fetch_array($query);
    if (!$fakturadate) {
        if ($webservice) {
            return "missing invoicedate for order {$id}";
        } else {
            print "<meta http-equiv=\"refresh\" content=\"0;URL=../debitor/fakturadato.php?id={$id}&pbs={$pbs}&mail_fakt={$mail_fakt}&returside=bogfor.php\">";
            exit;
        }
    }
    if ($valuta && $valuta != 'DKK') {
        if ($r = db_fetch_array(db_select("select valuta.kurs as kurs, grupper.box3 as difkto from valuta, grupper where grupper.art='VK' and grupper.box1='{$valuta}' and valuta.gruppe=" . nr_cast("grupper.kodenr") . " and valuta.valdate <= '{$fakturadate}' order by valuta.valdate desc", __FILE__ . " linje " . __LINE__))) {
            $valutakurs = $r['kurs'] * 1;
            $difkto = $r['difkto'] * 1;
            if (!db_fetch_array(db_select("select id from kontoplan where kontonr='{$difkto}' and regnskabsaar='{$regnaar}'", __FILE__ . " linje " . __LINE__))) {
                if ($webservice) {
                    return "Kontonr {$difkto} (kursdiff) eksisterer ikke";
                } else {
                    return "Kontonr {$difkto} (kursdiff) eksisterer ikke";
                }
            }
        } else {
            $tmp = dkdato($fakturadate);
            return "Der er ikke nogen valutakurs for {$valuta} den {$tmp} (fakturadatoen).";
        }
    } else {
        $valuta = 'DKK';
        $valutakurs = 100;
    }
    if (!$levdate) {
        if ($webservice) {
            return "Missing deliverydate";
        } else {
            return "Leveringsdato SKAL udfyldes";
        }
    }
    if ($levdate < $ordredate) {
        if ($webservice) {
            return "Deliverydate prior to orderdate";
        } else {
            return "Leveringsdato er f&oslash;r ordredato";
        }
    }
    if ($fakturadate < $levdate) {
        if ($webservice) {
            return "Invoicedate prior to orderdate";
        } else {
            return "Fakturadato er f&oslash;r leveringsdato";
        }
    }
    if ($nextfakt && $nextfakt <= $fakturadate) {
        if ($webservice) {
            return "Next_invoicedate prior to invoicedate";
        } else {
            return "Genfaktureringsdato skal v&aelig;re efter fakturadato";
        }
    }
    list($year, $month, $day) = explode('-', $fakturadate);
    $year = trim($year);
    $ym = $year . $month;
    if ($art != 'PO' && !$webservice && ($ym < $aarstart || $ym > $aarslut)) {
        print "<BODY onLoad=\"javascript:alert('Fakturadato udenfor regnskabs&aring;r')\">";
        print "<meta http-equiv=\"refresh\" content=\"0;URL=ordre.php?id={$id}\">";
        exit;
    }
    if ($valuta && $valuta != 'DKK') {
        if ($r = db_fetch_array(db_select("select valuta.kurs from valuta, grupper where grupper.art='VK' and grupper.box1='{$valuta}' and valuta.gruppe=" . nr_cast("grupper.kodenr") . " and valuta.valdate <= '{$ordredate}' order by valuta.valdate desc", __FILE__ . " linje " . __LINE__))) {
            $valutakurs = $r['kurs'];
        } else {
            $tmp = dkdato($ordredate);
            return "Der er ikke nogen valutakurs for {$valuta} den {$ordredate} (ordredatoen)";
        }
    }
    $qtxt = "select * from ordrelinjer where pris != '0' and m_rabat != '0' and rabat = '0' and ordre_id='{$id}'";
    if ($r = db_fetch_array(db_select($qtxt, __FILE__ . " linje " . __LINE__))) {
        $rabatkontonr = $r['bogf_konto'];
        $rabatvareid = $r['id'];
        $rabatvarenr = $r['varenr'];
        if ($r = db_fetch_array(db_select("select box2 from grupper where art = 'DIV' and kodenr='3'", __FILE__ . " linje " . __LINE__))) {
            if ($rabatvareid = $r['box2'] * 1) {
                $r = db_fetch_array(db_select("select varenr from varer where id = '{$rabatvareid}'", __FILE__ . " linje " . __LINE__));
                $rabatvarenr = $r['varenr'];
            }
            # else $fejl="Manglende varenummer for rabat (Indstillinger -> Diverse -> Ordrerelaterede valg)";
        }
        # else $fejl="Manglende varenummer for rabat (Indstillinger -> Diverse -> Ordrerelaterede valg)";
    }
    #exit;
    if (!$fejl) {
        #ransaktion("begin"); 20130506
        if ($art != "PO") {
            $fakturanr = 1;
            # select max kan ikke bruges da fakturanr felt ikke er numerisk;
            $q = db_select("select fakturanr from ordrer where art = 'DO' or art = 'DK'", __FILE__ . " linje " . __LINE__);
            while ($r = db_fetch_array($q)) {
                if ($fakturanr <= $r['fakturanr'] * 1) {
                    $fakturanr = $r['fakturanr'] + 1;
                }
            }
            $r = db_fetch_array(db_select("select box1 from grupper where art = 'RB' and kodenr='1'", __FILE__ . " linje " . __LINE__));
            if ($fakturanr < $r['box1']) {
                $fakturanr = $r['box1'];
            }
            if ($fakturanr < 1) {
                $fakturanr = 1;
            }
            $ny_id = array();
            $x = 0;
            $q = db_select("select * from ordrelinjer where pris != '0' and m_rabat != '0' and rabat = '0' and ordre_id='{$id}'", __FILE__ . " linje " . __LINE__);
            while ($r = db_fetch_array($q)) {
                $x++;
                $linje_id[$x] = $r['id'] * 1;
                $linje_m_rabat[$x] = $r['m_rabat'];
                $linje_pris[$x] = $r['pris'];
                $linje_rabatart[$x] = $r['rabatart'];
                $linje_varenr[$x] = $r['varenr'];
                $linje_posnr[$x] = $r['posnr'];
            }
            $linjeantal = $x;
            for ($x = 1; $x <= $linjeantal; $x++) {
                $ny_id[$x] = copy_row("ordrelinjer", $linje_id[$x]);
                $pris = $linje_m_rabat[$x];
                $pris *= -1;
                $rabatpct = afrund($linje_m_rabat[$x] * 100 / $linje_pris[$x], 2);
                $linje_rabatart[$x] == 'amount' ? $beskrivelse = findtekst(466, $sprog_id) : ($beskrivelse = findtekst(467, $sprog_id));
                $beskrivelse = str_replace('$rabatpct', $rabatpct, $beskrivelse);
                #cho "update ordrelinjer set posnr=posnr+0.1,varenr='$rabatvarenr',vare_id='$rabatvareid',pris='$pris',kostpris='0',m_rabat='0',beskrivelse='$beskrivelse',bogf_konto='$rabatkontonr',kdo='on' where id=$ny_id[$x]<br>";
                #exit;
                db_modify("update ordrelinjer set posnr=posnr+0.1,varenr='{$rabatvarenr}',vare_id='{$rabatvareid}',pris='{$pris}',kostpris='0',m_rabat='0',beskrivelse='{$beskrivelse}',bogf_konto='{$rabatkontonr}',kdo='on' where id={$ny_id[$x]}", __FILE__ . " linje " . __LINE__);
                $r = db_fetch_array(db_select("select * from ordrelinjer where id='{$ny_id[$x]}'", __FILE__ . " linje " . __LINE__));
                #cho "$r[id],$r[ordre_id],$r[posnr],$r[varenr],$r[vare_id],$r[pris],$r[kostpris],$r[m_rabat],$r[beskrivelse],$r[bogf_konto]<br>--<br>";
            }
        } else {
            # Så er det en POS ordre
            #cho "$konto_id==0 && $sum+$moms=!$betalt<br>";
            $diff = 0;
            if ($betaling == 'Kontant' && !$betaling2) {
                $tmp1 = afrund($sum + $moms, 2);
                $tmp2 = pos_afrund($sum + $moms, $difkto);
                if ($afrunding = $tmp2 - $tmp1) {
                    #cho "A $afrunding $tmp2-$tmp1<br>";
                    if ($moms) {
                        $afrundingsmoms = afrund($afrunding * ($moms * 100 / $sum) / 100, 2);
                        $afrunding = afrund($afrunding - $afrundingsmoms, 2);
                        $sum += $afrunding;
                        $moms += $afrundingsmoms;
                    }
                    #cho "A1 $afrunding $tmp2-$tmp1<br>";
                    #					$diff=1;
                    $diff = $afrunding;
                }
            }
            if (afrund($sum + $moms, 2) + $retur != $betalt) {
                #20140613
                $returdiff = afrund($sum + $moms, 2) + $retur - $betalt;
                if (afrund($returdiff, 2) == 0.01) {
                    $moms = $moms - 0.01;
                } elseif (afrund($returdiff, 2) == -0.01) {
                    $moms = $moms + 0.01;
                }
                db_modify("update ordrer set sum = '{$sum}',moms='{$moms}' where id = '{$id}'", __FILE__ . " linje " . __LINE__);
            }
            $a = afrund($sum + $moms, 2);
            #20131111 + næste 3 linjer rettet grundet php fejl??
            $b = afrund($betalt + $betalt2, 2);
            if ($konto_id == 0 && $a != $b) {
                #				$retur=$a-$b; Hentes fra global.
                $tmp2 = afrund($retur, 2);
                $tmp1 = pos_afrund($retur, $difkto);
                #cho "B $afrunding $tmp2-$tmp1<br>";
                if ($afrunding = afrund($tmp2 - $tmp1, 2)) {
                    #cho "B $afrunding $tmp2-$tmp1<br>";
                    if ($moms) {
                        $afrundingsmoms = afrund($afrunding * ($moms * 100 / $sum) / 100, 2);
                        $afrunding = afrund($afrunding - $afrundingsmoms, 2);
                        $sum += $afrunding;
                        $moms += $afrundingsmoms;
                    }
                    $diff += $afrunding;
                }
            }
            #xit;
            #cho "DK $difkto && DI $diff && AF $afrunding Moms $moms<br>";
            $diff = afrund($diff, 2);
            #20140613
            if ($difkto && $diff) {
                $linje_posnr[$x] += 0.1;
                # #cho "POI insert into ordrelinjer (posnr,antal,pris,rabat,procent,ordre_id,bogf_konto,beskrivelse,projekt) values ('0','1', '$diff', 0,100, '$id', '$difkto','Afrunding','$projekt')<br>";
                db_modify("insert into ordrelinjer (posnr,antal,pris,rabat,procent,ordre_id,bogf_konto,beskrivelse,projekt) values ('0','1', '{$diff}', 0,100, '{$id}', '{$difkto}','Afrunding','{$projekt}')", __FILE__ . " linje " . __LINE__);
                db_modify("update ordrer set sum = '{$sum}',moms='{$moms}' where id = '{$id}'", __FILE__ . " linje " . __LINE__);
            }
        }
        #cho "A select * from ordrer where id='$id'<br>";
        $q = db_select("select * from ordrer where id='{$id}'", __FILE__ . " linje " . __LINE__);
        $r = db_fetch_array($q);
        #cho "Sum $r[sum] $r[moms]<br>";
        batch_kob($id, $art);
        #cho "B select * from ordrer where id='$id'<br>";
        $q = db_select("select * from ordrer where id='{$id}'", __FILE__ . " linje " . __LINE__);
        $r = db_fetch_array($q);
        #cho "Sum $r[sum] $r[moms]<br>";
        batch_salg($id);
        #cho "D select * from ordrer where id='$id'<br>";
        $q = db_select("select * from ordrer where id='{$id}'", __FILE__ . " linje " . __LINE__);
        $r = db_fetch_array($q);
        #cho "Sum $r[sum] $r[moms]<br>";
        #cho "update ordrer set status=3, fakturanr=$fakturanr, valutakurs=$valutakurs where id=$id<br>";
        $tidspkt = date("H:i");
        db_modify("update ordrer set status='3', fakturanr='{$fakturanr}', tidspkt='{$tidspkt}', valutakurs='{$valutakurs}' where id='{$id}'", __FILE__ . " linje " . __LINE__);
        if ($afd) {
            db_modify("update ordrer set felt_5='{$afd}' where id='{$id}'", __FILE__ . " linje " . __LINE__);
        }
        $r = db_fetch_array(db_select("select box5 from grupper where art='DIV' and kodenr='3'", __FILE__ . " linje " . __LINE__));
        $straksbogfor = $r['box5'];
        $svar = momsupdat($id);
        if ($art == 'PO' && !$konto_id) {
            $r = db_fetch_array(db_select("select box9 from grupper where art='POS' and kodenr='1'", __FILE__ . " linje " . __LINE__));
            $straksbogfor = $r['box9'];
        }
        #$linje="Straksbogfor $straksbogfor ($id,$webservice)<br>";
        #fwrite($fp,$linje."\n");
        if ($dan_kn) {
            db_modify("update ordrer set art = 'DK' where id = '{$id}'", __FILE__ . " linje " . __LINE__);
        }
        if ($straksbogfor) {
            $svar = bogfor_nu($id, $webservice);
        }
        #$linje="Svar $svar<br>";
        #fwrite($fp,$linje."\n");
        if ($svar != "OK") {
            return $svar;
            exit;
        } else {
            #			exit;
            #ransaktion("commit"); 20130506
        }
    } elseif (!$svar) {
        $svar = $fejl;
    }
    echo "<!--function bogfor s**t-->";
    return $svar;
}
Example #6
0
 $komplet = if_isset($_POST['komplet']);
 $fakt_dato = if_isset($_POST['fakt_dato']);
 $opdat_pris = if_isset($_POST['opdat_pris']);
 $slet_gfdato = if_isset($_POST['slet_gfdato']);
 $box1 = "{$org_nr},{$komplet},{$fakt_dato},{$opdat_pris},{$slet_gfdato}";
 if ($gf_id) {
     db_modify("update grupper set box1='{$box1}' where id='{$gf_id}'", __FILE__ . " linje " . __LINE__);
 } else {
     db_modify("insert into grupper (beskrivelse,art,kodenr,box1) values ('Genfakturering','GF','{$bruger_id}','{$box1}')", __FILE__ . " linje " . __LINE__);
 }
 $udskriv_antal = 0;
 $ny_liste = '';
 for ($q = 0; $q < $ordre_antal; $q++) {
     list($id, $pbs) = explode(",", genfakt($ordre_id[$q], $org_nr, $fakt_dato, $opdat_pris, $slet_gfdato));
     if ($komplet) {
         levering($id, 'on', 'on');
         $svar = bogfor($id, 'on', 'on');
         if ($svar != 'OK') {
             if (strpos($svar, 'invoicedate prior to')) {
                 $tekst = "Genfaktureringsdato før fakturadato";
             } else {
                 $tekst = "Der er konstateret en ubalance i posteringssummen,\\nkontakt venligst Danosoft på tlf. +45 46902208";
             }
             print "<BODY onLoad=\"javascript:alert('{$tekst}')\">\n";
             print "<meta http-equiv=\"refresh\" content=\"0;URL=ordreliste.php\">";
             exit;
         }
     } else {
         if ($ny_liste) {
             $ny_liste .= ",{$id}";
         } else {
Example #7
0
 }
 $gl_id = $ordre_id;
 if ($delfakturer) {
     $ordre_id = delfakturer($ordre_id, $valg);
 }
 list($ordre_id, $leveres) = find_next($ordre_id, $valg);
 if ($ordre_id && $leveres) {
     $x++;
     $ordre_antal++;
     if ($skriv) {
         $skriv = $skriv . "," . $ordre_id;
     } else {
         $skriv = $ordre_id;
     }
     momsupdat($ordre_id);
     levering($ordre_id, 'on', 'on');
     bogfor($ordre_id);
 } elseif ($ordre_id) {
     $rest++;
     $rest_id[$rest] = $ordre_id;
 }
 if ($x >= 10) {
     if ($valg == 'tilbud') {
         $qtxt = "select count(*) as antal from ordrer where status='0' and art='DO'";
     } else {
         $qtxt = "select count(*) as antal from ordrer where (status='1' or status='2') and art='DO'";
     }
     if ($r = db_fetch_array($q = db_select($qtxt, __FILE__ . " linje " . __LINE__))) {
         echo "Vent - {$r['antal']} ordrer tilbage<br>";
     }
     $tmp = explode($rest_id);
Example #8
0
function fakturer_ordre($saldi_id)
{
    global $art;
    #transaktion('begin');
    $qtxt = "select shop_id from shop_ordrer where saldi_id='{$saldi_id}'";
    $r = db_fetch_array(db_select($qtxt, __FILE__ . " linje " . __LINE__));
    $shop_id = $r['shop_id'];
    $qtxt = "update ordrer set levdate=ordredate,fakturadate=ordredate,betalingsbet='Kreditkort',betalingsdage='0',ref='Internet',kundeordnr='{$shop_id}' where id='{$saldi_id}'";
    db_modify($qtxt, __FILE__ . " linje " . __LINE__);
    $qtxt = "update ordrelinjer set leveres = antal where ordre_id='{$saldi_id}'";
    db_modify($qtxt, __FILE__ . " linje " . __LINE__);
    #cho "bogfører $ordre_id<br>";
    $svar = levering($saldi_id);
    if ($svar == 'OK') {
        $svar = bogfor($saldi_id);
    }
    #cho "bogført $svar<br>";
    $r = db_fetch_array(db_select("select * from ordrer where id = '{$saldi_id}'", __FILE__ . " linje " . __LINE__));
    $betalt = $r['sum'] + $r['moms'];
    #cho "insert into pos_betalinger(ordre_id,betalingstype,amount) values ('$saldi_id','betalingskort','$betalt')<br>";
    db_modify("insert into pos_betalinger(ordre_id,betalingstype,amount) values ('{$saldi_id}','Betalingskort','{$betalt}')", __FILE__ . " linje " . __LINE__);
    if ($svar == 'OK') {
        return "{$saldi_id}";
    } else {
        print "<body onload=\"javascript:alert('{$svar}');window.close();\">";
    }
}