Mettre du texte dans un rapport programmaticilement [Résolu]

jee0404 131 Messages postés jeudi 21 octobre 2004Date d'inscription 27 octobre 2009 Dernière intervention - 13 janv. 2005 à 14:55 - Dernière réponse : jee0404 131 Messages postés jeudi 21 octobre 2004Date d'inscription 27 octobre 2009 Dernière intervention
- 19 janv. 2005 à 19:44
Bonjour,

Je voudrais faire un rapport .frx mais je voudrais le remplire au moyens
de lignes de code et pouvoir après l'imprimer.

Merci d'avance
Afficher la suite 

Votre réponse

10 réponses

Meilleure réponse
michelatoutfox 834 Messages postés mardi 5 octobre 2004Date d'inscription 7 mai 2013 Dernière intervention - 13 janv. 2005 à 16:06
3
Merci
Bonjour,

un rapport (fichier frx) est une table, que tu peux ouvrir par programmation comme une autre avec un use monfichier.frx.

le contenu des tables frx est documenté dans le dossier filespec (C:\Program Files\Microsoft Visual Studio\Vfp98\Filespec pour VFP6, et C:\Program Files\Microsoft Visual FoxPro 8\Tools\Filespec pour VFP8), soit en ouvrant le 60spec.pjx soit en imprimant les report 60frx1 et 60frx2.

Le plus simple pour faire des reports "à la volée", c'est de partir sur un frx de base, pour ne pas avoir à récréer tous les champs.

Après, c'est juste une affaire de patience...

Attention, même si tu ne l'utilises pas, un frx a toujours besoin d'un alias sur lequel se baser

Merci michelatoutfox 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de michelatoutfox
jee0404 131 Messages postés jeudi 21 octobre 2004Date d'inscription 27 octobre 2009 Dernière intervention - 13 janv. 2005 à 20:52
0
Merci
Merci de l'information ,

Il faut t'il modifier les champs de la table que fait le rapport pour
modifier finalement le rapport et comment on enlève le read-only sur les mémos ?
Commenter la réponse de jee0404
michelatoutfox 834 Messages postés mardi 5 octobre 2004Date d'inscription 7 mai 2013 Dernière intervention - 14 janv. 2005 à 10:26
0
Merci
Que veux-tu dire exactement, je crains de ne pas bien comprendre...

Sur ta table monrapport.frx, tu ne modifies aucun champ, tu ajoutes et/ou modifies des enregistrements. Pour t'entrainer, commence par faire des rapports avec le générateur (comme d'habitude) et à les examiner ensuite en les ouvrant en browse sur la table (tu dois être sorti du générateur) :

1 premier frx avec quelques champs et étiquettes dans la ligne de détail
le même en changeant les attributs des ces controles
1 autre avec en +, des traits, boites, etc... (toujours en ligne de détail)
et la même chose avec les bandes d'en-tête et de pied d'état, de page
et encore la même chose avec des regroupements

à chaque essai, tu fais des modifs dans le générateur, et tu regardes ce qui a changé en mode browse,...
puis l'inverse...

et là, tu sais tout !
Commenter la réponse de michelatoutfox
jee0404 131 Messages postés jeudi 21 octobre 2004Date d'inscription 27 octobre 2009 Dernière intervention - 14 janv. 2005 à 14:38
0
Merci
Ok , merci pour l'information , mais le problème c'est que je ne peut pas changé les enregistrements , car ils sont en read-only , j'ai essayé de faire une copie du frx pis ensuite essayer de changer les enregistrement , mais ils sont aussi en read-only :(. bref , je ne peut pas modifier les enregistrements .
Commenter la réponse de jee0404
michelatoutfox 834 Messages postés mardi 5 octobre 2004Date d'inscription 7 mai 2013 Dernière intervention - 14 janv. 2005 à 15:05
0
Merci
Peux-tu modifier ce report avec le générateur, et enregistrer tes changements?
si oui, alors ton fichier est ok, si non, vérifie les attributs du fichier.

quand tu ouvres ton fichier pour en faire un browse :
Le générateur d'état est-il bien fermé ?
n'es-tu pas en train de faire un report form dessus ?

si oui à une des questions, alors le read-only est normal, si non, alors :
use monfichier.frx in 0 alias monfichier
select monfichier
copy to montest.frx
use in "monfichier"
use montest.frx

et revérifie
Commenter la réponse de michelatoutfox
jee0404 131 Messages postés jeudi 21 octobre 2004Date d'inscription 27 octobre 2009 Dernière intervention - 17 janv. 2005 à 15:14
0
Merci
oui , je peut modifier ce rapport avec le générateur de foxpro et quand tu parle du générateur d'état est-ce que c'est bien le programme qui te permet de changer les rapport ? ou le générateur du projet ?

et moi j'utilise le code suivant et il me retourne ELECT 0
USE justeun.frx ALIAS _1
BROWSE
SELECT _1
COPY TO fake.frx
SELECT 1
USE IN "_1"
USE fake.frx alias _2
? ISREADONLY('_2')
POS = 1
DO WHILE UNIQUEID <> "_1590JINXM"
GO POS
POS = POS+1
ENDDO
repl expr with ;
strtran(expr,"BONJOUR","salut mon ron") ** cette me génére l'erreur cannot update ** the cursor _2 since it is read-only
BROWSE
Commenter la réponse de jee0404
michelatoutfox 834 Messages postés mardi 5 octobre 2004Date d'inscription 7 mai 2013 Dernière intervention - 17 janv. 2005 à 17:19
0
Merci
Oui, le générateur d'état, c'est bien le programme qui permet de créer/modifier les rapports. Je n'ai jamais observé le problème que tu décris, alors on va essayer de comprendre !

que se passe-t-il si tu quittes fox après avoir fait ton copy to fake.frx ?
que se passe-t-il si tu copies ton justeun.frx (et son frt) par l'explorateur windows, et que tu essaies tes replace sur ce fichier ensuite ?
et quand tu es en browse sur ta copie, peux tu modifer un memo

et que se passe-t-il si tu fais (je ne suis pas très partisan d'utiliser des alias de la forme"_1", d'expérience on risque des cafouillages...) :

USE justeun.frx ALIAS "essai1" in 0
SELECT essai1
COPY TO fake.frx
USE fake.frx alias "essai2" again in 0

select essai2
replace user with "test"

PS : Quelle est ta version de VFP?
Commenter la réponse de michelatoutfox
jee0404 131 Messages postés jeudi 21 octobre 2004Date d'inscription 27 octobre 2009 Dernière intervention - 17 janv. 2005 à 20:21
0
Merci
Ma version de foxpro est la version 8 , quand j'ai faite exécuté les lignes de code que tu me donner , il a y générer une erreur "cannot update the cursor ESSAIE2, since it is read-only" , non je ne peut pas modifier un mémo quand je suis en browse, je peut quitter fox normalement apres avoir faite un copy to .

Ha oui , juste une question hors sujet on peut tu utiliser des dll en visual basic dans des programme de foxpro ? , genre le dll de pageset.dll
Commenter la réponse de jee0404
michelatoutfox 834 Messages postés mardi 5 octobre 2004Date d'inscription 7 mai 2013 Dernière intervention - 18 janv. 2005 à 16:59
0
Merci
tu es certain que tu travailles sur un support sur lequel tu as le droit d'écrire (pas sur un CD, par exemple...) parceque malgré tous mes efforts, je n'arrive pas à reproduire cette erreur!
Commenter la réponse de michelatoutfox
jee0404 131 Messages postés jeudi 21 octobre 2004Date d'inscription 27 octobre 2009 Dernière intervention - 19 janv. 2005 à 19:44
0
Merci
ha oui , c'était des files qui étaient protéger par l'administrateur ,donc la maintenant
ca fonctionne parfaitement. je te remercie de ton aide.
Commenter la réponse de jee0404

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.