Declencheurs SQL dans la Gestion commerciale Sage 100

Forum consacré aux développements d'applications interfacées avec les logiciels Sage

Modérateurs: Super Modérateur, Modérateurs

Règles du forum
Merci de prendre connaissance des règles d'utilisation du forum

Avant de poster un nouveau message, utilisez la fonction RECHERCHER. Indiquez la VERSION de votre logiciel et toutes informations utiles à la résolution de votre question. Ne rédigez pas vos messages en MAJUSCULES. Soyez courtois et pensez aux formules de POLITESSE d'usage. Les messages à vocation COMMERCIALE ou PUBLICITAIRE seront supprimés.

*** LORSQU'UN SUJET EST RESOLU, SON AUTEUR DOIT EDITER LE 1ER MESSAGE DU SUJET EN HAUT DE PAGE ET COCHER "SUJET RESOLU" ***

Declencheurs SQL dans la Gestion commerciale Sage 100

Messagede Asmami » Dim 7 Mai 2006 01:37

Bonjour,<BR><BR>Je suis à la recherche d'exemples de déclencheurs SQL dans la gestion commerciale 100 SQL.<BR>Pour permettre des contrôles de saisies ou pour afficher des messages d'alertes !!<BR><BR>Merci à vous
Asmami
Posteur habitué
Posteur habitué
 
Messages: 22
Inscription: Dim 7 Mai 2006 01:34

Declencheurs SQL dans la Gestion commerciale Sage 10...

Messagede Chaps » Mer 10 Mai 2006 17:31

Bonjour,<BR><BR>Je me joins à la demande d'Ahmed, et j'suis donc aussi preneur d'info à ce sujet....<BR><BR>L'union fait la force........<BR><BR>Merci à ceux qui répondront <img src=http://www.zoom.fr/cgi_bin/img/1.gif align=absmiddle>
Chaps
Contributeur
Contributeur
 
Messages: 84
Inscription: Mer 1 Juin 2005 23:58

Declencheurs SQL dans la Gestion commerciale Sage 10...

Messagede Chaps » Lun 15 Mai 2006 14:44

C'est un début, Merci <img src=http://www.zoom.fr/cgi_bin/img/3.gif align=absmiddle>
Chaps
Contributeur
Contributeur
 
Messages: 84
Inscription: Mer 1 Juin 2005 23:58

Messagede Kolaite » Mer 6 Sep 2006 15:42

Pour répondre à votre demande, ci-dessous un exemple de script nous permet de faire plusieurs chose :
- création d'une table nommée "GPA0" dans une base ligne 100 sous SQL Server.
- création d'un trigger nommé "TG_INSGPAO_F_DOCLIGNE" sur la table des lignes de document. A la saisie d'un article en fabrication comme la parure dans le Bijou SA, ce trigger va alimenter une table externe précédemment créer, "GPA0".
- création d'un trigger nommé "TG_INS_F_ARTICLE_CODEBARRE" pour création automatique d'un code barre.
- création d'un trigger nommé "TG_INS_CONTROLE_CANUM_F_DOCLIGNE" pour obliger un user à saisir une affaire en GC100 à partir d'un BL.




Code: Tout sélectionner
DROP Table GPAO
go
Create Table GPAO
(
   AR_Ref varchar(20),
   DL_Qte real,
   DO_Piece varchar(20)

)
go
drop Trigger TG_INSGPAO_F_DOCLIGNE
go

Create Trigger TG_INSGPAO_F_DOCLIGNE on F_DOCLIGNE for Insert as
   Insert into GPAO(AR_Ref,DL_Qte,DO_Piece) select i.AR_Ref,DL_Qte,DO_Piece from inserted i,F_ARTICLE a
   where i.AR_Ref=a.AR_Ref and a.AR_Nomencl=1
go

Drop Trigger TG_INS_F_ARTICLE_CODEBARRE
go
Create Trigger TG_INS_F_ARTICLE_CODEBARRE on F_ARTICLE for Insert as
   Declare @NAF varchar(20)
   Select @NAF=D_Ape from P_DOSSIER
   Update F_ARTICLE Set AR_CodeBarre=@NAF + inserted.AR_Ref from inserted Where F_ARTICLE.cbMarq=inserted.cbMarq
go

Drop Trigger TG_INS_CONTROLE_CANUM_F_DOCLIGNE
go

Create Trigger TG_INS_CONTROLE_CANUM_F_DOCLIGNE on F_DOCLIGNE For Insert
as
   If (Select count('a') from inserted Where Isnull(CA_Num,'')='' and DO_Type=2)>0
   BEGIN
      RAISERROR ('Le code affaire est obligatoire en saisie !!', 16, 1)
      ROLLBACK TRANSACTION
   END



Si cela peut déjà vous mettre sur la voie.....
Bon courage
Kolaite
Kolaite
Contributeur
Contributeur
 
Messages: 50
Inscription: Jeu 26 Mai 2005 07:21

Messagede j.and.b » Mer 13 Sep 2006 12:27

