Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Rave
Rave Forum d'entraide sur Rave Reports
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/10/2007, 00h18   #1
Membre éclairé
 
Avatar de JP.NUAGE
 
Inscription : avril 2006
Messages : 496
Détails du profil
Informations personnelles :
Âge : 69

Informations forums :
Inscription : avril 2006
Messages : 496
Points : 370
Points : 370
Envoyer un message via Skype™ à JP.NUAGE
Par défaut Impression sous Rave

Bonjour
J'imprime des étiquettes prédecoupée sur des feuilles en format A4 (standard). Il y a trois étiquettes par lignes et 8 lignes par page. Lorsque l'on imprime des étiquettes il est rare que le nombre à imprimer soit un multiple exact de 64. Il y a donc des etiquettes non imprimées qui restent. Les autres étiquettes sont parfaitement imprimées.

Comment, avec RAVE, puis-je commencer sur une étiquette particuiière (par exemple ligne 4, etiquette 2) et, cerise sur le gateau, commnet dire à RAVE d'arrêter à une étiquette particulière et de passer à la page suivante.

J'ai essayé de créer des enregistrements vides, mais cela ne fonctionne pas

J'utilise une imprimante laser type HP.

Merci d'avance !
JP.NUAGE est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 19h59   #2
Membre éclairé
 
Avatar de chtiot
 
Inscription : octobre 2002
Messages : 383
Détails du profil
Informations forums :
Inscription : octobre 2002
Messages : 383
Points : 330
Points : 330
moi je saute une étiquette suivant certains critères en procédant comme suit :

- dans mon dataset j'ajoute un enregistrement (pourquoi pas plus s'il y a plus d'étiquettes à sauter)
- dans l'événement ValidateRow, si je suis sur un enregistrement de mon dataset indiquant un saut de page, je rends invisible tous les composants de l'état Rave, ce qui fait que l'étiquette est éditée à blanc
- je rends ensuite les composants à nouveau visibles

Code :
1
2
3
4
5
6
7
  validrow := true;
  // ON connecte la page, la région et la bande //
  RvPage := rvProject1.ProjMan.FindRaveComponent('Etiquette.Page1', nil) AS TravePage;
  RvRegion := rvproject1.ProjMan.FindRaveComponent('Region1', RvPage) AS TRaveRegion;
  RvBand := rvproject1.ProjMan.FindRaveComponent('DataBand1', RvPage) AS TRaveDataBand;
 
  FOR i := 0 TO rvband.ChildCount -1 do rvBand.Child[i].Visible := False;
chtiot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/06/2008, 13h14   #3
Membre éclairé
 
Avatar de JP.NUAGE
 
Inscription : avril 2006
Messages : 496
Détails du profil
Informations personnelles :
Âge : 69

Informations forums :
Inscription : avril 2006
Messages : 496
Points : 370
Points : 370
Envoyer un message via Skype™ à JP.NUAGE
Je reviens sur mon pb d'étiquettes.

Merci à Chtiot. Je n'ai pris connaissance de la réponse que aujourd'hui.

Je fais des essais et si j'obtiens ce que je veux je ferme la discussion

A +
JP.NUAGE est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2008, 12h47   #4
Membre éclairé
 
Avatar de JP.NUAGE
 
Inscription : avril 2006
Messages : 496
Détails du profil
Informations personnelles :
Âge : 69

Informations forums :
Inscription : avril 2006
Messages : 496
Points : 370
Points : 370
Envoyer un message via Skype™ à JP.NUAGE
Par défaut Etiquettes sous RAVE

Bonjour à tous

Je butte encore.

D'abord dans la solution de Chtiot, j'ai un blocage. Je ne trouve pas l'evènement ValidRow. Et la séquence suit ne passe pas à la compilation.

J'ai bien appliqué la bonne idée d'insérer des enregistrements, et tout irait bien si je n'avais des codes barre et même si je mets dans mon dataset le code barre à null ou blanc, j'ai un code barre (mal fichu) qui s'imprime.

Bref j'ai le même pb : comment rendre un champ invisible. Je dois être bouché !

Merci de l'aide
JP.NUAGE est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2008, 10h01   #5
Modérateur
 
Avatar de SergioMaster
 
Serge Girard
Développeur informatique
Inscription : janvier 2007
Messages : 3 631
Détails du profil
Informations personnelles :
Nom : Serge Girard
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : janvier 2007
Messages : 3 631
Points : 4 533
Points : 4 533
2007..2008 , quelle constance

