begin process at 2012 05 30 03:27:38
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

Javascript et ActiveX

 > 

Autre

 > 

Requete Access


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Requete Access

mercredi 2 décembre 2009 à 08:59:03 | Requete Access

Mike490

Bonjour à tous.

Je travail sur une aplli web en ASP.NET/C# et je souhaiterai manipuler des requetes d'une BDD Access en javascript.

J'arrive à ouvrir ma BDD Access et une requete (selectionné dans une grille asp) afin de la modifier et/ou de l'executer.

Je souhaiterai savoir si il est possible de créer une requete Access en javascript.

Voici mon code :
Code Javascript :
<script type="text/javascript">           
        
function UltraWebGrid1_AfterRowActivateHandler(gridName, rowId){	
	row = igtbl_getRowById(rowId);    
}

        function runaccess(action) {
          if (row != null) {
              form_query = row.getCell(4).getValue();
              type_query = row.getCell(6).getValue();
              nom_query = row.getCell(1).getValue();
              queryname = "R_" + form_query.substr(2) + "_" + type_query + "_" + nom_query;
             
              var AccessApp = new ActiveXObject("Access.Application");
              AccessApp.Visible = false;
              AccessApp.UserControl = true;
              AccessApp.OpenCurrentDatabase("c:\\MaBDDAccess.mdb");

              switch (action) {
                  case 'run':
             
                      var numoc = '<%=Session["num_oc"]%>';
                                                            
                      var DAO;
                      var Qry;
                      var strsqlbefore = "";
                      var strsqlafter = "";
                      var Bs;
                      
                      Bs = AccessApp.CurrentDb();
                      DAO = new ActiveXObject("DAO.DBEngine.36");
                      
                      Qry = DAO.workspaces(0).openDatabase("c:\\MaBDDAccess.mdb").QueryDefs(queryname).SQL;                                                        
                      strsqlbefore = DAO.workspaces(0).openDatabase("c:\\MaBDDAccess.mdb").QueryDefs(queryname).SQL;
                     
                      strsqlafter = strsqlbefore.replace("num_oc()", numoc);
                      DAO.workspaces(0).openDatabase("c:\\MaBDDAccess.mdb").QueryDefs(queryname).SQL = strsqlafter;
                      DAO.Close;
                      AccessApp.Application.Quit();
                    
                      var AccessApp = new ActiveXObject("Access.Application");
                      AccessApp.Visible = false;
                      AccessApp.UserControl = true;
                      AccessApp.OpenCurrentDatabase("c:\\MaBDDAccess.mdb");
                      AccessApp.DoCmd.OpenQuery(queryname, 0, 1);
                      DAO.workspaces(0).openDatabase("c:\\MaBDDAccess.mdb").QueryDefs(queryname).SQL = strsqlbefore;
                      AccessApp.Application.Quit();
                      break;
                      
                  case 'modify': 

                      AccessApp.DoCmd.OpenQuery(queryname, 1, 1);
                      break;

                  case 'create':

                      // AccessApp.DoCmd.CopyObject(queryname + "_copy", acQuery, queryname);
                      break;
              }
}
    </script>


bouton asp :
Code ASP.NET :
<input type="button" value="Create Query" onclick="runaccess('create')" />
    <input type="button" value="Modify Query" onclick="runaccess('modify')" />
    <input type="button" value="Run Query" onclick="runaccess('run')" />


Comme vous pouvez le voir j'essaye de dupliquer une requete dans le case 'create' mais il y a une erreur sur le "acQuery".

Aidez-moi svp et merci d'avance.
mercredi 2 décembre 2009 à 09:08:14 | Re : Requete Access

tpoinsot


bonjour,

acQuery c'est une constante Access définie dans VBA, non? il faut remplacer par sa valeur. c'est 1, je crois.

thip
mercredi 2 décembre 2009 à 09:12:47 | Re : Requete Access

Bul3

Membre Club
Bonjour,
oui, mais c'est exclusif IE

Code Javascript :
var db =new ActiveXObject( "ADODB.Recordset" );	
var driver = "Driver={Microsoft Access Driver (*.mdb)};";
var connect = driver + "DBQ="+nom de la base;
var sql="SELECT * FROM ??? WHERE ??? ";
db.Open( sql, connect );
if ( db.EOF )	{	}
db.Close();

driver est à modifier en fonction de où est la base
( locale, serveur ... )
pour être compatible multi-navigateurs,
ces requêtes sont faites avec les langages
sur le serveur
vous semblez utilisez Acces.Application,
ce doit être possible aussi "de ce coté là",
mais je n'ai plus la manière de faire ni
en tête ni sur une doc quelconque.
Cordialement [mon Site] [M'écrire] Bul
mercredi 2 décembre 2009 à 09:20:37 | Re : Requete Access

Mike490

Salut tpoinsot et merci pour ta reponse.

En effet il faut remplacer acQuery par sa valeur, je ne sais pas si c'est 1 mais j'ai testé et il n'y a plus d'erreur sauf que je ne vois pas la copie de ma requete.

(Cette erreur viens du fait que j'ai repris le code d'un collegue et que je ne maîtrise pas vraiment se langage.)

Faut-il procéder autrement ?

mercredi 2 décembre 2009 à 09:24:14 | Re : Requete Access

Mike490

Merci Bul3 pour ta suggestion, je fais des tests et je te tiens au courant.
mercredi 2 décembre 2009 à 09:41:27 | Re : Requete Access

tpoinsot

Réponse acceptée !
ce que je comprends de ton code est de créer une requête dans la base Access pour une utilisation ultérieure. Le code de Bul3 permet de créer une requête pour extraire immédiatement les données correspondantes. A toi de faire en fonction de tes objectifs.

Pour CopyObject, il y a un premier argument facultatif : essaie de l'ajouter.

Code Javascript :
AccessApp.DoCmd.CopyObject("c:\\MaBDDAccess.mdb", queryname + "_copy", 1, queryname);


thip
mercredi 2 décembre 2009 à 09:52:10 | Re : Requete Access

Mike490

YESSS, cool ca marche merci tpoinsot c'est nikel.

Merci à toi également Bul3, ton code peu peut-être me servir pour plus tard.
mercredi 2 décembre 2009 à 09:58:49 | Re : Requete Access

Bul3

Membre Club
exactement, pour tout, tpoinsot
je vais conserver précieusement cette fois
la manière de faire avec Acces.Application


Cette discussion est classée dans : access, var, dao, accessapp, queryname


Répondre à ce message

Sujets en rapport avec ce message

Ouvrir formulaire Access en 1er plan [ par Mike490 ] Bonjour à tous, J'ai une fonction javascript qui se lance sur le click d'un bouton html. Cette fonction me permet de lancer Microsoft Access et d'ouv fct getElementsByName sous IE [ par lesly75 ] Bjr à tous, je rencontre un problème avec la fct getElementsByName sous IE. j'essaye (depuis 6 heures env !!) de recupérer le nbre de div ayant un n Parcours d'un tableau en JS [ par Canyata ] Bonjour à tous [^^happy17] J'ai une question à vous poser. J'ai un tableau en HTML sur ma page: [code=php]echo""; echo""; echo""; echo""; galerie simple avec image grossissante au survol et replacement auto [ par The Pooh ] Bonjour à tous. peut être que ce topic existe déjà (cela ne m'étonnerai pas :) mais je ne lai pas trouvé. Voilà j'ai ce script avec ses variable que Automatisation d'un diaporama [ par ciranox ] Bonjour, J'ai un diaporama que j'ai trouvé sur ce site. Je voudrais juste que mes images défile automatiquement et pourvoir régler la vitesse. J'ai t JS : Firefox oui, autres navigateurs non... [ par tets88 ] Bonjour, Je me suis amusé à faire un calendrier. Sous Firefox il fonctionne no problemo amigo. Dès que j'essaye de l'ouvrir avec un autre navigateur changer titre page dynamiquement [ par dareman ] salut, je cherche a modifier dynamiquement le contenu de la balise , en ajax uniquement (pas droit d'utiliser du php pour ce travail). je cherche don editeur WYSIWYG problème [ par gregroar ] Bonjour, je m'inspire de [url=http://www.javascriptfr.com/codes/SAISIE-WYSIWYG_24237.aspx]http://www.javascriptfr.com/codes/SAISIE-WYSIWYG_24237.aspx[ removeAttribute("disabled") d'une option d'un select [ par sarrjo ] Bonjour, Voici mon probléme j'ai deux miltiselects:Genre et nom dans lesquels si je choisis 1 element de chaque et je valide ,j'ai un tableau qui se c Glissement automatique [ par ciranox ] Bonjour, J'ai essayé de modifier mon script de mon diaporama pour que les images puissent glisser automatiquement. Voici le script en question: [c


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 6,334 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales