mirror of
https://github.com/OpenXE-org/OpenXE.git
synced 2025-04-22 20:13:11 +02:00
vorkommissionieren print labels etiketten again
This commit is contained in:
parent
3e3bcd4364
commit
6b5adf8379
@ -5834,7 +5834,11 @@ Die Gesamtsumme stimmt nicht mehr mit ursprünglich festgelegten Betrag '.
|
||||
ausgelagert: true,
|
||||
lagerplatzliste: $auslagernresult,
|
||||
mengedruck: $projektarr['autodruckkommissionierscheinstufe1']?$projektarr['autodruckkommissionierscheinstufe1menge']:0,
|
||||
druckercode: $druckercode,
|
||||
druckercode: $druckercode
|
||||
);
|
||||
|
||||
$this->Kommissionieren_etiketten(
|
||||
lagerplatzliste: $auslagernresult,
|
||||
mengeetiketten: $etikettautodruck?1:0,
|
||||
etikett: $etikettautodruck?$etikettart:0,
|
||||
etikettendrucker: $etikettendrucker);
|
||||
@ -6538,9 +6542,45 @@ Die Gesamtsumme stimmt nicht mehr mit ursprünglich festgelegten Betrag '.
|
||||
$vorkommissionieren_ohne_etiketten = true;
|
||||
// break ommitted
|
||||
case 'vorkommissionieren':
|
||||
|
||||
if (!empty($auftraegemarkiert)) {
|
||||
foreach ($auftraegemarkiert as $k => $v) {
|
||||
|
||||
$projekt = $this->app->DB->Select("SELECT projekt FROM auftrag WHERE id='$v' LIMIT 1");
|
||||
|
||||
$auslagernresult =
|
||||
$this->app->erp->LieferscheinAuslagern(
|
||||
lieferschein: $v,
|
||||
anzeige_lagerplaetze_in_lieferschein: true,
|
||||
standardlager: (int)$this->app->DB->Select(sprintf('SELECT standardlager FROM auftrag WHERE id = %d LIMIT 1', $v)),
|
||||
belegtyp: 'auftrag',
|
||||
chargenmhdnachprojekt: true,
|
||||
forceseriennummerngeliefertsetzen: false,
|
||||
nurrestmenge: false,
|
||||
simulieren: true
|
||||
);
|
||||
|
||||
$settings = $this->app->DB->SelectRow("
|
||||
SELECT
|
||||
projekt.autodruckkommissionierscheinstufe1,
|
||||
projekt.autodruckkommissionierscheinstufe1menge,
|
||||
adresse.etikett,
|
||||
adresse.etikettautodruck,
|
||||
projekt.id as projekt,
|
||||
auftrag.adresse
|
||||
FROM projekt
|
||||
INNER JOIN auftrag ON projekt.id = auftrag.projekt
|
||||
INNER JOIN adresse ON adresse.id = auftrag.adresse
|
||||
WHERE auftrag.id = '".$v."'"
|
||||
);
|
||||
|
||||
$sql = "SELECT etikett, etikettautodruck FROM adresse WHERE id =".$settings['adresse'];
|
||||
$adressesettings = $this->app->DB->SelectRow($sql);
|
||||
|
||||
if ($adressesettings['etikettautodruck']) {
|
||||
$etikettautodruck = true;
|
||||
$etikettart = $adressesettings['etikett'];
|
||||
}
|
||||
|
||||
$sql = "
|
||||
SELECT
|
||||
k.id,
|
||||
@ -6565,62 +6605,28 @@ Die Gesamtsumme stimmt nicht mehr mit ursprünglich festgelegten Betrag '.
|
||||
LIMIT 1
|
||||
";
|
||||
$check = $this->app->DB->SelectRow($sql);
|
||||
|
||||
if (!empty($check)) {
|
||||
$this->app->Tpl->addMessage('Error',"Bereits Kommissioniert: ".$check['belegnr']);
|
||||
break;
|
||||
$this->app->Tpl->addMessage('info',"Bereits Kommissioniert: ".$check['belegnr']);
|
||||
} else {
|
||||
$kid = $this->app->erp->GetNextKommissionierung();
|
||||
$druckercode = $this->app->erp->Projektdaten($projekt,'druckerlogistikstufe1');
|
||||
$this->Kommissionieren(
|
||||
kommissionierung : $kid,
|
||||
auftrag: $v,
|
||||
lieferschein: 0,
|
||||
ausgelagert: false,
|
||||
lagerplatzliste: $auslagernresult,
|
||||
mengedruck: $settings['autodruckkommissionierscheinstufe1']?$settings['autodruckkommissionierscheinstufe1menge']:0,
|
||||
druckercode: $druckercode);
|
||||
}
|
||||
|
||||
$kid = $this->app->erp->GetNextKommissionierung();
|
||||
|
||||
$auslagernresult =
|
||||
$this->app->erp->LieferscheinAuslagern(
|
||||
lieferschein: $v,
|
||||
anzeige_lagerplaetze_in_lieferschein: true,
|
||||
standardlager: (int)$this->app->DB->Select(sprintf('SELECT standardlager FROM auftrag WHERE id = %d LIMIT 1', $v)),
|
||||
belegtyp: 'auftrag',
|
||||
chargenmhdnachprojekt: true,
|
||||
forceseriennummerngeliefertsetzen: false,
|
||||
nurrestmenge: false,
|
||||
simulieren: true
|
||||
);
|
||||
|
||||
$projekt = $this->app->DB->Select("SELECT projekt FROM auftrag WHERE id='$v' LIMIT 1");
|
||||
$druckercode = $this->app->erp->Projektdaten($projekt,'druckerlogistikstufe1');
|
||||
|
||||
$settings = $this->app->DB->SelectRow("
|
||||
SELECT
|
||||
projekt.autodruckkommissionierscheinstufe1,
|
||||
projekt.autodruckkommissionierscheinstufe1menge,
|
||||
adresse.etikett,
|
||||
adresse.etikettautodruck,
|
||||
projekt.id as projekt,
|
||||
auftrag.adresse
|
||||
FROM projekt
|
||||
INNER JOIN auftrag ON projekt.id = auftrag.projekt
|
||||
INNER JOIN adresse ON adresse.id = auftrag.adresse
|
||||
WHERE auftrag.id = '".$v."'"
|
||||
);
|
||||
|
||||
$etikettautodruck = $this->app->erp->Projektdaten($projekt,'etiketten_kommissionierung');
|
||||
$etikettendrucker = $this->app->erp->Projektdaten($projekt,'etiketten_kommissionierung_drucker');
|
||||
$etikettart = $this->app->erp->Projektdaten($projekt,'etiketten_kommissionierung_art');
|
||||
|
||||
$sql = "SELECT etikett, etikettautodruck FROM adresse WHERE id =".$settings['adresse'];
|
||||
$adressesettings = $this->app->DB->SelectRow($sql);
|
||||
|
||||
if ($adressesettings['etikettautodruck']) {
|
||||
$etikettautodruck = true;
|
||||
$etikettart = $adressesettings['etikett'];
|
||||
}
|
||||
|
||||
$this->Kommissionieren(
|
||||
kommissionierung : $kid,
|
||||
auftrag: $v,
|
||||
lieferschein: 0,
|
||||
ausgelagert: false,
|
||||
$this->Kommissionieren_etiketten(
|
||||
lagerplatzliste: $auslagernresult,
|
||||
mengedruck: $settings['autodruckkommissionierscheinstufe1']?$settings['autodruckkommissionierscheinstufe1menge']:0,
|
||||
druckercode: $druckercode,
|
||||
mengeetiketten: $etikettautodruck?1:0,
|
||||
etikett: $vorkommissionieren_ohne_etiketten?0:($etikettautodruck?$etikettart:0),
|
||||
etikettendrucker: $etikettendrucker);
|
||||
@ -7353,7 +7359,7 @@ Die Gesamtsumme stimmt nicht mehr mit ursprünglich festgelegten Betrag '.
|
||||
$this->app->Tpl->Parse('PAGE',"tabview.tpl");
|
||||
}
|
||||
|
||||
function Kommissionieren(int $kommissionierung, int $auftrag, int $lieferschein, bool $ausgelagert, array $lagerplatzliste, int $mengedruck, $druckercode, int $mengeetiketten, $etikett, $etikettendrucker) {
|
||||
function Kommissionieren(int $kommissionierung, int $auftrag, int $lieferschein, bool $ausgelagert, array $lagerplatzliste, int $mengedruck, $druckercode) {
|
||||
|
||||
$sql = sprintf(
|
||||
"UPDATE kommissionierung SET lieferschein = %d, auftrag = %d, adresse = IF (%d != 0,(SELECT adresse FROM lieferschein WHERE id = %d LIMIT 1),(SELECT adresse FROM auftrag WHERE id = %d LIMIT 1)), ausgelagert = %d WHERE id = %d LIMIT 1",
|
||||
@ -7395,7 +7401,9 @@ Die Gesamtsumme stimmt nicht mehr mit ursprünglich festgelegten Betrag '.
|
||||
unlink($tmpfile);
|
||||
$this->app->erp->BriefpapierHintergrundDisable($druckercode); // Restore default background from printersettings
|
||||
}
|
||||
}
|
||||
|
||||
function Kommissionieren_etiketten(array $lagerplatzliste, int $mengeetiketten, $etikett, $etikettendrucker) {
|
||||
// Etiketten
|
||||
if ($mengeetiketten > 0) {
|
||||
foreach ($lagerplatzliste['storageMovements'] as $storageMovement) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user