L'évènement ValidateRow se 'produit' sur une RaveConnection
(TrvCustomConnection,TrvDataSetConnection,TrvTableConnection,TRvQueryConnection)
Cela implique bien-sur une programmation had-oc (RAD Delphi) et Une Table "DataView"

et non du "Rave Scripting" et une Table "DriverDataView"
en "Rave Scripting" Je jouerai sur l'évènement BeforePrint de la Bande de Détail
et un scipt du genre
Code :
1
2
3
4
5
6
7
8
9
10
11
 
IF (condition) then
 codebarre.Visible:=False;
else 
 codebarre.Visible:=True;
end IF;
 
ou mieux
 
codeBarre.Visible:=(condition);
......

NB . J'ai pu remarquer , à mes dépends , que le scripting augmentait nettement le temps de réalisation de l'état et donc je ne le recommanderai pas , mais ... faute de grives on mange des merles
SergioMaster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2008, 10h17   #6
Membre éclairé
 
Avatar de chtiot
 
Inscription : octobre 2002
Messages : 383
Détails du profil
Informations forums :
Inscription : octobre 2002
Messages : 383
Points : 330
Points : 330
Citation:
Envoyé par SergioMaster Voir le message
2007..2008 , quelle constance
NB . J'ai pu remarquer , à mes dépends , que le scripting augmentait nettement le temps de réalisation de l'état et donc je ne le recommanderai pas , mais ... faute de grives on mange des merles

Il me semble plus simple de le faire dans les événements rave sous Delphi...
chtiot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2008, 11h49   #7
Membre éclairé
 
Avatar de JP.NUAGE
 
Inscription : avril 2006
Messages : 496
Détails du profil
Informations personnelles :
Âge : 69

Informations forums :
Inscription : avril 2006
Messages : 496
Points : 370
Points : 370
Envoyer un message via Skype™ à JP.NUAGE
Par défaut Impression sous RAVE

J'ai essayé ceci dans RAVE sur La bande Detail (je n'en ai qu'une)

Code :
1
2
3
4
5
6
7
8
9
IF (I2of5BarCode1 = '') then
 
 I2of5BarCode1.Visible:=False;
 
else 
 
 I2of5BarCode1.Visible:=True;
 
end IF;
car I2of5BarCode1 est le nom de ma zone Code barre

A la compilation j'ai une Violation d'accès qui me plante RAVE et je dois rebouter la machine pour pouvoir à nouveau rentrer sans RAVE

J'ai essayé dans l'évènement BeforePrint du RVSystem1

Code :
1
2
3
IF (CDS_ETIQUETCODEBARRE.AsString = ' ') OR
      (CDS_ETIQUETCODEBARRE.AsString = NULL) then
      CDS_ETIQUETCODEBARRE.Visible := false
Et bien le code barre mal fichu s'incruste le bougre.

Peut-être que en 2009, avec un peu de constance j'y arriverai
JP.NUAGE est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2008, 18h10   #8
Membre éclairé
 
Avatar de chtiot
 
Inscription : octobre 2002
Messages : 383
Détails du profil
Informations forums :
Inscription : octobre 2002
Messages : 383
Points : 330
Points : 330
en faisant comme je t'ai dit dans ma première réponse, le problème est résolu puisqu'il rend invisible tous les composants sur ton étiquette...
chtiot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/06/2008, 14h57   #9
Membre éclairé
 
Avatar de JP.NUAGE
 
Inscription : avril 2006
Messages : 496
Détails du profil
Informations personnelles :
Âge : 69

Informations forums :
Inscription : avril 2006
Messages : 496
Points : 370
Points : 370
Envoyer un message via Skype™ à JP.NUAGE
Je persiste et m'entête.... ce qui n'est pas bien

Mais en prenant la solution de Chtiot, je butte à la compilation :

Je n'arrive pas à définir RVPage, RVRegion ni RVDataBand et il me dit que TRavePage, TRVRegion et TRVDataBand ne sont pas définis. Où puis-je les trouver ?

Et j'en ai fait des recherches sur FAQS, GOOGLE et compagnie !!!! Mais l'aide de RAVE bonjour : ça ou rien c'est quasiment pareil !
JP.NUAGE est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/06/2008, 18h08   #10
Modérateur
 
Avatar de SergioMaster
 
Serge Girard
Développeur informatique
Inscription : janvier 2007
Messages : 3 631
Détails du profil
Informations personnelles :
Nom : Serge Girard
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : janvier 2007
Messages : 3 631
Points : 4 533
Points : 4 533
ajoutes dans la liste des uses rvClass,rvCstd

