Accueil > Forum > > > > Vue !!!
Vue !!!
mardi 13 septembre 2005 à 08:56:25 |
Vue !!!

spoutnic_37
|
aloha; Je fais un programme qui est basé sur un base de donnée foxpro(.dbc, .dbf)et qui sera mise dans une clef usb. Le probleme est que je voudrais pouvoir mettre a jour la meme base de donnée qui serait elle sur le serveur de l'entreprise (donc on arrive on branche la clef sur l'ordi et on fait la mise ajour). Je pense que je dois utiliser des vues distantes, mais je ne trouve rien dans la msdn pour me montrer comment faire. De plus g aussi du mal avec une vue local, ou je n'arrive pas a supprimer des enregistrements! Est ce que quelqu'un pourrait me dire comment faire , ou m'orienter vers des exemples sur le net?
|
|
mercredi 14 septembre 2005 à 13:25:23 |
Re : Vue !!!

fonch001
|
Bonjour,
concernant ta remarque : De plus g aussi du mal avec une vue local, ou je n'arrive pas a supprimer des enregistrements!
Lorsque tu fais ton SQL (ex: SELECT * FROM MaTable INTO CURSOR MonCurs), pense à ajouter "READWRITE" à la fin, sinon le curseur est en lecture seule. (ex : SELECT * FROM MaTable INTO CURSOR MonCurs READWRITE).
Et au cas où j'aurai mal compris, il faut aussi faire SET DELETE ON pour que les éléments "supprimés" n'apparaissent plus (un PACK supprime définitivement ces éléments "marqués pour suppression").
Sinon, je vois pas trop quel est ton soucis pour accéder aux données: * tu peut utiliser les Data-environnements * tu peut faire des "USE" * tu peut faire des requetes...
Il faut simplement que tu commences ton programme par une connexion à ta base...
Bon courage.
Quand le sage montre la lune, l'idiot regarde le doigt...
|
|
mercredi 14 septembre 2005 à 14:49:37 |
Re : Vue !!!

spoutnic_37
|
justement parlons du pack! j'ai fais une vue local, grace au generateur de vue, et je voudrais supprimer un enregistrement de cette vue , et donc des champs des deux tables qui la compose. Mais apres avoir fait : use clients_contrat && ma vue composé de champs des tables clients et contrat delete for societe="A.C.M.S " pack !! operation non valide sur un objet curseur (1115) je precise que j'utilise vfp 6 ps:le readwrite n'estpas utilisable , car pas reconnu par visual foxpro
|
|
mercredi 14 septembre 2005 à 15:18:35 |
Re : Vue !!!

fonch001
|
Effectivement, le readwrite, c'est à partir de la version 7, donc ton curseur est forcément "read only".
Cela dit, ce que tu veux faire ne peut pas fonctionner: tu veux supprimer un élément dans une copie de tes tables (un curseur) et que cela supprime les éléments de tes tables si j'ai bien compris.
Pour cela tu vas devoir taper du code: sur ordre de suppression d'une lignes -> recherche des lignes correspondantes dans les tables (ici supprimer la societe "A.C.M.S" de la table societe.dbf et suprimer les contrats de la table contrats.dbf ayant "A.C.M.S." comme societe si j'ai bien compris ton idée) puis -> recalcul de la vue (forcément avec ces éléments en moins).
S'il y a une méthode plus simple, je suis preneur, mais je n'en connait pas.
En revanche si tu veut supprimer les éléments de ta requete SQL uniquement (sans toucher au valeurs dans les tables) un solution peut être de: * faire une requete est la stocker dans curseur1 * créer curseur2 de même format que curseur1 exemple : SELECT curseur1 DIMENSION t_fields(1) =AFIELDS(t_fields) CREATE CURSOR curseur2 FROM ARRAY t_fields *copier chaque élément de curseur1 dans curseur2 SELECT curseur1 GO TOP DO WHILE !EOF() SCATTER MEMVAR SELECT curseur2 APPEND BLANK GATHER MEMVAR SELECT curseur1 SKIP ENDDO * enfin, supprime curseur1 et utilise curseur2 pour ton affichage, ce curseur n'étant alors plus "read only".
Bon courage.
Quand le sage montre la lune, l'idiot regarde le doigt...
|
|
mercredi 14 septembre 2005 à 15:31:34 |
Re : Vue !!!

spoutnic_37
|
tu avais bien compris. Mais cette idée ne m'est pas venu toute seul, j'ai regardé la msdn qui dit : chapitre 5: " Pour extraire un ensemble d'enregistrements d'une table, modifier ces enregistrements et transmettre les modifications aux tables source, vous pouvez utiliser une vue Vous pouvez créer des vues à partir de tables locales, d'autres vues, de tables figurant sur un serveur"
|
|
mercredi 14 septembre 2005 à 16:17:56 |
Re : Vue !!!

fonch001
|
Là, je ne connais pas, mais si quelqu'un connait, je suis preneur également.
|
|
jeudi 15 septembre 2005 à 14:03:11 |
Re : Vue !!!

