Chargen-Speicherfehler durch PDO-Platzhalter beheben
This commit is contained in:
1 parent
c076ec9889
commit
aeab22b48a
1 file changed
+8
-5
@@ -365,9 +365,10 @@ function update_stock_lot_traceability(
|
|||||||
throw new InvalidArgumentException('Korrekturen und Abgaenge koennen nur auf der aktiven Charge gebucht werden');
|
throw new InvalidArgumentException('Korrekturen und Abgaenge koennen nur auf der aktiven Charge gebucht werden');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$lotNumberAssignment = $clearLotNumber ? 'NULL' : 'COALESCE(:lot_number, lot_number)';
|
||||||
$updateStmt = $pdo->prepare(
|
$updateStmt = $pdo->prepare(
|
||||||
"UPDATE stock_lot
|
"UPDATE stock_lot
|
||||||
SET lot_number = CASE WHEN :clear_lot_number THEN NULL ELSE COALESCE(:lot_number, lot_number) END,
|
SET lot_number = {$lotNumberAssignment},
|
||||||
manufacturer_party_id = :manufacturer_party_id,
|
manufacturer_party_id = :manufacturer_party_id,
|
||||||
manufacturer_lot_number = :manufacturer_lot_number,
|
manufacturer_lot_number = :manufacturer_lot_number,
|
||||||
mfg_date = :mfg_date,
|
mfg_date = :mfg_date,
|
||||||
@@ -376,16 +377,18 @@ function update_stock_lot_traceability(
|
|||||||
updated_at = NOW()
|
updated_at = NOW()
|
||||||
WHERE id = :id"
|
WHERE id = :id"
|
||||||
);
|
);
|
||||||
$updateStmt->execute([
|
$updateParams = [
|
||||||
':lot_number' => $lotNumber,
|
|
||||||
':clear_lot_number' => $clearLotNumber,
|
|
||||||
':manufacturer_party_id' => $manufacturerPartyId,
|
':manufacturer_party_id' => $manufacturerPartyId,
|
||||||
':manufacturer_lot_number' => $manufacturerLotNumber,
|
':manufacturer_lot_number' => $manufacturerLotNumber,
|
||||||
':mfg_date' => $dates['mfg_date'],
|
':mfg_date' => $dates['mfg_date'],
|
||||||
':expiry_date' => $dates['expiry_date'],
|
':expiry_date' => $dates['expiry_date'],
|
||||||
':purchase_date' => $dates['purchase_date'],
|
':purchase_date' => $dates['purchase_date'],
|
||||||
':id' => $lotId,
|
':id' => $lotId,
|
||||||
]);
|
];
|
||||||
|
if (!$clearLotNumber) {
|
||||||
|
$updateParams[':lot_number'] = $lotNumber;
|
||||||
|
}
|
||||||
|
$updateStmt->execute($updateParams);
|
||||||
|
|
||||||
$after = $before;
|
$after = $before;
|
||||||
if ($clearLotNumber) {
|
if ($clearLotNumber) {
|
||||||
|
|||||||
Reference in new issue
Block a user