Toutefois , Demain si j'ai un peu de temps j'essaierai quand même ce cas de figure, c'est quand même bizarre ...

C'est quelle version de Rave ?
SergioMaster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2008, 06h26   #11
Membre éclairé
 
Avatar de JP.NUAGE
 
Inscription : avril 2006
Messages : 496
Détails du profil
Informations personnelles :
Âge : 69

Informations forums :
Inscription : avril 2006
Messages : 496
Points : 370
Points : 370
Envoyer un message via Skype™ à JP.NUAGE
Rave 5.0 et Delphi 7. Je travaille en CLX (à toutes fins utiles)

merci d'avance
JP.NUAGE est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2008, 06h30   #12
Membre éclairé
 
Avatar de JP.NUAGE
 
Inscription : avril 2006
Messages : 496
Détails du profil
Informations personnelles :
Âge : 69

Informations forums :
Inscription : avril 2006
Messages : 496
Points : 370
Points : 370
Envoyer un message via Skype™ à JP.NUAGE
Ulysse tombait de Charibe en Sylla...

Moi de Rave en rvCstd : rvCstd est inconnu... mais je n'ai pas encore regardé partout !
JP.NUAGE est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2008, 08h26   #13
Modérateur
 
Avatar de SergioMaster
 
Serge Girard
Développeur informatique
Inscription : janvier 2007
Messages : 3 631
Détails du profil
Informations personnelles :
Nom : Serge Girard
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : janvier 2007
Messages : 3 631
Points : 4 533
Points : 4 533
rvcsstd est pour les images , par contre pour les codes barres c'est RVCsBars . Cependant en suivant la partie de @chtiot c'est RVCsRpt qu'il faut maintenant tout ceci est en Windows

@chtiot pourquoi as-tu déclaré une Région dans le code , elle me semble inutile

pour retrouver les classes à utiliser j'ai regarder dans un doc appelé Ravepublicclasses30g.pdf (donc version 3.0) il faudrait peut être voir s'il est possible de trouver l'equivalent en 5

Citation:
Envoyé par moi-même
Toutefois , Demain si j'ai un peu de temps j'essaierai
je viens de le faire c'est avec des i2of5barcode

[EDIT]
je viens de le tester par rave scripting c'est OK également
dans l'evenement OnBeforeprint de la dataBand j'ai indiqué ceci
Code rave :
1
2
3
4
5
6
function EtiquettesMDataBand_OnBeforePrint(Self: TRaveDataBand)

begin
i2ofBarcode1.visible:=(length(DataMemoryI25BarCode.asString)>0);
end;

toutefois je maintiens que le temps d'edition est plus long qu'en programmant le test dans delphi
SergioMaster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2008, 14h10   #14
Membre éclairé
 
Avatar de chtiot
 
Inscription : octobre 2002
Messages : 383
Détails du profil
Informations forums :
Inscription : octobre 2002
Messages : 383
Points : 330
Points : 330
Citation:
Envoyé par SergioMaster Voir le message
@chtiot pourquoi as-tu déclaré une Région dans le code , elle me semble inutile
Pour faire parler les curieux

Effectivement, elle est inutile, je vais la virer, elle est là parce que j'ai fait un copié-collé d'un autre endroit où j'en avais besoin...
chtiot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2008, 14h41   #15
Membre éclairé
 
Avatar de JP.NUAGE
 
Inscription : avril 2006
Messages : 496
Détails du profil
Informations personnelles :
Âge : 69

Informations forums :
Inscription : avril 2006
Messages : 496
Points : 370
Points : 370
Envoyer un message via Skype™ à JP.NUAGE
Par défaut Impression sous RAVE

Je dois être maudit !

J'ai essayé le code proposé par SergioMaster dans le DataBand de l'état RAVE

Code :
1
2
3
4
5
FUNCTION EtiquettesMDataBand_OnBeforePrint(Self: TRaveDataBand)
begin
i2ofBarcode1.visible:=(length(DataMemoryI25BarCode.asString)>0);
 
end;
et j'ai le message

Word unknow : Function

J'ai ajouté RVCsBars dans les uses de Delphi, j'ai enlevé ce qui fait parler les curieux et j'ai le code suivant

Code :
1
2
3
4
5
6
7
8
9
10
11
12
procedure TFRM_ETIQUETTES.RvDataSetConnection1ValidateRow(
  Connection: TRvCustomConnection; var ValidRow: BOOLEAN);
var   RvPage : TRavePage;
         i : integer;