MichelAtoutFox
|
bon, quelques précisions s'imposent  ! si tes données du serveur doivent être mises à jour avec les données de la clé (ou l'inverse, peu importe) depuis le serveur, alors c'est une vue locale! ton prog va tourner sur le serveur, et pour celui-ci, la clé est un disque local... pour les vues, il faut bien comprendre que c'est une extraction de tes données dans un curseur, sur lequel un pack n'a aucun sens (pack supprime sur le disque les enregistrements marqués à delete SUR UNE TABLE) si tu veux supprimer, tu marque à delete tes enregistrements dans ta vue, et ça va envoyer ces marques de delete sur la table. quand on travaille avec des vues, on ne s'occupe plus du pack sur les tables que pour de la maintenance (pour réduire la taille des tables) pour mettre à jour tes tables depuis ta vue, regarde donc dans l'avant-dernier onglet du generateur de vue (critères de mise à jour): est-ce que la case envoyer les mises à jour est cochée? si elle est grisée, il te faut d'abord choisir la clé (c'est à dire le champ sur lequel VFP va se fier pour déterminer les enregistrements à mettre à jour - en SQL, on ne tientpas compte du recno), et les champs à mettre à jour. alors, tu décide que les mises à jour seront envoyées en cochant la case en bas à gauche. voili, voilà pour l'essentiel  pour la suite, le mieux est de venir aux rencontres Atoutfox en novembre... [ Lien ]PS: oui, une vue peut extraire des enregitrements venant d'autres vues, qui elles-même peuvent etc. mais alors, attention pour les mises à jour, gare aux conflits, aux incohérences, et autres emm..
|
|
jeudi 15 septembre 2005 à 16:01:10 |
Re : Vue !!!

spoutnic_37
|
ok michel, ca fait plaisir de te revoir ! mais j'ai un petit probleme. j'utilise ma vue pour alimenter un combo box, je veux supprimer un element de la liste, les table parents sont bien affectées , et les enregistrement correspondant disparaissent. La vue également a ete affectée et l'enregistrement a disparu! Le formulaire se ferme ( donc les table associées aussi!) si je reouvre le fomrulaire, que je regarde dans le combo box je retrouve l'element . Comment faire pour que le combobox soit mis a jour ?
|
|
jeudi 15 septembre 2005 à 16:01:48 |
Re : Vue !!!

spoutnic_37
|
ok michel, ca fait plaisir de te revoir ! mais j'ai un petit probleme. j'utilise ma vue pour alimenter un combo box, je veux supprimer un element de la liste, les tables parents sont bien affectées , et les enregistrement correspondant disparaissent. La vue également a ete affectée et l'enregistrement a disparu! Le formulaire se ferme ( donc les table associées aussi!) si je reouvre le fomrulaire, que je regarde dans le combo box je retrouve l'element . Comment faire pour que le combobox soit mis a jour ?
|
|
jeudi 15 septembre 2005 à 17:26:01 |
Re : Vue !!!

MichelAtoutFox
|
comme d'habitude, une question pour répondre à ta question: les tables parents sont affectées, ça veut dire quoi? les enregistrements sont mis à delete? en es tu certain? je veux dire, as-tu réouvert tes tables pour le vérifier, en faisant un browse avec un set deleted off?
d'autre part, quel est ton buffermode?
|
|
Cette discussion est classée dans : base, arrive, donnée, vue, clef
Répondre à ce message
Sujets en rapport avec ce message
apparition d'une base de donnée [ par jee0404 ]
bonjour, En utilisant un programme que j'ai programmé en foxpro , il apparaît sans que je l'ai voulus une base de donnée nommer "0.dbf". Qu'est
Création d'une base de donnée [ par LaMouche39 ]
Bonjour, Informaticien à la retraite (j'ai commencé en 1968....Assembleur, cobol, pascal, Dbase,Clipper 5), je me remets à la programmation avec foxpr
Par ou commencer [ par liechar77 ]
Bonjour, je suis étudiant en stage et ai quelques notions de programmation mais vraiment pas grand chose. On m'a demandé de réaliser un programme qui
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
echange oracle foxpro [ par panterga ]
bonjourje ne suis pas un spécialiste d'oracle mais je recherche un bout de programme me permettant via foxpro 9 de me connecter une base oracle pour
Export Excel / Access [ par PVQL ]
Bonjour a toutes et tous, je souhaite transferer une base données en VFP vers ACCESS (migration d'une base en VFP version 7 qui tourne sur un poste en
Question sur les bases de données. [ par samurgence ]
Bonjour,J'ai une base dbf que je gére par ligne de commande, en la triant, mettant les champs dans différents ordre (croissant, décroissant), en suppr
fenêtre "enregistrer le fichier" [ par dology ]
Bonjour, je n'arrive pas à trouver la fonction qui me permettrai d'ouvrir une fenêtre "enregistrer le fichier sous..." exactement comme lorsqu'on télé
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOURTECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOUR par ROMELARD Fabrice
Après un retour sur l'histoire des TechDays de Paris et le fait que ce soit le plus gros event MS au monde (du fait de sa gratuité), le président de MS France (Eric Boustoullier) a fait une présentation de la vision Microsoft pour les années à venir...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice CRéATION D'UNE BASE DE DONNéE SOUS SQL AZURECRéATION D'UNE BASE DE DONNéE SOUS SQL AZURE par junarnoalg
Sans rentrer dans les détails, je me propose ici de faire un rapide tour de ce que propose SQL Azure.
SQL Azure est avant tout un service d'hébergement de base de données relationnelles construit sur SQL Server. Il permet aux entreprises d...
Cliquez pour lire la suite de l'article par junarnoalg TECHDAYS PARIS 2010 : LES SERVICES D'APPLICATIONS DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LES SERVICES D'APPLICATIONS DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Xavier Moreels et Julien Bakmezdjian Ce sujet est lié au partage des applications comme services dans SharePoint 2010, ceci représente la possibilité de créer sa propre application qui sera utilisable comme ceux en standard : Search...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|