Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 4b8e5682

Von Tamino Steinert vor mehr als 1 Jahr hinzugefügt

  • ID 4b8e56821eac8b83856dca20e2ca8371081c13f5
  • Vorgänger 72b80f91

Separate Tabelle für onhand (stocks) für Artikel

Jetzt führt Ein- und Auslagern nicht mehr zu einer Änderung des
Artikels in der Datenbank.

Unterschiede anzeigen:

SL/Controller/PartsPriceUpdate.pm
104 104
  # items which were never bought, sold or on an order
105 105
  if ($filter->{itemstatus} eq 'orphaned') {
106 106
    $where .=
107
      qq| AND (p.onhand = 0)
107
      qq| AND (stocks.onhand = 0)
108 108
          AND p.id NOT IN
109 109
            (
110 110
              SELECT DISTINCT parts_id FROM invoice
......
123 123
    $where .= qq| AND p.obsolete = '1'|;
124 124

  
125 125
  } elsif ($filter->{itemstatus} eq 'onhand') {
126
    $where .= qq| AND p.onhand > 0|;
126
    $where .= qq| AND stocks.onhand > 0|;
127 127

  
128 128
  } elsif ($filter->{itemstatus} eq 'short') {
129
    $where .= qq| AND p.onhand < p.rop|;
129
    $where .= qq| AND stocks.onhand < p.rop|;
130 130

  
131 131
  }
132 132

  
......
162 162
           (SELECT p.id
163 163
            FROM parts p
164 164
            LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
165
            LEFT JOIN stocks ON (stocks.part_id = p.id)
165 166
            WHERE $where)|;
166 167
    my ($result)  = selectfirst_array_query($::form, $dbh, $query, @where_values);
167 168
    $num_updated += $result if (0 <= $result);
......
176 177
           (SELECT p.id
177 178
            FROM parts p
178 179
            LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
180
            LEFT JOIN stocks ON (stocks.part_id = p.id)
179 181
            WHERE $where)
180 182
         AND pricegroup_id IN (@{[ join ',', ('?')x@ids ]})|;
181 183

  
......
221 223
           (SELECT p.id
222 224
            FROM parts p
223 225
            LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
226
            LEFT JOIN stocks ON (stocks.part_id = p.id)
224 227
            WHERE $where)|;
225 228
    my $result    = do_query($::form, $dbh, $query, $value, @where_values);
226 229
    $num_updated += $result if 0 <= $result;
......
232 235
         (SELECT p.id
233 236
          FROM parts p
234 237
          LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
238
          LEFT JOIN stocks ON (stocks.part_id = p.id)
235 239
          WHERE $where) AND (pricegroup_id = ?)|;
236 240
  my $sth_add = prepare_query($::form, $dbh, $q_add);
237 241

  
......
241 245
         (SELECT p.id
242 246
          FROM parts p
243 247
          LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
248
          LEFT JOIN stocks ON (stocks.part_id = p.id)
244 249
          WHERE $where) AND (pricegroup_id = ?)|;
245 250
  my $sth_multiply = prepare_query($::form, $dbh, $q_multiply);
246 251

  

Auch abrufbar als: Unified diff