Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. salvo.baglieri
    3. Post
    S

    salvo.baglieri

    @salvo.baglieri

    • Profilo
    • Chi segue 0
    • Da chi è seguito 0
    • Discussioni 2
    • Post 4
    • Migliore 0
    • Gruppi 0
    Iscrizione Ultimo Accesso
    0
    Reputazione
    4
    Post
    0
    Visite al profilo
    0
    Da chi è seguito
    0
    Chi segue
    User Newbie

    Post creati da salvo.baglieri

    • RE: Ho fatto la spesa di server

      Per lavoro ho visto un pò di tutto.

      Diciamo che ormai i server blade sono un ottimo compromesso.

      Per la marca, come qualità prezzo gli HP sono i migliori, gli IBM i più sicuri (ma costano davvero tanto).

      IMHO!

      postato in Hosting e Cloud
      S
      salvo.baglieri
    • Gestione Documentale con Firma Digitale

      La gestione dei documenti è da sempre un problema per le PMI e Pubblica Amministrazione.

      Grazie alla firma digitale ed all'archiviazione ottica sostitutiva è possibile dare valore legale ai files.

      La Digital 2B (di cui presento il sito) è una società che fornisce un DMS, un sistema di gestione documentale che, grazie alla firma digitale, è in grado di fornire valore aggiunto al proprio servizio.

      Ecco il link: [www.digital2b.com

      image](http://www.digital2b.com)

      postato in Help Center: consigli per il tuo progetto
      S
      salvo.baglieri
    • RE: Report - Stampa

      Come fai a capire quando finisce una pagina per inserire i subtotali?

      Ho dato un'occhiata al file readme.pdf della classe ma non trovo niente in merito: non si riesce a capire quando la pagina stia finendo per inserire il subtotale per pagina.

      E poi non si riesce a costruire il report in maniera visuale. Ad esempio guardando la pagina ed inserendo i vari campi con un drag&drop del mouse.

      Attualmente uso fpdf con queste due classi:

      <?php
      require('../include/fpdf/mysql_table.php');
      session_start();
      
      /* 
      @author Salvatore Baglieri
      */
      class PDF extends PDF_MySQL_Table {
      function Header() {
          //Logo
          
          //Arial bold 15
          $this->SetFont('Arial','B',20);
          //Move to the right
          //$this->Cell(80);
          //Title
          $this->Cell(100,15,'Elenco dei pazienti',1,0,'C');
          $this->SetFont('Arial','',8);
          $this->Image('../immagini/logo.png', ($this->GetX())+50, 10, '', 18);
          // $this->MultiCell(0,5,$_SESSION['query'],1,1,'C');
          //Line break
          $this->Ln(20);
      }
      
      //Page footer
      function Footer() {
          //Position at 1.5 cm from bottom
          $this->SetY(-15);
          
          //Arial italic 8
          $this->SetFont('Arial','I',8);
          $this->Write(10,'Documento stampato il '.date('d-m-Y').' alle '.date('h:i').' con xxx - ');
          $this->SetTextColor(0,0,255);
          $this->SetFont('','U');
          $this->Write(10,'Digital 2B s.n.c.','http://www.digital2b.com');
          $this->SetTextColor(0,0,0);
          $this->SetFont('Arial','I',8);
          // $this->Image('immagini/xxx.jpg',10,280, 10, 10);
          
          $this->Line(10, 196, 285, 196);
          //Page number
          $this->Cell(0,10,'Pagina '.$this->PageNo().'/{nb}',0,0,'R');
      }
      
      
      }
      
      //Connect to database
      mysql_connect('xxx','xxx','xxx');
      mysql_select_db('xxx');
      
      $pdf=new PDF();
      $pdf->SetCompression(true);
      $pdf->SetTitle('Elenco_Pazienti');
      $pdf->AliasNbPages();
      $pdf->Open();
      $pdf->AddPage('L');
      
      //Second table: specify 3 columns
      $pdf->AddCol('IdAnagrafica',5,'Id','L');
      $pdf->AddCol('Cognome',35,'Cognome','L');
      $pdf->AddCol('Nome',35,'Nome','L');
      //$pdf->AddCol('Sesso',12,'Sesso','C');
      $pdf->AddCol('DatadiNascita',22,'Data Nascita','C');
      $pdf->AddCol('CodiceFiscale',36,'Codice Fiscale','L');
      $pdf->AddCol('Professione',45,'Professione','L');
      $pdf->AddCol('Domicilio',45,'Domicilio','L');
      $pdf->AddCol('ComunediResidenza',45,'Comune','L');
      $prop=array('HeaderColor'=>array(255,150,100),
                  'color1'=>array(210,245,255),
                  'color2'=>array(255,255,210),
                  'padding'=>2);
      $pdf->SetFont('Arial','',9);
      $pdf->Table($_SESSION['query'],$prop);
      $pdf->Output("Elenco_Pazienti.pdf", "D");
      ?>
      

      Utilizzando questa classe:

      <?php
      require('fpdf.php');
      
      class PDF_MySQL_Table extends FPDF {
      var $ProcessingTable=false;
      var $aCols=array();
      var $TableX;
      var $HeaderColor;
      var $RowColors;
      var $ColorIndex;
      
      
      function Header() {
          //Print the table header if necessary
          if($this->ProcessingTable)
              $this->TableHeader();
      }
      
      
      function TableHeader() {
          //$this->SetFont('Arial','B',12);
          $this->SetFont('','B','');
          $this->SetX($this->TableX);
          $fill=!empty($this->HeaderColor);
          if($fill)
              $this->SetFillColor($this->HeaderColor[0],$this->HeaderColor[1],$this->HeaderColor[2]);
          foreach($this->aCols as $col)
              $this->Cell($col['w'],6,$col['c'],1,0,'C',$fill);
          $this->Ln();
          $this->SetFont('','','');
      }
      
      
      function Row($data)
      {
          $this->SetX($this->TableX);
          $ci=$this->ColorIndex;
          $fill=!empty($this->RowColors[$ci]);
          if($fill)
              $this->SetFillColor($this->RowColors[$ci][0],$this->RowColors[$ci][1],$this->RowColors[$ci][2]);
          foreach($this->aCols as $col)
              $this->Cell($col['w'],5,$data[$col['f']],1,0,$col['a'],$fill);
          $this->Ln();
          $this->ColorIndex=1-$ci;
      }
      
      function CalcWidths($width,$align)
      {
          //Compute the widths of the columns
          $TableWidth=0;
          foreach($this->aCols as $i=>$col)
          {
              $w=$col['w'];
              if($w==-1)
                  $w=$width/count($this->aCols);
              elseif(substr($w,-1)=='%')
                  $w=$w/100*$width;
              $this->aCols*['w']=$w;
              $TableWidth+=$w;
          }
          //Compute the abscissa of the table
          if($align=='C')
              $this->TableX=max(($this->w-$TableWidth)/2,0);
          elseif($align=='R')
              $this->TableX=max($this->w-$this->rMargin-$TableWidth,0);
          else
              $this->TableX=$this->lMargin;
      }
      
      function AddCol($field=-1,$width=-1,$caption='',$align='L')
      {
          //Add a column to the table
          if($field==-1)
              $field=count($this->aCols);
          $this->aCols[]=array('f'=>$field,'c'=>$caption,'w'=>$width,'a'=>$align);
      }
      
      function Table($query,$prop=array())
      {
          //Issue query
          $res=mysql_query($query) or die('Error: '.mysql_error()."<BR>Query: $query");
          //Add all columns if none was specified
          if(count($this->aCols)==0)
          {
              $nb=mysql_num_fields($res);
              for($i=0;$i<$nb;$i++)
                  $this->AddCol();
          }
          //Retrieve column names when not specified
          foreach($this->aCols as $i=>$col)
          {
              if($col['c']=='')
              {
                  if(is_string($col['f']))
                      $this->aCols*['c']=ucfirst($col['f']);
                  else
                      $this->aCols*['c']=ucfirst(mysql_field_name($res,$col['f']));
              }
          }
          //Handle properties
          if(!isset($prop['width']))
              $prop['width']=0;
          if($prop['width']==0)
              $prop['width']=$this->w-$this->lMargin-$this->rMargin;
          if(!isset($prop['align']))
              $prop['align']='C';
          if(!isset($prop['padding']))
              $prop['padding']=$this->cMargin;
          $cMargin=$this->cMargin;
          $this->cMargin=$prop['padding'];
          if(!isset($prop['HeaderColor']))
              $prop['HeaderColor']=array();
          $this->HeaderColor=$prop['HeaderColor'];
          if(!isset($prop))
              $prop=array();
          if(!isset($prop))
              $prop=array();
          $this->RowColors=array($prop,$prop);
          //Compute column widths
          $this->CalcWidths($prop['width'],$prop['align']);
          //Print header
           $this->TableHeader();
          //Print rows
          //$this->SetFont('Arial','',11);
          $this->ColorIndex=0;
          $this->ProcessingTable=true;
          while($row=mysql_fetch_array($res))
              $this->Row($row);
          $this->ProcessingTable=false;
          $this->cMargin=$cMargin;
          $this->aCols=array();
      }
      }
      ?>
      

      Tutta via:

      1. La creazione del report NON è visuale;
      2. Non riesce ad inserire i subtotali alla fine di ogni pagina (non posso metterlo sul pié di pagina, come è facilmente intuibile).
      postato in Coding
      S
      salvo.baglieri
    • Report - Stampa

      Riporto quel che ho chiesto su HTML.it (si può fare pubblicità? Se no, scusatemi!)

      Ho grandissimi problemi con la gestione delle stampe di report commerciali.

      Ho provato due alternative:

      1. Generazione di codice HTML con CSS
      2. Generazione file PDF

      Il primo l'ho abbandonato subito perchè non mi permetteva di inserire "Intestazione di Pagina" e "Piè di pagina" su ogni pagina stampata.

      Per il secondo ho creato una classe PHP a cui passo la query e lui genera il report.

      Il problema è:

      1. Non riesco ad inserire il subtotale di ogni colonna per ogni pagina
      2. E' una faticaccia scrivere tutto il codice a mano.

      Non esiste qualche programma che, in maniera automatica, genera report in PHP? Che mi aggiunga i subtotali ad ogni colonna?

      Ho visto un programma (fatto in Delphi + Access Mdb) che addirittura permette di creare report personalizzati con un word processor simile a Word.

      image

      E' una funzionalità offerta da Delphi? Un programma esterno? Come si può fare lo stesso in php?

      Cioè, come do la possibilità al cliente di personalizzare i propri report?

      postato in Coding
      S
      salvo.baglieri