Revision 5b60c0df
Von Moritz Bunkus vor fast 18 Jahren hinzugefügt
SL/OE.pm | ||
---|---|---|
88 | 88 |
FROM oe o |
89 | 89 |
JOIN $form->{vc} ct ON (o.$form->{vc}_id = ct.id) |
90 | 90 |
JOIN orderitems oi ON (oi.trans_id = o.id) |
91 |
JOIN parts p ON (p.id = oi.parts_id)|; |
|
92 |
|
|
93 |
if ($warehouse_id && $form->{type} eq 'ship_order') { |
|
94 |
$query .= qq| |
|
95 |
JOIN inventory i ON (oi.parts_id = i.parts_id) |
|
96 |
|; |
|
97 |
} |
|
98 |
|
|
99 |
$query .= qq| |
|
91 |
JOIN parts p ON (p.id = oi.parts_id) |
|
100 | 92 |
LEFT JOIN employee e ON (o.employee_id = e.id) |
101 | 93 |
LEFT JOIN exchangerate ex ON (ex.curr = o.curr |
102 | 94 |
AND ex.transdate = o.transdate) |
... | ... | |
508 | 500 |
|
509 | 501 |
# adjust onhand |
510 | 502 |
&adj_onhand($dbh, $form, $ml * -1); |
511 |
&adj_inventory($dbh, $myconfig, $form); |
|
512 | 503 |
} |
513 | 504 |
|
514 | 505 |
my $rc = $dbh->commit; |
... | ... | |
1254 | 1245 |
return $_; |
1255 | 1246 |
} |
1256 | 1247 |
|
1257 |
sub get_warehouses { |
|
1258 |
$main::lxdebug->enter_sub(); |
|
1259 |
|
|
1260 |
my ($self, $myconfig, $form) = @_; |
|
1261 |
|
|
1262 |
my $dbh = $form->dbconnect($myconfig); |
|
1263 |
|
|
1264 |
# setup warehouses |
|
1265 |
my $query = qq|SELECT id, description |
|
1266 |
FROM warehouse|; |
|
1267 |
|
|
1268 |
my $sth = $dbh->prepare($query); |
|
1269 |
$sth->execute || $form->dberror($query); |
|
1270 |
|
|
1271 |
while (my $ref = $sth->fetchrow_hashref(NAME_lc)) { |
|
1272 |
push @{ $form->{all_warehouses} }, $ref; |
|
1273 |
} |
|
1274 |
$sth->finish; |
|
1275 |
|
|
1276 |
$dbh->disconnect; |
|
1277 |
|
|
1278 |
$main::lxdebug->leave_sub(); |
|
1279 |
} |
|
1280 |
|
|
1281 |
sub save_inventory { |
|
1282 |
$main::lxdebug->enter_sub(); |
|
1283 |
|
|
1284 |
my ($self, $myconfig, $form) = @_; |
|
1285 |
|
|
1286 |
my ($null, $warehouse_id) = split /--/, $form->{warehouse}; |
|
1287 |
$warehouse_id *= 1; |
|
1288 |
|
|
1289 |
my $employee_id; |
|
1290 |
($null, $employee_id) = split /--/, $form->{employee}; |
|
1291 |
|
|
1292 |
my $ml = ($form->{type} eq 'ship_order') ? -1 : 1; |
|
1293 |
|
|
1294 |
my $dbh = $form->dbconnect_noauto($myconfig); |
|
1295 |
my $sth; |
|
1296 |
my $wth; |
|
1297 |
my $serialnumber; |
|
1298 |
my $ship; |
|
1299 |
|
|
1300 |
$query = qq|SELECT o.serialnumber, o.ship |
|
1301 |
FROM orderitems o |
|
1302 |
WHERE o.trans_id = ? |
|
1303 |
AND o.id = ? |
|
1304 |
FOR UPDATE|; |
|
1305 |
$sth = $dbh->prepare($query) || $form->dberror($query); |
|
1306 |
|
|
1307 |
$query = qq|SELECT sum(i.qty) |
|
1308 |
FROM inventory i |
|
1309 |
WHERE i.parts_id = ? |
|
1310 |
AND i.warehouse_id = ?|; |
|
1311 |
$wth = $dbh->prepare($query) || $form->dberror($query); |
|
1312 |
|
|
1313 |
for my $i (1 .. $form->{rowcount} - 1) { |
|
1314 |
|
|
1315 |
$ship = |
|
1316 |
(abs($form->{"ship_$i"}) > abs($form->{"qty_$i"})) |
|
1317 |
? $form->{"qty_$i"} |
|
1318 |
: $form->{"ship_$i"}; |
|
1319 |
|
|
1320 |
if ($warehouse_id && $form->{type} eq 'ship_order') { |
|
1321 |
|
|
1322 |
$wth->execute($form->{"id_$i"}, $warehouse_id) || $form->dberror; |
|
1323 |
|
|
1324 |
($qty) = $wth->fetchrow_array; |
|
1325 |
$wth->finish; |
|
1326 |
|
|
1327 |
if ($ship > $qty) { |
|
1328 |
$ship = $qty; |
|
1329 |
} |
|
1330 |
} |
|
1331 |
|
|
1332 |
if ($ship != 0) { |
|
1333 |
|
|
1334 |
$ship *= $ml; |
|
1335 |
$query = qq|INSERT INTO inventory (parts_id, warehouse_id, |
|
1336 |
qty, oe_id, orderitems_id, shippingdate, employee_id) |
|
1337 |
VALUES ($form->{"id_$i"}, $warehouse_id, |
|
1338 |
$ship, $form->{"id"}, |
|
1339 |
$form->{"orderitems_id_$i"}, '$form->{shippingdate}', |
|
1340 |
$employee_id)|; |
|
1341 |
$dbh->do($query) || $form->dberror($query); |
|
1342 |
|
|
1343 |
# add serialnumber, ship to orderitems |
|
1344 |
$sth->execute($form->{id}, $form->{"orderitems_id_$i"}) |
|
1345 |
|| $form->dberror; |
|
1346 |
($serialnumber, $ship) = $sth->fetchrow_array; |
|
1347 |
$sth->finish; |
|
1348 |
|
|
1349 |
$serialnumber .= " " if $serialnumber; |
|
1350 |
$serialnumber .= qq|$form->{"serialnumber_$i"}|; |
|
1351 |
$ship += $form->{"ship_$i"}; |
|
1352 |
|
|
1353 |
$query = qq|UPDATE orderitems SET |
|
1354 |
serialnumber = '$serialnumber', |
|
1355 |
ship = $ship |
|
1356 |
WHERE trans_id = $form->{id} |
|
1357 |
AND id = $form->{"orderitems_id_$i"}|; |
|
1358 |
$dbh->do($query) || $form->dberror($query); |
|
1359 |
|
|
1360 |
# update order with ship via |
|
1361 |
$query = qq|UPDATE oe SET |
|
1362 |
shippingpoint = '$form->{shippingpoint}', |
|
1363 |
shipvia = '$form->{shipvia}' |
|
1364 |
WHERE id = $form->{id}|; |
|
1365 |
$dbh->do($query) || $form->dberror($query); |
|
1366 |
|
|
1367 |
# update onhand for parts |
|
1368 |
$form->update_balance($dbh, "parts", "onhand", |
|
1369 |
qq|id = $form->{"id_$i"}|, |
|
1370 |
$form->{"ship_$i"} * $ml); |
|
1371 |
|
|
1372 |
} |
|
1373 |
} |
|
1374 |
|
|
1375 |
my $rc = $dbh->commit; |
|
1376 |
$dbh->disconnect; |
|
1377 |
|
|
1378 |
$main::lxdebug->leave_sub(); |
|
1379 |
|
|
1380 |
return $rc; |
|
1381 |
} |
|
1382 |
|
|
1383 | 1248 |
sub adj_onhand { |
1384 | 1249 |
$main::lxdebug->enter_sub(); |
1385 | 1250 |
|
... | ... | |
1458 | 1323 |
$main::lxdebug->leave_sub(); |
1459 | 1324 |
} |
1460 | 1325 |
|
1461 |
sub adj_inventory { |
|
1462 |
$main::lxdebug->enter_sub(); |
|
1463 |
|
|
1464 |
my ($dbh, $myconfig, $form) = @_; |
|
1465 |
|
|
1466 |
my %oid = ('Pg' => 'oid', |
|
1467 |
'Oracle' => 'rowid'); |
|
1468 |
|
|
1469 |
# increase/reduce qty in inventory table |
|
1470 |
my $query = qq|SELECT oi.id, oi.parts_id, oi.ship |
|
1471 |
FROM orderitems oi |
|
1472 |
WHERE oi.trans_id = $form->{id}|; |
|
1473 |
my $sth = $dbh->prepare($query); |
|
1474 |
$sth->execute || $form->dberror($query); |
|
1475 |
|
|
1476 |
$query = qq|SELECT $oid{$myconfig->{dbdriver}} AS oid, qty, |
|
1477 |
(SELECT SUM(qty) FROM inventory |
|
1478 |
WHERE oe_id = $form->{id} |
|
1479 |
AND orderitems_id = ?) AS total |
|
1480 |
FROM inventory |
|
1481 |
WHERE oe_id = $form->{id} |
|
1482 |
AND orderitems_id = ?|; |
|
1483 |
my $ith = $dbh->prepare($query) || $form->dberror($query); |
|
1484 |
|
|
1485 |
my $qty; |
|
1486 |
my $ml = ($form->{type} =~ /(ship|sales)_order/) ? -1 : 1; |
|
1487 |
|
|
1488 |
while (my $ref = $sth->fetchrow_hashref(NAME_lc)) { |
|
1489 |
|
|
1490 |
$ith->execute($ref->{id}, $ref->{id}) || $form->dberror($query); |
|
1491 |
|
|
1492 |
while (my $inv = $ith->fetchrow_hashref(NAME_lc)) { |
|
1493 |
|
|
1494 |
if (($qty = (($inv->{total} * $ml) - $ref->{ship})) >= 0) { |
|
1495 |
$qty = $inv->{qty} if ($qty > ($inv->{qty} * $ml)); |
|
1496 |
|
|
1497 |
$form->update_balance($dbh, "inventory", "qty", |
|
1498 |
qq|$oid{$myconfig->{dbdriver}} = $inv->{oid}|, |
|
1499 |
$qty * -1 * $ml); |
|
1500 |
} |
|
1501 |
} |
|
1502 |
$ith->finish; |
|
1503 |
|
|
1504 |
} |
|
1505 |
$sth->finish; |
|
1506 |
|
|
1507 |
# delete inventory entries if qty = 0 |
|
1508 |
$query = qq|DELETE FROM inventory |
|
1509 |
WHERE oe_id = $form->{id} |
|
1510 |
AND qty = 0|; |
|
1511 |
$dbh->do($query) || $form->dberror($query); |
|
1512 |
|
|
1513 |
$main::lxdebug->leave_sub(); |
|
1514 |
} |
|
1515 |
|
|
1516 |
sub get_inventory { |
|
1517 |
$main::lxdebug->enter_sub(); |
|
1518 |
|
|
1519 |
my ($self, $myconfig, $form) = @_; |
|
1520 |
|
|
1521 |
my ($null, $warehouse_id) = split /--/, $form->{warehouse}; |
|
1522 |
$warehouse_id *= 1; |
|
1523 |
|
|
1524 |
my $dbh = $form->dbconnect($myconfig); |
|
1525 |
|
|
1526 |
my $query = qq|SELECT p.id, p.partnumber, p.description, p.onhand, |
|
1527 |
pg.partsgroup |
|
1528 |
FROM parts p |
|
1529 |
LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id) |
|
1530 |
WHERE p.onhand > 0|; |
|
1531 |
|
|
1532 |
if ($form->{partnumber}) { |
|
1533 |
$var = $form->like(lc $form->{partnumber}); |
|
1534 |
$query .= " |
|
1535 |
AND lower(p.partnumber) LIKE '$var'"; |
|
1536 |
} |
|
1537 |
if ($form->{description}) { |
|
1538 |
$var = $form->like(lc $form->{description}); |
|
1539 |
$query .= " |
|
1540 |
AND lower(p.description) LIKE '$var'"; |
|
1541 |
} |
|
1542 |
if ($form->{partsgroup}) { |
|
1543 |
$var = $form->like(lc $form->{partsgroup}); |
|
1544 |
$query .= " |
|
1545 |
AND lower(pg.partsgroup) LIKE '$var'"; |
|
1546 |
} |
|
1547 |
|
|
1548 |
$sth = $dbh->prepare($query); |
|
1549 |
$sth->execute || $form->dberror($query); |
|
1550 |
|
|
1551 |
$query = qq|SELECT sum(i.qty), w.description, w.id |
|
1552 |
FROM inventory i |
|
1553 |
LEFT JOIN warehouse w ON (w.id = i.warehouse_id) |
|
1554 |
WHERE i.parts_id = ? |
|
1555 |
AND NOT i.warehouse_id = $warehouse_id |
|
1556 |
GROUP BY w.description, w.id|; |
|
1557 |
$wth = $dbh->prepare($query) || $form->dberror($query); |
|
1558 |
|
|
1559 |
while ($ref = $sth->fetchrow_hashref(NAME_lc)) { |
|
1560 |
|
|
1561 |
$wth->execute($ref->{id}) || $form->dberror; |
|
1562 |
|
|
1563 |
while (($qty, $warehouse, $warehouse_id) = $wth->fetchrow_array) { |
|
1564 |
push @{ $form->{all_inventory} }, |
|
1565 |
{ 'id' => $ref->{id}, |
|
1566 |
'partnumber' => $ref->{partnumber}, |
|
1567 |
'description' => $ref->{description}, |
|
1568 |
'partsgroup' => $ref->{partsgroup}, |
|
1569 |
'qty' => $qty, |
|
1570 |
'warehouse_id' => $warehouse_id, |
|
1571 |
'warehouse' => $warehouse } |
|
1572 |
if $qty > 0; |
|
1573 |
} |
|
1574 |
$wth->finish; |
|
1575 |
} |
|
1576 |
$sth->finish; |
|
1577 |
|
|
1578 |
$dbh->disconnect; |
|
1579 |
|
|
1580 |
# sort inventory |
|
1581 |
@{ $form->{all_inventory} } = |
|
1582 |
sort { $a->{ $form->{sort} } cmp $b->{ $form->{sort} } } |
|
1583 |
@{ $form->{all_inventory} }; |
|
1584 |
|
|
1585 |
$main::lxdebug->leave_sub(); |
|
1586 |
|
|
1587 |
return @{ $form->{all_inventory} }; |
|
1588 |
} |
|
1589 |
|
|
1590 |
sub transfer { |
|
1591 |
$main::lxdebug->enter_sub(); |
|
1592 |
|
|
1593 |
my ($self, $myconfig, $form) = @_; |
|
1594 |
|
|
1595 |
my $dbh = $form->dbconnect_noauto($myconfig); |
|
1596 |
|
|
1597 |
my $query = qq|INSERT INTO inventory |
|
1598 |
(warehouse_id, parts_id, qty, shippingdate, employee_id) |
|
1599 |
VALUES (?, ?, ?, ?, ?)|; |
|
1600 |
$sth = $dbh->prepare($query) || $form->dberror($query); |
|
1601 |
|
|
1602 |
$form->get_employee($dbh); |
|
1603 |
|
|
1604 |
my @a = localtime; |
|
1605 |
$a[5] += 1900; |
|
1606 |
$a[4]++; |
|
1607 |
$shippingdate = "$a[5]-$a[4]-$a[3]"; |
|
1608 |
|
|
1609 |
for my $i (1 .. $form->{rowcount}) { |
|
1610 |
$qty = $form->parse_amount($myconfig, $form->{"transfer_$i"}); |
|
1611 |
|
|
1612 |
$qty = $form->{"qty_$i"} if ($qty > $form->{"qty_$i"}); |
|
1613 |
|
|
1614 |
if ($qty) { |
|
1615 |
|
|
1616 |
# to warehouse |
|
1617 |
$sth->execute($form->{warehouse_id}, $form->{"id_$i"}, $qty, |
|
1618 |
$shippingdate, $form->{employee_id}) |
|
1619 |
|| $form->dberror; |
|
1620 |
|
|
1621 |
$sth->finish; |
|
1622 |
|
|
1623 |
# from warehouse |
|
1624 |
$sth->execute($form->{"warehouse_id_$i"}, |
|
1625 |
$form->{"id_$i"}, $qty * -1, $shippingdate, |
|
1626 |
$form->{employee_id}) |
|
1627 |
|| $form->dberror; |
|
1628 |
|
|
1629 |
$sth->finish; |
|
1630 |
} |
|
1631 |
} |
|
1632 |
|
|
1633 |
my $rc = $dbh->commit; |
|
1634 |
$dbh->disconnect; |
|
1635 |
|
|
1636 |
$main::lxdebug->leave_sub(); |
|
1637 |
|
|
1638 |
return $rc; |
|
1639 |
} |
|
1640 |
|
|
1641 | 1326 |
1; |
1642 | 1327 |
|
bin/mozilla/ic.pl | ||
---|---|---|
3006 | 3006 |
$locale->text( |
3007 | 3007 |
"Inventory quantity must be zero before you can set this $form->{item} obsolete!" |
3008 | 3008 |
)) |
3009 |
if ($form->{onhand}); |
|
3009 |
if ($form->{onhand} * 1);
|
|
3010 | 3010 |
} |
3011 | 3011 |
|
3012 | 3012 |
if (!$form->{buchungsgruppen_id}) { |
... | ... | |
3170 | 3170 |
$lxdebug->leave_sub(); |
3171 | 3171 |
} |
3172 | 3172 |
|
3173 |
sub stock_assembly { |
|
3174 |
$lxdebug->enter_sub(); |
|
3175 |
|
|
3176 |
$form->{title} = $locale->text('Stock Assembly'); |
|
3177 |
|
|
3178 |
$form->header; |
|
3179 |
|
|
3180 |
print qq| |
|
3181 |
<body> |
|
3182 |
|
|
3183 |
<form method=post action=$form->{script}> |
|
3184 |
|
|
3185 |
<table width="100%"> |
|
3186 |
<tr> |
|
3187 |
<th class=listtop>$form->{title}</th> |
|
3188 |
</tr> |
|
3189 |
<tr height="5"></tr> |
|
3190 |
<tr valign=top> |
|
3191 |
<td> |
|
3192 |
<table> |
|
3193 |
<tr> |
|
3194 |
<th align="right" nowrap="true">| |
|
3195 |
. $locale->text('Part Number') . qq|</th> |
|
3196 |
<td><input name=partnumber size=20></td> |
|
3197 |
<td> </td> |
|
3198 |
</tr> |
|
3199 |
<tr> |
|
3200 |
<th align="right" nowrap="true">| |
|
3201 |
. $locale->text('Part Description') . qq|</th> |
|
3202 |
<td><input name=description size=40></td> |
|
3203 |
</tr> |
|
3204 |
</table> |
|
3205 |
</td> |
|
3206 |
</tr> |
|
3207 |
<tr><td><hr size=3 noshade></td></tr> |
|
3208 |
</table> |
|
3209 |
|
|
3210 |
<input type=hidden name=path value=$form->{path}> |
|
3211 |
<input type=hidden name=login value=$form->{login}> |
|
3212 |
<input type=hidden name=password value=$form->{password}> |
|
3213 |
|
|
3214 |
<input type=hidden name=nextsub value=list_assemblies> |
|
3215 |
|
|
3216 |
<br> |
|
3217 |
<input class=submit type=submit name=action value="| |
|
3218 |
. $locale->text('Continue') . qq|"> |
|
3219 |
</form> |
|
3220 |
|
|
3221 |
</body> |
|
3222 |
</html> |
|
3223 |
|; |
|
3224 |
|
|
3225 |
$lxdebug->leave_sub(); |
|
3226 |
} |
|
3227 |
|
|
3228 |
sub list_assemblies { |
|
3229 |
$lxdebug->enter_sub(); |
|
3230 |
|
|
3231 |
IC->retrieve_assemblies(\%myconfig, \%$form); |
|
3232 |
|
|
3233 |
$column_header{partnumber} = |
|
3234 |
qq|<th class=listheading>| . $locale->text('Part Number') . qq|</th>|; |
|
3235 |
$column_header{description} = |
|
3236 |
qq|<th class=listheading>| . $locale->text('Part Description') . qq|</th>|; |
|
3237 |
$column_header{bin} = |
|
3238 |
qq|<th class=listheading>| . $locale->text('Bin') . qq|</th>|; |
|
3239 |
$column_header{onhand} = |
|
3240 |
qq|<th class=listheading>| . $locale->text('Qty') . qq|</th>|; |
|
3241 |
$column_header{rop} = |
|
3242 |
qq|<th class=listheading>| . $locale->text('ROP') . qq|</th>|; |
|
3243 |
$column_header{stock} = |
|
3244 |
qq|<th class=listheading>| . $locale->text('Add') . qq|</th>|; |
|
3245 |
|
|
3246 |
@column_index = (qw(partnumber description bin onhand rop stock)); |
|
3247 |
|
|
3248 |
$form->{title} = $locale->text('Stock Assembly'); |
|
3249 |
|
|
3250 |
$form->{callback} = |
|
3251 |
"$form->{script}?action=stock_assembly&path=$form->{path}&login=$form->{login}&password=$form->{password}"; |
|
3252 |
|
|
3253 |
$form->header; |
|
3254 |
|
|
3255 |
$colspan = $#column_index + 1; |
|
3256 |
|
|
3257 |
print qq| |
|
3258 |
<body> |
|
3259 |
|
|
3260 |
<form method=post action=$form->{script}> |
|
3261 |
|
|
3262 |
<table width=100%> |
|
3263 |
<tr> |
|
3264 |
<th class=listtop colspan=$colspan>$form->{title}</th> |
|
3265 |
</tr> |
|
3266 |
<tr size=5></tr> |
|
3267 |
<tr class=listheading>|; |
|
3268 |
|
|
3269 |
map { print "\n$column_header{$_}" } @column_index; |
|
3270 |
|
|
3271 |
print qq| |
|
3272 |
</tr> |
|
3273 |
|; |
|
3274 |
|
|
3275 |
$i = 1; |
|
3276 |
foreach $ref (@{ $form->{assembly_items} }) { |
|
3277 |
|
|
3278 |
map { $ref->{$_} =~ s/\"/"/g } qw(partnumber description); |
|
3279 |
|
|
3280 |
$column_data{partnumber} = qq|<td width=20%>$ref->{partnumber}</td>|; |
|
3281 |
$column_data{description} = |
|
3282 |
qq|<td width=50%>$ref->{description} </td>|; |
|
3283 |
$column_data{bin} = qq|<td>$ref->{bin} </td>|; |
|
3284 |
$column_data{onhand} = |
|
3285 |
qq|<td align=right>| |
|
3286 |
. $form->format_amount(\%myconfig, $ref->{onhand}) |
|
3287 |
. qq|</td>|; |
|
3288 |
$column_data{rop} = |
|
3289 |
qq|<td align=right>| |
|
3290 |
. $form->format_amount(\%myconfig, $ref->{rop}) |
|
3291 |
. qq|</td>|; |
|
3292 |
$column_data{stock} = qq|<td width=10%><input name="qty_$i" size=10></td>|; |
|
3293 |
|
|
3294 |
$j++; |
|
3295 |
$j %= 2; |
|
3296 |
|
|
3297 |
qq|<tr class=listrow$j><input name="id_$i" type=hidden value=$ref->{id}>\n|; |
|
3298 |
|
|
3299 |
map { print "\n$column_data{$_}" } @column_index; |
|
3300 |
|
|
3301 |
print qq| |
|
3302 |
</tr> |
|
3303 |
|; |
|
3304 |
|
|
3305 |
$i++; |
|
3306 |
|
|
3307 |
} |
|
3308 |
|
|
3309 |
$i--; |
|
3310 |
print qq| |
|
3311 |
<tr> |
|
3312 |
<td colspan=6><hr size=3 noshade> |
|
3313 |
</tr> |
|
3314 |
</table> |
|
3315 |
<input name=rowcount type=hidden value="$i"> |
|
3316 |
|
|
3317 |
<input type=hidden name=path value=$form->{path}> |
|
3318 |
<input type=hidden name=login value=$form->{login}> |
|
3319 |
<input type=hidden name=password value=$form->{password}> |
|
3320 |
|
|
3321 |
<input name=callback type=hidden value="$form->{callback}"> |
|
3322 |
|
|
3323 |
<input type=hidden name=nextsub value=restock_assemblies> |
|
3324 |
|
|
3325 |
<br> |
|
3326 |
<input class=submit type=submit name=action value="| |
|
3327 |
. $locale->text('Continue') . qq|"> |
|
3328 |
|
|
3329 |
</form> |
|
3330 |
|
|
3331 |
</body> |
|
3332 |
</html> |
|
3333 |
|; |
|
3334 |
|
|
3335 |
$lxdebug->leave_sub(); |
|
3336 |
} |
|
3337 |
|
|
3338 |
sub restock_assemblies { |
|
3339 |
$lxdebug->enter_sub(); |
|
3340 |
|
|
3341 |
$form->redirect($locale->text('Assemblies restocked!')) |
|
3342 |
if (IC->restock_assemblies(\%myconfig, \%$form)); |
|
3343 |
$form->error($locale->text('Cannot stock assemblies!')); |
|
3344 |
|
|
3345 |
$lxdebug->leave_sub(); |
|
3346 |
} |
|
3347 |
|
|
3348 | 3173 |
sub price_row { |
3349 | 3174 |
$lxdebug->enter_sub(); |
3350 | 3175 |
|
bin/mozilla/io.pl | ||
---|---|---|
1549 | 1549 |
. $locale->text('Credit Note'); |
1550 | 1550 |
} |
1551 | 1551 |
|
1552 |
if ($form->{type} eq 'ship_order') { |
|
1553 |
$type = qq|<select name=formname> |
|
1554 |
<option value=pick_list $form->{PD}{pick_list}>| |
|
1555 |
. $locale->text('Pick List') . qq| |
|
1556 |
<option value=packing_list $form->{PD}{packing_list}>| |
|
1557 |
. $locale->text('Packing List'); |
|
1558 |
} |
|
1559 |
|
|
1560 |
if ($form->{type} eq 'receive_order') { |
|
1561 |
$type = qq|<select name=formname> |
|
1562 |
<option value=bin_list $form->{PD}{bin_list}>| |
|
1563 |
. $locale->text('Bin List'); |
|
1564 |
} |
|
1565 |
|
|
1566 | 1552 |
if ($form->{media} eq 'email') { |
1567 | 1553 |
$media = qq|<select name=sendmode> |
1568 | 1554 |
<option value=attachment $form->{SM}{attachment}>| |
bin/mozilla/oe.pl | ||
---|---|---|
205 | 205 |
$intnotes = $form->{intnotes}; |
206 | 206 |
|
207 | 207 |
# get customer / vendor |
208 |
if ($form->{type} =~ /(purchase_order|request_quotation|receive_order)/) {
|
|
208 |
if ($form->{type} =~ /(purchase_order|request_quotation)/) { |
|
209 | 209 |
IR->get_vendor(\%myconfig, \%$form); |
210 | 210 |
|
211 | 211 |
#quote all_vendor Bug 133 |
... | ... | |
1248 | 1248 |
$ordnumber = 'ordnumber'; |
1249 | 1249 |
$employee = $locale->text('Employee'); |
1250 | 1250 |
} |
1251 |
|
|
1251 | 1252 |
if ($form->{type} eq 'request_quotation') { |
1252 | 1253 |
$form->{title} = $locale->text('Request for Quotations'); |
1253 | 1254 |
$form->{vc} = 'vendor'; |
... | ... | |
1255 | 1256 |
$ordnumber = 'quonumber'; |
1256 | 1257 |
$employee = $locale->text('Employee'); |
1257 | 1258 |
} |
1258 |
if ($form->{type} eq 'receive_order') { |
|
1259 |
$form->{title} = $locale->text('Receive Merchandise'); |
|
1260 |
$form->{vc} = 'vendor'; |
|
1261 |
$ordlabel = $locale->text('Order Number'); |
|
1262 |
$ordnumber = 'ordnumber'; |
|
1263 |
$employee = $locale->text('Employee'); |
|
1264 |
} |
|
1259 |
|
|
1265 | 1260 |
if ($form->{type} eq 'sales_order') { |
1266 | 1261 |
$form->{title} = $locale->text('Sales Orders'); |
1267 | 1262 |
$form->{vc} = 'customer'; |
... | ... | |
1269 | 1264 |
$ordnumber = 'ordnumber'; |
1270 | 1265 |
$employee = $locale->text('Salesperson'); |
1271 | 1266 |
} |
1272 |
if ($form->{type} eq 'ship_order') { |
|
1273 |
$form->{title} = $locale->text('Ship Merchandise'); |
|
1274 |
$form->{vc} = 'customer'; |
|
1275 |
$ordlabel = $locale->text('Order Number'); |
|
1276 |
$ordnumber = 'ordnumber'; |
|
1277 |
$employee = $locale->text('Salesperson'); |
|
1278 |
|
|
1279 |
} |
|
1280 | 1267 |
|
1281 | 1268 |
if ($form->{type} eq 'sales_quotation') { |
1282 | 1269 |
$form->{title} = $locale->text('Quotations'); |
... | ... | |
1286 | 1273 |
$employee = $locale->text('Employee'); |
1287 | 1274 |
} |
1288 | 1275 |
|
1289 |
if ($form->{type} =~ /(ship|receive)_order/) { |
|
1290 |
OE->get_warehouses(\%myconfig, \%$form); |
|
1291 |
|
|
1292 |
# warehouse |
|
1293 |
if (@{ $form->{all_warehouses} }) { |
|
1294 |
$form->{selectwarehouse} = "<option>\n"; |
|
1295 |
$form->{warehouse} = qq|$form->{warehouse}--$form->{warehouse_id}|; |
|
1296 |
|
|
1297 |
map { |
|
1298 |
$form->{selectwarehouse} .= |
|
1299 |
"<option>$_->{description}--$_->{id}\n" |
|
1300 |
} (@{ $form->{all_warehouses} }); |
|
1301 |
|
|
1302 |
$warehouse = qq| |
|
1303 |
<tr> |
|
1304 |
<th align=right>| . $locale->text('Warehouse') . qq|</th> |
|
1305 |
<td colspan=3><select name=warehouse>$form->{selectwarehouse}</select></td> |
|
1306 |
<input type=hidden name=selectwarehouse value="$form->{selectwarehouse}"> |
|
1307 |
</tr> |
|
1308 |
|; |
|
1309 |
|
|
1310 |
} |
|
1311 |
} |
|
1312 |
|
|
1313 | 1276 |
# setup vendor / customer selection |
1314 | 1277 |
$form->all_vc(\%myconfig, $form->{vc}, |
1315 | 1278 |
($form->{vc} eq 'customer') ? "AR" : "AP"); |
... | ... | |
1345 | 1308 |
</tr> |
1346 | 1309 |
| if $form->{selectdepartment}; |
1347 | 1310 |
|
1348 |
if ($form->{type} !~ /(ship_order|receive_order)/) { |
|
1349 |
$openclosed = qq| |
|
1350 |
<tr> |
|
1351 |
<td><input name="open" class=checkbox type=checkbox value=1 checked> | |
|
1352 |
. $locale->text('Open') . qq|</td> |
|
1353 |
<td><input name="closed" class=checkbox type=checkbox value=1 $form->{closed}> | |
|
1354 |
. $locale->text('Closed') . qq|</td> |
|
1355 |
</tr> |
|
1356 |
|; |
|
1357 |
} else { |
|
1358 |
|
|
1359 |
$openclosed = qq| |
|
1311 |
$openclosed = qq| |
|
1360 | 1312 |
<input type=hidden name="open" value=1> |
1361 | 1313 |
|; |
1362 |
} |
|
1363 | 1314 |
|
1364 | 1315 |
my $delivered; |
1365 | 1316 |
if (($form->{"type"} eq "sales_order") || |
... | ... | |
1561 | 1512 |
} |
1562 | 1513 |
|
1563 | 1514 |
if ($form->{vc} eq 'vendor') { |
1564 |
if ($form->{type} eq 'receive_order') { |
|
1565 |
$form->{title} = $locale->text('Receive Merchandise'); |
|
1566 |
} elsif ($form->{type} eq 'purchase_order') { |
|
1515 |
if ($form->{type} eq 'purchase_order') { |
|
1567 | 1516 |
$form->{title} = $locale->text('Purchase Orders'); |
1568 | 1517 |
} else { |
1569 | 1518 |
$form->{title} = $locale->text('Request for Quotations'); |
... | ... | |
1575 | 1524 |
if ($form->{type} eq 'sales_order') { |
1576 | 1525 |
$form->{title} = $locale->text('Sales Orders'); |
1577 | 1526 |
$employee = $locale->text('Salesperson'); |
1578 |
} elsif ($form->{type} eq 'ship_order') { |
|
1579 |
$form->{title} = $locale->text('Ship Merchandise'); |
|
1580 |
$employee = $locale->text('Salesperson'); |
|
1581 | 1527 |
} else { |
1582 | 1528 |
$form->{title} = $locale->text('Quotations'); |
1583 | 1529 |
$employee = $locale->text('Employee'); |
... | ... | |
2497 | 2443 |
$lxdebug->leave_sub(); |
2498 | 2444 |
} |
2499 | 2445 |
|
2500 |
sub ship_receive { |
|
2501 |
$lxdebug->enter_sub(); |
|
2502 |
|
|
2503 |
&order_links; |
|
2504 |
|
|
2505 |
&prepare_order; |
|
2506 |
|
|
2507 |
OE->get_warehouses(\%myconfig, \%$form); |
|
2508 |
|
|
2509 |
# warehouse |
|
2510 |
if (@{ $form->{all_warehouses} }) { |
|
2511 |
$form->{selectwarehouse} = "<option>\n"; |
|
2512 |
|
|
2513 |
map { $form->{selectwarehouse} .= "<option>$_->{description}--$_->{id}\n" } |
|
2514 |
(@{ $form->{all_warehouses} }); |
|
2515 |
|
|
2516 |
if ($form->{warehouse}) { |
|
2517 |
$form->{selectwarehouse} = "<option>$form->{warehouse}"; |
|
2518 |
} |
|
2519 |
} |
|
2520 |
|
|
2521 |
$form->{shippingdate} = $form->current_date(\%myconfig); |
|
2522 |
$form->{"$form->{vc}"} =~ s/--.*//; |
|
2523 |
|
|
2524 |
@flds = (); |
|
2525 |
@a = (); |
|
2526 |
$count = 0; |
|
2527 |
foreach $key (keys %$form) { |
|
2528 |
if ($key =~ /_1$/) { |
|
2529 |
$key =~ s/_1//; |
|
2530 |
push @flds, $key; |
|
2531 |
} |
|
2532 |
} |
|
2533 |
|
|
2534 |
for $i (1 .. $form->{rowcount}) { |
|
2535 |
|
|
2536 |
# undo formatting from prepare_order |
|
2537 |
map { |
|
2538 |
$form->{"${_}_$i"} = |
|
2539 |
$form->parse_amount(\%myconfig, $form->{"${_}_$i"}) |
|
2540 |
} qw(qty ship); |
|
2541 |
$n = ($form->{"qty_$i"} -= $form->{"ship_$i"}); |
|
2542 |
if (abs($n) > 0 |
|
2543 |
&& ($form->{"inventory_accno_$i"} || $form->{"assembly_$i"})) { |
|
2544 |
$form->{"ship_$i"} = ""; |
|
2545 |
$form->{"serialnumber_$i"} = ""; |
|
2546 |
|
|
2547 |
push @a, {}; |
|
2548 |
$j = $#a; |
|
2549 |
|
|
2550 |
map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds; |
|
2551 |
$count++; |
|
2552 |
} |
|
2553 |
} |
|
2554 |
|
|
2555 |
$form->redo_rows(\@flds, \@a, $count, $form->{rowcount}); |
|
2556 |
$form->{rowcount} = $count; |
|
2557 |
|
|
2558 |
&display_ship_receive; |
|
2559 |
|
|
2560 |
$lxdebug->leave_sub(); |
|
2561 |
} |
|
2562 |
|
|
2563 |
sub display_ship_receive { |
|
2564 |
$lxdebug->enter_sub(); |
|
2565 |
|
|
2566 |
$vclabel = ucfirst $form->{vc}; |
|
2567 |
$vclabel = $locale->text($vclabel); |
|
2568 |
|
|
2569 |
$form->{rowcount}++; |
|
2570 |
|
|
2571 |
if ($form->{vc} eq 'customer') { |
|
2572 |
$form->{title} = $locale->text('Ship Merchandise'); |
|
2573 |
$shipped = $locale->text('Shipping Date'); |
|
2574 |
} else { |
|
2575 |
$form->{title} = $locale->text('Receive Merchandise'); |
|
2576 |
$shipped = $locale->text('Date Received'); |
|
2577 |
} |
|
2578 |
|
|
2579 |
# set option selected |
|
2580 |
foreach $item (warehouse, employee) { |
|
2581 |
$form->{"select$item"} =~ s/ selected//; |
|
2582 |
$form->{"select$item"} =~ |
|
2583 |
s/option>\Q$form->{$item}\E/option selected>$form->{$item}/; |
|
2584 |
} |
|
2585 |
|
|
2586 |
$warehouse = qq| |
|
2587 |
<tr> |
|
2588 |
<th align=right>| . $locale->text('Warehouse') . qq|</th> |
|
2589 |
<td><select name=warehouse>$form->{selectwarehouse}</select></td> |
|
2590 |
<input type=hidden name=selectwarehouse value="$form->{selectwarehouse}"> |
|
2591 |
</tr> |
|
2592 |
| if $form->{selectwarehouse}; |
|
2593 |
|
|
2594 |
$employee = qq| |
|
2595 |
<tr> |
|
2596 |
<th align=right nowrap>| . $locale->text('Contact') . qq|</th> |
|
2597 |
<td><select name=employee>$form->{selectemployee}</select></td> |
|
2598 |
<input type=hidden name=selectemployee value="$form->{selectemployee}"> |
|
2599 |
</tr> |
|
2600 |
|; |
|
2601 |
|
|
2602 |
$form->header; |
|
2603 |
|
|
2604 |
print qq| |
|
2605 |
<body> |
|
2606 |
|
|
2607 |
<form method=post action=$form->{script}> |
|
2608 |
|
|
2609 |
<input type=hidden name=id value=$form->{id}> |
|
2610 |
|
|
2611 |
<input type=hidden name=display_form value=display_ship_receive> |
|
2612 |
|
|
2613 |
<input type=hidden name=type value=$form->{type}> |
|
2614 |
<input type=hidden name=media value=$form->{media}> |
|
2615 |
<input type=hidden name=format value=$form->{format}> |
|
2616 |
|
|
2617 |
<input type=hidden name=queued value="$form->{queued}"> |
|
2618 |
<input type=hidden name=printed value="$form->{printed}"> |
|
2619 |
<input type=hidden name=emailed value="$form->{emailed}"> |
|
2620 |
|
|
2621 |
<input type=hidden name=vc value=$form->{vc}> |
|
2622 |
|
|
2623 |
<table width=100%> |
|
2624 |
<tr class=listtop> |
|
2625 |
<th class=listtop>$form->{title}</th> |
|
2626 |
</tr> |
|
2627 |
<tr height="5"></tr> |
|
2628 |
<tr> |
|
2629 |
<td> |
|
2630 |
<table width="100%"> |
|
2631 |
<tr valign=top> |
|
2632 |
<td> |
|
2633 |
<table width=100%> |
|
2634 |
<tr> |
|
2635 |
<th align=right>$vclabel</th> |
|
2636 |
<td colspan=3>$form->{$form->{vc}}</td> |
|
2637 |
<input type=hidden name=$form->{vc} value="$form->{$form->{vc}}"> |
|
2638 |
<input type=hidden name="$form->{vc}_id" value=$form->{"$form->{vc}_id"}> |
|
2639 |
</tr> |
|
2640 |
$department |
|
2641 |
<tr> |
|
2642 |
<th align=right>| . $locale->text('Shipping Point') . qq|</th> |
|
2643 |
<td colspan=3> |
|
2644 |
<input name=shippingpoint size=35 value="$form->{shippingpoint}"> |
|
2645 |
</tr> |
|
2646 |
<tr> |
|
2647 |
<th align=right>| . $locale->text('Ship via') . qq|</th> |
|
2648 |
<td colspan=3> |
|
2649 |
<input name=shipvia size=35 value="$form->{shipvia}"> |
|
2650 |
</tr> |
|
2651 |
$warehouse |
|
2652 |
</table> |
|
2653 |
</td> |
|
2654 |
<td align=right> |
|
2655 |
<table> |
|
2656 |
$employee |
|
2657 |
<tr> |
|
2658 |
<th align=right nowrap>| . $locale->text('Order Number') . qq|</th> |
|
2659 |
<td>$form->{ordnumber}</td> |
|
2660 |
<input type=hidden name=ordnumber value="$form->{ordnumber}"> |
|
2661 |
</tr> |
|
2662 |
<tr> |
|
2663 |
<th align=right nowrap>| . $locale->text('Order Date') . qq|</th> |
|
2664 |
<td>$form->{transdate}</td> |
|
2665 |
<input type=hidden name=transdate value=$form->{transdate}> |
|
2666 |
</tr> |
|
2667 |
<tr> |
|
2668 |
<th align=right nowrap>$shipped</th> |
|
2669 |
<td><input name=shippingdate size=11 value=$form->{shippingdate}></td> |
|
2670 |
</tr> |
|
2671 |
</table> |
|
2672 |
</td> |
|
2673 |
</tr> |
|
2674 |
</table> |
|
2675 |
</td> |
|
2676 |
</tr> |
|
2677 |
|
|
2678 |
<!-- shipto are in hidden variables --> |
|
2679 |
|
|
2680 |
<input type=hidden name=shiptoname value="$form->{shiptoname}"> |
|
2681 |
<input type=hidden name=shiptostreet value="$form->{shiptostreet}"> |
|
2682 |
<input type=hidden name=shiptozipcode value="$form->{shiptozipcode}"> |
|
2683 |
<input type=hidden name=shiptocity value="$form->{shiptocity}"> |
|
2684 |
<input type=hidden name=shiptocountry value="$form->{shiptocountry}"> |
|
2685 |
<input type=hidden name=shiptocontact value="$form->{shiptocontact}"> |
|
2686 |
<input type=hidden name=shiptophone value="$form->{shiptophone}"> |
|
2687 |
<input type=hidden name=shiptofax value="$form->{shiptofax}"> |
|
2688 |
<input type=hidden name=shiptoemail value="$form->{shiptoemail}"> |
|
2689 |
<input type=hidden name=shiptodepartment_1 value="$form->{shiptodepartment_1}"> |
|
2690 |
<input type=hidden name=shiptodepartment_2 value="$form->{shiptodepartment_2}"> |
|
2691 |
|
|
2692 |
<!-- email variables --> |
|
2693 |
<input type=hidden name=message value="$form->{message}"> |
|
2694 |
<input type=hidden name=email value="$form->{email}"> |
|
2695 |
<input type=hidden name=subject value="$form->{subject}"> |
|
2696 |
<input type=hidden name=cc value="$form->{cc}"> |
|
2697 |
<input type=hidden name=bcc value="$form->{bcc}"> |
|
2698 |
|
|
2699 |
|; |
|
2700 |
|
|
2701 |
@column_index = |
|
2702 |
(partnumber, description, qty, ship, unit, bin, serialnumber); |
|
2703 |
|
|
2704 |
if ($form->{type} eq "ship_order") { |
|
2705 |
$column_data{ship} = |
|
2706 |
qq|<th class=listheading align=center width="auto">| |
|
2707 |
. $locale->text('Ship') |
|
2708 |
. qq|</th>|; |
|
2709 |
} |
|
2710 |
if ($form->{type} eq "receive_order") { |
|
2711 |
$column_data{ship} = |
|
2712 |
qq|<th class=listheading align=center width="auto">| |
|
2713 |
. $locale->text('Recd') |
|
2714 |
. qq|</th>|; |
|
2715 |
} |
|
2716 |
|
|
2717 |
my $colspan = $#column_index + 1; |
|
2718 |
|
|
2719 |
$column_data{partnumber} = |
|
2720 |
qq|<th class=listheading nowrap>| . $locale->text('Number') . qq|</th>|; |
|
2721 |
$column_data{description} = |
|
2722 |
qq|<th class=listheading nowrap>| |
|
2723 |
. $locale->text('Description') |
|
2724 |
. qq|</th>|; |
|
2725 |
$column_data{qty} = |
|
2726 |
qq|<th class=listheading nowrap>| . $locale->text('Qty') . qq|</th>|; |
|
2727 |
$column_data{unit} = |
|
2728 |
qq|<th class=listheading nowrap>| . $locale->text('Unit') . qq|</th>|; |
|
2729 |
$column_data{bin} = |
|
2730 |
qq|<th class=listheading nowrap>| . $locale->text('Bin') . qq|</th>|; |
|
2731 |
$column_data{serialnumber} = |
|
2732 |
qq|<th class=listheading nowrap>| |
|
2733 |
. $locale->text('Serial No.') |
|
2734 |
. qq|</th>|; |
|
2735 |
|
|
2736 |
print qq| |
|
2737 |
<tr> |
|
2738 |
<td> |
|
2739 |
<table width=100%> |
|
2740 |
<tr class=listheading>|; |
|
2741 |
|
|
2742 |
map { print "\n$column_data{$_}" } @column_index; |
|
2743 |
|
|
2744 |
print qq| |
|
2745 |
</tr> |
|
2746 |
|; |
|
2747 |
|
|
2748 |
for $i (1 .. $form->{rowcount} - 1) { |
|
2749 |
|
|
2750 |
# undo formatting |
|
2751 |
$form->{"ship_$i"} = $form->parse_amount(\%myconfig, $form->{"ship_$i"}); |
|
2752 |
|
|
2753 |
# convert " to " |
|
2754 |
map { $form->{"${_}_$i"} =~ s/\"/"/g } |
|
2755 |
qw(partnumber description unit bin serialnumber); |
|
2756 |
|
|
2757 |
$description = $form->{"description_$i"}; |
|
2758 |
$description =~ s/\n/<br>/g; |
|
2759 |
|
|
2760 |
$column_data{partnumber} = |
|
2761 |
qq|<td>$form->{"partnumber_$i"}<input type=hidden name="partnumber_$i" value="$form->{"partnumber_$i"}"></td>|; |
|
2762 |
$column_data{description} = |
|
2763 |
qq|<td>$description<input type=hidden name="description_$i" value="$form->{"description_$i"}"></td>|; |
|
2764 |
$column_data{qty} = |
|
2765 |
qq|<td align=right>| |
|
2766 |
. $form->format_amount(\%myconfig, $form->{"qty_$i"}, $dec_qty) |
|
2767 |
. qq|<input type=hidden name="qty_$i" value="$form->{"qty_$i"}"></td>|; |
|
2768 |
$column_data{ship} = |
|
2769 |
qq|<td align=right><input name="ship_$i" size=5 value=| |
|
2770 |
. $form->format_amount(\%myconfig, $form->{"ship_$i"}) |
|
2771 |
. qq|></td>|; |
|
2772 |
$column_data{unit} = |
|
2773 |
qq|<td>$form->{"unit_$i"}<input type=hidden name="unit_$i" value="$form->{"unit_$i"}"></td>|; |
|
2774 |
$column_data{bin} = |
|
2775 |
qq|<td>$form->{"bin_$i"}<input type=hidden name="bin_$i" value="$form->{"bin_$i"}"></td>|; |
|
2776 |
|
|
2777 |
$column_data{serialnumber} = |
|
2778 |
qq|<td><input name="serialnumber_$i" size=15 value="$form->{"serialnumber_$i"}"></td>|; |
|
2779 |
|
|
2780 |
print qq| |
|
2781 |
<tr valign=top>|; |
|
2782 |
|
|
2783 |
map { print "\n$column_data{$_}" } @column_index; |
|
2784 |
|
|
2785 |
print qq| |
|
2786 |
</tr> |
|
2787 |
|
|
2788 |
<input type=hidden name="orderitems_id_$i" value=$form->{"orderitems_id_$i"}> |
|
2789 |
<input type=hidden name="id_$i" value=$form->{"id_$i"}> |
|
2790 |
<input type=hidden name="assembly_$i" value="$form->{"assembly_$i"}"> |
|
2791 |
<input type=hidden name="partsgroup_$i" value="$form->{"partsgroup_$i"}"> |
|
2792 |
|
|
2793 |
|; |
|
2794 |
|
|
2795 |
} |
|
2796 |
|
|
2797 |
print qq| |
|
2798 |
</table> |
|
2799 |
</td> |
|
2800 |
</tr> |
|
2801 |
<tr> |
|
2802 |
<td><hr size=3 noshade></td> |
|
2803 |
</tr> |
|
2804 |
<tr> |
|
2805 |
<td> |
|
2806 |
|; |
|
2807 |
|
|
2808 |
$form->{copies} = 1; |
|
2809 |
|
|
2810 |
&print_options; |
|
2811 |
|
|
2812 |
print qq| |
|
2813 |
</td> |
|
2814 |
</tr> |
|
2815 |
</table> |
|
2816 |
<br> |
|
2817 |
<input class=submit type=submit name=action value="| |
|
2818 |
. $locale->text('Update') . qq|"> |
|
2819 |
<input class=submit type=submit name=action value="| |
|
2820 |
. $locale->text('Print') . qq|"> |
|
2821 |
|; |
|
2822 |
|
|
2823 |
if ($form->{type} eq 'ship_order') { |
|
2824 |
print qq| |
|
2825 |
<input class=submit type=submit name=action value="| |
|
2826 |
. $locale->text('Ship to') . qq|"> |
|
2827 |
<input class=submit type=submit name=action value="| |
|
2828 |
. $locale->text('E-mail') . qq|"> |
|
2829 |
|; |
|
2830 |
} |
|
2831 |
|
|
2832 |
print qq| |
|
2833 |
|
|
2834 |
<input class=submit type=submit name=action value="| |
|
2835 |
. $locale->text('Done') . qq|"> |
|
2836 |
|
|
2837 |
<input type=hidden name=rowcount value=$form->{rowcount}> |
|
2838 |
|
|
2839 |
<input name=callback type=hidden value="$callback"> |
|
2840 |
|
|
2841 |
<input type=hidden name=path value=$form->{path}> |
|
2842 |
<input type=hidden name=login value=$form->{login}> |
|
2843 |
<input type=hidden name=password value=$form->{password}> |
|
2844 |
|
|
2845 |
</form> |
|
2846 |
|
|
2847 |
</body> |
|
2848 |
</html> |
|
2849 |
|; |
|
2850 |
|
|
2851 |
$lxdebug->leave_sub(); |
|
2852 |
} |
|
2853 |
|
|
2854 |
sub done { |
|
2855 |
$lxdebug->enter_sub(); |
|
2856 |
|
|
2857 |
if ($form->{type} eq 'ship_order') { |
|
2858 |
$form->isblank("shippingdate", $locale->text('Shipping Date missing!')); |
|
2859 |
} else { |
|
2860 |
$form->isblank("shippingdate", $locale->text('Date received missing!')); |
|
2861 |
} |
|
2862 |
|
|
2863 |
$total = 0; |
|
2864 |
map { |
|
2865 |
$total += $form->{"ship_$_"} = |
|
2866 |
$form->parse_amount(\%myconfig, $form->{"ship_$_"}) |
|
2867 |
} (1 .. $form->{rowcount} - 1); |
|
2868 |
|
|
2869 |
$form->error($locale->text('Nothing entered!')) unless $total; |
|
2870 |
|
|
2871 |
$form->redirect($locale->text('Inventory saved!')) |
|
2872 |
if OE->save_inventory(\%myconfig, \%$form); |
|
2873 |
$form->error($locale->text('Could not save!')); |
|
2874 |
|
|
2875 |
$lxdebug->leave_sub(); |
|
2876 |
} |
|
2877 |
|
|
2878 |
sub search_transfer { |
|
2879 |
$lxdebug->enter_sub(); |
|
2880 |
|
|
2881 |
OE->get_warehouses(\%myconfig, \%$form); |
|
2882 |
|
|
2883 |
# warehouse |
|
2884 |
if (@{ $form->{all_warehouses} }) { |
|
2885 |
$form->{selectwarehouse} = "<option>\n"; |
|
2886 |
$form->{warehouse} = qq|$form->{warehouse}--$form->{warehouse_id}|; |
|
2887 |
|
|
2888 |
map { $form->{selectwarehouse} .= "<option>$_->{description}--$_->{id}\n" } |
|
2889 |
(@{ $form->{all_warehouses} }); |
|
2890 |
} else { |
|
2891 |
$form->error($locale->text('Nothing to transfer!')); |
|
2892 |
} |
|
2893 |
|
|
2894 |
$form->{title} = $locale->text('Transfer Inventory'); |
|
2895 |
|
|
2896 |
$form->header; |
|
2897 |
|
|
2898 |
print qq| |
|
2899 |
<body> |
|
2900 |
|
|
2901 |
<form method=post action=$form->{script}> |
|
2902 |
|
|
2903 |
<table width=100%> |
|
2904 |
<tr> |
|
2905 |
<th class=listtop>$form->{title}</th> |
|
2906 |
</tr> |
|
2907 |
<tr height="5"></tr> |
|
2908 |
<tr> |
|
2909 |
<td> |
|
2910 |
<table> |
|
2911 |
<tr> |
|
2912 |
<th align=right nowrap>| . $locale->text('Transfer to') . qq|</th> |
|
2913 |
<td><select name=warehouse>$form->{selectwarehouse}</select></td> |
|
2914 |
</tr> |
|
2915 |
<tr> |
|
2916 |
<th align="right" nowrap="true">| . $locale->text('Part Number') . qq|</th> |
|
2917 |
<td><input name=partnumber size=20></td> |
|
2918 |
</tr> |
|
2919 |
<tr> |
|
2920 |
<th align="right" nowrap="true">| . $locale->text('Description') . qq|</th> |
|
2921 |
<td><input name=description size=40></td> |
|
2922 |
</tr> |
|
2923 |
<tr> |
|
2924 |
<th align=right nowrap>| . $locale->text('Group') . qq|</th> |
|
2925 |
<td><input name=partsgroup size=20></td> |
|
2926 |
</tr> |
|
2927 |
</table> |
|
2928 |
</td> |
|
2929 |
</tr> |
|
2930 |
<tr> |
|
2931 |
<td><hr size=3 noshade></td> |
|
2932 |
</tr> |
|
2933 |
</table> |
|
2934 |
|
|
2935 |
<br> |
|
2936 |
<input type=hidden name=sort value=partnumber> |
|
2937 |
<input type=hidden name=nextsub value=list_transfer> |
|
2938 |
|
|
2939 |
<input type=hidden name=path value=$form->{path}> |
|
2940 |
<input type=hidden name=login value=$form->{login}> |
|
2941 |
<input type=hidden name=password value=$form->{password}> |
|
2942 |
|
|
2943 |
<input class=submit type=submit name=action value="| |
|
2944 |
. $locale->text('Continue') . qq|"> |
|
2945 |
</form> |
|
2946 |
|
|
2947 |
</body> |
|
2948 |
</html> |
|
2949 |
|; |
|
2950 |
|
|
2951 |
$lxdebug->leave_sub(); |
|
2952 |
} |
|
2953 |
|
|
2954 |
sub list_transfer { |
|
2955 |
$lxdebug->enter_sub(); |
|
2956 |
|
|
2957 |
OE->get_inventory(\%myconfig, \%$form); |
|
2958 |
|
|
2959 |
$partnumber = $form->escape($form->{partnumber}); |
|
2960 |
$warehouse = $form->escape($form->{warehouse}); |
|
2961 |
$description = $form->escape($form->{description}); |
|
2962 |
$partsgroup = $form->escape($form->{partsgroup}); |
|
2963 |
|
|
2964 |
# construct href |
|
2965 |
$href = |
|
2966 |
"$form->{script}?path=$form->{path}&action=list_transfer&partnumber=$partnumber&warehouse=$warehouse&description=$description&partsgroup=$partsgroup&login=$form->{login}&password=$form->{password}"; |
|
2967 |
|
|
2968 |
# construct callback |
|
2969 |
$partnumber = $form->escape($form->{partnumber}, 1); |
|
2970 |
$warehouse = $form->escape($form->{warehouse}, 1); |
|
2971 |
$description = $form->escape($form->{description}, 1); |
|
2972 |
$partsgroup = $form->escape($form->{partsgroup}, 1); |
|
2973 |
|
|
2974 |
$callback = |
|
2975 |
"$form->{script}?path=$form->{path}&action=list_transfer&partnumber=$partnumber&warehouse=$warehouse&description=$description&partsgroup=$partsgroup&login=$form->{login}&password=$form->{password}"; |
|
2976 |
|
|
2977 |
@column_index = |
|
2978 |
$form->sort_columns( |
|
2979 |
qw(partnumber description partsgroup make model warehouse qty transfer)); |
|
2980 |
|
|
2981 |
$column_header{partnumber} = |
|
2982 |
qq|<th><a class=listheading href=$href&sort=partnumber>| |
|
2983 |
. $locale->text('Part Number') |
|
2984 |
. qq|</a></th>|; |
|
2985 |
$column_header{description} = |
|
2986 |
qq|<th><a class=listheading href=$href&sort=description>| |
|
2987 |
. $locale->text('Description') |
|
2988 |
. qq|</a></th>|; |
|
2989 |
$column_header{partsgroup} = |
|
2990 |
qq|<th><a class=listheading href=$href&sort=partsgroup>| |
|
2991 |
. $locale->text('Group') |
|
2992 |
. qq|</a></th>|; |
|
2993 |
$column_header{warehouse} = |
|
2994 |
qq|<th><a class=listheading href=$href&sort=warehouse>| |
|
2995 |
. $locale->text('From') |
|
2996 |
. qq|</a></th>|; |
|
2997 |
$column_header{qty} = |
|
2998 |
qq|<th><a class=listheading>| . $locale->text('Qty') . qq|</a></th>|; |
|
2999 |
$column_header{transfer} = |
|
3000 |
qq|<th><a class=listheading>| . $locale->text('Transfer') . qq|</a></th>|; |
|
3001 |
|
|
3002 |
$option = $locale->text('Transfer to'); |
|
3003 |
|
|
3004 |
($warehouse, $warehouse_id) = split /--/, $form->{warehouse}; |
|
3005 |
|
|
3006 |
if ($form->{warehouse}) { |
|
3007 |
$option .= " : $warehouse"; |
|
3008 |
} |
|
3009 |
if ($form->{partnumber}) { |
|
3010 |
$option .= "\n<br>" if ($option); |
|
3011 |
$option .= $locale->text('Part Number') . " : $form->{partnumber}"; |
|
3012 |
} |
|
3013 |
if ($form->{description}) { |
|
3014 |
$option .= "\n<br>" if ($option); |
|
3015 |
$option .= $locale->text('Description') . " : $form->{description}"; |
|
3016 |
} |
|
3017 |
if ($form->{partsgroup}) { |
|
3018 |
$option .= "\n<br>" if ($option); |
|
3019 |
$option .= $locale->text('Group') . " : $form->{partsgroup}"; |
|
3020 |
} |
|
3021 |
|
|
3022 |
$form->{title} = $locale->text('Transfer Inventory'); |
|
3023 |
|
|
3024 |
$form->header; |
|
3025 |
|
|
3026 |
print qq| |
|
3027 |
<body> |
|
3028 |
|
|
3029 |
<form method=post action=$form->{script}> |
|
3030 |
|
|
3031 |
<input type=hidden name=warehouse_id value=$warehouse_id> |
|
3032 |
|
|
3033 |
<table width=100%> |
|
3034 |
<tr> |
|
3035 |
<th class=listtop>$form->{title}</th> |
|
3036 |
</tr> |
|
3037 |
<tr height="5"></tr> |
|
3038 |
<tr> |
|
3039 |
<td>$option</td> |
|
3040 |
</tr> |
|
3041 |
<tr> |
|
3042 |
<td> |
|
3043 |
<table width=100%> |
|
3044 |
<tr class=listheading>|; |
|
3045 |
|
|
3046 |
map { print "\n$column_header{$_}" } @column_index; |
|
3047 |
|
|
3048 |
print qq| |
|
3049 |
</tr> |
|
3050 |
|; |
|
3051 |
|
|
3052 |
if (@{ $form->{all_inventory} }) { |
|
3053 |
$sameitem = $form->{all_inventory}->[0]->{ $form->{sort} }; |
|
3054 |
} |
|
3055 |
|
|
3056 |
$i = 0; |
|
3057 |
foreach $ref (@{ $form->{all_inventory} }) { |
|
3058 |
|
|
3059 |
$i++; |
|
3060 |
|
|
3061 |
$column_data{partnumber} = |
|
3062 |
qq|<td><input type=hidden name="id_$i" value=$ref->{id}>$ref->{partnumber}</td>|; |
|
3063 |
$column_data{description} = "<td>$ref->{description} </td>"; |
|
3064 |
$column_data{partsgroup} = "<td>$ref->{partsgroup} </td>"; |
|
3065 |
$column_data{warehouse} = |
|
3066 |
qq|<td><input type=hidden name="warehouse_id_$i" value=$ref->{warehouse_id}>$ref->{warehouse} </td>|; |
|
3067 |
$column_data{qty} = |
|
3068 |
qq|<td><input type=hidden name="qty_$i" value=$ref->{qty}>| |
|
3069 |
. $form->format_amount(\%myconfig, $ref->{qty}, $dec_qty) |
|
3070 |
. qq|</td>|; |
|
3071 |
$column_data{transfer} = qq|<td><input name="transfer_$i" size=4></td>|; |
|
3072 |
|
|
3073 |
$j++; |
|
3074 |
$j %= 2; |
|
3075 |
print " |
|
3076 |
<tr class=listrow$j>"; |
|
3077 |
|
|
3078 |
map { print "\n$column_data{$_}" } @column_index; |
|
3079 |
|
|
3080 |
print qq| |
|
3081 |
</tr> |
|
3082 |
|; |
|
3083 |
|
|
3084 |
} |
|
3085 |
|
|
3086 |
print qq| |
|
3087 |
</table> |
|
3088 |
</td> |
|
3089 |
</tr> |
|
3090 |
|
|
3091 |
<tr> |
|
3092 |
<td><hr size=3 noshade></td> |
|
3093 |
</tr> |
|
3094 |
</table> |
|
3095 |
|
|
3096 |
<br> |
|
3097 |
|
|
3098 |
<input name=callback type=hidden value="$callback"> |
|
3099 |
|
|
3100 |
<input type=hidden name=rowcount value=$i> |
|
3101 |
|
|
3102 |
<input type=hidden name=path value=$form->{path}> |
|
3103 |
<input type=hidden name=login value=$form->{login}> |
|
3104 |
<input type=hidden name=password value=$form->{password}> |
|
3105 |
|
|
3106 |
<input class=submit type=submit name=action value="| |
|
3107 |
. $locale->text('Transfer') . qq|"> |
|
3108 |
|
|
3109 |
</form> |
|
3110 |
|
|
3111 |
</body> |
|
3112 |
</html> |
|
3113 |
|; |
|
3114 |
|
|
3115 |
$lxdebug->leave_sub(); |
|
3116 |
} |
|
3117 |
|
|
3118 |
sub transfer { |
|
3119 |
$lxdebug->enter_sub(); |
|
3120 |
|
|
3121 |
$form->redirect($locale->text('Inventory transferred!')) |
|
3122 |
if OE->transfer(\%myconfig, \%$form); |
|
3123 |
$form->error($locale->text('Could not transfer Inventory!')); |
|
3124 |
|
|
3125 |
$lxdebug->leave_sub(); |
|
3126 |
} |
locale/de/all | ||
---|---|---|
144 | 144 |
'Article Code' => 'Artikelk?rzel', |
145 | 145 |
'Article Code missing!' => 'Artikelk?rzel fehlt', |
146 | 146 |
'Assemblies' => 'Erzeugnisse', |
147 |
'Assemblies restocked!' => 'Erzeugnisse sind im Lager!', |
|
148 | 147 |
'Assembly Number missing!' => 'Erzeugnisnummer fehlt!', |
149 | 148 |
'Asset' => 'Aktiva/Mittelverwendung', |
150 | 149 |
'Assign new units' => 'Neue Einheiten zuweisen', |
... | ... | |
235 | 234 |
'Cannot save order!' => 'Auftrag kann nicht gespeichert werden!', |
236 | 235 |
'Cannot save preferences!' => 'Benutzereinstellungen k?nnen nicht gespeichert werden!', |
237 | 236 |
'Cannot save quotation!' => 'Angebot kann nicht gespeichert werden!', |
238 |
'Cannot stock assemblies!' => 'Erzeugnisse k?nnen nicht ins Lager!', |
|
239 | 237 |
'Cannot storno storno invoice!' => 'Kann eine Stornorechnung nicht stornieren', |
240 | 238 |
'Cash' => 'Zahlungsverkehr', |
241 | 239 |
'Cc' => 'Cc', |
... | ... | |
281 | 279 |
'Could not create dunning copy!' => '', |
282 | 280 |
'Could not open the file users/members.' => 'Die Datei "users/members" konnte nicht geöffnet werden.', |
283 | 281 |
'Could not rename %s to %s. Reason: %s' => 'Die Datei "%s" konnte nicht in "%s" umbenannt werden. Grund: %s', |
284 |
'Could not save!' => 'Konnte nicht speichern!', |
|
285 |
'Could not transfer Inventory!' => 'Konnte Waren nicht umlagern!', |
|
286 | 282 |
'Could not update prices!' => 'Preise konnten nicht aktualisiert werden!', |
287 | 283 |
'Country' => 'Land', |
288 | 284 |
'Create Buchungsgruppen' => 'Buchungsgruppe erfassen', |
... | ... | |
334 | 330 |
'Date' => 'Datum', |
335 | 331 |
'Date Format' => 'Datumsformat', |
336 | 332 |
'Date Paid' => 'Zahlungsdatum', |
337 |
'Date Received' => 'Empfangsdatum', |
|
338 | 333 |
'Date missing!' => 'Datum fehlt!', |
339 |
'Date received missing!' => 'Empfangsdatum fehlt!', |
|
340 | 334 |
'Datentr?gernummer' => 'Datentr?gernummer', |
341 | 335 |
'Datev' => '', |
342 | 336 |
'Datum von' => 'Datum von', |
... | ... | |
556 | 550 |
'Inventory Account' => 'Warenbestand', |
557 | 551 |
'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Bevor dieses Erzeugnis als ung?ltig markiert werden kann, muß das Inventar auf Null sein!', |
558 | 552 |
'Inventory quantity must be zero before you can set this part obsolete!' => 'Bevor diese Ware als ung?ltig markiert werden kann, muß das Inventar Null sein!', |
559 |
'Inventory saved!' => 'Inventar gespeichert.', |
|
560 |
'Inventory transferred!' => 'Inventar umgelagert.', |
|
561 | 553 |
'Invetory' => 'Inventar', |
562 | 554 |
'Invno.' => 'Rg. Nr.', |
563 | 555 |
'Invnumber' => 'Rechnungsnummer', |
... | ... | |
701 | 693 |
'Not Discountable' => 'Nicht rabattierf?hig', |
702 | 694 |
'Not delivered' => 'Nicht geliefert', |
703 | 695 |
'Notes' => 'Bemerkungen', |
704 |
'Nothing entered!' => 'Es wurde nichts eingegeben.', |
|
705 | 696 |
'Nothing selected!' => 'Es wurde nichts ausgew?hlt!', |
706 | 697 |
'Nothing to delete!' => 'Es konnte nichts gel?scht werden!', |
707 |
'Nothing to transfer!' => 'Es gibt nichts zum Umlagern!', |
|
708 | 698 |
'Nov' => 'Nov', |
709 | 699 |
'November' => 'November', |
710 | 700 |
'Now the user must select a single Buchungsgruppe for each part instead of three distinct accounts.' => 'Der Benutzer muss nun für jeden Artikel nur noch die Buchungsgruppe anstelle der drei einzelnen Konten auswählen.', |
... | ... | |
856 | 846 |
'RFQs' => 'Anfragen', |
857 | 847 |
'ROP' => 'Mindestlagerbestand', |
858 | 848 |
'Rate' => 'Rate', |
859 |
'Recd' => 'erhalten', |
|
860 | 849 |
'Receipt' => 'Zahlungseingang', |
861 | 850 |
'Receipt posted!' => 'Beleg gebucht!', |
862 | 851 |
'Receipts' => 'Zahlungseing?nge', |
863 | 852 |
'Receivables' => 'Forderungen', |
864 |
'Receive Merchandise' => 'Waren einlagern', |
|
865 | 853 |
'Reconciliation' => 'Kontenabgleich', |
866 | 854 |
'Record in' => 'Buchen auf', |
867 | 855 |
'Reference' => 'Referenz', |
... | ... | |
930 | 918 |
'Setup Menu' => 'Men?setup', |
931 | 919 |
'Setup Templates' => 'Vorlagen ausw?hlen', |
932 | 920 |
'Ship' => 'Lagerausgang', |
933 |
'Ship Merchandise' => 'Waren versenden', |
|
934 | 921 |
'Ship rcvd' => 'Lagereingang', |
935 | 922 |
'Ship to' => 'Lieferadresse', |
936 | 923 |
'Ship via' => 'Transportmittel', |
937 | 924 |
'Shipping Address' => 'Lieferadresse', |
938 |
'Shipping Date' => 'Lieferdatum', |
|
939 |
'Shipping Date missing!' => 'Lieferdatum fehlt.', |
|
940 | 925 |
'Shipping Point' => 'Versandort', |
941 | 926 |
'Shipto' => 'Lieferanschriften', |
942 | 927 |
'Shopartikel' => 'Shopartikel', |
... | ... | |
964 | 949 |
'Step 3 of 3: Default units' => 'Schritt 3 von 3: Standardeinheiten', |
965 | 950 |
'Steuersatz' => 'Steuersatz', |
966 | 951 |
'Stock' => 'einlagern', |
967 |
'Stock Assembly' => 'Erzeugnis einlagern', |
|
968 | 952 |
'Storno' => 'Storno', |
969 | 953 |
'Storno (one letter abbreviation)' => 'S', |
970 | 954 |
'Storno Invoice' => 'Stornorechnung', |
... | ... | |
1061 | 1045 |
'Transaction posted!' => 'Buchung verbucht!', |
1062 | 1046 |
'Transaction reversal enforced for all dates' => 'Fehleintragungen m?ssen f?r jeden Zeitraum mit einer Kontraeintragung ausgebessert werden', |
1063 | 1047 |
'Transaction reversal enforced up to' => 'Fehleintragungen k?nnen bis zu dem angegebenen Zeitraum nur mit einer Kontraeintragung ausgebessert werden!', |
1064 |
'Transfer' => 'Umlagerung', |
|
1065 |
'Transfer Inventory' => 'Ware umlagern', |
|
1066 |
'Transfer to' => 'umlagern nach', |
|
1067 | 1048 |
'Translation (%s)' => 'Übersetzung (%s)', |
1068 | 1049 |
'Trial Balance' => 'Saldenbilanz', |
1069 | 1050 |
'Type' => 'Typ', |
locale/de/ic | ||
---|---|---|
18 | 18 |
'Are you sure you want to update the prices' => 'Sind Sie sicher, dass Sie die Preise |
19 | 19 |
aktualisieren wollen?', |
20 | 20 |
'Assemblies' => 'Erzeugnisse', |
21 |
'Assemblies restocked!' => 'Erzeugnisse sind im Lager!', |
|
22 | 21 |
'Assembly Number missing!' => 'Erzeugnisnummer fehlt!', |
23 | 22 |
'Attachment' => 'als Anhang', |
24 | 23 |
'Attachment name' => 'Name des Anhangs', |
... | ... | |
32 | 31 |
'Bought' => 'Gekauft', |
33 | 32 |
'Buchungsgruppe' => 'Buchungsgruppe', |
34 | 33 |
'Cannot delete item!' => 'Artikel kann nicht gel?scht werden!', |
35 |
'Cannot stock assemblies!' => 'Erzeugnisse k?nnen nicht ins Lager!', |
|
36 | 34 |
'Cc' => 'Cc', |
37 | 35 |
'City' => 'Stadt', |
38 | 36 |
'Company Name' => 'Firmenname', |
... | ... | |
204 | 202 |
'Show details' => 'Details anzeigen', |
205 | 203 |
'Sold' => 'Verkauft', |
206 | 204 |
'Stock' => 'einlagern', |
207 |
'Stock Assembly' => 'Erzeugnis einlagern', |
|
208 | 205 |
'Storno Invoice' => 'Stornorechnung', |
209 | 206 |
'Storno Packing List' => 'Stornolieferschein', |
210 | 207 |
'Street' => 'Stra?e', |
... | ... | |
274 | 271 |
'item_selected' => 'item_selected', |
275 | 272 |
'link_part' => 'link_part', |
276 | 273 |
'list' => 'list', |
277 |
'list_assemblies' => 'list_assemblies', |
|
278 | 274 |
'makemodel_row' => 'makemodel_row', |
279 | 275 |
'new_item' => 'new_item', |
280 | 276 |
'new_license' => 'new_license', |
... | ... | |
292 | 288 |
'reformat_numbers' => 'reformat_numbers', |
293 | 289 |
'relink_accounts' => 'relink_accounts', |
294 | 290 |
'request_for_quotation' => 'request_for_quotation', |
295 |
'restock_assemblies' => 'restock_assemblies', |
|
296 | 291 |
'restore_form' => 'restore_form', |
297 | 292 |
'save' => 'save', |
298 | 293 |
'save_as_new' => 'save_as_new', |
... | ... | |
309 | 304 |
'set_longdescription' => 'set_longdescription', |
310 | 305 |
'set_pricegroup' => 'set_pricegroup', |
311 | 306 |
'ship_to' => 'ship_to', |
312 |
'stock_assembly' => 'stock_assembly', |
|
313 | 307 |
'top100' => 'top100', |
314 | 308 |
'update' => 'update', |
315 | 309 |
'update_prices' => 'update_prices', |
locale/de/oe | ||
---|---|---|
44 | 44 |
'Contact Person' => 'Ansprechpartner', |
45 | 45 |
'Continue' => 'Weiter', |
46 | 46 |
'Copies' => 'Kopien', |
47 |
'Could not save!' => 'Konnte nicht speichern!', |
|
48 |
'Could not transfer Inventory!' => 'Konnte Waren nicht umlagern!', |
|
49 | 47 |
'Country' => 'Land', |
50 | 48 |
'Credit Limit' => 'Kreditlimit', |
51 | 49 |
'Credit Limit exceeded!!!' => 'Kreditlimit ?berschritten!', |
Auch abrufbar als: Unified diff
Große Codeteile entfernt, die zur Vorbereitung von Mehrlagerfähigkeit in SQL-Ledger gedient haben und nie benutzt wurden.