Skip to main content
Skip table of contents

Kommissionierung mit Kommliste (SmartCenter, Konfiguration)

Hier wird die Konfiguration für den Bereich "Kommissionierung mit Kommliste" (Liefervorschlag) behandelt.


Inhalt


CONFIG.XML

Position in der CONFIG.XML


Einstellungen

KnotenMögliche WerteBeschreibung
StockNumber1, 2, 100, ...Abbuchungs-Lagernummer.
Ist hier kein Lager angegeben, wird das Lager aus dem Parent-Knoten verwendet
CanChangeStockNumber

True, False

True (Standard) = Lagernummer kann in dem Fenster durch den Benutzer verändert werden.

False = Die Lagernummer wird durch den Wert in "StockNumber" vorgegeben
und kann nicht verändert werden.
Ausnahme: Ist kein Lager vorgegeben und es wird keines vererbt, kann das Lager dennoch ausgewählt werden.


INFO: Ist hier kein Wert angegeben, wird dieser aus dem Parent-Knoten verwendet

StockLocationNameInputMaskann-nn-nnEingabemaske für Lagerortnamen. Wenn angegeben, dürfen nur Lagerorte in diesem bestimmten
Format eingegeben oder gescannt werden.
Füllzeichen werden automatisch "aufgefüllt".
Platzhalter:
a = alphanumerisches Zeichen (Buchstabe oder Nummer)
n = numerisches Zeichen (Nummer 0-9)
Füllzeichen: ' ', '-', '_', ':', '.', ',', '#', '+'
Beispiel: ann-nn-nn
Zeichen 1 muss alphanumerisch sein
Zeichen 2 muss numerisch sein
Zeichen 3 muss numerisch sein
Zeichen 4 muss ein "-" sein
Zeichen 5 muss numerisch sein
Zeichen 6 muss numerisch sein
Zeichen 7 muss ein "-" sein
Zeichen 8 muss numerisch sein
Zeichen 9 muss numerisch sein
PrinterName\\COMPUTERNAME\DruckernameStandard-Drucker für alle Dokumente in der Kommissionierung.
Wenn nicht angegeben, wird der "PrinterName" aus dem StockManagement-Hauptknoten verwendet.
PrinterNameDeliveryNotes\\COMPUTERNAME\DruckernameDruckername für Lieferscheine
Wenn nicht angegeben, wird der "PrinterName" verwendet.
Wenn "PrinterName" leer und der "PrinterName" aus dem StockManagement-Hauptknoten leer ist,
dann wird der Drucker lt. TaskCenter-Druckerzuordnung ausgewählt
PrinterNameInvoices\\COMPUTERNAME\DruckernameDruckername für Rechnungen
Wenn nicht angegeben, wird der "PrinterName" verwendet.
Wenn "PrinterName" leer und der "PrinterName" aus dem StockManagement-Hauptknoten leer ist,
dann wird der Drucker lt. TaskCenter-Druckerzuordnung ausgewählt
PrinterNameItemLabels\\COMPUTERNAME\Druckername

Etiketten-Drucker.

Wenn nicht angegeben, wird der Etiketten-Drucker aus dem Parent-Knoten verwendet.

PrintDeliveryNoteTrue, False, [leer]

[leer] = Der Ausdruck wird automatisch angestossen, wenn ein LS/KS erstellt wurde, beim Auftrag oder Kunden ein Sammelrechnungskennzeichen vorliegt und die Zahlungsbedingung nicht Nachnahme ist

True = Kommissionsschein/Lieferschein wird nach Abschluß gedruckt.

False = Es wird nur ein Lieferschein erstellt, es erfolgt kein Ausdruck.

PrintInvoiceTrue, False, [leer]

[leer] = Der Rechnungsdruck wird automatisch durchgeführt, wenn eine Rechnung erstellt wurde und die Zahlungsbedingung NACHNAHME ist

True = Die gegebenenfalls erstellte Rechnung wird zusätzlich ausgedruckt.

            Handelt es sich um einen "eInvoice"-Kunden, wird auch die eInvoice-Datei dazu erstellt  (ab TaskCenter Version 4.91.6.0).

False = Es erfolgt kein Rechnungsdruck und keine Erstelltung der eInvoice-Datei.