begin
   validrow := true;
   RvPage := rvProject1.ProjMan.FindRaveComponent('Format3par8.Page1', nil) AS TRavePage;
    RvBand := rvproject1.ProjMan.FindRaveComponent('DataBand1', RvPage) AS TRaveDataBand;
 
  FOR i := 0 TO rvband.ChildCount -1 do rvBand.Child[i].Visible := False;
 
end;
Message : Types icompatibles TRavePage et TRaveComponent

J'ai pensé qu'il fallait écrire

Pareil

Format3par8 est le nomde mon état RAVE

Je commence à croire que je n'aurai la solution que en .... 2010
JP.NUAGE est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2008, 19h44   #16
Modérateur
 
Avatar de SergioMaster
 
Serge Girard
Développeur informatique
Inscription : janvier 2007
Messages : 3 631
Détails du profil
Informations personnelles :
Nom : Serge Girard
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : janvier 2007
Messages : 3 631
Points : 4 533
Points : 4 533
moi c'est Rave 6.5 d'où peut-être l'erreur , comme c'est un 2of5 donc numérique tu peux peut-être tester via la valeur 0 ?

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
procedure TFRM_ETIQUETTES.RvDataSetConnection1ValidateRow(
  Connection: TRvCustomConnection; var ValidRow: BOOLEAN);
var   RvPage : TRavePage;
       RvBand : TRvBand;  //<--- il te manques  
         i : integer;
begin
   validrow := true;
   RvPage := rvProject1.ProjMan.FindRaveComponent('Format3par8.Page1', nil) AS TRavePage;
    RvBand := rvproject1.ProjMan.FindRaveComponent('DataBand1', RvPage) AS TRaveDataBand;
 
  FOR i := 0 TO rvband.ChildCount -1 do rvBand.Child[i].Visible := False;
 
end;
SergioMaster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2008, 23h31   #17
Membre éclairé
 
Avatar de JP.NUAGE
 
Inscription : avril 2006
Messages : 496
Détails du profil
Informations personnelles :
Âge : 69

Informations forums :
Inscription : avril 2006
Messages : 496
Points : 370
Points : 370
Envoyer un message via Skype™ à JP.NUAGE
Par défaut Impression sous RAVE

Non cela ne marche pas non plus : il me dit que TRvBand n'est pas déclaré et j'ai toujours derrière le message :

Types incompatibles TRavPage et TRaveComponent
Types Incompatibles TRaveComponent et TRaveBand

Peut-on avoir RAVE 6.5 avec Delphi 7 ?
JP.NUAGE est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/06/2008, 06h04   #18
Membre éclairé
 
Avatar de chtiot
 
Inscription : octobre 2002
Messages : 383
Détails du profil
Informations forums :
Inscription : octobre 2002
Messages : 383
Points : 330
Points : 330
Citation:
Envoyé par JP.NUAGE Voir le message
Non cela ne marche pas non plus : il me dit que TRvBand n'est pas déclaré et j'ai toujours derrière le message :

Types incompatibles TRavPage et TRaveComponent
Types Incompatibles TRaveComponent et TRaveBand

Peut-on avoir RAVE 6.5 avec Delphi 7 ?
c'est pas TrvBand: c'est TRaveDataBand qu'il faut utiliser.

Pour TRavePage il te faut rvClass dans les uses et pour TRaveDataBand il te faut rvCsRpt.
chtiot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/06/2008, 07h33   #19
Modérateur
 
Avatar de SergioMaster
 
Serge Girard
Développeur informatique
Inscription : janvier 2007
Messages : 3 631
Détails du profil
Informations personnelles :
Nom : Serge Girard
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : janvier 2007
Messages : 3 631
Points : 4 533
Points : 4 533
j'étais fatigué hier soir pour ne pas avoir vu RvBand : TRvBand; que ma suggestion de correction était fausse.
SergioMaster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/06/2008, 08h06   #20
Membre éclairé
 
Avatar de JP.NUAGE
 
Inscription : avril 2006
Messages : 496
Détails du profil
Informations personnelles :
Âge : 69

Informations forums :
Inscription : avril 2006
Messages : 496
Points : 370
Points : 370
Envoyer un message via Skype™ à JP.NUAGE
Par défaut Impression sous RAVE

A SergioMaster

Pas de Problème : il n'y a que ceux qui ne font rien qui ne font pas d'erreur et Taillard de Chardin disait que tout animal sur terre est le résultat d'un nombre incalculable d'erreurs. Alors....

J'essaye ce que tu me dis

Bonne journée
JP.NUAGE est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h08.


 
 
 
 
Partenaires

Hébergement Web