IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SAP Crystal Reports Discussion :

Problème de paramètrage d'impression


Sujet :

SAP Crystal Reports

  1. #1
    Candidat au Club
    Inscrit en
    Janvier 2008
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Problème de paramètrage d'impression
    Bonjour à tous,
    j'ai un problème pour paramétrer mes impressions sur certaines imprimantes.
    je vous explique, sur mon application, il est possible dans une interface de prédéfinir des paramètres pour des impressions (étant donné que l'application en fait un grand nombre):

    et de l'autre coté, quand on décide d'imprimé un état, j'affecte le paramètrage automatiquement.

    mon problème est que sur certaines imprimantes, le document ne veut pas sortir sur le bac2, il sort sur le bac3 ou même pas du tout.
    si vous avez une petite idée.

    grosso modo j'enregistre comme sa:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
                If PDialog.ShowDialog = DialogResult.OK Then
                    Me.BusParam.Imprimante = PDocument.DefaultPageSettings.PrinterSettings.PrinterName
     
                    Dim psDlg As New PageSetupDialog
                    Dim LePageSettings As New System.Drawing.Printing.PageSettings
                    LePageSettings.PrinterSettings = PDocument.DefaultPageSettings.PrinterSettings
                    LePageSettings.Landscape = PDocument.DefaultPageSettings.Landscape
                    LePageSettings.PaperSize = PDocument.DefaultPageSettings.PaperSize
                    LePageSettings.PaperSource = PDocument.DefaultPageSettings.PaperSource
                    If Not Bus_Base.IsMinValue(Me.BusParam.Marge_H) Then
                        LePageSettings.Margins.Top = Me.BusParam.Marge_H * 10
                    Else
                        LePageSettings.Margins.Top = 0
                    End If
                    If Not Bus_Base.IsMinValue(Me.BusParam.Marge_B) Then
                        LePageSettings.Margins.Bottom = Me.BusParam.Marge_B * 10
                    Else
                        LePageSettings.Margins.Bottom = 0
                    End If
                    If Not Bus_Base.IsMinValue(Me.BusParam.Marge_D) Then
                        LePageSettings.Margins.Right = Me.BusParam.Marge_D * 10
                    Else
                        LePageSettings.Margins.Right = 0
                    End If
                    If Not Bus_Base.IsMinValue(Me.BusParam.Marge_G) Then
                        LePageSettings.Margins.Left = Me.BusParam.Marge_G * 10
                    Else
                        LePageSettings.Margins.Left = 0
                    End If
                    psDlg.PageSettings = LePageSettings
                    If psDlg.ShowDialog = DialogResult.OK Then
                        If System.Globalization.RegionInfo.CurrentRegion.IsMetric Then
                            LePageSettings.Margins = System.Drawing.Printing.PrinterUnitConvert.Convert(LePageSettings.Margins, System.Drawing.Printing.PrinterUnit.Display, System.Drawing.Printing.PrinterUnit.TenthsOfAMillimeter)
                        End If
                        Me.BusParam.Source = LePageSettings.PaperSource.SourceName
                        Me.BusParam.Taille = LePageSettings.PaperSize.PaperName
                        Me.BusParam.Portrait = Not LePageSettings.Landscape
     
                        Me.BusParam.Marge_H = OutilsIHM.FormatPxModeArondi(LePageSettings.Margins.Top / 10, 2)
                        Me.BusParam.Marge_B = OutilsIHM.FormatPxModeArondi(LePageSettings.Margins.Bottom / 10, 2)
                        Me.BusParam.Marge_D = OutilsIHM.FormatPxModeArondi(LePageSettings.Margins.Right / 10, 2)
                        Me.BusParam.Marge_G = OutilsIHM.FormatPxModeArondi(LePageSettings.Margins.Left / 10, 2)
                    Else
                        Me.BusParam.Source = PDocument.DefaultPageSettings.PaperSource.SourceName
                        Me.BusParam.Taille = PDocument.DefaultPageSettings.PaperSize.PaperName
                        Me.BusParam.Portrait = Not PDocument.DefaultPageSettings.Landscape
                    End If
    End If

    et je réafecte comme sa :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
                            pd.DefaultPageSettings.PrinterSettings.PrinterName = BusParam.Imprimante
                    rpt_Doc.PrintOptions.PrinterName = pd.DefaultPageSettings.PrinterSettings.PrinterName
     
                    Dim PaperSource As System.Drawing.Printing.PaperSource
                    For Each Source As System.Drawing.Printing.PaperSource In pd.PrinterSettings.PaperSources
                        If Source.SourceName = BusParam.Source Then
                            PaperSource = Source
                        End If
                    Next
     
                    If Not PaperSource Is Nothing Then
                        rpt_Doc.PrintOptions.PaperSource = PaperSource.Kind
                    End If
     
                    If BusParam.Portrait Then
                        rpt_Doc.PrintOptions.PaperOrientation = PaperOrientation.Portrait
                    Else
                        rpt_Doc.PrintOptions.PaperOrientation = PaperOrientation.Landscape
                    End If
                    Dim PaperSize As System.Drawing.Printing.PaperSize
                    For Each Size As System.Drawing.Printing.PaperSize In pd.PrinterSettings.PaperSizes
                        If Size.PaperName = BusParam.Taille Then
                            PaperSize = Size
                        End If
                    Next
                    rpt_Doc.PrintOptions.PaperSize = PaperSize.Kind
     
                    rpt_Doc.PrintToPrinter(1, False, 0, 0)
    il doit y avoir une erreur quelque part, peut être a cause d'une histoire d'imprimante par défaut, je sais pas trop ...

    Merci.

  2. #2
    Candidat au Club
    Inscrit en
    Janvier 2008
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Personne n'as une idée ?

Discussions similaires

  1. Paramètrage hauteur impression sans boîte de dialogue
    Par Droïde Système7 dans le forum Composants VCL
    Réponses: 36
    Dernier message: 06/03/2006, 20h23
  2. [MFC] Problème d'échelle d'impression
    Par Philippe320 dans le forum MFC
    Réponses: 4
    Dernier message: 04/02/2006, 08h59
  3. Problème d'état d'impression
    Par ingelman dans le forum WinDev
    Réponses: 4
    Dernier message: 16/01/2006, 14h05
  4. Problème de paramètrage postgres...
    Par Empty_body dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 30/12/2005, 11h15
  5. Problème de Paramétrage en mode console
    Par MrPink dans le forum Installation
    Réponses: 1
    Dernier message: 15/11/2005, 19h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo