Artikelanlage ohne EAN verhindern

More
13 years 9 months ago - 13 years 9 months ago #867 by arnd
Artikelanlage ohne EAN verhindern was created by arnd
Hallo!

Hat vielleicht jemand eine Idee, wie ich verhindern kann, dass Artikel eines bestimmten Lieferanten ohne Eintrag im EAN-Fenster gespeichert werden?
Ein Insert Trigger auf die Artikel-Tabelle mit Rollback funktioniert, soweit ich das sehen kann nicht, weil der Eintrag in der EAN-Tabelle erst nach dem Speichern des Artikels erfolgt.

Grüße
Arnd.

Please Log in or Create an account to join the conversation.

More
13 years 9 months ago - 13 years 9 months ago #275 by asu
Replied by asu on topic Re: Artikelanlage ohne EAN verhindern
Hallo Arnd,

wenn auch ein "After Insert" Trigger nicht hilft, dann bleibt aktuell wohl nur die Lösung sich über einen Datenexport und Scheduler-Job einmal am Tag eine Liste per email schicken zu lassen von den "Sündenfällen". Schick mir doch mal deinen bisherigen Trigger-Ansatz.

Gruß

asu

"Wer Rechtschreibfehler findet, darf sie behalten."

Please Log in or Create an account to join the conversation.

More
13 years 8 months ago - 13 years 8 months ago #301 by arnd
Replied by arnd on topic Re: Artikelanlage ohne EAN verhindern
Hallo asu,

ich habe jetzt einen Trigger in der GeschäftsvorfallPosition angelegt.
Das ist zwar nicht ganz so komfortabel, weil man den Artikel nochmal extra aufrufen muss. Es scheint mir aber auf DB Seite die einzige Möglichkeit zu sein. Ist dann eben die Strafe dafür, dass man vorher nicht ordentlich gearbeitet hat
Vielleicht kann es in einer der nächsten Versionen auch auf Programm-Seite eingebaut werden?

Grüße
Arnd.

Please Log in or Create an account to join the conversation.

More
13 years 8 months ago - 13 years 8 months ago #302 by arnd
Replied by arnd on topic Re: Artikelanlage ohne EAN verhindern
Code:
USE [...300] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE Trigger [dbo].[UserGeschäftsVorfallPos_Insert_EAN] ON [dbo].[GeschäftsvorfallPosition] FOR INSERT AS SET NOCOUNT ON declare @str as varchar(150) set @str = CHAR(10) + 'GeschäftsVorfallPos.'+CHAR(10) + 'Für diesen Artikel ist noch keine EAN-Nummer angelegt worden.' IF (UPDATE([ArtikelNr]) AND (SELECT COUNT(*) FROM inserted WHERE [ArtikelNr] IS NOT NULL and -- Bei diesen Lieferanten prüfen inserted.korrnr in (330, 166, 116, 142, 172, 189, 191, 145, 148) and -- Bei Vorfallart vorfallkürzel='WE')>0) BEGIN IF (SELECT COUNT(*) FROM inserted inner join ean on inserted.artikelnr=ean.artikelnr where -- Nur EAN mit definierter Länge zulassen len(ean.ean) between 12 and 13 )=0 BEGIN RAISERROR (@str, 16, 1) ROLLBACK TRANSACTION RETURN END END GO

Please Log in or Create an account to join the conversation.

More
13 years 8 months ago - 13 years 8 months ago #306 by asu
Replied by asu on topic Re: Artikelanlage ohne EAN verhindern
Hallo arnd,

da ich als "Erfinder" der Funktion "EAN-Zwang" in OrgaSoft ( DOS ) vor vielen Jahren deinen Ansatz verstehen kann, werde ich das mal besprechen.

Ein kleiner Tipp noch....

inserted.korrnr in (330, 166, 116, 142, 172, 189, 191, 145, 148)

KorrNr ist vom Typ varchar(), sicherheitshalber die einzelnen KorrNr in '' setzen.

inserted.korrnr in ('330', '166', '116', '142', '172', '189', '191', '145', '148')

Gruß
asu

"Wer Rechtschreibfehler findet, darf sie behalten."

Please Log in or Create an account to join the conversation.

More
13 years 8 months ago - 13 years 8 months ago #307 by asu
Replied by asu on topic Re: Artikelanlage ohne EAN verhindern
Hallo arnd,

kleiner Nachtrag noch, es geht in deinem Fall um Barcodes vom Hersteller, richtig ? Also die Funktion "AutoCreateEAN" in InStore-EAN nützt dir in dem Fall nichts, richtig ?

Gruß

asu

"Wer Rechtschreibfehler findet, darf sie behalten."

Please Log in or Create an account to join the conversation.

Signum GmbH
Kasinostraße 2
DE-64293 Darmstadt, Germany

Tel: +49 (6151) 15 18 - 0
Fax: +49 (6151) 15 18 - 100
team@signum.info