Boite de dialogue d'Impression [Résolu]

Messages postés
164
Date d'inscription
samedi 22 décembre 2018
Statut
Membre
Dernière intervention
7 août 2019
- - Dernière réponse : Lenouveauapprenti
Messages postés
164
Date d'inscription
samedi 22 décembre 2018
Statut
Membre
Dernière intervention
7 août 2019
- 30 mai 2019 à 19:38
Bonjour

Je travaille sur un projet d'application ( en VB6 avec Access ). J'ai un problème de procédure de commande d'impression dans le cas d'une boucle.

Dans le cas d'impression d'une seul compte, tout marche bien. Lors de commander l'impression, la boite de dialogue est (grâce à la propriété "True" de "DRGrandLivre.PrintReport True, rptRangeAllPages") renvoyée pour pouvoir sélectionner l'imprimante ciblée.

Dans le cas d'impression d'une série de compte en bloc , le problème commence. car la boite de dialogue permettant la sélection de l'imprimante ciblée et le nombre de copies est renvoyée à chaque compte, ce qui est incommode.
Ce que je cherche dans ce cas, est le renvoie de cette boite de dialogue seulement une seule fois à la première ligne de la boucle,. Une fois la sélection de l'imprimante est faite, l'impression se lancerait.


Merci pour toute aide
Afficher la suite 

1 réponse

Messages postés
8749
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 octobre 2019
436
0
Merci
bonjour, toi seul sait ce qu'est DRGrandLivre, de quoi s'agit-il?
as-tu essayé de jouer sur la propriété ShowDialog, la mettre à Vrai au premier appel, et à Faux ensuite?
yg_be
Messages postés
8749
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 octobre 2019
436 > Lenouveauapprenti
Messages postés
164
Date d'inscription
samedi 22 décembre 2018
Statut
Membre
Dernière intervention
7 août 2019
-
as-tu sélectionné le langage "basic"?
Lenouveauapprenti
Messages postés
164
Date d'inscription
samedi 22 décembre 2018
Statut
Membre
Dernière intervention
7 août 2019
-
Re

Bien sûr, je sélectionne mon code puis, je clique sur la flèche pour sélectionner basic, à ce moment mon code se désélectionne.
Quand je sélectionne "basic", un message est renvoyé "le corps du message est vide"
Lenouveauapprenti
Messages postés
164
Date d'inscription
samedi 22 décembre 2018
Statut
Membre
Dernière intervention
7 août 2019
-
Re bonjour

J'ai tenté une solution, et elle marche. je vous prie de la revoir et me communiquer vos remarques.


'______________________________Impression


If NBoucle = 1 Then
GoTo A1:
Exit Sub
ElseIf NBoucle > 1 Then
GoTo A2:
Exit Sub
End If

A1:

On Error GoTo nnn:

CmnDialog.ShowPrinter

A2:


On Error Resume Next


SQLs = "select * from TableGrandLivre where ((Dossier='" & CStr(VarDossier) & "')and (Compte=" & CLng(CompteBoucle) & "))" & "order by NOrdreGl asc"

If RS.State = adStateOpen Then RS.Close
RS.Open SQLs, DB, adOpenKeyset, adLockPessimistic



ADGL.RecordSource = SQLs

Set DRGrandLivre.DataSource = ADGL


ADGL.Refresh


DRGrandLivre.Sections("Section4").Controls("LDossier").Caption = VarDossier
DRGrandLivre.Sections("Section4").Controls("LDateDebut").Caption = VarDateD
DRGrandLivre.Sections("Section4").Controls("LDateFinale").Caption = VarDateF
DRGrandLivre.Sections("Section4").Controls("LblDate").Caption = DateAN
DRGrandLivre.Sections("Section4").Controls("LblJournal").Caption = NomR
DRGrandLivre.Sections("Section4").Controls("LTitre").Caption = CompteBoucle & " " & IntituleAN
DRGrandLivre.Sections("Section4").Controls("LblSoldeInitial").Caption = Format(SoldeAN, "#,##0.00")



DRGrandLivre.Sections("Section5").Controls("LblDebitG").Caption = Format(SommeD, "#,##0.00")
DRGrandLivre.Sections("Section5").Controls("LblCreditG").Caption = Format(SommeD, "#,##0.00")
DRGrandLivre.Sections("Section5").Controls("LblSoldeG").Caption = Format(SoldeG, "#,##0.00")

DRGrandLivre.Show
DRGrandLivre.WindowState = 2




DRGrandLivre.PrintReport False, rptRangeAllPages







Next NBoucle

nnn:

yg_be
Messages postés
8749
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 octobre 2019
436 -
je pense qu'il est plus simple de mettre le code suivant avant la boucle:
    On Error exit sub
    CmnDialog.ShowPrinter
    On Error Resume Next
Lenouveauapprenti
Messages postés
164
Date d'inscription
samedi 22 décembre 2018
Statut
Membre
Dernière intervention
7 août 2019
-
Bonjour

Merci pour votre réponse, seulement l'application n'accepte pas ( On Error exit sub ), elle exige ( Goto )

Je crois c'est mieux avec


On Error Goto nnn:


'Après la fin de la boucle

nnn:

Commenter la réponse de yg_be