PrintCopiesDeliveryNotes1,2,3,8,...Anzahl Exemplare für Lieferscheindruck - Wenn angegeben, wird diese Anzahl verwendet, ansonsten wird die Anzahl aus Kunden- oder Druckprofil-Einstellung geladen
PrintCopiesInvoices1,2,3,8,...Anzahl Exemplare für Rechnungsdruck - Wenn angegeben, wird diese Anzahl verwendet, ansonsten wird die Anzahl aus Kunden- oder Druckprofil-Einstellung geladen
PrintLayoutConsignmentNotesA,B,C,...Druck-Layout für Drucken Kommissionsscheine - Wenn nicht angegeben, wird die Auswahl über die Drucker-Zuordnung des angemeldeten Benutzers gesteuert
PrintLayoutDeliveryNotesA,B,C,...Druck-Layout für Drucken Lieferscheine - Wenn nicht angegeben, wird "PrintLayoutDeliveryNotes" aus dem StockManagement-Hauptknoten verwendet - wenn dort ebenso kein Layout hinterlegt ist, wird die Auswahl über die Drucker-Zuordnung des angemeldeten Benutzers gesteuert
PrintLayoutInvoicesA,B,C,...Druck-Layout für Drucken Rechnungen - Wenn nicht angegeben, wird "PrintLayoutInvoices" aus dem StockManagement-Hauptknoten verwendet - wenn dort ebenso kein Layout hinterlegt ist, wird die Auswahl über die Drucker-Zuordnung des angemeldeten Benutzers gesteuert
PrintLayoutItemLabels

A,B,C,...

A0002.btw

Druck-Layout für die Artikel-Etiketten.


AllowGenerateForSaleSerialsTrue, FalseTrue = Bei Artikel mit Seriennummernpflicht-Verkauf kann bei der Seriennummern-Auswahl eine
Seriennummer über einen Button generiert werden. Dazu muss es eine Seriennummer-Vorlage
mit der Konstante1 <ITEMNUMBER> angelegt werden.
Der Wert <ITEMNUMBER> wird dann durch die Artikelnummer ersetzt
AllowQuantityInputTrue, FalseTrue (Standard) = Mengeneingabe-Fenster wird angezeigt und die Menge kann verändert werden
False = Mengeneingabe-Fenster wird nicht angezeigt, sofern eine Vorschlagsmenge definiert wurde, oder die Menge bereits bestimmt werden konnte
ApplyReducedQuantityWithoutConfirmationTrue, FalseTrue = Wenn die gescannte Menge auf die offene Menge reduziert wird, dann wird KEIN Bestätigungs-Mengeneingabefenster angezeigt
False (Standard) = Wenn die gescannte Menge auf die offene Menge reduziert wird, dann muss die Menge bestätigt werden
AutoCloseTrue, FalseTrue = Das Fenster wird nach einer Kommissionierung geschlossen und kehrt wieder ins Hauptmenü zurück
False (Standard) = Das Fenster wird nach der Erstellung der Kommissions-/Lieferscheine geleert und steht wieder
in der Auswahl des nächsten Liefervorschlags
AutoConfirmStockLocationTrue, False

True = Der vorgeschlagene Lagerort wird automatisch übernommen ( keine Bestätigung, keine Änderung möglich )

False (Standard) = Der vorgeschlagene Lagerort muss manuell angegeben werden

ConsignmentInfoStatement

select distinct grafik2 from angebotspositionen where aposinx in (select aposinx from liefauf where taninx={DeliveryProposalNumber} and artnr='{ItemNumber}')


select distinct langtext from langtexte where typ=350 and posinx in (select aposinx from liefauf where taninx={DeliveryProposalNumber} and artnr='{ItemNumber}')

SQL-Statement, welches ausgeführt wird:
* nach einem Barcode-Scan (wenn der Artikel vorhanden und offen ist)
* vor Lager/ort-Eingabe
* vor Mengen-Eingabe
und eine Liste mit 1 Spalte und n Zeilen zurückliefert, die dann in einem PopUp-Fenster angezeigt werden.

Mögliche Platzhalter (case-sensitiv) sind:
{ItemNumber} ... Die gescannte Artikelnummer
{DeliveryProposalNumber} ... Aktuelle Liefervorschlagsnummer
{StockTransferNoteNumber} ... Aktuelle Umbuchungsnummer

