Zum Inhalt springen
  • 0

"Lagerbestände zum Zeitpunkt"


Frage

Geschrieben (bearbeitet)

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

4 Antworten auf diese Frage

Empfohlene Beiträge

  • 0
Geschrieben

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 

  • Gefällt mir 1
  • 0
Geschrieben

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! 🙏🙏🙏

  • 0
Geschrieben
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

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...