X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=reporting%2Fincludes%2Freporting.inc;h=6acc7d32355e6a6b7623509776cd16a15bd09c53;hb=358a85b3bde83fef2919a30347ad5b6b45a44282;hp=75b8d76f30ebd6f389c00c072dd20d9bb6d96048;hpb=c09be0dad6b05131e240349a375af7a4b7bf3444;p=fa-stable.git diff --git a/reporting/includes/reporting.inc b/reporting/includes/reporting.inc index 75b8d76f..6acc7d32 100644 --- a/reporting/includes/reporting.inc +++ b/reporting/includes/reporting.inc @@ -1,104 +1,149 @@ . +***********************************************************************/ +// Link to printing single document with bulk report template file. +// Ex. label_cell(print_document_link($myrow['order_no'], _("Print")), $type); +// or display_note(print_document_link($order_no, _("Print this order"))); +// You only need full parameter list for invoices/credit notes -// Put this on the page only once an outside a form, e.g. print_hidden_script(systypes::sales_order()); -// If you have both invoices and credit notes on the same page use 10 or 11. Is doesn't matter which. - -function print_hidden_script($type_no) +function print_document_link($doc_no, $link_text, $link=true, $type_no, + $icon=false, $class='printlink', $id='', $email=0, $extra=0) { - global $path_to_root; + global $path_to_root, $def_print_orientation; include_once($path_to_root . "/includes/types.inc"); - $action = ""; + + $url = $path_to_root.'/reporting/prn_redirect.php?'; + $def_orientation = (isset($def_print_orientation) && $def_print_orientation == 1 ? 1 : 0); switch ($type_no) { - case systypes::sales_order() : - $action = "$path_to_root/reporting/rep109.php"; + case ST_SALESQUOTE : + $rep = 111; + // from, to, currency, email, comments, orientation $ar = array( - 'PARAM_0' => 0, // from - these values are updated in print_document_link() - 'PARAM_1' => 0, // to - 'PARAM_2' => "", // currency - 'PARAM_3' => get_first_bank_account(), // bank account - 'PARAM_4' => 0, // email - 'PARAM_5' => 0, // quote - 'PARAM_6' => ""); // comments + 'PARAM_0' => $doc_no, + 'PARAM_1' => $doc_no, + 'PARAM_2' => '', + 'PARAM_3' => $email, + 'PARAM_4' => '', + 'PARAM_5' => $def_orientation); break; - case systypes::cust_dispatch() : - $action = "$path_to_root/reporting/rep110.php"; + case ST_SALESORDER : + $rep = 109; + // from, to, currency, email, quote, comments, orientation $ar = array( - 'PARAM_0' => 0, // from - these values are updated in print_document_link() - 'PARAM_1' => 0, // to - 'PARAM_2' => 0, // email - 'PARAM_3' => ""); // comments + 'PARAM_0' => $doc_no, + 'PARAM_1' => $doc_no, + 'PARAM_2' => '', + 'PARAM_3' => $email, + 'PARAM_4' => 0, + 'PARAM_5' => '', + 'PARAM_6' => $def_orientation); break; - case 10 : // Sales Invoice - case 11 : // Customer Credit Note - $action = "$path_to_root/reporting/rep107.php"; + case ST_CUSTDELIVERY : + $rep = 110; + // from, to, email, packing slip, comments, orientation $ar = array( - 'PARAM_0' => 0, // from - these values are updated in print_document_link() - 'PARAM_1' => 0, // to - 'PARAM_2' => "", // currency - 'PARAM_3' => get_first_bank_account(), // bank account - 'PARAM_4' => 0, // email - 'PARAM_5' => "", // paylink - 'PARAM_6' => "", // comments - 'PARAM_7' => 0); // IV or CN + 'PARAM_0' => $doc_no, + 'PARAM_1' => $doc_no, + 'PARAM_2' => $email, + 'PARAM_3' => $extra, + 'PARAM_4' => '', + 'PARAM_5' => $def_orientation); break; - case systypes::po() : - $action = "$path_to_root/reporting/rep209.php"; + case ST_SALESINVOICE : // Sales Invoice + case ST_CUSTCREDIT : // Customer Credit Note + $rep = $type_no==ST_CUSTCREDIT ? 113 : 107; + // from, to, currency, email, paylink, comments, orientation $ar = array( - 'PARAM_0' => 0, // from - these values are updated in print_document_link() - 'PARAM_1' => 0, // to - 'PARAM_2' => "", // currency - 'PARAM_3' => get_first_bank_account(), // bank account - 'PARAM_4' => 0, // email - 'PARAM_5' => ""); // comments + 'PARAM_0' => $doc_no, + 'PARAM_1' => $doc_no, + 'PARAM_2' => '', + 'PARAM_3' => $email, + 'PARAM_4' => '', + 'PARAM_5' => '', + 'PARAM_6' => $def_orientation); break; + case ST_PURCHORDER : + $rep = 209; + // from, to, currency, email, comments, orientation + $ar = array( + 'PARAM_0' => $doc_no, + 'PARAM_1' => $doc_no, + 'PARAM_2' => '', + 'PARAM_3' => $email, + 'PARAM_4' => '', + 'PARAM_5' => $def_orientation); + break; + case ST_CUSTPAYMENT : + $rep = 112; + // from, to, currency, comments, orientation + $ar = array( + 'PARAM_0' => $doc_no, + 'PARAM_1' => $doc_no, + 'PARAM_2' => '', + 'PARAM_3' => '', + 'PARAM_4' => $def_orientation); + break; + case ST_SUPPAYMENT : + $rep = 210; + // from, to, currency, email, comments, orientation + $ar = array( + 'PARAM_0' => $doc_no, + 'PARAM_1' => $doc_no, + 'PARAM_2' => '', + 'PARAM_3' => $email, + 'PARAM_4' => '', + 'PARAM_5' => $def_orientation); + break; + case ST_WORKORDER : + $rep = 409; + // from, to, email, comments orientation + $ar = array( + 'PARAM_0' => $doc_no, + 'PARAM_1' => $doc_no, + 'PARAM_2' => $email, + 'PARAM_3' => '', + 'PARAM_4' => $def_orientation); + break; +// default: $ar = array(); } - $st = "
\n"; - $st .= "\n"; +// +// Universal link to any kind of report. +// +function print_link($link_text, $rep, $pars = array(), $dir = '', + $icon=false, $class='printlink', $id='') +{ + global $path_to_root, $pdf_debug; - echo $st; -} + $url = $dir == '' ? $path_to_root.'/reporting/prn_redirect.php?' : $dir; -// Ex. label_cell(print_document_link($myrow['order_no'], _("Print"))); -// or display_note(print_document_link($order_no, _("Print this order"))); -// or if a button -// button("button", _("Print this order"), print_document_link($order_no, "", false))"; -// or if a button inside a TD -// button_cell("button", _("Print this order"), print_document_link($order_no, "", false))"; -// -// You only need full parameter list for invoices/credit notes + $id = default_focus($id); + foreach($pars as $par => $val) { + $pars[$par] = "$par=".urlencode($val); + } + $pars[] = 'REP_ID='.urlencode($rep); + $url .= implode ('&', $pars); -function print_document_link($doc_no, $link_text, $link=true, $type_no=0) -{ - if ($link) - return "$link_text"; - else - return "javascript:printDocument('$doc_no', '$type_no');"; + if ($class != '') + $class = $pdf_debug ? '' : " class='$class'"; + if ($id != '') + $id = " id='$id'"; + $pars = access_string($link_text); + if (user_graphic_links() && $icon) + $pars[0] = set_icon($icon, $pars[0]); + return "$pars[0]"; } -function get_first_bank_account() -{ - $sql = "SELECT ".TB_PREF."bank_accounts.account_code FROM ".TB_PREF."bank_accounts, ".TB_PREF."company - WHERE bank_curr_code=curr_default LIMIT 0, 1"; - $result = db_query($sql); - $row = db_fetch_row($result); - return $row[0]; -} ?> \ No newline at end of file