Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision a4b22a8f

Von Moritz Bunkus vor mehr als 17 Jahren hinzugefügt

  • ID a4b22a8f008d6431597fa80de26bcb0fa10e8d7b
  • Vorgänger 72eaa1a7
  • Nachfolger f01741e3

Einkaufs- und Verkaufsrechnungen: Filtermöglichkeiten nach Projektnummer sowie Anzeigeoption der Projektnummer hinzugefügt.

Unterschiede anzeigen:

SL/AR.pm
552 552
  # connect to database
553 553
  my $dbh = $form->dbconnect($myconfig);
554 554

  
555
  my @values;
556

  
555 557
  my $query = qq|SELECT a.id, a.invnumber, a.ordnumber, a.transdate,
556 558
                 a.duedate, a.netamount, a.amount, a.paid, c.name,
557 559
		 a.invoice, a.datepaid, a.terms, a.notes, a.shipvia,
558
		 a.shippingpoint, a.storno,
560
		 a.shippingpoint, a.storno, a.globalproject_id,
561
                 pr.projectnumber AS globalprojectnumber,
559 562
		 e.name AS employee
560 563
	         FROM ar a
561 564
	      JOIN customer c ON (a.customer_id = c.id)
562
	      LEFT JOIN employee e ON (a.employee_id = e.id)|;
565
	      LEFT JOIN employee e ON (a.employee_id = e.id)
566
                 LEFT JOIN project pr ON a.globalproject_id = pr.id|;
563 567

  
564 568
  my $where = "1 = 1";
565 569
  if ($form->{customer_id}) {
......
586 590
    my $notes = $form->like(lc $form->{notes});
587 591
    $where .= " AND lower(a.notes) LIKE '$notes'";
588 592
  }
593
  if ($form->{"project_id"}) {
594
    $where .=
595
      qq|AND ((a.globalproject_id = ?) OR EXISTS | .
596
      qq|  (SELECT * FROM invoice i | .
597
      qq|   WHERE i.project_id = ? AND i.trans_id = a.id))|;
598
    push(@values, $form->{"project_id"}, $form->{"project_id"});
599
  }
589 600

  
590 601
  $where .= " AND a.transdate >= '$form->{transdatefrom}'"
591 602
    if $form->{transdatefrom};
......
603 614
  my $sortorder = join ', ', $form->sort_columns(@a);
604 615
  $sortorder = $form->{sort} if $form->{sort};
605 616

  
606
  $query .= "WHERE $where
617
  $query .= " WHERE $where
607 618
             ORDER by $sortorder";
608 619

  
609 620
  my $sth = $dbh->prepare($query);
610
  $sth->execute || $form->dberror($query);
621
  $sth->execute(@values) ||
622
    $form->dberror($query . " (" . join(", ", @values) . ")");
611 623

  
612 624
  while (my $ar = $sth->fetchrow_hashref(NAME_lc)) {
613 625
    push @{ $form->{AR} }, $ar;

Auch abrufbar als: Unified diff