Revision da804bf2
Von G. Richardson vor mehr als 14 Jahren hinzugefügt
bin/mozilla/io.pl | ||
---|---|---|
159 | 159 |
); |
160 | 160 |
my @column_index = map { $_->{id} } grep { $_->{display} } @HEADER; |
161 | 161 |
|
162 |
|
|
162 | 163 |
# cache units |
163 | 164 |
my $all_units = AM->retrieve_units(\%myconfig, $form); |
164 | 165 |
|
... | ... | |
209 | 210 |
my %column_data = (); |
210 | 211 |
|
211 | 212 |
# undo formatting |
212 |
map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(qty discount sellprice price_new price_old) unless ($form->{simple_save}); |
|
213 |
map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } |
|
214 |
qw(qty discount sellprice lastcost price_new price_old) |
|
215 |
unless ($form->{simple_save}); |
|
213 | 216 |
|
214 | 217 |
# unit begin |
215 | 218 |
$form->{"unit_old_$i"} ||= $form->{"unit_$i"}; |
... | ... | |
294 | 297 |
} |
295 | 298 |
$column_data{sellprice} = $cgi->textfield(-name => "sellprice_$i", -size => 10, -onBlur => "check_right_number_format(this)", -value => |
296 | 299 |
$form->format_amount(\%myconfig, $form->{"sellprice_$i"}, $decimalplaces)); |
300 |
|
|
297 | 301 |
} |
298 | 302 |
$column_data{discount} = $cgi->textfield(-name => "discount_$i", -size => 3, -value => $form->format_amount(\%myconfig, $form->{"discount_$i"})); |
299 | 303 |
$column_data{linetotal} = $form->format_amount(\%myconfig, $linetotal, 2); |
... | ... | |
338 | 342 |
|
339 | 343 |
map { $form->{"${_}_$i"} = $form->format_amount(\%myconfig, $form->{"${_}_$i"}, 2) } qw(marge_absolut marge_percent); |
340 | 344 |
|
341 |
push @ROW2, { value => sprintf qq|<font %s><b>%s</b> %s %s%% </font> <b>%s</b> %s <b>%s</b> %s|, |
|
345 |
push @ROW2, { value => sprintf qq| |
|
346 |
<font %s><b>%s</b> %s %s%% </font> |
|
347 |
<b>%s</b> %s |
|
348 |
<b>%s</b> <input size="5" name="lastcost_$i" value="%s">|, |
|
342 | 349 |
$marge_color, $locale->text('Ertrag'),$form->{"marge_absolut_$i"}, $form->{"marge_percent_$i"}, |
343 | 350 |
$locale->text('LP'), $form->format_amount(\%myconfig, $form->{"listprice_$i"}, 2), |
344 | 351 |
$locale->text('EK'), $form->format_amount(\%myconfig, $form->{"lastcost_$i"}, 2) } |
... | ... | |
361 | 368 |
my @hidden_vars; |
362 | 369 |
|
363 | 370 |
if ($is_delivery_order) { |
364 |
map { $form->{"${_}_${i}"} = $form->format_amount(\%myconfig, $form->{"${_}_${i}"}) } qw(sellprice discount); |
|
365 |
push @hidden_vars, qw(sellprice discount price_factor_id); |
|
371 |
map { $form->{"${_}_${i}"} = $form->format_amount(\%myconfig, $form->{"${_}_${i}"}) } qw(sellprice discount lastcost);
|
|
372 |
push @hidden_vars, qw(sellprice discount price_factor_id lastcost);
|
|
366 | 373 |
push @hidden_vars, "stock_${stock_in_out}_sum_qty", "stock_${stock_in_out}"; |
367 | 374 |
} |
368 | 375 |
|
... | ... | |
372 | 379 |
map { ($cgi->hidden("-name" => $_, "-value" => $form->{$_})); } map { $_."_$i" } |
373 | 380 |
(qw(orderitems_id bo pricegroup_old price_old id inventory_accno bin partsgroup partnotes |
374 | 381 |
income_accno expense_accno listprice assembly taxaccounts ordnumber transdate cusordnumber |
375 |
longdescription basefactor marge_absolut marge_percent marge_price_factor lastcost), @hidden_vars)
|
|
382 |
longdescription basefactor marge_absolut marge_percent marge_price_factor), @hidden_vars) |
|
376 | 383 |
); |
377 | 384 |
|
378 | 385 |
map { $form->{"${_}_base"} += $linetotal } (split(/ /, $form->{"taxaccounts_$i"})); |
Auch abrufbar als: Unified diff
EK-Preis editierbar gemacht und marge_total repariert
Der EK-Preis ist jetzt in Angebot/Auftrag/Rechnung editierbar.
Dies ist praktisch für Händler/Wiederverkäufer, bei denen sich der EK-Preis
häufig ändert, und es sich nicht lohnt, diesen in den Stammdaten zu pflegen.
Der EK-Preis wird (als lastcost) zusammen mit marge_total und marge_percent für
jeden Artikel in orderitems/invoice in der DB gespeichert. (Bei marge_total gab
es hier einen Bug, der falsche Variablenname wurde benutzt und marge_total war
immer leer.)
Der Stammdaten-EK-Preis wird nicht verändert, wenn man einen abweichenden
EK-Preis eingibt.