Client Access 问题(急!!)

发表于:2007-06-08来源:作者:点击数: 标签:
download时,如果file无数据就弹出如下错误, CWBTF0004-Nodata was matchedtothespecifiedoptions 能不能让它不自动弹出? 试过参数设置也没用(displaywarningsduringdatatransfer) michael9406 回复于:2003-07-07 22:45:16 你是如何设置的。? Thomasdot

download时,如果 file无数据就弹出如下错误,

CWBTF0004 - No data was matched to the specified options


能不能让它不自动弹出?

试过参数设置也没用(display warnings during data transfer)

 michael9406 回复于:2003-07-07 22:45:16
你是如何设置的。?

 Thomasdottang 回复于:2003-07-08 08:54:25
Client Aclearcase/" target="_blank" >ccess Version 5.5

data transfer main GUI 

-> properties

-> Display

-> Display option

-> Display warnings during data transfer (unselect)

 hanyu 回复于:2003-07-08 18:13:20
这个问题,我的同事以前也遇到过,也是想了很久,后来干脆把客户端的程序改了,先从后台下一个描述文件,根据描述文件里的纪录,将后台不空的文件接下来。
看看各位兄弟有没有更好的办法。

期待!!!

 pcas400 回复于:2003-07-09 07:32:57
方法不错,值得推荐。

 Thomasdottang 回复于:2003-07-09 08:26:13
谢谢各位,

昨天苦思冥想,终于还是在客户端写了个VB控制程序来解决。

 Charlotte 回复于:2003-07-09 12:00:27
可否请教,VB的程序是怎么控制的?

 michael9406 回复于:2003-07-09 12:17:32
add one test record to database in as400, and it is ok. after download . please delete the record.

 Thomasdottang 回复于:2003-07-09 13:40:27
我是计算其记录数,如果=0,当然就不用download了

 Thomasdottang 回复于:2003-07-09 18:02:44
michael9406的建议也可,可以用MONMSG 来Insert一条记录来解决。

不过我要下载的文件有200多个,而且不会RPG编程,只好这样解决了。

这里有没有RPG 高手,我公司有些1000~5000RMB的小项目,如果有兴趣可联系我, [email protected]

 yhp 回复于:2003-07-10 14:21:20
使用IBM CA 提供的Api函数:
    Dim AsSys As New cwbx.AS400System
    Dim AsTr As cwbx.DatabaseTransferResults
    Dim Dlt As New cwbx.DatabaseDownloadRequest
    Dim DltACC As cwbx.DatabaseDownloadASCIIOptions
    Dim SysNum As Integer
    Dim SysExist As Boolean
    Dim StrTime As Date
    Dim FreeNum As Integer
    '检查收到的地址是否有效 AS400
    SysExist = False
    StrTime = Now()
    For SysNum = 1 To SysName.Count
        If SysName.Item(SysNum) = RunInput(1) Then
            SysExist = True
            Exit For
        End If
    Next SysNum
    If SysExist = False Then
        Ca_Down = -305
        Exit Function
    End If
    '开始系统连接定义
On Error GoTo SysErr
    AsSys.Define RunInput(1)                  (ip地址)
    AsSys.UserID = RunInput(2)              (用户名)
    AsSys.Password = RunInput(3)          (密码)
    AsSys.Signon
    
    '开始下载定义
    Set Dlt.System = AsSys
    Dlt.AS400File = RunInput(4)              (库名/表名)
    Dlt.Query.Select = RunInput(5)          (字端名)
    Dlt.Query.Where = RunInput(6)         (条件)
    If Trim(RunInput() = 0 Or Len(Trim(RunInput()) = 0 Then
        Dlt.pcFile.FileType = cwbdtASCIIText    (保存格式)
        Set DltACC = Dlt.pcFile.Options
        DltACC.TruncateSpaces = False
        DltACC.CodePage = cwbnlCodePageClientANSI
    Else
        Dlt.pcFile.FileType = cwbdtCSV
    End If
    Dlt.pcFile.Name = RunInput(7)
    '开始下载
On Error GoTo DltErr
    Dlt.Download
    Set AsTr = Dlt.TransferResults
    '下载结果处理
On Error GoTo AsTrErr
    If AsTr.DataErrors.Count > 0 Then
        Select Case AsTr.DataErrors.Item(1).ErrorType
            Case 1, 5
                Ca_Down = -311
            Case 2, 6
                Ca_Down = -312
            Case 3, 7
                Ca_Down = -313
            Case 4, 8
                '数据转换错误
                Ca_Down = -314
        End Select
    End If
    Ca_Down = DateDiff("s", StrTime, AsTr.CompletionTime)
    Set DltACC = Nothing
    Set Dlt = Nothing
    Set AsSys = Nothing
    Exit Function
DltErr:
    Select Case Dlt.Errors.ReturnCode
        Case 3
            '下载文件目录不存在
            Ca_Down = -322
        Case 112
            '磁盘空间满
            Ca_Down = -323
        Case 7004
            '空记录
            FreeNum = FreeFile
            Open RunInput(7) For Append As #FreeNum
            Close #FreeNum
            Ca_Down = -308
        Case 6053
            '通讯错误
            Ca_Down = -306
        Case 7412
            'AS400系统文件存在记录锁
            Ca_Down = -307
        Case 7040
            '指定文件或者库不存在
            Ca_Down = -316
        Case Else
            '出现无法预测错误
            Ca_Down = -317
    End Select
    Set AsSys = Nothing
    Exit Function
SysErr:
    Select Case AsSys.Errors.ReturnCode
        Case 8002
            '密码错
            Ca_Down = -309
        Case 8001
            '用户名错
            Ca_Down = -310
        Case Else
            '出现无法预测错误
            Ca_Down = -317
    End Select
    Exit Function
AsTrErr:
    Ca_Down = -315
End Function

原文转自:http://www.ltesting.net