while ($row = db_fetch_array($query)) { if ($row['modtagelse'] >= $modtagelse) { $modtagelse = $row['modtagelse'] + 1; } } $row = db_fetch_array($query = db_select("select box2 from grupper where art = 'RB'", __FILE__ . " linje " . __LINE__)); if ($modtagelse == 1) { $modtagelse = $row['box2'] * 1; } if ($modtagelse < 1) { $modtagelse = 1; } db_modify("update ordrer set status=3, fakturadate='{$levdate}', modtagelse = '{$modtagelse}', valuta = '{$valuta}', valutakurs = '{$valutakurs}' where id={$id}", __FILE__ . " linje " . __LINE__); $r = db_fetch_array($q = db_select("select box5 from grupper where art='DIV' and kodenr='3'", __FILE__ . " linje " . __LINE__)); if ($r['box5'] == 'on') { bogfor($id); } transaktion("commit"); } } print "<meta http-equiv=\"refresh\" content=\"0;URL=ordre.php?id={$id}\">"; function bogfor($id) { global $regnaar; global $valuta; global $valutakurs; global $difkto; global $sprog_id; $d_kontrol = 0; $k_kontrol = 0; $linjesum = 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; } }
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; }
$id = $_GET['id']; } if ($id && $id > 0) { $modulnr = 5; include "../includes/connect.php"; include "../includes/online.php"; include "../includes/std_func.php"; include "../includes/ordrefunc.php"; include "pbsfakt.php"; $genfakt = if_isset($_GET['genfakt']); $pbs = if_isset($_GET['pbs']); $oioxml = if_isset($_GET['oioxml']); $oioubl = if_isset($_GET['oioubl']); $mail_fakt = if_isset($_GET['mail_fakt']); transaktion('begin'); $svar = bogfor($id, ''); if ($svar && $svar != 'OK') { echo "Svar {$svar}<br>"; print "<BODY onLoad=\"javascript:alert('{$svar}')\">"; print "<meta http-equiv=\"refresh\" content=\"0;URL=../debitor/ordre.php?id={$id}\">"; exit; } else { $r = db_fetch_array(db_select("select * from ordrer where id = {$id}", __FILE__ . " linje " . __LINE__)); if ($r['felt_1'] && $r['felt_3'] && is_numeric($r['felt_2']) && is_numeric($r['felt_4'])) { if ($r['felt_2'] * 1 != 0) { db_modify("insert into pos_betalinger(ordre_id,betalingstype,amount) values ('{$id}','{$r['felt_1']}','{$r['felt_2']}')", __FILE__ . " linje " . __LINE__); } if ($r['felt_4'] * 1 != 0) { db_modify("insert into pos_betalinger(ordre_id,betalingstype,amount) values ('{$id}','{$r['felt_3']}','{$r['felt_4']}')", __FILE__ . " linje " . __LINE__); } }
#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']) { list($oiourl, $oiobruger, $oiokode) = explode(chr(9), $r['box8']);
$headers = 'From: saldi@saldi.dk' . "\r\n" . 'Reply-To: saldi@saldi.dk' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail("*****@*****.**", "SALDI bestilling af professionelt regnskab for {$regnskab} / {$db}", "{$brugernavn} har bestilt opgradering af {$regnskab} til professionelt regnskab", "{$headers}"); include "../includes/online.php"; } if ($bogfor) { transaktion(begin); bogfor($kladde_id, $kladdenote, ''); db_modify("delete from tmpkassekl where kladde_id = {$kladde_id}", __FILE__ . " linje " . __LINE__); transaktion(commit); genberegn($regnaar); if ($popup) { print "<BODY onLoad=\"javascript=opener.location.reload();\">"; } } elseif ($simuler) { transaktion(begin); bogfor($kladde_id, $kladdenote, 'on'); # db_modify("delete from tmpkassekl where kladde_id = $kladde_id",__FILE__ . " linje " . __LINE__); transaktion(commit); if ($popup) { print "<BODY onLoad=\"javascript=opener.location.reload();\">"; print "<meta http-equiv=\"refresh\" content=\"0;URL=../includes/luk.php\">"; } } if ($funktion == 'bogfor' || $funktion == 'simuler') { if ($bogfor || $simuler) { print "<meta http-equiv=\"refresh\" content=\"0;URL=kladdeliste.php\">"; } else { print "<meta http-equiv=\"refresh\" content=\"0;URL=kassekladde.php?kladde_id={$kladde_id}\">"; } } } elseif ($_POST['luk']) {
$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 { $ny_liste = "{$id}";
$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); print "<meta http-equiv=\"refresh\" content=\"0;URL=massefakt.php?ordre_id={$ordre_id}&ordre_antal={$ordre_antal}&rest={$rest}&rest_id={$tmp}&skriv={$skriv}\">";
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();\">"; } }
print "<input type=\"hidden\" name=\"tidspkt\" value=\"" . date('YmdHis') . "\">"; print "</tr><tr><td colspan=\"5\" align=\"center\"><input type=\"submit\" value=\"OK\"></form>"; if ($varenr) { print "<a style=\"text-decoration:none\" href=optalling.php><input type=\"button\" value=\"Fortryd\"></a>"; } print "</td></tr>\n"; print "</tbody></table name=\"tabel_1.2\"></td></tr>\n"; # <- tabel 1.2 print "<tr><td align=\"center\" width=\"100%\"><hr></td></tr>"; print "<tr><td align=\"center\" width=\"100%\"><table name=\"tabel_1.3\" width=\"800px\" cellspacing=\"2\" border=\"0\"><tbody>\n"; # tabel 1.3 -> if ($gentael) { gentael($lager); } if ($bogfor) { bogfor($lager, $nulstil_ej_optalt, $dato, $bogfor, $godkend_regdif); } elseif ($vis_ej_optalt) { $optalt = vis_ej_optalt($lager); } else { $optalt = vis_optalling($lager, $vnr, 0); } if ($optalt >= 1) { if (!$dato) { $dato = date('d-m-Y'); } # 20140625 print "<form name=\"optalling\" action=\"optalling.php?bogfor=1&lager={$lager}\" method=\"post\">\n"; print "<td colspan=\"7\">Dato for optælling</td><td><input type=\"text\" name=\"dato\" value=\"{$dato}\"></td></tr>\n"; print "<td colspan=\"7\">Sæt beholdning til 0 for alle ikke optalte varer på lager {$lager}</td><td><input type=\"checkbox\" name=\"nulstil_ej_optalt\"></td></tr>\n"; print "<td colspan=\"8\"><input style=\"width:100%;\" type=submit value=Bogfør></form></td></tr>\n"; }