シトリックス炎の掲示板 1日8,000アクセスの国内最大シトリックスコミュニティ

ターミナルサービス上で印字すると印字飛び・欠けが起きる

reijisan 2011/03/28 14:35:34

以下の内容で困っています。わらにもすがる思いでXenApp化も検討していますが
そもそもActiveReports製品はいずれも保障外なので原因究明や回避策の決め手が
見いだせていない状況です。
長文申し訳ありませんがご存知の方、お知恵を拝借出来れば幸いです。

----------------------------------------
質問内容 ターミナルサービス上で印字すると印字飛び・欠けが起きる
間欠発生、再現性無し
※現時点では社内LANでは発生していない

環境 ターミナルサービス接続先:Windows 2008 Server SP 2
クライアント:Windows XP Professional SP 3
開発言語:Visual Studio 2005 standard(Visual Basic)
データベース:SQL Server 2005
帳票ツール:ActiveReports for .net 2.0j standard(グレープシティ)
プリンタ:富士通FMPR5310(ドライバは最新) ※他の機種でも発生
ターミナルサービスの接続先であるサーバー:8台
 ※各12~13クライアントが接続

現象 ・印字がされない項目がある(項目は不特定)
     ・稀にヘッダーに配置している項目が別の場所(明細)に飛んでいる

P 2011/03/28 15:14:50

Win2008であれば、
そもそもEasy Print プリンタ ドライバを利用しているのではないでしょうか、
Easy Print プリンタ ドライバを使わない設定を行っていないのでは?

reijisan 2011/03/28 17:03:08

P様

早々のご返答ありがとうございました。
プリンタはサーバ側のドライバを使用して
ネットワークプリンタで設定している状況です。

該当プリンタのドライバを最新のものに更新しても
現象が再発している次第です。

Reppa 2011/03/30 16:05:22

OSレベルで発生する現象はいくらユニバーサルドライバは汎用型だとしても、
XenAppでも同じ現象が発生する気がしますが・・・。
http://support.citrix.com/article/CTX118747

ちなみにXenAppでも同じ現象が発生しても特定のアプリ・特定のプリンタ関する問題は
サードベンダーの仕事なのでCitrixでは対応してもらえませんよ。

ターミナル経由でメモ帳で普通に印刷して発生しなければそのアプリが問題だと思います。

あくこ 2011/05/10 16:36:19

言語:VisualBasic6.0
DB:sqlserver2000

VB6.0で開発したプログラムから
ストアドプロシージャ(sqlserver2000)を実行しているのですが
ローカルで実行するとエラーになりませんが、
Citrix ICA クライアント環境で実行すると下記のエラーメッセージ(VB側)が表示されます。
「実行時エラー'3704':オブジェクトが閉じている場合は、操作が許可されません。」

いろいろと探してみたのですが、解決策など明記してあるサイトにたどり着けませんでした。
どうぞご教授ください。

VB側のコーディングは以下の通りです。

【VB】
Private Function fnc_Calc() As Boolean
Dim cn As ADODB.Connection
Dim cmd As ADODB.Command
Dim strUpdDate$

On Error GoTo fnc_Calc_Err

fnc_Calc = False

Screen.MousePointer = vbHourglass

Set cn = New ADODB.Connection
Set cmd = New ADODB.Command

cn.ConnectionString = DBCon$
cn.CursorLocation = adUseServer
cn.Open

'更新日時
strUpdDate$ = Format$(Now(), "yyyy/mm/dd hh:nn:ss")

'トランザクション開始
cn.BeginTrans

With cmd
'コネクションをコマンドに設定
Set .ActiveConnection = cn

'コマンド種別 = ストアド
.CommandType = adCmdStoredProc
'ストアド名を指定
.CommandText = "usp_Calc"

'パラメータ追加:引数(I/O)
.Parameters.Append fnc_SetParam(cmd, "@i_intShoriYM", adInteger, 6, adParamInput, Format$(frmMenu.imDate年月.Value, "YYYYMM"))
.Parameters.Append fnc_SetParam(cmd, "@i_datPROC_YMD", adDBTimeStamp, 135, adParamInput, CDate(strUpdDate$))
.Parameters.Append fnc_SetParam(cmd, "@i_nvcPROC_NAME", adVarChar, 100, adParamInput, lbltitle.Caption)
.Parameters.Append fnc_SetParam(cmd, "@i_nvcUSER_NAME", adVarChar, 30, adParamInput, USER_NAME$)
.Parameters.Append fnc_SetParam(cmd, "@o_intSysErrCD", adInteger, 10, adParamOutput)
End With

'ストアド実行
cmd.Execute

If cmd.Parameters(1).Value < 0 Then
'ロールバック
cn.RollbackTrans

MsgBox "更新に失敗しました。", , "警告"

If Not (cn Is Nothing) Then
cn.Close
Set cn = Nothing
End If
Screen.MousePointer = vbDefault
Exit Function
End If

'コミット
cn.CommitTrans

'解放
cn.Close
Set cn = Nothing

Screen.MousePointer = vbDefault
'戻り値
fnc_Calc = True

Exit Function

fnc_Calc_Err:
'ロールバック
cn.RollbackTrans

MsgBox CStr(Err.Description), , "警告"

If Not (cn Is Nothing) Then
cn.Close
Set cn = Nothing
End If

Screen.MousePointer = vbDefault
End Function

Reppa 2011/05/11 10:34:24

話の流れから何を言ってるか分からないです。
新しい質問は新しいトピックを作成してください。

ただ、新しいトピックを作成する前にリモート接続でOS側の問題か確認してくださいね。
リモート接続で同じ現象が出る場合はここの掲示板ではなくて、Microsoftの掲示板に問い合わせをしてください。
http://support.citrix.com/article/CTX127143
  • ニックネーム
  • メール
  • 本文

Powerful & Beautiful

力強く、美しいシステムを。