Une application fonctionne avec un client Access (ADP) et une base SQL
Server.
Elle fonctionne bien, et possède un formulaire ayant comme source une table.
Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui la
modifie, code après la signature) alors Access est perdu : message d'erreur
"Conflit d'écriture - Cet enregistrement a été modifié par un autre
utilisateur... [Sauvegarder enregistrement] [Copier dans le Presse-papiers]
[Annuler]".
Le trigger fonctionne bien avec un autre client que Access (l'Analyseur de
requêtes par exemple).
Est-il possible d'utiliser Access (ADP) avec une base possédant des triggers
?
Jacques.
***********************************************
CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
FOR INSERT, UPDATE
AS
UPDATE Mvtcolis
SET NbPal = 0
WHERE NbPal is null
UPDATE Mvtcolis
SET NbColis = 0
WHERE NbColis is null
UPDATE Mvtcolis
SET NbPlis = 0
WHERE NbPlis is null
UPDATE Mvtcolis
SET NbPiece = 0
WHERE NbPiece is null
/* Fin.*/
Une application fonctionne avec un client Access (ADP) et une base SQL
Server.
Elle fonctionne bien, et possède un formulaire ayant comme source une table.
Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui la
modifie, code après la signature) alors Access est perdu : message d'erreur
"Conflit d'écriture - Cet enregistrement a été modifié par un autre
utilisateur... [Sauvegarder enregistrement] [Copier dans le Presse-papiers]
[Annuler]".
Le trigger fonctionne bien avec un autre client que Access (l'Analyseur de
requêtes par exemple).
Est-il possible d'utiliser Access (ADP) avec une base possédant des triggers
?
Jacques.
***********************************************
CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
FOR INSERT, UPDATE
AS
UPDATE Mvtcolis
SET NbPal = 0
WHERE NbPal is null
UPDATE Mvtcolis
SET NbColis = 0
WHERE NbColis is null
UPDATE Mvtcolis
SET NbPlis = 0
WHERE NbPlis is null
UPDATE Mvtcolis
SET NbPiece = 0
WHERE NbPiece is null
/* Fin.*/
Une application fonctionne avec un client Access (ADP) et une base SQL
Server.
Elle fonctionne bien, et possède un formulaire ayant comme source une table.
Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui la
modifie, code après la signature) alors Access est perdu : message d'erreur
"Conflit d'écriture - Cet enregistrement a été modifié par un autre
utilisateur... [Sauvegarder enregistrement] [Copier dans le Presse-papiers]
[Annuler]".
Le trigger fonctionne bien avec un autre client que Access (l'Analyseur de
requêtes par exemple).
Est-il possible d'utiliser Access (ADP) avec une base possédant des triggers
?
Jacques.
***********************************************
CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
FOR INSERT, UPDATE
AS
UPDATE Mvtcolis
SET NbPal = 0
WHERE NbPal is null
UPDATE Mvtcolis
SET NbColis = 0
WHERE NbColis is null
UPDATE Mvtcolis
SET NbPlis = 0
WHERE NbPlis is null
UPDATE Mvtcolis
SET NbPiece = 0
WHERE NbPiece is null
/* Fin.*/
Si je peux me permettre en le disant gentiment,
ton trigger pourrait être amélioré, là tu fais du balayage de tables....
c'est sans doute ça la source du problème.
La solution la plus simple, ça te fera d'excellents exemples, tu utilises
vers un .ADP.
Bonjour,
Si je peux me permettre en le disant gentiment, ton trigger pourrait être
doute ça la source du problème.
La solution la plus simple, ça te fera d'excellents exemples, tu utilises
vers un .ADP.
J-Pierre
"VUILLERMET Jacques" a écrit dans le message de
>
> Une application fonctionne avec un client Access (ADP) et une base SQL
> Server.
>
> Elle fonctionne bien, et possède un formulaire ayant comme source une
>
> Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui
> modifie, code après la signature) alors Access est perdu : message
> "Conflit d'écriture - Cet enregistrement a été modifié par un autre
> utilisateur... [Sauvegarder enregistrement] [Copier dans le
> [Annuler]".
>
> Le trigger fonctionne bien avec un autre client que Access (l'Analyseur
> requêtes par exemple).
>
> Est-il possible d'utiliser Access (ADP) avec une base possédant des
> ?
>
> Jacques.
>
> ***********************************************
> CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
> FOR INSERT, UPDATE
> AS
>
> UPDATE Mvtcolis
> SET NbPal = 0
> WHERE NbPal is null
>
> UPDATE Mvtcolis
> SET NbColis = 0
> WHERE NbColis is null
>
> UPDATE Mvtcolis
> SET NbPlis = 0
> WHERE NbPlis is null
>
> UPDATE Mvtcolis
> SET NbPiece = 0
> WHERE NbPiece is null
>
> /* Fin.*/
>
>
Si je peux me permettre en le disant gentiment,
ton trigger pourrait être amélioré, là tu fais du balayage de tables....
c'est sans doute ça la source du problème.
La solution la plus simple, ça te fera d'excellents exemples, tu utilises
vers un .ADP.
Bonjour,
Si je peux me permettre en le disant gentiment, ton trigger pourrait être
doute ça la source du problème.
La solution la plus simple, ça te fera d'excellents exemples, tu utilises
vers un .ADP.
J-Pierre
"VUILLERMET Jacques" <jvuillermet@no-spam.fr> a écrit dans le message de
>
> Une application fonctionne avec un client Access (ADP) et une base SQL
> Server.
>
> Elle fonctionne bien, et possède un formulaire ayant comme source une
>
> Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui
> modifie, code après la signature) alors Access est perdu : message
> "Conflit d'écriture - Cet enregistrement a été modifié par un autre
> utilisateur... [Sauvegarder enregistrement] [Copier dans le
> [Annuler]".
>
> Le trigger fonctionne bien avec un autre client que Access (l'Analyseur
> requêtes par exemple).
>
> Est-il possible d'utiliser Access (ADP) avec une base possédant des
> ?
>
> Jacques.
>
> ***********************************************
> CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
> FOR INSERT, UPDATE
> AS
>
> UPDATE Mvtcolis
> SET NbPal = 0
> WHERE NbPal is null
>
> UPDATE Mvtcolis
> SET NbColis = 0
> WHERE NbColis is null
>
> UPDATE Mvtcolis
> SET NbPlis = 0
> WHERE NbPlis is null
>
> UPDATE Mvtcolis
> SET NbPiece = 0
> WHERE NbPiece is null
>
> /* Fin.*/
>
>
Si je peux me permettre en le disant gentiment,
ton trigger pourrait être amélioré, là tu fais du balayage de tables....
c'est sans doute ça la source du problème.
La solution la plus simple, ça te fera d'excellents exemples, tu utilises
vers un .ADP.
Bonjour,
Si je peux me permettre en le disant gentiment, ton trigger pourrait être
doute ça la source du problème.
La solution la plus simple, ça te fera d'excellents exemples, tu utilises
vers un .ADP.
J-Pierre
"VUILLERMET Jacques" a écrit dans le message de
>
> Une application fonctionne avec un client Access (ADP) et une base SQL
> Server.
>
> Elle fonctionne bien, et possède un formulaire ayant comme source une
>
> Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui
> modifie, code après la signature) alors Access est perdu : message
> "Conflit d'écriture - Cet enregistrement a été modifié par un autre
> utilisateur... [Sauvegarder enregistrement] [Copier dans le
> [Annuler]".
>
> Le trigger fonctionne bien avec un autre client que Access (l'Analyseur
> requêtes par exemple).
>
> Est-il possible d'utiliser Access (ADP) avec une base possédant des
> ?
>
> Jacques.
>
> ***********************************************
> CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
> FOR INSERT, UPDATE
> AS
>
> UPDATE Mvtcolis
> SET NbPal = 0
> WHERE NbPal is null
>
> UPDATE Mvtcolis
> SET NbColis = 0
> WHERE NbColis is null
>
> UPDATE Mvtcolis
> SET NbPlis = 0
> WHERE NbPlis is null
>
> UPDATE Mvtcolis
> SET NbPiece = 0
> WHERE NbPiece is null
>
> /* Fin.*/
>
>
Une application fonctionne avec un client Access (ADP) et une base SQL
Server.
Elle fonctionne bien, et possède un formulaire ayant comme source une
Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui la
modifie, code après la signature) alors Access est perdu : message
"Conflit d'écriture - Cet enregistrement a été modifié par un autre
utilisateur... [Sauvegarder enregistrement] [Copier dans le
[Annuler]".
Le trigger fonctionne bien avec un autre client que Access (l'Analyseur de
requêtes par exemple).
Est-il possible d'utiliser Access (ADP) avec une base possédant des
?
Jacques.
***********************************************
CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
FOR INSERT, UPDATE
AS
UPDATE Mvtcolis
SET NbPal = 0
WHERE NbPal is null
UPDATE Mvtcolis
SET NbColis = 0
WHERE NbColis is null
UPDATE Mvtcolis
SET NbPlis = 0
WHERE NbPlis is null
UPDATE Mvtcolis
SET NbPiece = 0
WHERE NbPiece is null
/* Fin.*/
Une application fonctionne avec un client Access (ADP) et une base SQL
Server.
Elle fonctionne bien, et possède un formulaire ayant comme source une
Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui la
modifie, code après la signature) alors Access est perdu : message
"Conflit d'écriture - Cet enregistrement a été modifié par un autre
utilisateur... [Sauvegarder enregistrement] [Copier dans le
[Annuler]".
Le trigger fonctionne bien avec un autre client que Access (l'Analyseur de
requêtes par exemple).
Est-il possible d'utiliser Access (ADP) avec une base possédant des
?
Jacques.
***********************************************
CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
FOR INSERT, UPDATE
AS
UPDATE Mvtcolis
SET NbPal = 0
WHERE NbPal is null
UPDATE Mvtcolis
SET NbColis = 0
WHERE NbColis is null
UPDATE Mvtcolis
SET NbPlis = 0
WHERE NbPlis is null
UPDATE Mvtcolis
SET NbPiece = 0
WHERE NbPiece is null
/* Fin.*/
Une application fonctionne avec un client Access (ADP) et une base SQL
Server.
Elle fonctionne bien, et possède un formulaire ayant comme source une
Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui la
modifie, code après la signature) alors Access est perdu : message
"Conflit d'écriture - Cet enregistrement a été modifié par un autre
utilisateur... [Sauvegarder enregistrement] [Copier dans le
[Annuler]".
Le trigger fonctionne bien avec un autre client que Access (l'Analyseur de
requêtes par exemple).
Est-il possible d'utiliser Access (ADP) avec une base possédant des
?
Jacques.
***********************************************
CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
FOR INSERT, UPDATE
AS
UPDATE Mvtcolis
SET NbPal = 0
WHERE NbPal is null
UPDATE Mvtcolis
SET NbColis = 0
WHERE NbColis is null
UPDATE Mvtcolis
SET NbPlis = 0
WHERE NbPlis is null
UPDATE Mvtcolis
SET NbPiece = 0
WHERE NbPiece is null
/* Fin.*/
Idem avec :
UPDATE Mvtcolis
SET NbPal = 0
WHERE NbPal is null AND id = (SELECT id FROM inserted)
ou bien :
UPDATE Mvtcolis
SET NbPal = 0
FROM MvtColis INNER JOIN inserted ON MvtColis.id = inserted.id
WHERE inserted.NbPal is null
Jacques.
"VUILLERMET Jacques" a écrit dans le message de
news:
>
> Une application fonctionne avec un client Access (ADP) et une base SQL
> Server.
>
> Elle fonctionne bien, et possède un formulaire ayant comme source une
table.
>
> Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui la
> modifie, code après la signature) alors Access est perdu : message
d'erreur
> "Conflit d'écriture - Cet enregistrement a été modifié par un autre
> utilisateur... [Sauvegarder enregistrement] [Copier dans le
Presse-papiers]
> [Annuler]".
>
> Le trigger fonctionne bien avec un autre client que Access (l'Analyseur de
> requêtes par exemple).
>
> Est-il possible d'utiliser Access (ADP) avec une base possédant des
triggers
> ?
>
> Jacques.
>
> ***********************************************
> CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
> FOR INSERT, UPDATE
> AS
>
> UPDATE Mvtcolis
> SET NbPal = 0
> WHERE NbPal is null
>
> UPDATE Mvtcolis
> SET NbColis = 0
> WHERE NbColis is null
>
> UPDATE Mvtcolis
> SET NbPlis = 0
> WHERE NbPlis is null
>
> UPDATE Mvtcolis
> SET NbPiece = 0
> WHERE NbPiece is null
>
> /* Fin.*/
>
>
Idem avec :
UPDATE Mvtcolis
SET NbPal = 0
WHERE NbPal is null AND id = (SELECT id FROM inserted)
ou bien :
UPDATE Mvtcolis
SET NbPal = 0
FROM MvtColis INNER JOIN inserted ON MvtColis.id = inserted.id
WHERE inserted.NbPal is null
Jacques.
"VUILLERMET Jacques" <jvuillermet@no-spam.fr> a écrit dans le message de
news: OQOpD4nsDHA.560@TK2MSFTNGP11.phx.gbl...
>
> Une application fonctionne avec un client Access (ADP) et une base SQL
> Server.
>
> Elle fonctionne bien, et possède un formulaire ayant comme source une
table.
>
> Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui la
> modifie, code après la signature) alors Access est perdu : message
d'erreur
> "Conflit d'écriture - Cet enregistrement a été modifié par un autre
> utilisateur... [Sauvegarder enregistrement] [Copier dans le
Presse-papiers]
> [Annuler]".
>
> Le trigger fonctionne bien avec un autre client que Access (l'Analyseur de
> requêtes par exemple).
>
> Est-il possible d'utiliser Access (ADP) avec une base possédant des
triggers
> ?
>
> Jacques.
>
> ***********************************************
> CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
> FOR INSERT, UPDATE
> AS
>
> UPDATE Mvtcolis
> SET NbPal = 0
> WHERE NbPal is null
>
> UPDATE Mvtcolis
> SET NbColis = 0
> WHERE NbColis is null
>
> UPDATE Mvtcolis
> SET NbPlis = 0
> WHERE NbPlis is null
>
> UPDATE Mvtcolis
> SET NbPiece = 0
> WHERE NbPiece is null
>
> /* Fin.*/
>
>
Idem avec :
UPDATE Mvtcolis
SET NbPal = 0
WHERE NbPal is null AND id = (SELECT id FROM inserted)
ou bien :
UPDATE Mvtcolis
SET NbPal = 0
FROM MvtColis INNER JOIN inserted ON MvtColis.id = inserted.id
WHERE inserted.NbPal is null
Jacques.
"VUILLERMET Jacques" a écrit dans le message de
news:
>
> Une application fonctionne avec un client Access (ADP) et une base SQL
> Server.
>
> Elle fonctionne bien, et possède un formulaire ayant comme source une
table.
>
> Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui la
> modifie, code après la signature) alors Access est perdu : message
d'erreur
> "Conflit d'écriture - Cet enregistrement a été modifié par un autre
> utilisateur... [Sauvegarder enregistrement] [Copier dans le
Presse-papiers]
> [Annuler]".
>
> Le trigger fonctionne bien avec un autre client que Access (l'Analyseur de
> requêtes par exemple).
>
> Est-il possible d'utiliser Access (ADP) avec une base possédant des
triggers
> ?
>
> Jacques.
>
> ***********************************************
> CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
> FOR INSERT, UPDATE
> AS
>
> UPDATE Mvtcolis
> SET NbPal = 0
> WHERE NbPal is null
>
> UPDATE Mvtcolis
> SET NbColis = 0
> WHERE NbColis is null
>
> UPDATE Mvtcolis
> SET NbPlis = 0
> WHERE NbPlis is null
>
> UPDATE Mvtcolis
> SET NbPiece = 0
> WHERE NbPiece is null
>
> /* Fin.*/
>
>
"PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
J'explique rapidos, je suis à la bourre, si ça ne suffit pas, tu le dis.
Tu crées une base access.MDB. avec des tables et des relations. Avec
nouvelle base SQL. L'assistant ne crée pas de relations dans SQL, mais
J-Pierre
PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
"VUILLERMET Jacques" a écrit dans le message de
> Idem avec :
>
> UPDATE Mvtcolis
> SET NbPal = 0
> WHERE NbPal is null AND id = (SELECT id FROM inserted)
>
> ou bien :
>
> UPDATE Mvtcolis
> SET NbPal = 0
> FROM MvtColis INNER JOIN inserted ON MvtColis.id = inserted.id
> WHERE inserted.NbPal is null
>
> Jacques.
>
> "VUILLERMET Jacques" a écrit dans le message de
> news:
> >
> > Une application fonctionne avec un client Access (ADP) et une base SQL
> > Server.
> >
> > Elle fonctionne bien, et possède un formulaire ayant comme source une
> table.
> >
> > Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table
> > modifie, code après la signature) alors Access est perdu : message
> d'erreur
> > "Conflit d'écriture - Cet enregistrement a été modifié par un autre
> > utilisateur... [Sauvegarder enregistrement] [Copier dans le
> Presse-papiers]
> > [Annuler]".
> >
> > Le trigger fonctionne bien avec un autre client que Access
> > requêtes par exemple).
> >
> > Est-il possible d'utiliser Access (ADP) avec une base possédant des
> triggers
> > ?
> >
> > Jacques.
> >
> > ***********************************************
> > CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
> > FOR INSERT, UPDATE
> > AS
> >
> > UPDATE Mvtcolis
> > SET NbPal = 0
> > WHERE NbPal is null
> >
> > UPDATE Mvtcolis
> > SET NbColis = 0
> > WHERE NbColis is null
> >
> > UPDATE Mvtcolis
> > SET NbPlis = 0
> > WHERE NbPlis is null
> >
> > UPDATE Mvtcolis
> > SET NbPiece = 0
> > WHERE NbPiece is null
> >
> > /* Fin.*/
> >
> >
>
>
"PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
J'explique rapidos, je suis à la bourre, si ça ne suffit pas, tu le dis.
Tu crées une base access.MDB. avec des tables et des relations. Avec
nouvelle base SQL. L'assistant ne crée pas de relations dans SQL, mais
J-Pierre
PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
"VUILLERMET Jacques" <jvuillermet@no-spam.fr> a écrit dans le message de
> Idem avec :
>
> UPDATE Mvtcolis
> SET NbPal = 0
> WHERE NbPal is null AND id = (SELECT id FROM inserted)
>
> ou bien :
>
> UPDATE Mvtcolis
> SET NbPal = 0
> FROM MvtColis INNER JOIN inserted ON MvtColis.id = inserted.id
> WHERE inserted.NbPal is null
>
> Jacques.
>
> "VUILLERMET Jacques" <jvuillermet@no-spam.fr> a écrit dans le message de
> news: OQOpD4nsDHA.560@TK2MSFTNGP11.phx.gbl...
> >
> > Une application fonctionne avec un client Access (ADP) et une base SQL
> > Server.
> >
> > Elle fonctionne bien, et possède un formulaire ayant comme source une
> table.
> >
> > Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table
> > modifie, code après la signature) alors Access est perdu : message
> d'erreur
> > "Conflit d'écriture - Cet enregistrement a été modifié par un autre
> > utilisateur... [Sauvegarder enregistrement] [Copier dans le
> Presse-papiers]
> > [Annuler]".
> >
> > Le trigger fonctionne bien avec un autre client que Access
> > requêtes par exemple).
> >
> > Est-il possible d'utiliser Access (ADP) avec une base possédant des
> triggers
> > ?
> >
> > Jacques.
> >
> > ***********************************************
> > CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
> > FOR INSERT, UPDATE
> > AS
> >
> > UPDATE Mvtcolis
> > SET NbPal = 0
> > WHERE NbPal is null
> >
> > UPDATE Mvtcolis
> > SET NbColis = 0
> > WHERE NbColis is null
> >
> > UPDATE Mvtcolis
> > SET NbPlis = 0
> > WHERE NbPlis is null
> >
> > UPDATE Mvtcolis
> > SET NbPiece = 0
> > WHERE NbPiece is null
> >
> > /* Fin.*/
> >
> >
>
>
"PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
J'explique rapidos, je suis à la bourre, si ça ne suffit pas, tu le dis.
Tu crées une base access.MDB. avec des tables et des relations. Avec
nouvelle base SQL. L'assistant ne crée pas de relations dans SQL, mais
J-Pierre
PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
"VUILLERMET Jacques" a écrit dans le message de
> Idem avec :
>
> UPDATE Mvtcolis
> SET NbPal = 0
> WHERE NbPal is null AND id = (SELECT id FROM inserted)
>
> ou bien :
>
> UPDATE Mvtcolis
> SET NbPal = 0
> FROM MvtColis INNER JOIN inserted ON MvtColis.id = inserted.id
> WHERE inserted.NbPal is null
>
> Jacques.
>
> "VUILLERMET Jacques" a écrit dans le message de
> news:
> >
> > Une application fonctionne avec un client Access (ADP) et une base SQL
> > Server.
> >
> > Elle fonctionne bien, et possède un formulaire ayant comme source une
> table.
> >
> > Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table
> > modifie, code après la signature) alors Access est perdu : message
> d'erreur
> > "Conflit d'écriture - Cet enregistrement a été modifié par un autre
> > utilisateur... [Sauvegarder enregistrement] [Copier dans le
> Presse-papiers]
> > [Annuler]".
> >
> > Le trigger fonctionne bien avec un autre client que Access
> > requêtes par exemple).
> >
> > Est-il possible d'utiliser Access (ADP) avec une base possédant des
> triggers
> > ?
> >
> > Jacques.
> >
> > ***********************************************
> > CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
> > FOR INSERT, UPDATE
> > AS
> >
> > UPDATE Mvtcolis
> > SET NbPal = 0
> > WHERE NbPal is null
> >
> > UPDATE Mvtcolis
> > SET NbColis = 0
> > WHERE NbColis is null
> >
> > UPDATE Mvtcolis
> > SET NbPlis = 0
> > WHERE NbPlis is null
> >
> > UPDATE Mvtcolis
> > SET NbPiece = 0
> > WHERE NbPiece is null
> >
> > /* Fin.*/
> >
> >
>
>
> It works with one UPDATE as you've shown !
THANKS A LOT !!!
Jacques. :-)))
"Uwe Ricken" a écrit dans le message de news:
#
> Hi Jacques,
>
> Vadiim has told you the mistake you've made in your trigger.
> On the other hand it is useful als Vadim has written, to
> use DEFAULT-Values.
>
> If you don't want to use DEFAULTS you do not have to use
> multiple UPDATE-Statements within the trigger but you can
> handle it within only one UPDATE-Statement
>
> CREATE TRIGGER dbo.trg_AvoidNullInNb
> ON dbo.MvtColis
> FOR INSERT, UPDATE
> AS
> SET NOCOUNT ON
>
> UPDATE m
> SET m.nbPal = ISNULL(i..NbPal, 0),
> m.nbColIs = ISNULL(i.nbColIs, 0),
> m.nbPlis = ISNULL(i.nbPlis, 0),
> m.NBPiece = ISNULL(i.NBPiece, 0)
> FROM dbo.Mvtcolis m INNER JOIN inserted i
> ON (m.<PKField> = i.<PKField>)
>
> SET NOCOUNT OFF
> GO
>
> HTH ;-)
>
> --
> Gruß, Uwe Ricken
> MCP for SQL Server 2000 Database Implementation
>
> GNS GmbH, Frankfurt am Main
> http://www.gns-online.de
> http://www.memberadmin.de
> http://www.conferenceadmin.de
> ____________________________________________________
> APP: http://www.AccessProfiPool.de
> dbdev: http://www.dbdev.org
> FAQ: http://www.donkarl.com/AccessFAQ.htm
>
>
Une application fonctionne avec un client Access (ADP) et une base SQL
Server.
Elle fonctionne bien, et possède un formulaire ayant comme source une
Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui la
modifie, code après la signature) alors Access est perdu : message
"Conflit d'écriture - Cet enregistrement a été modifié par un autre
utilisateur... [Sauvegarder enregistrement] [Copier dans le
[Annuler]".
Le trigger fonctionne bien avec un autre client que Access (l'Analyseur de
requêtes par exemple).
Est-il possible d'utiliser Access (ADP) avec une base possédant des
?
Jacques.
***********************************************
CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
FOR INSERT, UPDATE
AS
UPDATE Mvtcolis
SET NbPal = 0
WHERE NbPal is null
UPDATE Mvtcolis
SET NbColis = 0
WHERE NbColis is null
UPDATE Mvtcolis
SET NbPlis = 0
WHERE NbPlis is null
UPDATE Mvtcolis
SET NbPiece = 0
WHERE NbPiece is null
/* Fin.*/
> It works with one UPDATE as you've shown !
THANKS A LOT !!!
Jacques. :-)))
"Uwe Ricken" <uricken@antispam.de> a écrit dans le message de news:
#jA91cpsDHA.628@tk2msftngp13.phx.gbl...
> Hi Jacques,
>
> Vadiim has told you the mistake you've made in your trigger.
> On the other hand it is useful als Vadim has written, to
> use DEFAULT-Values.
>
> If you don't want to use DEFAULTS you do not have to use
> multiple UPDATE-Statements within the trigger but you can
> handle it within only one UPDATE-Statement
>
> CREATE TRIGGER dbo.trg_AvoidNullInNb
> ON dbo.MvtColis
> FOR INSERT, UPDATE
> AS
> SET NOCOUNT ON
>
> UPDATE m
> SET m.nbPal = ISNULL(i..NbPal, 0),
> m.nbColIs = ISNULL(i.nbColIs, 0),
> m.nbPlis = ISNULL(i.nbPlis, 0),
> m.NBPiece = ISNULL(i.NBPiece, 0)
> FROM dbo.Mvtcolis m INNER JOIN inserted i
> ON (m.<PKField> = i.<PKField>)
>
> SET NOCOUNT OFF
> GO
>
> HTH ;-)
>
> --
> Gruß, Uwe Ricken
> MCP for SQL Server 2000 Database Implementation
>
> GNS GmbH, Frankfurt am Main
> http://www.gns-online.de
> http://www.memberadmin.de
> http://www.conferenceadmin.de
> ____________________________________________________
> APP: http://www.AccessProfiPool.de
> dbdev: http://www.dbdev.org
> FAQ: http://www.donkarl.com/AccessFAQ.htm
>
>
Une application fonctionne avec un client Access (ADP) et une base SQL
Server.
Elle fonctionne bien, et possède un formulaire ayant comme source une
Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui la
modifie, code après la signature) alors Access est perdu : message
"Conflit d'écriture - Cet enregistrement a été modifié par un autre
utilisateur... [Sauvegarder enregistrement] [Copier dans le
[Annuler]".
Le trigger fonctionne bien avec un autre client que Access (l'Analyseur de
requêtes par exemple).
Est-il possible d'utiliser Access (ADP) avec une base possédant des
?
Jacques.
***********************************************
CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
FOR INSERT, UPDATE
AS
UPDATE Mvtcolis
SET NbPal = 0
WHERE NbPal is null
UPDATE Mvtcolis
SET NbColis = 0
WHERE NbColis is null
UPDATE Mvtcolis
SET NbPlis = 0
WHERE NbPlis is null
UPDATE Mvtcolis
SET NbPiece = 0
WHERE NbPiece is null
/* Fin.*/
> It works with one UPDATE as you've shown !
THANKS A LOT !!!
Jacques. :-)))
"Uwe Ricken" a écrit dans le message de news:
#
> Hi Jacques,
>
> Vadiim has told you the mistake you've made in your trigger.
> On the other hand it is useful als Vadim has written, to
> use DEFAULT-Values.
>
> If you don't want to use DEFAULTS you do not have to use
> multiple UPDATE-Statements within the trigger but you can
> handle it within only one UPDATE-Statement
>
> CREATE TRIGGER dbo.trg_AvoidNullInNb
> ON dbo.MvtColis
> FOR INSERT, UPDATE
> AS
> SET NOCOUNT ON
>
> UPDATE m
> SET m.nbPal = ISNULL(i..NbPal, 0),
> m.nbColIs = ISNULL(i.nbColIs, 0),
> m.nbPlis = ISNULL(i.nbPlis, 0),
> m.NBPiece = ISNULL(i.NBPiece, 0)
> FROM dbo.Mvtcolis m INNER JOIN inserted i
> ON (m.<PKField> = i.<PKField>)
>
> SET NOCOUNT OFF
> GO
>
> HTH ;-)
>
> --
> Gruß, Uwe Ricken
> MCP for SQL Server 2000 Database Implementation
>
> GNS GmbH, Frankfurt am Main
> http://www.gns-online.de
> http://www.memberadmin.de
> http://www.conferenceadmin.de
> ____________________________________________________
> APP: http://www.AccessProfiPool.de
> dbdev: http://www.dbdev.org
> FAQ: http://www.donkarl.com/AccessFAQ.htm
>
>
Une application fonctionne avec un client Access (ADP) et une base SQL
Server.
Elle fonctionne bien, et possède un formulaire ayant comme source une
Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table (qui la
modifie, code après la signature) alors Access est perdu : message
"Conflit d'écriture - Cet enregistrement a été modifié par un autre
utilisateur... [Sauvegarder enregistrement] [Copier dans le
[Annuler]".
Le trigger fonctionne bien avec un autre client que Access (l'Analyseur de
requêtes par exemple).
Est-il possible d'utiliser Access (ADP) avec une base possédant des
?
Jacques.
***********************************************
CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
FOR INSERT, UPDATE
AS
UPDATE Mvtcolis
SET NbPal = 0
WHERE NbPal is null
UPDATE Mvtcolis
SET NbColis = 0
WHERE NbColis is null
UPDATE Mvtcolis
SET NbPlis = 0
WHERE NbPlis is null
UPDATE Mvtcolis
SET NbPiece = 0
WHERE NbPiece is null
/* Fin.*/
>"PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
problèmes."
Ce genre de phrase me fait peur : cela signifie que je suis tombé sur un cas
particulier !
Je vais essayer.
>"PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
problèmes."
Ce genre de phrase me fait peur : cela signifie que je suis tombé sur un cas
particulier !
Merci Jean-Pierre !
Jacques.
"J-Pierre" a écrit dans le message de
news:
> J'explique rapidos, je suis à la bourre, si ça ne suffit pas, tu le dis.
>
> Tu crées une base access.MDB. avec des tables et des relations. Avec
l'assistantAccess, tu la convertis à un projet ADP, avec une
> nouvelle base SQL. L'assistant ne crée pas de relations dans SQL, mais
crées des triggfers pour gérer tes relations.
>
> J-Pierre
> PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
problèmes.
>
> "VUILLERMET Jacques" a écrit dans le message de
news:%
> > Idem avec :
> >
> > UPDATE Mvtcolis
> > SET NbPal = 0
> > WHERE NbPal is null AND id = (SELECT id FROM inserted)
> >
> > ou bien :
> >
> > UPDATE Mvtcolis
> > SET NbPal = 0
> > FROM MvtColis INNER JOIN inserted ON MvtColis.id = inserted.id
> > WHERE inserted.NbPal is null
> >
> > Jacques.
> >
> > "VUILLERMET Jacques" a écrit dans le message de
> > news:
> > >
> > > Une application fonctionne avec un client Access (ADP) et une base SQL
> > > Server.
> > >
> > > Elle fonctionne bien, et possède un formulaire ayant comme source une
> > table.
> > >
> > > Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table
(qui la
> > > modifie, code après la signature) alors Access est perdu : message
> > d'erreur
> > > "Conflit d'écriture - Cet enregistrement a été modifié par un autre
> > > utilisateur... [Sauvegarder enregistrement] [Copier dans le
> > Presse-papiers]
> > > [Annuler]".
> > >
> > > Le trigger fonctionne bien avec un autre client que Access
(l'Analyseur de
> > > requêtes par exemple).
> > >
> > > Est-il possible d'utiliser Access (ADP) avec une base possédant des
> > triggers
> > > ?
> > >
> > > Jacques.
> > >
> > > ***********************************************
> > > CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
> > > FOR INSERT, UPDATE
> > > AS
> > >
> > > UPDATE Mvtcolis
> > > SET NbPal = 0
> > > WHERE NbPal is null
> > >
> > > UPDATE Mvtcolis
> > > SET NbColis = 0
> > > WHERE NbColis is null
> > >
> > > UPDATE Mvtcolis
> > > SET NbPlis = 0
> > > WHERE NbPlis is null
> > >
> > > UPDATE Mvtcolis
> > > SET NbPiece = 0
> > > WHERE NbPiece is null
> > >
> > > /* Fin.*/
> > >
> > >
> >
> >
>
>
>"PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
problèmes."
Ce genre de phrase me fait peur : cela signifie que je suis tombé sur un cas
particulier !
Je vais essayer.
>"PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
problèmes."
Ce genre de phrase me fait peur : cela signifie que je suis tombé sur un cas
particulier !
Merci Jean-Pierre !
Jacques.
"J-Pierre" <pas.de.pub.jpberchtold@hotmail.com> a écrit dans le message de
news: Oe0r9mpsDHA.2340@TK2MSFTNGP12.phx.gbl...
> J'explique rapidos, je suis à la bourre, si ça ne suffit pas, tu le dis.
>
> Tu crées une base access.MDB. avec des tables et des relations. Avec
l'assistantAccess, tu la convertis à un projet ADP, avec une
> nouvelle base SQL. L'assistant ne crée pas de relations dans SQL, mais
crées des triggfers pour gérer tes relations.
>
> J-Pierre
> PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
problèmes.
>
> "VUILLERMET Jacques" <jvuillermet@no-spam.fr> a écrit dans le message de
news:%23248JWpsDHA.424@TK2MSFTNGP11.phx.gbl...
> > Idem avec :
> >
> > UPDATE Mvtcolis
> > SET NbPal = 0
> > WHERE NbPal is null AND id = (SELECT id FROM inserted)
> >
> > ou bien :
> >
> > UPDATE Mvtcolis
> > SET NbPal = 0
> > FROM MvtColis INNER JOIN inserted ON MvtColis.id = inserted.id
> > WHERE inserted.NbPal is null
> >
> > Jacques.
> >
> > "VUILLERMET Jacques" <jvuillermet@no-spam.fr> a écrit dans le message de
> > news: OQOpD4nsDHA.560@TK2MSFTNGP11.phx.gbl...
> > >
> > > Une application fonctionne avec un client Access (ADP) et une base SQL
> > > Server.
> > >
> > > Elle fonctionne bien, et possède un formulaire ayant comme source une
> > table.
> > >
> > > Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table
(qui la
> > > modifie, code après la signature) alors Access est perdu : message
> > d'erreur
> > > "Conflit d'écriture - Cet enregistrement a été modifié par un autre
> > > utilisateur... [Sauvegarder enregistrement] [Copier dans le
> > Presse-papiers]
> > > [Annuler]".
> > >
> > > Le trigger fonctionne bien avec un autre client que Access
(l'Analyseur de
> > > requêtes par exemple).
> > >
> > > Est-il possible d'utiliser Access (ADP) avec une base possédant des
> > triggers
> > > ?
> > >
> > > Jacques.
> > >
> > > ***********************************************
> > > CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
> > > FOR INSERT, UPDATE
> > > AS
> > >
> > > UPDATE Mvtcolis
> > > SET NbPal = 0
> > > WHERE NbPal is null
> > >
> > > UPDATE Mvtcolis
> > > SET NbColis = 0
> > > WHERE NbColis is null
> > >
> > > UPDATE Mvtcolis
> > > SET NbPlis = 0
> > > WHERE NbPlis is null
> > >
> > > UPDATE Mvtcolis
> > > SET NbPiece = 0
> > > WHERE NbPiece is null
> > >
> > > /* Fin.*/
> > >
> > >
> >
> >
>
>
>"PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
problèmes."
Ce genre de phrase me fait peur : cela signifie que je suis tombé sur un cas
particulier !
Je vais essayer.
>"PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
problèmes."
Ce genre de phrase me fait peur : cela signifie que je suis tombé sur un cas
particulier !
Merci Jean-Pierre !
Jacques.
"J-Pierre" a écrit dans le message de
news:
> J'explique rapidos, je suis à la bourre, si ça ne suffit pas, tu le dis.
>
> Tu crées une base access.MDB. avec des tables et des relations. Avec
l'assistantAccess, tu la convertis à un projet ADP, avec une
> nouvelle base SQL. L'assistant ne crée pas de relations dans SQL, mais
crées des triggfers pour gérer tes relations.
>
> J-Pierre
> PS: J'utilise couramment des triggers avec ADP, je n'ai jamais eu de
problèmes.
>
> "VUILLERMET Jacques" a écrit dans le message de
news:%
> > Idem avec :
> >
> > UPDATE Mvtcolis
> > SET NbPal = 0
> > WHERE NbPal is null AND id = (SELECT id FROM inserted)
> >
> > ou bien :
> >
> > UPDATE Mvtcolis
> > SET NbPal = 0
> > FROM MvtColis INNER JOIN inserted ON MvtColis.id = inserted.id
> > WHERE inserted.NbPal is null
> >
> > Jacques.
> >
> > "VUILLERMET Jacques" a écrit dans le message de
> > news:
> > >
> > > Une application fonctionne avec un client Access (ADP) et une base SQL
> > > Server.
> > >
> > > Elle fonctionne bien, et possède un formulaire ayant comme source une
> > table.
> > >
> > > Mais quand je spécifie un trigger (INSERT, UPDATE) sur cette table
(qui la
> > > modifie, code après la signature) alors Access est perdu : message
> > d'erreur
> > > "Conflit d'écriture - Cet enregistrement a été modifié par un autre
> > > utilisateur... [Sauvegarder enregistrement] [Copier dans le
> > Presse-papiers]
> > > [Annuler]".
> > >
> > > Le trigger fonctionne bien avec un autre client que Access
(l'Analyseur de
> > > requêtes par exemple).
> > >
> > > Est-il possible d'utiliser Access (ADP) avec une base possédant des
> > triggers
> > > ?
> > >
> > > Jacques.
> > >
> > > ***********************************************
> > > CREATE TRIGGER trg_AvoidNullInNb ON [dbo].[MvtColis]
> > > FOR INSERT, UPDATE
> > > AS
> > >
> > > UPDATE Mvtcolis
> > > SET NbPal = 0
> > > WHERE NbPal is null
> > >
> > > UPDATE Mvtcolis
> > > SET NbColis = 0
> > > WHERE NbColis is null
> > >
> > > UPDATE Mvtcolis
> > > SET NbPlis = 0
> > > WHERE NbPlis is null
> > >
> > > UPDATE Mvtcolis
> > > SET NbPiece = 0
> > > WHERE NbPiece is null
> > >
> > > /* Fin.*/
> > >
> > >
> >
> >
>
>