X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=reporting%2Fincludes%2Freporting.inc;h=4bcdad8397257c95ac4e3b6eeaf6f9d32839fcb5;hb=cc8de041156232390357cccd84da712f178b6d87;hp=2bfa425748808030cf87e4797b27f40260124be3;hpb=a3c366442e07bfa82a326df8fea3d9d4b35a3dd8;p=fa-stable.git diff --git a/reporting/includes/reporting.inc b/reporting/includes/reporting.inc index 2bfa4257..4bcdad83 100644 --- a/reporting/includes/reporting.inc +++ b/reporting/includes/reporting.inc @@ -14,50 +14,55 @@ // or display_note(print_document_link($order_no, _("Print this order"))); // You only need full parameter list for invoices/credit notes -function print_document_link($doc_no, $link_text, $link=true, $type_no, +function print_document_link($doc_no, $link_text, $link, $type_no, $icon=false, $class='printlink', $id='', $email=0, $extra=0) { global $path_to_root; include_once($path_to_root . "/includes/types.inc"); $url = $path_to_root.'/reporting/prn_redirect.php?'; + $def_orientation = (user_def_print_orientation() == 1 ? 1 : 0); switch ($type_no) { case ST_SALESQUOTE : $rep = 111; - // from, to, currency, bank acc, email, quote, comments + // from, to, currency, email, comments, orientation $ar = array( 'PARAM_0' => $doc_no, 'PARAM_1' => $doc_no, 'PARAM_2' => '', 'PARAM_3' => $email, - 'PARAM_4' => ''); + 'PARAM_4' => '', + 'PARAM_5' => $def_orientation); break; case ST_SALESORDER : $rep = 109; - // from, to, currency, bank acc, email, quote, comments + // from, to, currency, email, quote, comments, orientation $ar = array( 'PARAM_0' => $doc_no, 'PARAM_1' => $doc_no, 'PARAM_2' => '', 'PARAM_3' => $email, 'PARAM_4' => 0, - 'PARAM_5' => ''); + 'PARAM_5' => '', + 'PARAM_6' => $def_orientation); break; case ST_CUSTDELIVERY : $rep = 110; - // from, to, email, comments + // from, to, email, packing slip, comments, orientation $ar = array( 'PARAM_0' => $doc_no, 'PARAM_1' => $doc_no, 'PARAM_2' => $email, - 'PARAM_3' => $extra); + 'PARAM_3' => $extra, + 'PARAM_4' => '', + 'PARAM_5' => $def_orientation); break; case ST_SALESINVOICE : // Sales Invoice case ST_CUSTCREDIT : // Customer Credit Note - $rep = 107; - // from, to, currency, bank acc, email, paylink, comments, type + $rep = $type_no==ST_CUSTCREDIT ? 113 : 107; + // from, to, currency, email, paylink, comments, orientation $ar = array( 'PARAM_0' => $doc_no, 'PARAM_1' => $doc_no, @@ -65,40 +70,67 @@ function print_document_link($doc_no, $link_text, $link=true, $type_no, 'PARAM_3' => $email, 'PARAM_4' => '', 'PARAM_5' => '', - 'PARAM_6' => $type_no); + 'PARAM_6' => $rep == 107 ? '' : $def_orientation); + if ($rep == 107) + $ar['PARAM_7'] = $def_orientation; break; case ST_PURCHORDER : $rep = 209; - // from, to, currency, bank acc, email, comments + // from, to, currency, email, comments, orientation $ar = array( 'PARAM_0' => $doc_no, 'PARAM_1' => $doc_no, 'PARAM_2' => '', 'PARAM_3' => $email, - 'PARAM_4' => ''); + 'PARAM_4' => '', + 'PARAM_5' => $def_orientation); break; case ST_CUSTPAYMENT : $rep = 112; - // from, to, currency, bank acc, email, comments + // from, to, currency, comments, orientation $ar = array( 'PARAM_0' => $doc_no, 'PARAM_1' => $doc_no, 'PARAM_2' => '', - 'PARAM_4' => ''); + 'PARAM_3' => $email, + 'PARAM_4' => '', + 'PARAM_5' => $def_orientation); break; case ST_SUPPAYMENT : $rep = 210; - // from, to, currency, bank acc, email, comments + // from, to, currency, email, comments, orientation $ar = array( 'PARAM_0' => $doc_no, 'PARAM_1' => $doc_no, 'PARAM_2' => '', 'PARAM_3' => $email, - 'PARAM_4' => ''); + '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; + case ST_DIMENSION : + $rep = 501; + // from, to, email, comments, orientation + $ar = array( + 'PARAM_0' => $doc_no, + 'PARAM_1' => $doc_no, + 'PARAM_2' => 1, + 'PARAM_3' => '', + 'PARAM_4' => $def_orientation); break; -// default: $ar = array(); + default: + return null; } - + return print_link($link_text, $rep, $ar, "", $icon, $class, $id); } // @@ -107,19 +139,19 @@ function print_document_link($doc_no, $link_text, $link=true, $type_no, function print_link($link_text, $rep, $pars = array(), $dir = '', $icon=false, $class='printlink', $id='') { - global $path_to_root, $pdf_debug; - + global $path_to_root, $SysPrefs; $url = $dir == '' ? $path_to_root.'/reporting/prn_redirect.php?' : $dir; $id = default_focus($id); + $parm = array(); foreach($pars as $par => $val) { - $pars[$par] = "$par=".urlencode($val); + if ($val != "") + $parm[] = "$par=".urlencode($val); } - $pars[] = 'REP_ID='.urlencode($rep); - $url .= implode ('&', $pars); - + $parm[] = 'REP_ID='.urlencode($rep); + $url .= implode ('&', $parm); if ($class != '') - $class = $pdf_debug ? '' : " class='$class'"; + $class = $SysPrefs->pdf_debug ? '' : " class='$class'"; if ($id != '') $id = " id='$id'"; $pars = access_string($link_text); @@ -128,4 +160,42 @@ function print_link($link_text, $rep, $pars = array(), $dir = '', return "$pars[0]"; } -?> \ No newline at end of file +/* +// Purpose: Function to parse a string into parameters +// Release Date: 2014-12-26 +// Author: ApMuthu +// Usage: +$str = "PPFrt#2000 CID#6378465 TaxEx#2345-038 abcde ertrgdert COD#4253 jdegtd PIN#6473654"; +$p = parse_notes_params($str); +echo print_r($p, true); + +An example of usage will be in the reporting/rep110.php file at near the end just before the last $rep-Font(); statement: + + + $notes_params = parse_notes_params($branch['notes']); + if ($packing_slip == 0 && array_key_exists('CID', $notes_params)) { + $rep->NewLine(1); + $rep->TextCol(1, 7, "Old Customer# : " . $notes_params['CID'], - 2); + } +*/ + +function parse_notes_params($str, $sep=" ", $delim="#") { + $str_params = explode($sep, $str); + $param_array=Array('notes' => ''); + foreach ($str_params AS $str_param) { + $param_set=explode($delim, trim($str_param)); + $key = (array_key_exists(0, $param_set) ? trim($param_set[0]) : ''); + $val = (array_key_exists(1, $param_set) ? trim($param_set[1]) : ''); + if (strlen($key) > 0 && strlen($val) > 0) { + $param_array[$key]=$val; + } else { + // stop at first missing parameter set + // break; + // Collect the rest into notes + $param_array['notes'] .= (" " . $str_param); + } + } + $param_array['notes'] = trim($param_array['notes']); + return $param_array; +} +