FremdVorfallNr in ReKo-Positionen

×

Umfrage:

Ja
1 100%
Nein
Keine Stimmen 0%
Anzahl der Wähler: 0
Bitte zuerst anmelden. Nur angemeldete Benutzer können an dieser Umfrage teilnehmen.
Mehr
6 Jahre 9 Monate her - 6 Jahre 9 Monate her #932 von arnd
FremdVorfallNr in ReKo-Positionen wurde erstellt von arnd
Hallo!

Sobald man in der Rechnungskontrolle einen Wareneingang ausgewählt hat, kann man nicht mehr erkennen, welche LS-Nr. dazu gehört. Ich fände es gut, wenn man in den Positionen der Rechnungskontrolle die Fremdvorfallnummer mit in der Übersicht hätte. Das würde die Suche bei Fehlern erleichtern. Vielleicht auch noch als Zusatz auf der Rechnungsdaten-Seite, bei den bereits ausgewählten 'Bezogenen WE'.

Viele Grüße
Arnd.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
6 Jahre 9 Monate her - 6 Jahre 9 Monate her #354 von arnd
arnd antwortete auf FremdVorfallNr in ReKo-Positionen
Hallo!

Habe das Thema über eine, an die Rechnungskontrolle angehängte MitarbeiterQuery gelöst. (Geniale Funktion in OSNT!)
Das hat den Vorteil, dass man zusätzlich noch ein paar mehr Infos mit ausgeben kann.

Im untenstehenden Code wird zur FremdVorfallNr noch die Filialnummer des WE, das Vorfall Datum, von wem der WE erfasst wurde, die Menge und der Gesamt Netto Wert angezeigt. Oder nach Wunsch, alles was sonst noch in der Tabelle Geschäftsvorfall steht.

Der eigene Haupt- und vd3-DB Name muss an den Stellen mit *** eingefügt werden.

Unter Tools-> System-Parameter -> Mitarbeiterqueries -> Synchronisierung auf 'Auto und Update' stellen
USE ***300]
GO

SET ANSI_NULLS OFF
GO

SET QUOTED_IDENTIFIER OFF
GO


CREATE PROCEDURE [dbo].[UserQueryReKo_WENr]  AS
DECLARE @TabName varchar(10)
DECLARE @AP nvarchar(2) 

SELECT @AP = (select Arbeitsplatz from ***_vd3.dbo.Netzwerk where ProzessID = @@SPID)

SET @TabName = 'Tmp' + @AP

exec ('SELECT DISTINCT GeschäftsVorfall.VorfallNr AS [WE Nummer], GeschäftsVorfall.FremdVorfallNr AS LieferscheinNr, GeschäftsVorfall.Filialnummer AS Filiale, GeschäftsVorfall.VorfallDatum AS [Datum], GeschäftsVorfall.ErfasstVon, cast(SUM_Menge.Summe AS Int) AS Menge, GeschäftsVorfall.GesamtNetto AS Netto
FROM         '+@TabName+' INNER JOIN
                      GeschäftsVorfall ON '+@TabName+'.VorfallKürzel = GeschäftsVorfall.VorfallKürzel AND '+@TabName+'.VorfallNr = GeschäftsVorfall.VorfallNr 
					   LEFT OUTER JOIN
                          (SELECT     GVP.VorfallNr, SUM(GVP.Menge) AS Summe
                            FROM          GeschäftsvorfallPosition GVP INNER JOIN
                                                   GeschäftsVorfall AS GV ON GVP.VorfallKürzel = GV.VorfallKürzel AND 
                                                   GVP.VorfallNr = GV.VorfallNr
                            WHERE      (GV.VorfallKürzel = "WE")
                            GROUP BY GVP.ArbeitsPlatz, GVP.VorfallNr) AS SUM_Menge ON GeschäftsVorfall.VorfallNr = SUM_Menge.VorfallNr
where ((select COUNT(*) from '+@TabName+')>0)	
')
GO

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
6 Jahre 9 Monate her - 6 Jahre 9 Monate her #355 von asu
Hallo arnd,

kleiner Hinweis von mir, das hier funktioniert leider nicht mehr bei jeder SQL-Version:

SELECT @AP = (select Arbeitsplatz from ***_vd3.dbo.Netzwerk where ProzessID = @@SPID)
Die @@SPID passt nicht mehr in jedem Fall, ab Orgasoft .NET steht jedoch eine Function in der Datenbank zur Verfügung, welche den Arbeitsplatz bzw. den User zurückliefert. Zum Bsp. die dbo.GetWorkStation oder dbo.GetUser. Die Functions sind heute schon in der 300er Datenbank, jedoch funktionieren sie nur, wenn der Programmteil bereits im Hintergrund .NET ist.

Alternativ dazu funktioniert eine an die ReKo angehängte UQ aber auch ohne den Umweg Arbeistplatz und @TabName, da intern Orgasoft NT den Tabellennamen ersetzt.

Beispiel für kumulierte Werte wenn Positionen mehrfach in der ReKo sind und
der Lieferant eine Sammelrechnung mit kumulierten Werten schickt:
CREATE PROCEDURE [dbo].[UserQueryReko_kumuliert] AS
SELECT     Rechnungskontrolle.ArtikelNr, Rechnungskontrolle.Einheit, MIN(Rechnungskontrolle.Bezeichnung) AS Text,
SUM(Rechnungskontrolle.Menge) AS SummeMenge, Rechnungskontrolle.WEPreis, ArtikelHauptLfListenEK.AdressArtikelNr
FROM         Rechnungskontrolle LEFT OUTER JOIN
ArtikelHauptLfListenEK ON Rechnungskontrolle.ArtikelNr = ArtikelHauptLfListenEK.ArtikelNr AND
Rechnungskontrolle.Einheit = ArtikelHauptLfListenEK.Einheit
GROUP BY Rechnungskontrolle.ArtikelNr, Rechnungskontrolle.Einheit, Rechnungskontrolle.WEPreis, ArtikelHauptLfListenEK.AdressArtikelNr

Gruß
asu

"Wer Rechtschreibfehler findet, darf sie behalten."

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
6 Jahre 8 Monate her - 6 Jahre 8 Monate her #364 von jerhardt
jerhardt antwortete auf FremdVorfallNr in ReKo-Positionen
Hallo arnd,

wir haben die Anregung mal aufgegriffen und in Orgasoft.NET bei den Bezogenen WEs die Fremdvorfall-Nummer ergänzt, bzw. dort ebenfalls ein Grid mit mehreren Informationen eingebaut.

Für OrgaSoft NT ist der genannte Weg über eine UserQuery ja eine gangbare Variante (die in .NET auch noch funktionieren würde, wir haben es aber in den Standard übernommen, weil es eine gute Idee ist).

Viele Grüße

Bitte Anmelden oder Registrieren um der Konversation beizutreten.