Bsp GRAFIK2 aus Angebotsposition anzeigen:
select distinct grafik2 from angebotspositionen where aposinx in (select aposinx from liefauf where taninx={DeliveryProposalNumber} and artnr='{ItemNumber}')
Bsp HINWEISTEXT aus Angebotspositionen anzeigen:
select distinct langtext from langtexte where typ=350 and posinx in (select aposinx from liefauf where taninx={DeliveryProposalNumber} and artnr='{ItemNumber}')
CreateInvoiceTrue, False, [leer]

[leer] (Standard) = Die Rechnungserstellung wird automatisch durchgeführt, aufgrund von LS (nicht KS), Keine Sammelrechnung, Zahlungsbedingung (NACHNAHME)

True = Bei Abschluss der Kommissionierung wird, nachdem die Lieferscheine erstellt wurden, auch eine Rechnung erstellt
False = Bei Abschluss der Kommissionierung werden nur Lieferscheine erstellt

CreateSingleNotesTrue, FalseTrue = Wenn die Erstellung von Lieferschein(e)/Kommissionsschein(e) je Auftrag erfolgen soll
False (Standard) = Lieferscheine werden je Kunde und Trennkriterien zusammengefasst
ForceConsignmentNoteTrue, FalseTrue = Bei Abschluss der Kommissionierung werden Kommissionsscheine statt Lieferscheine erstellt
False (Standard) = Bei Abschluss der Kommissionierung werden Lieferscheine erstellt
ForceScanDirectCostItemsTrue, FalseTrue = D-Artikel müssen ebenfalls gescannt werden
False (Standard) = D-Artikel werden zwar angezeigt, diese werden aber automatisch mit IST=SOLL gebucht
MandatoryColliInputTrue, FalseTrue = COLLI-Nummer wird abgefragt und ist verpflichtend einzugeben
False (Standard) = Keine Abfrage der COLLI-Nummer
ScanOnlyTrue, FalseTrue = Das Eingabefeld wird periodisch geleert, sodass eine Tastatur-Eingabe nicht möglich ist, sondern
der Wert NUR gescannt werden kann
ScanOnlyTime10, 20, 30, 100, 300, ...Wert in "ms" für den Timer, der das Eingabefeld periodisch
nach dieser Zeit leert ( nur wenn ScanOnly = True )
SelectConsignmentLocationTrue, FalseTrue = Vor Beginn der Erfassung muss der Kommissionslagerplatz ausgewählt/gescannt werden
False (Standard) = Der Kommissionierlagerplatz wird je Lager automatisch ermittelt
SelectConsignmentLocationOnFinishTrue, FalseTrue = Nach Abschluss der Kommissionierung wird das Fenster zur Auswahl des Kommissionierlagerplatzes angezeigt und dieser kann bei Bedarf noch geändert werden
False (Default) = Das Fenster wird nicht angezeigt
SelectNextRowAfterScan[leer], FollowingRow, FirstUnscannedRow

[leer] (Standard) = Die selektierte Zeile wird nicht verändert

FollowingRow = Nach einem erfolgreichen Scan, wird die nächste Zeile mit offener Menge markiert
FirstUnscannedRow = Nach einem erfolgreichen Scan, wird die erste Zeile mit offener Menge selektiert

ShowCreatedNotesSummaryTrue, FalseTrue = wenn nach der Erstellung bzw. nach dem Drucken der Scheine (KS/LS/RE) eine Zusammenfassung angezeigt werden soll, welche Scheine erstellt wurden.
False (Standard) = Es wird keine Nachricht angezeigt
SkipCreateInvoiceForBatchCustomersTrue, False

True = Wenn eine Rechnung erstellt werden soll ( CreateInvoice=True ), dann wird geprüft, ob
der Kunde ein Sammelrechnungskunde ist - ist er das, wird keine Rechnung erstellt

False (Standard) = Es erfolgt keine Prüfung auf das Sammelrechnungs-Kennzeichen

