Lancer deux requêtes successivement
Résolu
transfix
-
RATCHKOV -
RATCHKOV -
Bonjour,
mon besoin créer un enregistrement dans une nouvelle table suite à une sélection par critère puis tout de suite faire une mise à jour des champs dans l'enregistrement crée.
les requêtes suivantes font cela mais en deux temps est il possible de les concaténer
INSERT INTO COMIntim8 ( N°Cde )
SELECT Tresorerie.N°Cde
FROM Tresorerie
WHERE (((Tresorerie.soldereçu)>0) And ((Tresorerie.NOBord2)>0) And ((Tresorerie.SOLDé)='o'));
UPDATE COMIntim8 SET COMIntim8.MontantCalc = ((Acomptereçu+soldereçu)*0.3), COMIntim8.DateCom = "CURRENT_DATE", COMIntim8.Encaisprévu = (DateCOm+90)
WHERE (((COMIntim8.N°cde)>0));
MErci réponse (si vous me répondez macro je ne sais pas comment ça marche)
mon besoin créer un enregistrement dans une nouvelle table suite à une sélection par critère puis tout de suite faire une mise à jour des champs dans l'enregistrement crée.
les requêtes suivantes font cela mais en deux temps est il possible de les concaténer
INSERT INTO COMIntim8 ( N°Cde )
SELECT Tresorerie.N°Cde
FROM Tresorerie
WHERE (((Tresorerie.soldereçu)>0) And ((Tresorerie.NOBord2)>0) And ((Tresorerie.SOLDé)='o'));
UPDATE COMIntim8 SET COMIntim8.MontantCalc = ((Acomptereçu+soldereçu)*0.3), COMIntim8.DateCom = "CURRENT_DATE", COMIntim8.Encaisprévu = (DateCOm+90)
WHERE (((COMIntim8.N°cde)>0));
MErci réponse (si vous me répondez macro je ne sais pas comment ça marche)
A voir également:
- Lancer deux requêtes successivement
- Deux ecran pc - Guide
- Comment faire deux colonnes sur word - Guide
- Nombre de jours entre deux dates excel - Guide
- Lancer une application au démarrage windows 10 - Guide
- Deux whatsapp sur un téléphone - Guide
6 réponses
ça marche avec la syntaxe suivante
INSERT INTO COMIntim8 ( N°Cde, MontantCalc, datecreation, DateEncaisPrevu )
SELECT Tresorerie.N°Cde, ((Acomptereçu+soldereçu)*0.3) AS Expr1,date() AS Expr2,date()+90 AS Expr3
FROM Tresorerie
WHERE (((Tresorerie.soldereçu)>0) AND ((Tresorerie.NOBord2)>0) AND ((Tresorerie.SOLDé)='o'));
merci pour votre aide
INSERT INTO COMIntim8 ( N°Cde, MontantCalc, datecreation, DateEncaisPrevu )
SELECT Tresorerie.N°Cde, ((Acomptereçu+soldereçu)*0.3) AS Expr1,date() AS Expr2,date()+90 AS Expr3
FROM Tresorerie
WHERE (((Tresorerie.soldereçu)>0) AND ((Tresorerie.NOBord2)>0) AND ((Tresorerie.SOLDé)='o'));
merci pour votre aide
RATCHKOV
En fait je voudrais créer une formulaire à partir de la requête issue de deux tables : (Chercheur d'emploi) et ( Diplomes) liées par un Id de telle façon que chaque chercheur apparaisse sur une seule ligne avec les 3 diplomes affichés respectivement sur les colonnes : Diplome1- Diplome2 - Diplome3 (Chaque chercheur peut avoir plusieurs diplome). autrement dit, je veux pas que le méme chercheur se répéte trois fois. {ce que j'ai utilisé au niveau de la requête c'est le regroupement par le critére : premier dans la colonne (diplome1) et le critére dernier dans la colonne (diplome3 mais comment faire la colonne (diplome2)}?
RATCHKOV
En fait je voudrais créer une formulaire à partir de la requête issue de deux tables : (Chercheur d'emploi) et ( Diplomes) liées par un Id de telle façon que chaque chercheur apparaisse sur une seule ligne avec les 3 diplomes affichés respectivement sur les colonnes : Diplome1- Diplome2 - Diplome3 (Chaque chercheur peut avoir plusieurs diplome). autrement dit, je veux pas que le méme chercheur se répéte trois fois. {ce que j'ai utilisé au niveau de la requête c'est le regroupement par le critére : premier dans la colonne (diplome1) et le critére dernier dans la colonne (diplome3 mais comment faire la colonne (diplome2)}?
Bonjour,
Je ne sais pas si ce que je vais te donner fonctionne sous Access, mais il n'ya pas de raisons...
A priori je ferais comme ça :
INSERT INTO COMIntim8 ( N°Cde, MontantCalc, DateCom, Encaisprévu )
SELECT Tresorerie.N°Cde, ((Acomptereçu+soldereçu)*0.3), "CURRENT_DATE", "CURRENT_DATE"+90
FROM Tresorerie
WHERE (((Tresorerie.soldereçu)>0) And ((Tresorerie.NOBord2)>0) And ((Tresorerie.SOLDé)='o'));
Un petit bémol pour le Encaisprévu, je ne sais pas si cela fonctionnera. Mais au pire elle utilise des données statiques, donc pour le coup ça ne doit pas être trop gênant de faire une deuxième requête juste pour ce champ.
Xavier
Je ne sais pas si ce que je vais te donner fonctionne sous Access, mais il n'ya pas de raisons...
A priori je ferais comme ça :
INSERT INTO COMIntim8 ( N°Cde, MontantCalc, DateCom, Encaisprévu )
SELECT Tresorerie.N°Cde, ((Acomptereçu+soldereçu)*0.3), "CURRENT_DATE", "CURRENT_DATE"+90
FROM Tresorerie
WHERE (((Tresorerie.soldereçu)>0) And ((Tresorerie.NOBord2)>0) And ((Tresorerie.SOLDé)='o'));
Un petit bémol pour le Encaisprévu, je ne sais pas si cela fonctionnera. Mais au pire elle utilise des données statiques, donc pour le coup ça ne doit pas être trop gênant de faire une deuxième requête juste pour ce champ.
Xavier
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
Sous access tu fais t deux requetes
puis ensuite tu fais une macros qui execute t 2 requete l'une apres l'autre et le tour est joué
Sous access tu fais t deux requetes
puis ensuite tu fais une macros qui execute t 2 requete l'une apres l'autre et le tour est joué
Désolé çà marche pas
le premier enregistrement de la base est crée mais les zones avec les dates ne sont pas mise à jour et lors d'une deuxième exécution il y a un message comme quoi il va créer un enregistrement et tout de suite derrière un message comme quoi il ne peut pas ajouter suite à une valeur nulle et violation de clé
merci réponse
le premier enregistrement de la base est crée mais les zones avec les dates ne sont pas mise à jour et lors d'une deuxième exécution il y a un message comme quoi il va créer un enregistrement et tout de suite derrière un message comme quoi il ne peut pas ajouter suite à une valeur nulle et violation de clé
merci réponse