 |
|
สอบถามปัญหา Crystal report ไม่พิมพ์ออก Printer ที่กำหนด |
|
 |
|
|
 |
 |
|
ปรึกษาเรื่องการกำหนดเครื่องพิมพ์ใน Crystal report หน่อยครับ
กำหนดชื่อเครื่องพิมพ์ในโค้ดแล้ว แต่เวลาสั่งพิมพ์ มันออกเครื่องพิมพ์ที่เราต้อง default ของ Windows ครับ
และมีการกำหนดให้ใช้กระดาษขนาดที่ตั้งใน Server Printer
ไม่ทราบว่ามีใครเจอปัญหาเช่นนี้บ้างมั้ยครับ ขอบคุณมากครับ
Code (VB.NET)
Dim i As Integer
Dim doctoprint As New System.Drawing.Printing.PrintDocument()
doctoprint.PrinterSettings.PrinterName = pntName
For i = 0 To doctoprint.PrinterSettings.PaperSizes.Count - 1
If doctoprint.PrinterSettings.PaperSizes(i).PaperName = "BCS" Then
rawKind = CInt(doctoprint.PrinterSettings.PaperSizes(i).GetType().GetField("kind", Reflection.BindingFlags.Instance Or Reflection.BindingFlags.NonPublic).GetValue(doctoprint.PrinterSettings.PaperSizes(i)))
Exit For
End If
Next
r.PrintOptions.PaperSize = CType(rawKind, CrystalDecisions.Shared.PaperSize)
r.PrintOptions.PaperOrientation = PaperOrientation.Portrait
r.PrintOptions.PrinterName = pntName
r.PrintToPrinter(1, False, 1, 1)
r.Dispose()
r.Close()
Tag : .NET, Crystal Report, Win (Windows App), VB.NET, VS 2012 (.NET 4.x), Windows
|
ประวัติการแก้ไข 2017-02-10 16:41:02 2017-02-10 16:42:30
|
 |
 |
 |
 |
Date :
2017-02-10 13:39:52 |
By :
suriya1103 |
View :
3138 |
Reply :
9 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
มาแอบงง
doctoprint มันเกี่ยวกับ Crystal Report ไหมครับ
พอดีไม่ชำนาญ
ผมว่าน่าจะไปแก้ที่ r น่ะครับ
ลองเพิ่มอันนี้ดู
r.PrintOptions.PrinterName=pntName
|
 |
 |
 |
 |
Date :
2017-02-10 14:24:20 |
By :
fonfire |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
น่าจะต้อง Set ค่าก่อนที่จะ Preview ตัว Report หรือเปล่าครับ
|
 |
 |
 |
 |
Date :
2017-02-10 17:00:54 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ชื่อ printer ถูกต้องไหมครับ
ลองหาคำสั่งดึงชื่อเครื่องออกมาดูอ่ะครับ
|
 |
 |
 |
 |
Date :
2017-02-10 17:32:43 |
By :
fonfire |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ผมลองทำดู
มันก็ออกตรงน่ะครับ
Code (VB.NET)
Imports System.Drawing.Printing
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
For Each PrinterName In PrinterSettings.InstalledPrinters
cmbPrinter.Items.Add(PrinterName)
Next
End Sub
Private Sub btnPrint_Click(sender As Object, e As EventArgs) Handles btnPrint.Click
Dim rp As New rpTest
rp.PrintOptions.PrinterName = cmbPrinter.Text
rp.PrintToPrinter(1, False, 0, 0)
End Sub
End Class
|
 |
 |
 |
 |
Date :
2017-03-08 10:31:25 |
By :
fonfire |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณการช่วยเหลือมากๆ นะครับ อาจจะช้าไปหน่อย 
|
 |
 |
 |
 |
Date :
2021-12-21 14:28:57 |
By :
suriya1103 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|