2017-06-15 71 views
0

我一直在使用存储过程来将文件加载到MS SQL:从MS SQL检索错误消息QTP

exec [database].[dbo].[tablename] @FullFilePath = 'fullpathtofile' 

文件是大和加载可能需要几分钟时间长达40分钟。 UFT在20-30秒内返回“超时”错误。 需要帮助才能使UFT等待文件加载。固定wait()没有意义,因为我不知道它可能需要多长时间。

For each objError in dbConnectionChargebacks.Errors给我留言(如加载错误50000或成功加载fileID为3105)。但它只在文件在20秒内加载时才有效。对于大文件,我不知道该如何等待)

+0

我会考虑从批处理文件而不是直接从UFT调用存储过程。您可以执行该批处理文件并让UFT等到它完成后再继续,并且该批处理文件将不会完成,直到存储过程执行为止 – Dave

回答

0

同意@Dave。存储你的程序在一个批处理文件,并使用WScript对象,就可以执行该文件

Set Wsc = CreateObject("Wscript.Shell") 
intReturn = Wsc.Run("cmd /c " & PathofbatchFile, 1 True) 'true will wait until batch file returns completion code 

0是成功的返回码。

+0

感谢Dave和@Mithilesh。正在努力。 现在我有另一个问题)是否有可能从qtp传递变量批处理运行SQL查询?我需要传递当前目录和当前日期,也许还有一些其他动态变量 – Salek

+0

或者其他选项 - 如果我通过批处理文件打开sql文件,qtp是否仍然足够等待? – Salek

+0

https://social.msdn.microsoft.com/Forums/en-US/631f064e-9e72-4736-8b3d-2773a4ec1271/how-can-i-pass-parameters-to-a-batch-file-from-qtp -Script?论坛=软件测试 –