StockLocationSelectionAllow, Accept, NotAllowedAllow = Beliebige Lagerortauswahl möglich
Accept = Beliebige Lagerortauswahl möglich - ein anderer Lagerort als der Vorgeschlagene muss bestätigt werden (Logbuch)
NotAllowed (Standard) = Der vorgeschlagene Lagerort MUSS ausgewählt werden
SuggestedQuantitySelectorScanned, Open, FixedScanned (Standard) = Es wird die Menge aus dem Barcode vorgeschlagen. Wenn keine Menge im Barcode enthalten ist, wird die Fixe Menge in "SuggestedQuantity" vorgeschlagen - wenn dort auch nichts hinterlegt ist, wird die offene Menge vorgeschlagen.
Open = Es wird immer die noch offene Menge vorgeschlagen
Fixed = Es wird immer die fixe Menge in "SuggestedQuantity" vorgeschlagen
SuggestedQuantity1, 2, 3, ..., 15.5, ..., 100, ...Vorgeschlagener Mengeneintrag in Mengenfeld.
* Wenn die Mengeneingabe erlaubt ist (AllowQuantityInput=True), kann die Menge verändert werden.
* Wenn ein Barcode mit integrierter Menge gescannt wurde, wird die Menge aus dem Barcode angewendet
SuggestedQuantityUnitScanned, Delivery, StockGibt an, welche Mengeneinheit bei der Mengeneingabe primär/initial angezeigt wird.
Scanned (Standard) = Es wird die Mengeneinheit vorgeschlagen, die im Barcode enthalten ist. Wenn keine MEH im Barcode, dann wird die Lagermengeneinheit vorgeschlagen.
Delivery = Es wird die Liefermengeneinheit vorgeschlagen.
Stock = Es wird die Lagermengeneinheit vorgeschlagen
WithPackingEmptiesTrue, FalseTrue = Aktiviere Packlisten-Funktionalität. Nach der Kommissionierung bzw. nach der Erstellung von Lieferscheinen, wird eine Versendung erstellt. Die Anzahl der Packstücke und deren Gewichte wird je nach "PackingEmptiesMode" ermittelt.

PackingEmptiesMode

Ab SmartCenter Version 2.2021.0607.0

BeforeScan, AfterScan

BeforeScan = Es muss, bevor die Kommissionierung beginnt, ein Packstück ausgewählt werden. Mit dieser Funktion, wird jeder gescannte Artikel einem Packstück zugeordnet. Ist ein Packstück "voll", kann mit einer Funktion das nächste Packstück ausgewählt werden.

AfterScan (ab TaskCenter 4.88.0.0) = Die Anzahl der verwendeten Packstücke, sowie deren Gewichte, erfolgt NACH der Kommissionierung. In diesem Fall ist keine eindeutige Zuordnung jeden Artikels zu einem Packstück möglich.

AutoPrintDeliveryProposal

Ab SmartCenter Version 2.2022.0531.0

Ab TaskCenter Version 4.102.0.0

True, FalseTrue = Automatischer Ausdruck der Kommissionierliste, wenn der Liefervorschlag über die "Nächste Kommissionierung" erstellt wurde
False (Standard) = Es erfolgt kein Ausdruck

PrinterNameDeliveryProposal

Ab SmartCenter Version 2.2022.0531.0

Ab TaskCenter Version 4.102.0.0

\\COMPUTERNAME\DruckernameDruckername für Kommissionierlisten, wenn der Ausdruck der Kommissionierliste automatisch erfolgen soll.
Wenn nicht angegeben, wird der "PrinterName" verwendet.

PrintLayoutDeliveryProposal

Ab SmartCenter Version 2.2022.0531.0

Ab TaskCenter Version 4.102.0.0

A,B,C,...Drucklayout der Kommissionierliste, wenn der Ausdruck automatisch erfolgen soll


Beispiel

