Accueil > Forum > > > > comment faire une application client serveur avec vfp
comment faire une application client serveur avec vfp
jeudi 12 août 2010 à 12:57:52 |
comment faire une application client serveur avec vfp

hakima75
|
bonjour tout le monde,
voila , mon soucis est que je ne sais faire que des applications mono poste avec vfp.
J'ai essayé de faire conseillé par des informaticiens, leurs réponses sont unanimes: abandonnes ton vfp.
Je voudrais savoir s'il ya des gens qui ont réussi dans ce domaine avec vfp ?
Merci
|
|
jeudi 12 août 2010 à 13:18:39 |
Re : comment faire une application client serveur avec vfp

MichelAtoutFox
|
Bonjour,
pour commencer, une application multi-postes, multi-utilisateurs n'a pas besoin d'être client/serveur! ce sont 2 concepts différents.
1) application non client/serveur:
Dans une aplication VFP multi-postes et multi-utilisateurs (et je te rassure, nous devons être des milliers à avoir écrit des choses commeça, utilisées par des millions d'utilisateurs depuis des années), le code est exécuté en totalité sur le client.
les données peuvent être partagées, elles résident dans un ou plusieurs dossiers partagés accessibles par les utilisateurs du réseau. On parle de serveur de fichier.
2) application client serveur
on différencie la couche de données et les autres couches (métier et présentation). par exemple, tu vas avoir tes données dans un serveur SQL, et dans la couche métier écrite en VFP, tu vas demander à ce serveur SQL de t'extraire ces données, que tu vas recevoir dans un alias VFP. C'est ton serveur SQL qui travaille pour te fournir ces données, pas ton client VFP.
Et tu peux aussi avoir ton code métier qui tourne comme service sur une autre machine (par exemple à travers un objet COM+ écrit en VFP, ou un web service).
Il faut bien comprendre que le passage d'une application monoposte en multi-poste multi-utilisateurs ne se fait pas magiquement, il faut reprendre ton code.
Et c'est encore plus vrai si tu veux passer en client/serveur (tu peux te préparer à en réécrire au moins 80%)
Alors, faut-il suivre le conseil des "informaticiens" qui t'ont dit d'abandonner VFP? je dirais oui, malheureusement! VFP n'est plus supporté par Microsoft, et les dbf ne sont plus du tout adaptés aux nouveaux matériels.
|
|
jeudi 12 août 2010 à 14:26:57 |
Re : comment faire une application client serveur avec vfp

hakima75
|
merci pour votre réponse monsieur michel,
donc si j'ai une application mono poste en vfp et que je voudrais qu'elle soit utilisée par plusieurs utilisateurs en même temps et cela pour longue durée, il vaut mieux la réécrire en un autre langage ?
|
|
jeudi 12 août 2010 à 15:53:31 |
Re : comment faire une application client serveur avec vfp

MichelAtoutFox
|
longue durée, ça veut dire quoi?
si tu dois réécrire, oui, à mon avis, autant en profiter pour changer de support de données et changer de langage.
|
|
jeudi 12 août 2010 à 20:29:43 |
Re : comment faire une application client serveur avec vfp

Mike Gagnon
|
Contrairement à l'avis de Michel (sur la question de changer de language), je t'offre l'avis contraire. Premièrement je ne vois pas la pertinence de te suggérer de changer de language pour rendre ton application utilisable par plus de 1 usager à la fois. Deuxièmement que Microsoft supporte Foxpro ou non, ce n'est pas Microsoft qui va supporter ton application, mais bien toi, donc si tu est confortable avec Foxpro reste avec Foxpro, et supporte tes applications.
Mike Gagnon
|
|
samedi 14 août 2010 à 16:13:39 |
Re : comment faire une application client serveur avec vfp

babazou38
|
Je suis d'accord avec Mike. Michel est un informaticien de haut niveau qui a l'habitude des très grosses bases de données et des techniques de pointe. Si ton application est monoposte et monoutilisateur, il y a de fortes chances que tu veuilles simplement qu'une dizaine de personnes puissent travailler en même temps.
Tu risques d'avoir peu de travail à faire si ton appli actuelle est bien faite comme tu risques d'en avoir beaucoup si tu as fait une programmation en 'amateur' (et c'est seulement dans ce dernier cas, où la réécriture est importante que tu pourrais, éventuellement, changer de langage).
Le premier point essentiel est qu'il faut gérer le partage des données. Si ce n'est pas déjà fait, cela va être le gros travail : il ne faut pas que deux utilisateurs puissent modifier en même temps la même donnée. Il y a plusieurs solutions pour cela. Il faudrait que tu nous en dises plus sur ton appli pour que nous en discutions. L'ideal est de créer une base de données (CREATE DATABASE), d'y mettre les tables et d'accéder aux tables par des vues SQL. A l'opposé, les RLOCK() fonctionnent encore. La création d'une base de données VFP peut être une bonne solution intermédiaire si plus tard ton appli est utilisée par des centaines d'utilisateurs. Parce qu'une fois la base VFP maitrisée, il est 'assez facile' de copier les données vers une base plus 'sérieuse' comme SQL Server : l'essentiel du travail (le SQL) est déjà fait.
Le deuxième point concerne 'l'avenir' de ton appli : c'est une appli commerciale que tu vends, c'est une appli personnelle, ... ? Il y a des problèmes de sécurité ? Si c'est une appli commerciale, ou s'il y a des problèmes de sécurité alors il faudra envisager de transmettre les données vers une base de données comme SQL Server MAIS tu pourras garder VFP en tant que 'client'. Dans les autres cas, VFP est un excellent outil.
Concernant l'avenir de VFP : Microsoft n'a JAMAIS supporté VFP. Toute l'aide qu'un programmeur peut demander arrive via les groupes d'utilisateurs (www.atoutfox.org par exemple) ou les forums. Ce n'est donc pas une raison pour abandonner l'outil qui est, techniquement, d'une trés grande efficacité. A mon humble avis, le problème va venir du système d'exploitation : VFP tourne sous W7 mais après ? Que va nous concocter Microsoft ? Alors comme j'ai encore des applis qui tournent sous DOS (et je suis un développeur professionel et VFP est 'toute ma vie'; sans lui je fais faillite), je suis assez serein pour les 15 ans à venir ...
Maintenant que tu sais où tu peux trouver une aide efficace, dis nous en un peu plus ...
Bon courage.
Jean à Grenoble
|
|
samedi 14 août 2010 à 17:04:52 |
Re : comment faire une application client serveur avec vfp

MichelAtoutFox
|
Comme tu le vois, Hakima, il y a plusieurs points de vue, et c'est à toi de faire ton choix!
je voudrais juste corriger quelques erreurs dans ce que dit Jean:
il est completement faux de dire que Microsoft n'a jamais supporté VFP! il y avait une équipe de développement VFP chez Microsoft, qui nous a livré de nombreuses versions, des Services Pack, des patches correctifs, etc... Et qui répondait aux questions des MVP, qui étaient présents aux Rencontres (y compris en France), etc..
C'est tout ça qu'on appelle le support. Et c'est ça qui a disparu aujourdhui: plus d'équipe VFP chez Microsoft, plus de nouvelles versions, pas d'évolution ni d'adaptations.
Autre erreur dans les propos de Jean, il faut au contraire que 2 utilisateurs puissent modifier en même temps la même donnée. Il faut simplement que le moteur n'écrive pas physiquement en même temps au même endroit, et il faut également créer les règles du jeu" pour permettre de choisir en cas de conflit. C'est ce qu'on appelle gérer les accès concurrentiels, et ça se fait très très bien (en fox comme dans d'autres langages). Peu importe le nombre d'utilisateurs, c'est à faire dès que tu passes en multi-utilisateurs.
Tiens nous au courant, n'hésite pas à redemander de l'aide!
|
|
dimanche 15 août 2010 à 11:02:06 |
Re : comment faire une application client serveur avec vfp

hakima75
|
D'abord, je tiens à tous vous remercier pour tous ces éclaircissements.
Et à la lumière de vos conseils, je crois que vais procéder par étape:
1- Faire évoluer mon application monoposte en multi-postes,multi-utilisateurs (non client/server) avec Vfp.
2-Observer les performances de la nouvelle application pendant 6 mois à 1 an.
3- Décider , si je passe au client/server avec ou sans Vfp.
En ce qui concerne l'application, il s'agit d'un classique : la gestion d'un cabinet médical, et à vous lire je crois qu'il n'y a pas plus amateur que ma programmation, car :
1- je n'ai pas de BDD , c'est des tables indépendantes.
2- je ne fais pas de gestion de conflits.
3- pour chaque formulaire, les tables utilisées sont dans l'environnement de données.
A titre d'exemple:
- pour consulter les données de table patient, lors d'une recherche par nom :
select IDPATIENT, nom, prenom, DATNAISS,;
from patient where ALLT(nom)=wnom
order by nom,prenom into cursor pat
thisform.grid2.recordsource="PAT"
- pour modifier un patient :
MONPATIENT=ALLT(thisform.IDPATIENTO.TEXT1.value)
SET PATH TO "C:\CAB\DATA\"
IF USED("PATIENT")
select patient
ELSE
USE PATIENT
ENDIF
go top
=seek(monpatient,"patient","idpatient")
if !found()
=messagebox('erreur ! ce patient n'+"'"+'existe pas',0+16+0,'Cab')
ELSE
REPLACE NOM WITH WNOM
REPLACE PRENOM WITH WPRENOM
REPLACE DATNAISS WITH WDATNAISS
REPLACE TAILLE WITH WTAILLE
REPLACE SEXE WITH WSEXE
REPLACE ADRESSE WITH WADRESSE
REPLACE VILLE WITH WVILLE
REPLACE PROFESSION WITH WPROFESSION
REPLACE TEL WITH WTEL
REPLACE SECUSOCIAL WITH WSECUSOCIAL
REPLACE POID WITH WPOID
REPLACE ANTMED WITH WANTMED
REPLACE ANTCHIR WITH WANTCHIR
REPLACE ANTOX WITH WANTOX
REPLACE ANTFAM WITH WANTFAM
=messagebox('MODIFICATIONS EFFECTUEES !',;
0+16+0,;
'Cab')
ENDIF
- pour supprimer un patient :
set path to "c:\CAB\data\"
*voir s'il ya des consultations pour ce patient.
if used("CONSULT")
select CONSULT
else
use CONSULT
endif
SELECT * from consult where idpatient==monpatient into cursor tempcons
go top
count to nbrcons
IF USED("TEMpcons")
SELECT TEMPcons
USE
ENDIF
if used("CONSULT")
select CONSULT
else
use CONSULT
endif
use
if nbrcons=0
*s'il ya pa de consult je pe supprimer
IF USED("PAT")
SELECT PAT
USE
ENDIF
set deleted off
set path to "c:\CAB\data\"
delete from patient where idpatient==monpatient
set path to "c:\CAB\data\"
if used("PATIENT")
select PATIENT
else
use PATIENT
endif
USE
set path to "c:\CAB\data\"
use PATIENT exclusive
pack
use
set deleted on
=messagebox(" SUPPRESSION EFFECTUEE ! ",;
0+48+0, 'CAB')
else
=messagebox("SUPPRESSION IMPOSSIBLE, VEUILLER D'ABORD SUPPRIMER L'HISTORIQUE !",;
0+48+0, "CAB")
endif
|
|
dimanche 15 août 2010 à 12:48:24 |
Re : comment faire une application client serveur avec vfp

Mike Gagnon
|
1. Foxpro se souviens de la première fois que tu fais:
set path to "c:\CAB\data\"
Donc pas besoin de répéter à deux ligne de code.
2. Si tu fais:
use CONSULT
Toutes les autres table que étaient ouvertes se ferme et seulement CONSULT reste ouverte. Et il y a de bonnes chances que la table CONSULT est ouverte exclusivement (donc pour un seul utilisateur).
Si tu fais:
USE consult shared in 0
maintenant la table CONSULT est ouverte en mode partagé et aucune autre table se ferme. Ouvre toute tes tables de cette façon et toutes les tables vont rester ouverte. Mais si tu mets tables dans le Dataenvironnment des formes, pas besoin d'ouvrir et de fermer tes tables, la forme va s'en occuper.
Mike Gagnon
|
|
dimanche 15 août 2010 à 13:34:34 |
Re : comment faire une application client serveur avec vfp

hakima75
|
Merci Mike,
Je vais faire pour toutes mes tables shared in 0.
Je vous tiendrais au courant .
|
|
Cette discussion est classée dans : application, serveur, client, vfp
Répondre à ce message
Sujets en rapport avec ce message
application client/serveur [ par abdourasiz ]
Salut !suis un débutant, j'ai développé une application mono poste; il y a t'il un moyen simple pour la transformer en une application réseau c'est à
Documentater une application VFP - Extraire les champs d'un rapport! [ par Addo ]
Bonjour, Je suis nouveau avec VFP, j'utilise la version 9 pour visualiser une application déjà écrite. Je dois faire la documentation technique et le
ODBC et SQL [ par hab162002 ]
Bonjour, apres avoir developper une application pour client /serveur, et apres avoir 'upsizing', ma base de donnée apparait dans le odbc, jusque la to
"Handwriting Recognition" - Signature manuscrite sur un rapport imprimé vs VFP 6.0 [ par BuckStar ]
Appel à tous,J'ai une application en VFP 6.0 en trois modules: 1. Module-Client: Le client passe une commande2. Module-Approbation - La commande est a
connexion distante [ par glopglop ]
Bonjour,J'ai un site en ASP hébergé chez moi sur un poste avec IIS. C'est un extranet qui attaque (en lecture seul) une base VFP. Mon proble c'est que
fichiers d'installation [ par info_maroc ]
Bonjour1 - j'ai developpe une application sous visual foxpro 9 et je veux creer les fichiers d'installation, j'ai pas sur le menu de foxpro un moyen p
Démarrer ancienne application [ par fourniey ]
Bonjour,J'essaie de démarrer une application que j'ai développé sous foxpro 8. Je suis maintenant avec foxpro 9.Lorsque je démarre mon application, je
adapter une application sur petit ecran [ par brunaux ]
Bonjour à tousj'ai fait une petite application contenant 7 formulaires, avec des grids,pageframes,boutons,list etc... avec mon écran de 17 pouces (en
application a mettre sur portable [ par brunaux ]
Bonjoura propos de ma question sur l'ajustement de formulaire sur un petit portable, j'ai trouvé dans les archives de questions une demande sur ce suj
Client POP3 [ par ducker88 ]
Bonjour à tous, pourriez vous m'indiquez quel code dois-je utiliser pour creer un client mail POP3.j'ai trouvé pour du .net mais pas pour foxpro.Merci
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko [FRAMEWORK 4] LES TASKS ET LE THREAD UI[FRAMEWORK 4] LES TASKS ET LE THREAD UI par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article par fathi WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBEWORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE par JeremyJeanson
Depuis déjà un an, je conseille vivement les utilisateurs de Workflow Foundation 3 à migrer vers la version 4. L'information qui va suivre ne devrait donc pas trop prendre au dépourvu les personnes qui m'ont suivi. Je profite de ce poste, pour faire le re...
Cliquez pour lire la suite de l'article par JeremyJeanson TECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PCTECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PC par ROMELARD Fabrice
Speakers: Thierry Rapatout, Antoine Petit et Xavier Trebbia Cette session entre dans le cadre des RDV Décideurs des TechDays 2012, elle est liée à la consumérisation de l'IT et la mise en place du "DeskTop as a Service" dans de plus en ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|