PageRenderTime 46ms CodeModel.GetById 13ms RepoModel.GetById 0ms app.codeStats 0ms

/modules/magazz/select_giomag.php

http://gevion.googlecode.com/
PHP | 207 lines | 175 code | 7 blank | 25 comment | 17 complexity | 8cd1370b3347a742a226fc76aa982866 MD5 | raw file
Possible License(s): LGPL-2.1, GPL-2.0
  1. <?php
  2. /* $Id: select_giomag.php,v 1.16 2010/01/17 17:27:04 devincen Exp $
  3. --------------------------------------------------------------------------
  4. Gazie - Gestione Azienda
  5. Copyright (C) 2004-2010 - Antonio De Vincentiis Montesilvano (PE)
  6. (www.devincentiis.it)
  7. <http://gazie.sourceforge.net>
  8. --------------------------------------------------------------------------
  9. Questo programma e` free software; e` lecito redistribuirlo e/o
  10. modificarlo secondo i termini della Licenza Pubblica Generica GNU
  11. come e` pubblicata dalla Free Software Foundation; o la versione 2
  12. della licenza o (a propria scelta) una versione successiva.
  13. Questo programma e` distribuito nella speranza che sia utile, ma
  14. SENZA ALCUNA GARANZIA; senza neppure la garanzia implicita di
  15. NEGOZIABILITA` o di APPLICABILITA` PER UN PARTICOLARE SCOPO. Si
  16. veda la Licenza Pubblica Generica GNU per avere maggiori dettagli.
  17. Ognuno dovrebbe avere ricevuto una copia della Licenza Pubblica
  18. Generica GNU insieme a questo programma; in caso contrario, si
  19. scriva alla Free Software Foundation, Inc., 59
  20. Temple Place, Suite 330, Boston, MA 02111-1307 USA Stati Uniti.
  21. --------------------------------------------------------------------------
  22. */
  23. require("../../library/include/datlib.inc.php");
  24. $admin_aziend=checkAdmin();
  25. $msg='';
  26. function getMovements($date_ini,$date_fin)
  27. {
  28. global $gTables,$admin_aziend;
  29. $m=array();
  30. $where="datreg BETWEEN $date_ini AND $date_fin";
  31. $what=$gTables['movmag'].".*, ".
  32. $gTables['caumag'].".codice, ".$gTables['caumag'].".descri, ".
  33. $gTables['clfoco'].".codice, ".$gTables['clfoco'].".descri AS ragsoc, ".
  34. $gTables['artico'].".codice, ".$gTables['artico'].".descri AS desart, ".$gTables['artico'].".unimis, ".$gTables['artico'].".scorta, ".$gTables['artico'].".catmer ";
  35. $table=$gTables['movmag']." LEFT JOIN ".$gTables['caumag']." ON (".$gTables['movmag'].".caumag = ".$gTables['caumag'].".codice)
  36. LEFT JOIN ".$gTables['clfoco']." ON (".$gTables['movmag'].".clfoco = ".$gTables['clfoco'].".codice)
  37. LEFT JOIN ".$gTables['artico']." ON (".$gTables['movmag'].".artico = ".$gTables['artico'].".codice)";
  38. $rs=gaz_dbi_dyn_query ($what,$table,$where, 'datreg ASC, clfoco ASC');
  39. while ($r = gaz_dbi_fetch_array($rs)) {
  40. $m[] = $r;
  41. }
  42. return $m;
  43. }
  44. if (!isset($_POST['hidden_req'])) { //al primo accesso allo script
  45. $form['hidden_req'] = '';
  46. $form['ritorno'] = $_SERVER['HTTP_REFERER'];
  47. $form['this_date_Y']=date("Y");
  48. $form['this_date_M']=date("m");
  49. $form['this_date_D']=date("d");
  50. if (!isset($_GET['di'])) {
  51. $form['date_ini_D']=1;
  52. $form['date_ini_M']=1;
  53. $form['date_ini_Y']=date("Y");
  54. } else {
  55. $form['date_ini_D']=intval(substr($_GET['di'],0,2));
  56. $form['date_ini_M']=intval(substr($_GET['di'],2,2));
  57. $form['date_ini_Y']=intval(substr($_GET['di'],4,4));
  58. }
  59. if (!isset($_GET['df'])) {
  60. $form['date_fin_D']=date("d");
  61. $form['date_fin_M']=date("m");
  62. $form['date_fin_Y']=date("Y");
  63. } else {
  64. $form['date_fin_D']= intval(substr($_GET['df'],0,2));
  65. $form['date_fin_M']= intval(substr($_GET['df'],2,2));
  66. $form['date_fin_Y']= intval(substr($_GET['df'],4,4));
  67. }
  68. } else { // accessi successivi
  69. $form['hidden_req']=htmlentities($_POST['hidden_req']);
  70. $form['ritorno']=$_POST['ritorno'];
  71. $form['date_ini_D']=intval($_POST['date_ini_D']);
  72. $form['date_ini_M']=intval($_POST['date_ini_M']);
  73. $form['date_ini_Y']=intval($_POST['date_ini_Y']);
  74. $form['date_fin_D']=intval($_POST['date_fin_D']);
  75. $form['date_fin_M']=intval($_POST['date_fin_M']);
  76. $form['date_fin_Y']=intval($_POST['date_fin_Y']);
  77. $form['this_date_Y']=intval($_POST['this_date_Y']);
  78. $form['this_date_M']=intval($_POST['this_date_M']);
  79. $form['this_date_D']=intval($_POST['this_date_D']);
  80. if (isset($_POST['return'])) {
  81. header("Location: ".$form['ritorno']);
  82. exit;
  83. }
  84. }
  85. //controllo i campi
  86. if (!checkdate( $form['this_date_M'],$form['this_date_D'],$form['this_date_Y']) ||
  87. !checkdate( $form['date_ini_M'], $form['date_ini_D'], $form['date_ini_Y']) ||
  88. !checkdate( $form['date_fin_M'], $form['date_fin_D'], $form['date_fin_Y'])) {
  89. $msg .='0+';
  90. }
  91. $utsexe= mktime(0,0,0,$form['this_date_M'],$form['this_date_D'],$form['this_date_Y']);
  92. $utsini= mktime(0,0,0,$form['date_ini_M'],$form['date_ini_D'],$form['date_ini_Y']);
  93. $utsfin= mktime(0,0,0,$form['date_fin_M'],$form['date_fin_D'],$form['date_fin_Y']);
  94. if ($utsini > $utsfin) {
  95. $msg .='1+';
  96. }
  97. if ($utsexe < $utsfin) {
  98. $msg .='2+';
  99. }
  100. // fine controlli
  101. if (isset($_POST['print']) && $msg=='') {
  102. $_SESSION['print_request']=array('script_name'=>'stampa_giomag',
  103. 'ri'=>date("dmY",$utsini),
  104. 'rf'=>date("dmY",$utsfin),
  105. 'ds'=>date("dmY",$utsexe)
  106. );
  107. header("Location: sent_print.php");
  108. exit;
  109. }
  110. require("../../library/include/header.php");
  111. $script_transl=HeadMain(0,array('calendarpopup/CalendarPopup'));
  112. echo "<script type=\"text/javascript\">
  113. var cal = new CalendarPopup();
  114. var calName = '';
  115. function setMultipleValues(y,m,d) {
  116. document.getElementById(calName+'_Y').value=y;
  117. document.getElementById(calName+'_M').selectedIndex=m*1-1;
  118. document.getElementById(calName+'_D').selectedIndex=d*1-1;
  119. }
  120. function setDate(name) {
  121. calName = name.toString();
  122. var year = document.getElementById(calName+'_Y').value.toString();
  123. var month = document.getElementById(calName+'_M').value.toString();
  124. var day = document.getElementById(calName+'_D').value.toString();
  125. var mdy = month+'/'+day+'/'+year;
  126. cal.setReturnFunction('setMultipleValues');
  127. cal.showCalendar('anchor', mdy);
  128. }
  129. </script>
  130. ";
  131. echo "<form method=\"POST\" name=\"select\">\n";
  132. echo "<input type=\"hidden\" value=\"".$form['hidden_req']."\" name=\"hidden_req\" />\n";
  133. echo "<input type=\"hidden\" value=\"".$form['ritorno']."\" name=\"ritorno\" />\n";
  134. $gForm = new magazzForm();
  135. echo "<br /><div align=\"center\" class=\"FacetFormHeaderFont\">".$script_transl['title'];
  136. echo "</div>\n";
  137. echo "<table class=\"Tsmall\">\n";
  138. if (!empty($msg)) {
  139. echo '<tr><td colspan="2" class="FacetDataTDred">'.$gForm->outputErrors($msg,$script_transl['errors'])."</td></tr>\n";
  140. }
  141. echo "<tr>\n";
  142. echo "<td class=\"FacetFieldCaptionTD\">".$script_transl['date']."</td><td class=\"FacetDataTD\">\n";
  143. $gForm->CalendarPopup('this_date',$form['this_date_D'],$form['this_date_M'],$form['this_date_Y'],'FacetSelect',1);
  144. echo "</tr>\n";
  145. echo "<td class=\"FacetFieldCaptionTD\">".$script_transl['date_ini']."</td><td class=\"FacetDataTD\">\n";
  146. $gForm->CalendarPopup('date_ini',$form['date_ini_D'],$form['date_ini_M'],$form['date_ini_Y'],'FacetSelect',1);
  147. echo "</tr>\n";
  148. echo "<tr>\n";
  149. echo "<td class=\"FacetFieldCaptionTD\">".$script_transl['date_fin']."</td><td class=\"FacetDataTD\">\n";
  150. $gForm->CalendarPopup('date_fin',$form['date_fin_D'],$form['date_fin_M'],$form['date_fin_Y'],'FacetSelect',1);
  151. echo "</tr>\n";
  152. echo "\t<tr class=\"FacetFieldCaptionTD\">\n";
  153. echo "<td align=\"left\"><input type=\"submit\" name=\"return\" value=\"".$script_transl['return']."\">\n";
  154. echo '<td align="right"> <input type="submit" accesskey="i" name="preview" value="';
  155. echo $script_transl['view'];
  156. echo '" tabindex="100" >';
  157. echo "\t </td>\n";
  158. echo "\t </tr>\n";
  159. echo "</table>\n";
  160. $date_ini = sprintf("%04d%02d%02d",$form['date_ini_Y'],$form['date_ini_M'],$form['date_ini_D']);
  161. $date_fin = sprintf("%04d%02d%02d",$form['date_fin_Y'],$form['date_fin_M'],$form['date_fin_D']);
  162. if (isset($_POST['preview']) and $msg=='') {
  163. $m=getMovements($date_ini,$date_fin);
  164. echo "<table class=\"Tlarge\">";
  165. if (sizeof($m) > 0) {
  166. $ctr_mv='';
  167. echo "<tr>";
  168. $linkHeaders=new linkHeaders($script_transl['header']);
  169. $linkHeaders->output();
  170. echo "</tr>";
  171. $sum=0.00;
  172. while (list($key, $mv) = each($m)) {
  173. $datedoc = substr($mv['datdoc'],8,2).'-'.substr($mv['datdoc'],5,2).'-'.substr($mv['datdoc'],0,4);
  174. $datereg = substr($mv['datreg'],8,2).'-'.substr($mv['datreg'],5,2).'-'.substr($mv['datreg'],0,4);
  175. $movQuanti = $mv['quanti']*$mv['operat'];
  176. $sum += $movQuanti;
  177. echo "<tr><td class=\"FacetDataTD\">".$datereg." &nbsp;</td>";
  178. echo "<td align=\"center\" class=\"FacetDataTD\">".$mv['caumag'].'-'.substr($mv['descri'],0,20)." &nbsp</td>";
  179. echo "<td class=\"FacetDataTD\">".substr($mv['desdoc'].' del '.$datedoc.' - '.$mv['ragsoc'],0,85)." &nbsp;</td>";
  180. echo "<td align=\"right\" class=\"FacetDataTD\">".number_format($mv['prezzo'],$admin_aziend['decimal_price'],',','.')." &nbsp;</td>";
  181. echo "<td align=\"right\" class=\"FacetDataTD\">".gaz_format_number(CalcolaImportoRigo($mv['quanti'],$mv['prezzo'],array($mv['scochi'],$mv['scorig'])))." &nbsp;</td>";
  182. echo "<td align=\"right\" class=\"FacetDataTD\">".$mv['unimis']." &nbsp;</td>\n";
  183. echo "<td align=\"right\" class=\"FacetDataTD\">".gaz_format_quantity($movQuanti,1,$admin_aziend['decimal_quantity'])." &nbsp;</td>\n";
  184. echo "</tr>\n";
  185. $ctr_mv = $mv['artico'];
  186. }
  187. echo "\t<tr class=\"FacetFieldCaptionTD\">\n";
  188. echo '<td colspan="7" align="right"><input type="submit" name="print" value="';
  189. echo $script_transl['print'];
  190. echo '">';
  191. echo "\t </td>\n";
  192. echo "\t </tr>\n";
  193. }
  194. echo "</table></form>";
  195. }
  196. ?>
  197. </body>
  198. </html>