XML
<?xml version="1.0" encoding="utf-8" ?>
<Settings>

  <StockManagement>

    <PrinterName>\\server\HPLaser_Verrechnung</PrinterName>
    <CanChangeStockNumber>True</CanChangeStockNumber>

    <DeliveryProposalConsignment>
      <StockNumber>2</StockNumber>
      <PrinterName>\\server\EpsonStylus</PrinterName>
      <PrinterNameDeliveryNotes></PrinterNameDeliveryNotes>
      <PrintLayoutDeliveryNotes>A</PrintLayoutDeliveryNotes>
      <PrintLayoutConsignmentNotes>A</PrintLayoutConsignmentNotes>
      <PrintCopiesDeliveryNotes></PrintCopiesDeliveryNotes>
      <PrinterNameInvoices></PrinterNameInvoices>
      <PrintLayoutInvoices>A</PrintLayoutInvoices>
      <PrintCopiesInvoices></PrintCopiesInvoices>
      <ScanOnly>False</ScanOnly>
      <ScanOnlyTime>300</ScanOnlyTime>
      <CreateSingleNotes>True</CreateSingleNotes>
      <PrintDeliveryNote>True</PrintDeliveryNote>
      <ForceConsignmentNote>False</ForceConsignmentNote>
      <SelectConsignmentLocation>False</SelectConsignmentLocation>
      <SelectConsignmentLocationOnFinish>False</SelectConsignmentLocationOnFinish>
      <CreateInvoice>False</CreateInvoice>
      <SkipCreateInvoiceForBatchCustomers></SkipCreateInvoiceForBatchCustomers>
      <PrintInvoice>False</PrintInvoice>
      <SuggestedQuantitySelector>Scanned</SuggestedQuantitySelector>
      <SuggestedQuantity>1</SuggestedQuantity>
      <AllowQuantityInput>True</AllowQuantityInput>
      <SuggestedQuantityUnit>Scanned</SuggestedQuantityUnit>
      <ForceEnterQuantity>False</ForceEnterQuantity>
      <MandatoryColliInput>True</MandatoryColliInput>
      <AllowGenerateForSaleSerials>True</AllowGenerateForSaleSerials>
      <StockLocationSelection>Accept</StockLocationSelection>
      <ShowCreatedNotesSummary>False</ShowCreatedNotesSummary>
      <AutoClose>False</AutoClose>
      <ConsignmentInfoStatement>select distinct grafik2 from angebotspositionen where aposinx in (select aposinx from liefauf where taninx={DeliveryProposalNumber} and artnr='{ItemNumber}')</ConsignmentInfoStatement>
      <ApplyReducedQuantityWithoutConfirmation>False</ApplyReducedQuantityWithoutConfirmation>
      <SelectNextRowAfterScan>FollowingRow</SelectNextRowAfterScan>
      <ForceScanDirectCostItems>False</ForceScanDirectCostItems>
      <StockLocationNameInputMask>ann-nn-nn</StockLocationNameInputMask>
      <WithPackingEmpties>False</WithPackingEmpties>
      <AutoConfirmStockLocation>False</AutoConfirmStockLocation>
    </DeliveryProposalConsignment>

  </StockManagement>

