- Beiträge: 4
- Dank erhalten: 0
Geschäftsvorfälle kopieren
- arnd
-
Autor
- Offline
- Fresh Boarder
-
Weniger
Mehr
10 Jahre 9 Monate her - 10 Jahre 9 Monate her #1154
von arnd
Geschäftsvorfälle kopieren wurde erstellt von arnd
Hallo!
Bei uns kommt es öfters vor, dass identische Vorfälle mehrfach erfasst werden müssen.
Mit dieser UserQuery, angehängt an Wareneingang und GeschäftsVorfall, kann man vorhandene Vorfälle einfach kopieren.
Das funktioniert auch, falls man einen Vorfall mal versehentlich storniert hat und ihn doch wieder braucht.
Bei Ausführung wird nach einer neuen FremdVorfallNr gefragt und man muss bei der Abfrage 'Sicher' Ja eintippen.
Grüße
Arnd.
Bei uns kommt es öfters vor, dass identische Vorfälle mehrfach erfasst werden müssen.
Mit dieser UserQuery, angehängt an Wareneingang und GeschäftsVorfall, kann man vorhandene Vorfälle einfach kopieren.
Das funktioniert auch, falls man einen Vorfall mal versehentlich storniert hat und ihn doch wieder braucht.
Bei Ausführung wird nach einer neuen FremdVorfallNr gefragt und man muss bei der Abfrage 'Sicher' Ja eintippen.
USE [*300]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Arnd
-- Create date: 20120818
-- Description: UserQuery zum Kopieren von Vorfällen
-- Kann An Wareneingang und GeschäftsVorfall angehängt werden
-- =============================================
CREATE PROCEDURE [dbo].[UserQueryVorfall_kopieren] ( @VorfallKürzel varchar(10), @VorfallNr varchar(8), @Neue_FremdVorfall_Nr varchar(15), @Sicher varchar(5)) AS
DECLARE @VNrNeu varchar(8)
IF @Sicher <> 'Ja'
BEGIN
RAISERROR 44447 @Sicher
RETURN
END
IF LEN(@VorfallNr)=0
BEGIN
RAISERROR 44447 'Kein Vorfall ausgewählt'
RETURN
END
IF @Sicher='Ja'
AND LEN(@VorfallKürzel)> 0
AND @VorfallNr > 0
BEGIN
SET @VNrNeu = (
SELECT MAX(VorfallNr) + 1 AS nVNr
FROM GeschäftsVorfall
GROUP BY VorfallKürzel
HAVING (VorfallKürzel = @VorfallKürzel)
)
BEGIN
INSERT [dbo].[GeschäftsVorfall]
([VorfallKürzel]
,[VorfallNr]
,[Arbeitsplatz]
,[Lieferbedingung]
,[Zahlungsbedingung]
,[KorrNr]
,[VorfallDatum]
,[VKPNr]
,[MwStArt]
,[WartungsvertragNr]
,[Skonto1Prozent]
,[Skonto1Betrag]
,[Skonto2Prozent]
,[Skonto2Betrag]
,[ZahlungsZielNetto]
,[ZahlungsZielSkonto1]
,[ZahlungsZielSkonto2]
,[Status]
,[VersandkostenNetto]
,[AnzahlungBetrag]
,[AnzahlAusdrucke]
,[Zusatztext1]
,[Zusatztext2]
,[Rabatt]
,[Sprache]
,[Währung]
,[Filialnummer]
,[RückstandJN]
,[TeillieferungJN]
,[Wechselkurs]
,[Status1]
,[Status2]
,[GesamtNetto]
,[GesamtBrutto]
,[VersandMwStSatz]
,[Skontofähig]
,[Gewicht]
,[Anzahlung]
,[BonusSumme]
,[PrämienSumme]
,[Abteilung]
,[FremdVorfallNr]
,[FreigabeKz]
,[FreigabeMitarbeiter]
,[Rohertrag]
,[DocumentId]
,[DocumentIdEingang]
,[Ansprechpartner]
,[MemoNr]
,[Gesperrt]
,[ErfasstAm]
,[ErfasstUm]
,[ErfasstVon]
,[VorfallUhrzeit]
,[VerbuchungsParameter])
SELECT VorfallKürzel, @VNrNeu AS VorfallNr, Arbeitsplatz, Lieferbedingung, Zahlungsbedingung, KorrNr, VorfallDatum, VKPNr,
MwStArt, WartungsvertragNr, Skonto1Prozent,
Skonto1Betrag, Skonto2Prozent, Skonto2Betrag, ZahlungsZielNetto, ZahlungsZielSkonto1, ZahlungsZielSkonto2,
'OFF' AS [Status],
VersandkostenNetto, AnzahlungBetrag, AnzahlAusdrucke, Zusatztext1, Zusatztext2, Rabatt, Sprache,
Währung, Filialnummer, RückstandJN, TeillieferungJN, Wechselkurs, Status1, Status2, GesamtNetto,
GesamtBrutto, VersandMwStSatz, Skontofähig, Gewicht, Anzahlung, BonusSumme, PrämienSumme, Abteilung,
@Neue_FremdVorfall_Nr AS FremdVorfallNr,
FreigabeKz, FreigabeMitarbeiter,
Rohertrag, DocumentId, DocumentIdEingang, Ansprechpartner, MemoNr, Gesperrt,
CONVERT(varchar(8), GetDate(), 112) AS ErfasstAm,
CONVERT(varchar(5), GetDate(), 108) AS ErfasstUm,
ErfasstVon,
VorfallUhrzeit, VerbuchungsParameter
FROM GeschäftsVorfall
WHERE (VorfallKürzel = @VorfallKürzel) AND (VorfallNr = @VorfallNr)
END
IF (select COUNT(*) from GeschäftsVorfall where VorfallKürzel = @VorfallKürzel and VorfallNr = @VNrNeu)>0
BEGIN
INSERT INTO [dbo].[GeschäftsvorfallPosition]
([VorfallKürzel]
,[VorfallNr]
,[ArbeitsPlatz]
,[PositionNummer]
,[ArtikelNr]
,[Einheit]
,[Farbe]
,[Groesse]
,[SerienNummer]
,[FilialNummer]
,[MitarbeiterKürzel]
,[KorrNr]
,[MwStSatzNr]
,[BestellDatenNr]
,[GarantieMonate]
,[VerkaufVermietung]
,[FixKauf]
,[LieferDatum]
,[Text]
,[Menge]
,[GelieferteMenge]
,[EinzelpreisNetto]
,[RabattProzent]
,[RabattBetrag]
,[EinzelpreisBrutto]
,[MwStBetrag]
,[MwStProzent]
,[ZeilenSummeNetto]
,[ZeilenSummeBrutto]
,[RabattBrutto]
,[Status]
,[Status1]
,[Status2]
,[RückstandJN]
,[TeilLieferungJN]
,[Gewicht]
,[BonusBetrag]
,[Abteilung]
,[SammelText]
,[PreisfindungsArt]
,[NatRabattMenge]
,[SerienNummern]
,[Rohertrag]
,[Hierarchie]
,[PositionsArt]
,[Bemerkung]
,[SatzTyp]
,[VKPreis]
,[AnsprechpartnerNr]
,[ReferenzMenge]
,[Paketnummer]
,[FremdPositionsNr]
,[Lagerort]
,[IntraStatID]
,[EAN]
,[Konto]
,[Kostenstelle])
SELECT VorfallKürzel, @VNrNeu AS VorfallNr, ArbeitsPlatz, PositionNummer, ArtikelNr, Einheit, Farbe, Groesse,
SerienNummer, FilialNummer, MitarbeiterKürzel, KorrNr, MwStSatzNr, BestellDatenNr,
GarantieMonate, VerkaufVermietung, FixKauf, LieferDatum, Text, Menge, GelieferteMenge, EinzelpreisNetto,
RabattProzent, RabattBetrag, EinzelpreisBrutto, MwStBetrag, MwStProzent, ZeilenSummeNetto,
ZeilenSummeBrutto, RabattBrutto, Status, Status1, Status2, RückstandJN,
TeilLieferungJN, Gewicht, BonusBetrag, Abteilung, SammelText, PreisfindungsArt, NatRabattMenge,
SerienNummern, Rohertrag, Hierarchie, PositionsArt, Bemerkung,
SatzTyp, VKPreis, AnsprechpartnerNr, ReferenzMenge, Paketnummer, FremdPositionsNr, Lagerort, IntraStatID,
EAN, Konto, Kostenstelle
FROM GeschäftsvorfallPosition
WHERE (VorfallKürzel = @VorfallKürzel) AND (VorfallNr = @VorfallNr)
END
END
Grüße
Arnd.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- arnd
-
Autor
- Offline
- Fresh Boarder
-
Weniger
Mehr
- Beiträge: 4
- Dank erhalten: 0
10 Jahre 9 Monate her - 10 Jahre 9 Monate her #427
von arnd
arnd antwortete auf Re: Geschäftsvorfälle kopieren
Passend dazu noch eine UserQuery zum Löschen des geoffneten Vorfalls, direkt im 'Geschäftsvorfall erfassen' oder 'Wareneingang'.
Natürlich mit Einschränkung, dass der Status des Vorfalls 'OFF' ist.
Natürlich mit Einschränkung, dass der Status des Vorfalls 'OFF' ist.
USE [*300]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Arnd
-- Create date: 20120818
-- Description: UserQuery zum Löschen von OFF Vorfällen
-- Kann An Wareneingang und GeschäftsVorfall angehängt werden
-- =============================================
CREATE PROCEDURE [dbo].[UserQueryVorfall_löschen] ( @VorfallKürzel varchar(10), @VorfallNr varchar(8), @Sicher varchar(5)) AS
DECLARE @Status varchar(3)
SET @Status = (select [Status] from GeschäftsVorfall where VorfallNr = @VorfallNr and VorfallKürzel = @VorfallKürzel)
IF @Status <> 'OFF'
BEGIN
RAISERROR 44447 'VerbuchungsStatus ist nicht OFF. Vorfall kann hier nicht gelöscht werden'
RETURN
END
IF @Sicher <> 'Ja'
BEGIN
RAISERROR 44447 @Sicher
RETURN
END
IF LEN(@VorfallNr)=0
BEGIN
RAISERROR 44447 'Kein Vorfall ausgewählt'
RETURN
END
IF @Sicher='Ja'
AND LEN(@VorfallKürzel)> 0
AND @VorfallNr > 0
BEGIN
BEGIN
DELETE FROM [dbo].[GeschäftsvorfallPosition]
WHERE (VorfallKürzel = @VorfallKürzel) AND (VorfallNr = @VorfallNr)
END
BEGIN
DELETE FROM [dbo].[GeschäftsVorfall]
WHERE (VorfallKürzel = @VorfallKürzel) AND (VorfallNr = @VorfallNr)
END
END
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- uwa
-
- Offline
- Moderator
-
Weniger
Mehr
- Beiträge: 22
- Dank erhalten: 3
9 Jahre 10 Monate her - 9 Jahre 10 Monate her #556
von uwa
uwa antwortete auf Re: Geschäftsvorfälle kopieren
Hinweis: unter OS.NET wird empfohlen die UQ unter Vorfall erfassen->Aktionen einzubinden. Sonst wird die UQ u.U. mehrfach ausgeführt.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.