| |
Posté le 08 décembre 2005 - 22:00 |
Bonsoir,
Pour faire suite à un des mes messages précédent, je souhaiterai savoir comment accéder à une bd access sans devoir passer par le OLE BD because je dois impérativement gérer le blocages des enregistrements voir des fichiers dans le cadre d'une application multi utilisateurs.
D'avance je vous remercie pour votre AIDE.
Olivier B. |
| |
| |
| | | |
|
| | |
| |
Posté le 09 décembre 2005 - 08:37 |
Access recommande l'utilisation de ADO (ADO.net pour les derniers).
Mais si tu ne développes pas en ADO c'est très difficile de gérer les locks. Déjà en ADO, il faut travailler en Optimistic lock qui se déclenche non pas à la lecture de l'enregistrement mais à sa mise à jour dans le recordset.
Il existe un moyen de contournement en gérant une table des locks manuellement.
-- Emmanuel Lecoester |
| |
| |
| | | |
|
| | |
| |
Posté le 09 décembre 2005 - 09:06 |
Ok, mais comment développer en ADO ??
Quelles sont les fonctions à utiliser
Olivier B. |
| |
| |
| | | |
|
| | |
| |
Posté le 09 décembre 2005 - 11:14 |
On ne peut pas utiliser ADO directement dans WinDev. Il vous faudra donc développer des modules spcifiques dans d'autres langages
Pourquoi ne pas utiliser de tables de locks ? |
| |
| |
| | | |
|
| | |
| |
Posté le 09 décembre 2005 - 13:34 |
On ne peut pas parceque la base de données travaille déjà avec un programme de gestion développé en VB6. Rajouter une table demanderait un travail considérable sur le programme VB6. De plus et je peux me tromper, il me semble que ca ralentirait les traitements.
Il y a certainement un moyen avec les fonctions Windev mais je me demande s' il ne faut pas paramètrer quelque chose dans access mais kwa???? sais pas.
Pourquoi il ne veut pas en natif avec access, c'est toujours par le OLEDB
Je suis ouvert à toutes autres propositionssss.... sinon je serais dans l'obligation de changer d'environement de développement et ca pas trop envie.
Est ce que la version 10 pourra m'aider???
Merci pour votre( ton) aide
Olivier |
| |
| |
| | | |
|
| | |
| |
Posté le 09 décembre 2005 - 15:26 |
D'après ce qu'on trouve sur le net, la première chose à faire est de paramètrer ton fichier UDL ou chaine de connexion de la sorte suivante :
Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\MyDadabase\MyData.mdb; Mode=Share Deny None; Jet OLEDB:Engine Type=5; Jet OLEDB:Database Locking Mode=1; Jet OLEDB:Locking Granularity=2
Ensuite, le mieux serait de regarder la documentataion WinDev concernant les connexions OLE-DB pour savoir si la méthode HLitBloque est gérée (désolé je ne l'ait pas sous les yeux). Dans le cas contraire c'est très difficile de gérer le lock manuellement dans WinDev pour cause du décalage du lock pessimistic. Un lien msdn pour te présenter ces difficultés.
http://msdn.microsoft.com/library/default.asp…
Sinon si tu n'as pas beaucoup de traitements, tu peux "déporter" tes traitements au travers d'une DLL en VB ou C (C'est très vite fait). C'est la DLL qui gère l'accès aux données et WinDev récupère les données au moyen d'appels DLL.
Désolé de ne pas t'être d'une plus grande aide.
PS : ce serait bête de changer d'AGL pour un problème de blocage de ligne en base.
-- Emmanuel |
| |
| |
| | | |
|
| | |
| |
Posté le 09 décembre 2005 - 15:51 |
Bonjour,
Sans faire de pub pour quelqu'un, mais pour ADO et Windev n'est-il pas intéressant de voir le site www.sqlmanagerx.com ?
Salutations.
ATGD. |
| |
| |
| | | |
|
| | |
| |
Posté le 09 décembre 2005 - 15:58 |
En parlant de quelqu'un j'entends bien Emmanuel.... |
| |
| |
| | | |
|
| | |
| |
Posté le 09 décembre 2005 - 15:58 |
En parlant de quelqu'un j'entends bien Emmanuel.... |
| |
| |
| | | |
|
| | |
| |
Posté le 09 décembre 2005 - 20:41 |
"atgd" <atgd@free.fr> a écrit dans le message de news:4399937a@news.pcsoft.fr...
Bonjour,
Sans faire de pub pour quelqu'un, mais pour ADO et Windev n'est-il pas
intéressant de voir le site
Merci atgd mais soyons francs l'accès ADO4WD ne gère pas le blocage de lignes. Je pourrai entrer dans des schémas techniques un peu compliqués mais actuellement je ne connais pas de système gérant le blocage de lignes au travers de la couche ADO (Je ne parle pas de tous les exemples que l'on trouve en VB, VC++ qui le gère dans le code de manière spécifiques. Cà c'est très simple.).
Si un des lecteurs connait un moyen de le faire je suis preneur.
Désolé j'ai atteint une limite et je cherche actuellement un moyen de contourner celà (mais comme dit la pub, je l'aurais un jour, je l'aurais...).
-- Emmanuel Lecoester |
| |
| |
| | | |
|
| | |
| |
Posté le 10 décembre 2005 - 11:15 |
Ce que je ne comprend c'est que Windev mais à disposition des fonctions qui sont censé fonctionner avec l'OLEDB :
Constante : hOLectureEcrit hOlecture
fonctions : Hlit(nom_fichier,id,option) option : hblocageEcriture..... etc.......
----->Si le provider OLE DB ou l'Accès Natif utilisé ne gère pas les blocages, les options de blocage seront sans effet. (aide Windev)
Il me semble qu'une BD en access peut gérer les blocages étant donné qu'en VB6 on peut les gérer!!!!!
Quel est le bon provider alors.....??????? |
| |
| |
| | | |
|
| | |
| |
Posté le 10 décembre 2005 - 13:04 |
[CUT]
> ----->Si le provider OLE DB ou l'Accès Natif utilisé ne gère pas les blocages, les options de blocage seront
sans effet. (aide Windev)
J'ai la même en WinDev8.
> Il me semble qu'une BD en access peut gérer les blocages étant donné qu'en VB6 on peut les gérer!!!!!
Oui la Base gère celà, pas le driver odbc fourni ^^. C'est le même constat que l'on aurait pu faire avec le driver ODBC HyperFile : il autorisait la lecture mais pas l'écriture. On aurait pu dire HF gère l'écriture vu que WD sait le faire donc çà doit marcher avec VB (ou autre). Mais si la fonctionnalité n'est pas présente dans le driver on ne peut pas l'inventer. Ni plus ni moins.
Quel est le bon provider alors.....???????
A ma connaissance il n'y en a pas et c'est bien dommage
-- Emmanuel Lecoester |
| |
| |
| | | |
|
| | |
| |
Posté le 10 décembre 2005 - 14:18 |
En d'autre terme et si je comprend bien, c'est foutu?
Un grand MERCI pour les renseignements que vous m'avez donné!!!!(Vous avez mal planché sur tous les accès).
J'ai envoyé un mail chez PCSOFT vendredi, s'il me trouve une solution je la transmettrai bien volontier!!!!!!!
OLIVIER BINON |
| |
| |
| | | |
|
| | |