</Settings>

]] ></ac:plain-text-body></ac:structured-macro><p><br /></p><h1>LAYOUT.XML</h1><p>-- ToDo --</p><h1>Datenbankstruktur-Richtlinien</h1><p>Aktuell sind daf&uuml;r die &quot;Lagerorte zwingend&quot; notwendig, was in manchen F&auml;llen verwendbar ist, in anderen aber unbrauchbar. Das System ben&ouml;tigt dann zumindest 2 Lagerorte (1 nomaler, 1 KommPlatz)</p><h2>Schritt-f&uuml;r-Schritt</h2><ul><li>Lagerorte anlegen&nbsp;per SQL anhand einer Liste anlegen</li><li><span style="letter-spacing: 0.0px;">Kommissionierlagerplatz anlegen (Lagerort mit der Eigenschaft &quot;Kommissionierlagerplatz&quot;)</span></li><li><span style="letter-spacing: 0.0px;">Lagerortbuchungen aktivieren (in Grundlageneinstellungen)</span></li><li><span style="letter-spacing: 0.0px;">Trigger deaktivieren</span></li><li><span style="letter-spacing: 0.0px;">SQL-Statements f&uuml;r alle Dokumente im System</span></li><li><span style="letter-spacing: 0.0px;">Trigger aktivieren</span></li><li><span style="letter-spacing: 0.0px;">Lagerbestand aktualisieren</span></li></ul><h2>Details</h2><h3>Lagerorte anlegen&nbsp;per SQL anhand einer Liste anlegen</h3><p>Excel-Datei erstellen</p><p>Lagerorte anlegen&nbsp;per SQL anhand einer Liste des Kunden mit Lagernummer, Nummer, Sortierung und Name:</p><p>=VERKETTEN(&quot;insert into Lagerorte (Lagernummer, Nummer, Sortierung, Name) values (&quot;;A2;&quot;,&quot;;B2;&quot;,&quot;;D2;&quot;,'&quot;;C2;&quot;');&quot;)</p><h3>Lagerpl&auml;tze anlegen</h3><p>In den Lager-Einstellungen wird je gew&uuml;nschtem Lager ein eigener Kommissionierlagerplatz und zumindest 1 &quot;normaler&quot; Lagerort angelegt:</p><p><ac:image><ri:attachment ri:filename="image2020-8-4_13-25-15.png" /></ac:image></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="facc2ad5-f03e-4ee2-9fbf-1960ba63da5b"><ac:plain-text-body><![CDATA[insert into lagerorte (lagernummer, nummer, name, ko_platz) select nummer, 1, 'eins', 0 from lager where nummer<1000000 and not exists(select '' from lagerorte where nummer=1 and lagerorte.lagernummer=lager.nummer);
insert into lagerorte (lagernummer, nummer, name, ko_platz) select nummer, 9999, 'Kommissionierung', 1 from lager where nummer<1000000 and not exists(select ''from lagerorte where ko_platz=1 and lagerorte.lagernummer=lager.nummer);
commit;]] ></ac:plain-text-body></ac:structured-macro><p><br /></p><h3>Vorbereitungen zur &Auml;nderung der Lagerorte</h3><ul><li>Entfernen aller Eintr&auml;ge in INVM, ZAEHLLISTE, INVM_SN, INVM_CN, indem die bestehenden Eintr&auml;ge aus ALLEN aktuell im System befindlichen Z&auml;hllisten gebucht (in die Inventur &uuml;bertragen) oder gel&ouml;scht werden.</li><li>Alle offenen Warenk&ouml;rbe l&ouml;schen</li></ul><h3>Lagerortbuchungen aktivieren</h3><p><ac:image><ri:attachment ri:filename="image2020-8-4_13-26-25.png" /></ac:image></p><h3>Trigger deaktivieren</h3><ac:structured-macro ac:name="warning" ac:schema-version="1" ac:macro-id="ae1f2b48-ccef-4712-a63c-3655d16fe70f"><ac:rich-text-body><p><strong><span style="color: rgb(255,0,0);">Vorher DB Trigger deaktivieren auf ANGEBOTSPOSITIONEN und BESTELLPOSITIONEN</span></strong></p></ac:rich-text-body></ac:structured-macro><p><span style="color: rgb(255,0,0);">Oracle DB:</span></p><p>alter table Angebotspositionen disable all triggers;</p><p>alter table Bestellpositionen disable all triggers;</p><p><span style="color: rgb(255,0,0);">SQL DB</span></p><p><span>DISABLE </span><span>TRIGGER</span> <span>ALL</span> <span>ON</span> <span>Angebotspositionen;</span></p><p><span>DISABLE </span><span>TRIGGER</span> <span>ALL</span> <span>ON</span><span> Bestell</span><span>positionen;</span></p><h3>SQL-Statements f&uuml;r alle Dokumente</h3><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="11e1a7f9-8b9d-45a9-bd8c-fd14f2d27564"><ac:plain-text-body><![CDATA[update artikelstamm set lagerort =1 where lager=1;


update defaultlager set lagerort=1 where lager=1;
insert into defaultlager (artikelnummer, lager, lagerort)
 select a.artikelnummer, 1, 1 from artikelstamm a where a.lager=1 and not exists (select '' from defaultlager d where a.artikelnummer=d.artikelnummer and d.lager=1 and d.lagerort=1);
update defaultlager set lo_name=(select name from lagerorte where defaultlager.lagerort=lagerorte.nummer and defaultlager.lager=lagerorte.lagernummer);
commit;


update kartei set lagerort=1 where lager=1;

update angebotspositionen set lagerort=1 where lager=1;

update lspositionen set lagerort=1 where lager=1;

update repositionen set lagerort=1 where lager=1;

update bestellpositionen set lagerort=1 where lager=1;

update bestellvorschlag set lagerort=1 where lager=1;

update ls_wepositionen set lagerort=1 where lager=1;

update wepositionen set lagerort=1 where lager=1;

update invpositionen set lagerort=1 where lager=1;

update liefauf set lagerort=1 where lager=1;

update fpos set lagerort=1 where lager=1;

update rappositionen set lagerort=1 where lager=1;

update dwh_pos set lagerort=1 where lager=1;

update dwh_verkauf set lagerort=1 where lager=1;

update fapositionen set entnahme_lagerort=1 where dispo_lager=1;

update fapositionen set dispo_lagerort=1 where dispo_lager=1;

update fer set ziel_lagerort=1 where ziel_lager=1;

update schnellumbuchung set abbuchungslagerort=1 where abbuchungslager=1;

update schnellumbuchung set zubuchungslagerort=1 where zubuchungslager=1;

commit;


-- Wenn es Artikel mit Chargennummernpflicht gibt:
update chargennummer set lagerort=1 where lager=1;

update chargenbestand set lagerort=1 where lager=1;

-- Wenn es Artikel mit Seriennummernpflicht gibt:
update sernr set lagerort=1 where lager=1;

commit;




-- Optional kann mit folgenden Statements der Bestand manuell aktualisiert werden (ansonten nach Reaktivierung der Trigger die Programmfunktion nutzen):

insert into lagerbestand (artnr, lager, lagerort, bestand, verfuegbar) select artnr, lager, 1, 0, 0 from lagerbestand where lager=1 and lagerort is null

update lagerbestand b1 set bestand=(select b2.bestand from lagerbestand b2 where b2.lager=1 and b2.lagerort is null and b2.artnr=b1.artnr) where b2.lager=1 and b2.lagerort=1;

update lagerbestand set bestand=0 where lager=1 and lagerort is null;

update lagerbestand set verfuegbar=bestand where lager=1;

update lagerbestand set off_auf=0;

update lagerbestand set off_auf=isnull((select off_auf from v_off_auf where v_off_auf.artikelnummer=lagerbestand.artnr and v_off_auf.lager=lagerbestand.lager and isnull(v_off_auf.lagerort,-1)=isnull(lagerbestand.lagerort,-1)),0)
where artnr in (select artikelnummer from v_off_auf);

update lagerbestand set off_bes=0;

update lagerbestand set off_bes=isnull((select off_bes from v_off_bes where v_off_bes.artikelnummer=lagerbestand.artnr and v_off_bes.lager=lagerbestand.lager and isnull(v_off_bes.lagerort,-1)=isnull(lagerbestand.lagerort,-1)),0)
where artnr in (select artikelnummer from v_off_bes);


commit;]] ></ac:plain-text-body></ac:structured-macro><p><br /></p><h3>Trigger aktivieren</h3><ac:structured-macro ac:name="warning" ac:schema-version="1" ac:macro-id="834ed260-bcf2-4d68-a18d-aeb796a5b132"><ac:rich-text-body><p><strong><span style="color: rgb(255,0,0);">DB Trigger wieder aktivieren</span></strong></p></ac:rich-text-body></ac:structured-macro><p><span style="color: rgb(255,0,0);">Oracle DB:</span></p><p>alter table Angebotspositionen enable all triggers;</p><p>alter table Bestellpositionen enable all triggers;</p><p><span style="color: rgb(255,0,0);">SQL DB</span></p><p><span>ENABLE </span><span>TRIGGER</span> <span>ALL</span> <span>ON</span> <span>Angebotspositionen;</span></p><p><span>ENABLE </span><span>TRIGGER</span> <span>ALL</span> <span>ON</span><span> Bestell</span><span>positionen;</span></p><p><br /></p><h3>Lagerort zwingend aktivieren</h3><p><strong><ac:image ac:height="400"><ri:attachment ri:filename="image2021-1-22_11-3-20.png" /></ac:image></strong></p><p>Beim umgestellten Lager bzw. bei den umgestellten Lagern muss &quot;Lagerort zwingend&quot; aktiviert werden, damit k&uuml;nftige Buchungen ohne Lagerort verhindert werden.</p><p><br /></p><h3>Bereitstellungslagerort und Default-Lagerort je Lager</h3><p>In den Lagereinstellungen gibt es die Spalten &quot;Bereitstellungsplatz&quot; (LAGER.BEREITST_LAGERORT)&nbsp; und &quot;Lagerort&quot; (LAGER.DEF_LAGERORT). Diese sollten nun ebenfalls noch bef&uuml;llt werden - der Bereitstellungsplatz mit dem Kommissionierlagerort des Lagers und der Lagerort mit dem &quot;Hauptlagerort&quot;.</p><p><br /></p><h3>Lagerbest&auml;nde aktualisieren</h3><p><ac:image><ri:attachment ri:filename="image2020-8-4_13-36-58.png" /></ac:image></p><p><br /></p><p><br /></p>
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.