Zum Inhalt springen
  • 0

"Lagerbestände zum Zeitpunkt"


mth

Frage

Hallo!

 

Wir können die Lagerbestände zu bestimmten Zeitpunkten mit dem Menüpunkt "Lagerbestände zum Zeitpunkt" auswerten.

Das ist jedoch sehr mühselig, weil es sehr lange dauert mit der Eingabe und der Generierung. Auch wenn man mehrere Zeitpunkte vergleichen möchte.

 

Gibt es eine SQL Abfrage mit der ich selbiges herausfinden kann? 

Ich habe schon im Report geschaut, aber da kann ich nichts mit anfangen.

Ein grobes Gerüst würde mir reichen und den Rest leite ich mir selbst her, welche Variablen wie "Datum = " etc gesetzt werden sollen.

Vielen Dank.

Bearbeitet von mth
Link zu diesem Kommentar
Auf anderen Seiten teilen

4 Antworten auf diese Frage

Empfohlene Beiträge

  • 0

Hallo @mth

die SQL für den Menüpunkt 8.5.8 

      SELECT  spbd.lager 
            , spbd.lag_lgk_id
            , spbd.lag_id
            , spbd.art_id
            , spbd.artikelnr
            , spbd.artikelbezeichnung1
            , spbd.artikelart
            , liste.warengruppe
            , liste.kostenstelle
            , spbd.scTyp
            , spbd.bestand
          , spbd.dek as ekEinzel
            , spbd.tage_ek
           , spbd.DEK_Bestand as ek
            , spbd.tage_vk
            , art_lag.lagerort as Lagerort
              from (
            select art.id as art_id
                 , art.warengruppe
                 , war.kostenstelle
                 , war.id as war_id
                 , art.lieferantenek
                 , art.Preiseinheit
              from art
         left join WAR on war.id = art.war_id
             where art.artikelart = '1'
               and exists (select *
                          from buc
                         where buc.buche_von_art_id = art.id
                           and buc.lager between :LagerVon and :LagerBis
                           and buc.buchungsart is distinct from 'EKK')
                   ) liste

      LEFT JOIN WAR ON war.id = liste.war_id
      LEFT JOIN sp_artikel_bestand_dek_zum('31.08.2023', liste.art_id, :LagerVon, :LagerBis) spbd ON 1 = 1
left join art_lag on (art_lag.art_id = spbd.art_id) and (art_lag.lag_id = spbd.lag_id)
       where  (
           (coalesce(spbd.bestand, 0) > 0)
      OR (coalesce(spbd.bestand, 0) < 0)
       )
  ORDER BY
    1,
    11 desc

 

Für Änderungen an dieser SQL ist schon ein gewisses maß an SQL Kenntnisse von Nöten.

Gruß 

Andreas Zweimüller 

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0

Hallo Herr Zweimüller,

 

super vielen lieben Dank.

Hätten Sie zufällig auch die Abfrage die hinter dem Menüpunkt "Zukünftiger Bestandverlauf" in den Artikelstammdaten steht?

Es wäre nämlich sehr hilfreich für diverse Artikel (Anzahl >> 1) den zuk. Bestandsverlauf zu sehen und nicht in jeden Artikel einzeln rein zu  müssen und den Menüpunkt auszuwählen.

 

Danke! 🙏🙏🙏

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0
Am 1.9.2023 um 08:33 schrieb mth:

Hallo Herr Zweimüller,

 

super vielen lieben Dank.

Hätten Sie zufällig auch die Abfrage die hinter dem Menüpunkt "Zukünftiger Bestandverlauf" in den Artikelstammdaten steht?

Es wäre nämlich sehr hilfreich für diverse Artikel (Anzahl >> 1) den zuk. Bestandsverlauf zu sehen und nicht in jeden Artikel einzeln rein zu  müssen und den Menüpunkt auszuwählen.

 

Danke! 🙏🙏🙏

Hi mth,

anbei die gewünschte Selektion, sofern ich Sie richtig verstanden habe:

 

select art.ARTIKELNR,

       sp_artikel_bestandsverlauf.BELEGBEZ,

       sp_artikel_bestandsverlauf.BELEGNR,

       sp_artikel_bestandsverlauf.KURZNAME,

       sp_artikel_bestandsverlauf.BELEGDATUM,

       sp_artikel_bestandsverlauf.LIEFERTERMIN,

       sp_artikel_bestandsverlauf.ZUGANG,

       sp_artikel_bestandsverlauf.ABGANG,

       sp_artikel_bestandsverlauf.BESTAND,

       sp_artikel_bestandsverlauf.BELEGSTATUS

  from art

  left join SP_ARTIKEL_BESTANDSVERLAUF(ART.ID , 1) on 1=1

  left join sps_art_mov(ART.ID) on 1=1

 where sps_art_mov.BESTAND > 1

 

Die letzten zwei Zeilen können ggfs. auch auskommentiert werden, da ich nicht wusste, was Sie denn genau mit Anzahl (Bestand?) > 1 meinen.

 

Gruß

A. Babayigit

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Diese Frage beantworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...