| 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( 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 |