Bonjour, ci-joint un exemple qui permet de rendre obligatoire la saisie du représentant dans les doc de ventes

Code: Tout sélectionner
CREATE TRIGGER [CHAMP_OBLIG_CLIENT] ON [f_docentete]
FOR  UPDATE
AS

DECLARE
@do_piece varchar(17),
@re_no int,
@do_domaine int

SELECT
@re_no =      i.re_no,
@do_piece=      i.do_piece,
@do_domaine =      i.do_domaine
from inserted i


IF( @re_no IS NULL ) OR (@re_no = '') and @do_domaine=0
BEGIN
    RAISERROR ('Le ReprĂ©sentant est Obligatoire !', 16, 1)
ROLLBACK TRANSACTION
    RETURN 
END
j.and.b
Contributeur
Contributeur
 
Messages: 61
Inscription: Mer 13 Sep 2006 12:22
Localisation: GRENOBLE

Messagede vrp2 » Jeu 11 Oct 2007 11:05

bonjour je suis égallement à la recherche pour afficher un message d'alerte mais sans que cela soit bloquant, purement indicatif.

quelqu'un aurait il une piste?
vrp2
Super Contributeur
Super Contributeur
 
Messages: 222
Inscription: Sam 5 Mai 2007 20:13

Messagede Batman » Jeu 11 Oct 2007 12:52

bonjour

quelle genre d'alerte ? a l'entete de doc, , a la ligne ....

utilisez l'alerte dans les infos libre /apropos de / options

choisissez le type d'infolibre puis type valeur calculée , vous verre que vous pouvez mettre une alerte du type

Si client infolibre1 = " oui " Alors alerte(coucou c'est moi :wink: ) FinSi

c'est résumé bien sur
Avatar de l’utilisateur
Batman
Super Modérateur
Super Modérateur
 
Messages: 475
Inscription: Mar 27 Fév 2007 15:36

Messagede vrp2 » Mar 16 Oct 2007 08:55

bonjour batman,

j'avais deja fait un post Ă  ce sujet,
avec la fonction alerte, on accede pas forcemment Ă  toute les infos de la base,
pour mes soucis, Ă  priori le seul moyen serait de passer par un trigger SQL mais cette solution bloque l'enregistrement tant que la condition n'est pas valide.
vrp2
Super Contributeur
Super Contributeur
 
Messages: 222
Inscription: Sam 5 Mai 2007 20:13

Messagede Batman » Lun 22 Oct 2007 14:55

pour j.and.b et autres afficionados des triggers :wink:

hello

j'ai testé par curiosité ton triggers représentant obligatoire tel que tu l'a écris

il marche mais, quand je lui renseigne après avoir eu le message "le representant... puis erreur SQL", le code représentant , ça ne change rien il me renvoi toujours l'erreur.

pourquoi ?

par contre pour info si je lui renseigne dans l'icone "informations sur le doc" , je n'aurais pas le message .

c'est au niveau de l'info saisie direct dans le combo box representant a l'affichage de l'entete que cela pose problème, on dirait que SQL considère toujours le code representant "à vide"

je suis en V14.04

anomalie ou pas , suis preneur de la soluce :wink:
Avatar de l’utilisateur
Batman
Super Modérateur
Super Modérateur
 
Messages: 475
Inscription: Mar 27 Fév 2007 15:36

Re: Declencheurs SQL dans la Gestion commerciale Sage 100

Messagede Asmami » Ven 4 Sep 2009 12:23

Bonjour,

J'ai une solution plus simple pour les personnes qui veulent effectuer le contrĂ´le Ă  partir de Sage.

Il suffit de créer un champ libre calculé au niveau des entêtes. Par exemple pour contrôler la saisie du code représentant j'utilise la formule suivante :

Si DocEntete.Collaborateur = "" Alors
Alerte("Le commercial n'est pas renseigné !!")
FinSi


Attention :
Le message n'est pas bloquant, il n'empêche pas la création de document et s'applique à tous les documents (devis --> facture)
Vous pouvez rajouter d'autres conditions si vous voulez

Bonne continuation :D
Asmami
Posteur habitué
Posteur habitué
 
Messages: 22
Inscription: Dim 7 Mai 2006 01:34

Re: Declencheurs SQL dans la Gestion commerciale Sage 100

Messagede OokieDookie » Ven 4 Sep 2009 15:18

@Batman,

C'est parce que le produit est mal codé :evil:
Recce007 donne les détails ici.

Bon WE Ă  tous
"L'expérience est le nom que chacun donne à ses erreurs." (O. Wilde)
Qualité et précision de la question conditionnent celles de la réponse. :roll:
:arrow:Nouveau venu ? Une urgence ? A lire...
:arrow:SMS-addict / M(o)ufles OEM ?
Avatar de l’utilisateur
OokieDookie
Modérateur
Modérateur
 
Messages: 1012
Inscription: Jeu 14 Fév 2008 13:50
Localisation: Paris


Retourner vers Développements ODBC, Objets métiers, SQL

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités