begin process at 2010 07 29 21:13:05
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Foxpro

 > 

Formulaires

 > 

Général

 > 

vues et index


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

vues et index

mercredi 16 décembre 2009 à 09:08:04 | vues et index

Kenjo

Bonjour,
J'ai essayé de migrer ma base de donné en sql serveur,
et maintenant j'ultise des vues distantes pour acceder à ma base.
cependant, dans mon formulaire les liaisons entre les tables sont rompues dans l'environnement de données car je n'ai plus d'index et de clé.
Je vous remercie de me donner un astuce pour comment resoudre cela car quand je travaillais en local, tout allait si bien.
Comment peut-on avoir le data diagrams de sql server à partir d'un formulaire?
Merci encore
mercredi 16 décembre 2009 à 15:43:00 | Re : vues et index

MichelAtoutFox

Membre Club
Réponse acceptée !
Bonjour,

il te faut créer manuellement les index dont tu as besoin, après avoir ouvert tes vues distantes. L'endroit où tu vas le faire dépend de la façon dont tu ouvres tes vues.

Qu'appelles-tu le data diagrams de sql server?

Quelle version de Fox utilises-tu? quelle version de SQL server?
vendredi 18 décembre 2009 à 14:04:06 | Re : vues et index

Kenjo

bonjour Michel,

Merci pour la réponse.
database diagrams c'est comme le gérenateur de bases de donnés, du coté sql, là où on crée les liaisons entre les tables. En fait, en faisant celà dans Sql server je pensait que les vues seraient automatiquement liées , mais comme cela n'a pas été le cas, j'ai supprimé le database diagram.
J'utilise VFP9 et sqlserver2005.
si j'ai bien compris, j'enlève mes vues dans l'environnement de données et dans l'init du formulaire je fais use XXX et crée les index et relations comme ci c'était une table?


vendredi 18 décembre 2009 à 14:46:30 | Re : vues et index

MichelAtoutFox

Membre Club
Ah, beaucoup de confusions dans ta réponse:

le database diagrams dont tu parles ne fait pas partie de SQL server, mais de SSMS (Sql Server Management Studio), et ce n'est pas la même chose. SQL Server, c'est le serveur, c'est ce que fox requète par les vues distantes (entre autres), et SSMS, fox n'en connait strictement rien, parceque c'est un outil d'interface graphique pour gérer SQL Server (et ça n'est pas le meilleur, en tout cas pas dans tous les besoins). Il n'y a pas de liaison entre les tables en SQL, il y a des contraintes de clé étrangère. Et ça se crée dans du code, ou dans le générateur de tables, ou éventuellement dans un objet diagramme

Et non, ce n'est surtout pas dans l'init d'un form que l'on ouvre les tables ou les vues: quand l'init de ton form commence, tous les objets qu'il contient ont été déjà créés, tous les init de tous les controles de ce form ont été joués. Et si un seul de ces controles est lié aux données (ce qui devrait être le cas), l'init de ce controle va planter.

donc les ouvertures doivent être faites AVANT l'init du form, dans le LOAD de celui-ci, ou mieux dans le BEFOREOPENTABLE du dataenvironment. tu trouveras plusieurs exemples dans la présentation que j'ai faite sur ce sujet (les objets d'accès aux données)

En ce qui concerne les relations, c'est une technique que tu ne devrais pas utiliser si tes données sont sur SQL Server (et même en général avec des données en dbf, on ne fait plus comme ça). Tu devrais soit créer une vue distante dans fox, qui établit la jointure que tu obtenais dans cette relation, soit créer une vue DANS SQL server qui établit la jointure, et une vue distante dans fox qui pointe sur cette vue dans SQL.

pour les index, vérifie soigneusement leur expression, et ne crée que ceux dont tu as strictement besoin, au moment où tu en as besoin. vérifie bien qu'ils sont crés localement (pas sur une unité mappée). tu trouveras les infos sur ce sujet dans l'aide, en regardant les termes du config.fpw

samedi 19 décembre 2009 à 07:37:48 | Re : vues et index

Kenjo

Merci beaucoup,je me suis trompé en ecrivant init au lieu de load, mais c'etait deja parti.encore merci.
A propos des relations, j'utilise toujours set relation to pour tirer l'information dans une autre table, mais là donc je peux stocker mon champ par ex code_fournisseur en variable et créer une vue qui puisera cette variable dans la base fournisseur, n'est ce pas.
samedi 19 décembre 2009 à 07:49:00 | Re : vues et index

Kenjo

Et si je regroupe tout dans une vue (la base articles, le fournisseur, famille, tarif)ce ne serait pas un peu lourd.merci
samedi 19 décembre 2009 à 09:43:51 | Re : vues et index

MichelAtoutFox

Membre Club
En quoi une vue serait plus "lourde" qu'une relation? Un peu lourd, ça veut dire quoi??

Une relation effectue une jointure, comme le fait une vue. Mais cette pseudo-jointure est faite sur les curseurs locaux créés sur les vues distantes.

Une vue distante avec les mêmes jointures va envoyer sa requète au serveur SQL, et c'est lui qui va faire la jointure, et renvoyer un curseur résultant (on le voit très bien avec le profiler de SQL).

A ton avis, le plus efficace, c'est quoi?


Cette discussion est classée dans : base, sql, formulaire, index, vues


Répondre à ce message

Sujets en rapport avec ce message

Affichage des données provenant d'une base sql server different d'un poste à l'autre. [ par feeling__ ] Bonjour à tous !Voila j'ai developpé un utilitaire en fox pro qui attaque une base sql server et mon souci c'est que sur mon poste (post de dev) l'aff sql et installshield [ par hab162002 ] bonjour, j'ai un probleme avec sql server, j'ai concu une application client serveur qui marche tres bien dans mes 2 poste, foxpro est  installe dans Foxpro et Sql server [ par ILYESAHMED ] Bonjour Les Foxistes ; J’ai développé une application de gestion qui tourne bien ; j’ai utilisé : - [b]FoxPro 9 . - Base de données sous SQL Serv Base de donnée perte de donnée [ par rom87 ] Bonjour; Un client viens de me renvoyer un base endommagée[^^sad1]. Après réparation il se trouve que j'ai perdu toutes les données d'une colonne da visualiser et limiter le nombre de connection à une base de donnée Foxpro9 sur le serveur [ par wdev1 ] Salut,et encore mille merci pour votre aide. Voilà, j'ai une base de donnée DBC FXP9 sur le serveur d'un réseau de 10 poste. mon souci et de controle fermeture [ par clement1988 ] Bonjour, j'aurai besoin d'un renseignement. J'utilise actuellement vfp9, j'ai développé mes formulaires mais lorsque j'ouvre un formulaire je n'arrive Ajouter une procédure à un fomulaire [ par rom87 ] Bonjour; après des recherches infructueuses je viens vous chercher. Je souhaite ajouter une procédure à un formulaire jusqu'ici pas de problème. Mai combobox dans un formulaire [ par brunaux ] Bonjour à tous !utilisant VFP 6.0 occasionnellement pour faire des écrans de saisie,je voudrais savoir comment l'on fait dans un combobox(donc avec un re-combobox dans formulaire [ par brunaux ] Bonjour !merci thierry et mike pour votre aide si précieuse,je vais pouvoir me débrouiller maintenant et arriver à faire quelque chose qui marche ! me formulaire ajustable [ par brunaux ] Bonjour !merci thierry pour la reponse pour ajuster automatiquement un formulaire suivant la taille de l'ecran de l'utilisateur !encore merci


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Juillet 2010
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

 
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 : 0,312 sec (3)

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